You are on page 1of 4

All Rights Reserved

UNIVERSITY OF VOCATIONAL TECHNOLOGY


Faculty of Training Technology
Bachelor of Technology in Information & Communication Technology
(Software Technology) 2010 / 2013
Year II Semester II Examination March -2013

Enterprise.Net (ICTCO40302)
Duration

: 03 hours

Section A Multiple choice questions


Answer all multiple choice questions

20 marks

1. What is not a challenge in Enterprise Application Development?


a. Integration with existing systems needs to be considered
b. As enterprise systems becomes complex, the effort required would be less as there
are plenty of patterns and frameworks available
c. The time taken to move from prototype to production should be low
d. Maintaining security in applications is priority
2. What is not relevant to an Enterprise Computing Environment?
a. Computers are located in a wide area
b. Heterogeneous environment
c. Mission critical applications
d. Legacy applications to be thrown away
3. What is not considered as an IT managers nightmare?
a. Application scaling with demand
c. Attack and defeat
b. Lost information
d. Hardware failure
4. What is not an emphasis in Enterprise Level Computing?
a. Availability
c. Integrity
b. Limited access
d. Robustness
5. What is not an enterprise application?
a. Patient Records
b. Foreign Exchange Trading

c. Chemical Plant Controllers


d. Customer Service

6. What is not a feature of enterprise applications?


a. Non persistent of data
c. Integrate other enterprise applications
b. Variety of user interfaces
d. Involve a lot of data
7. What is not a term used in measuring performance of an enterprise application
a. Throughput
c. Scalability
b. Jitter
d. Responsiveness
Page 1 of 4

8. What is not a benefit in Modular coding?


a. Easy to manage self-contained units
b. Easy to allow teams of developers to work together when a problem is separated
into small modules.
c. Decrease code reuse
d. Easy to allow teams of developers to work together when a problem is separated
into small modules.
9. What is not a benefit of refactoring?
a. Improve the readability or architecture of code
b. Decrease extensibility of code
c. Increase performance of code
d. Simplify maintenance
10. What is not a testing framework?
a. MbTest
b. NUnit

c. MS Test
d. TestDriven.Net

11. In application development what is the practicality of using high cohesion and loose coupling
a. High cohesion: bad, Loose coupling: good
b. High cohesion: bad, Loose coupling: bad
c. High cohesion: good, Loose coupling: bad
d. High cohesion: good, Loose coupling: good
12. What is not a problem caused by dependency in code?
a. Code is tightly coupled
c. Difficult to isolate when testing
b. Code has low cohesion
d. Difficult to maintain
13. What is another term for Inversion of Control (IoC)?
a. Single Responsibility Principle
c. Hollywood Principle
b. Separation of Concerns Principle
d. Dependency Injection Principle
14. What is not an Inversion of Control tool?
a. Structure map
b. MS Unify

c. Spring.Net
d. Windsor container

15. Which is not a method on use structure map?


a. Wire up using fluent interface
b. Wire up using identity map

c. Wire up using attributes


d. Wire up using configuration meta data

16. What is not a layer in enterprise application architecture?


a. Transport layer
c. Business logic layer
b. Application layer
d. Data access layer
17. Out of the following what is not a key area in Enterprise Application Development?
a. Reliability
c. Flexibility
b. Separation of concerns
d. Scalability
Page 2 of 4

18. What is not a benefit of an Object Relational Mapper (ORM)?


a. The Unit of Work pattern
c. Identity Map
b. SQL based querying
d. Lazy loading
19. Which Object Relational Mapper (ORM) support Persistence Ignorance (PI)?
a. LinqToSQL framework
c. Entity Framework version 3.0
b. NHibernate
d. Entity Framework version 4.0
20. What is wrong in respect of the front end of an application?
a. Front end have evolved to become very rich in appearance over the years
b. Front ends have had very good code design right from the beginning of enterprise
development
c. Originally, the UI was the slimmest section of code
d. Most front end in business applications have some amount of business logic until
recently

Section B - Essay type questions


Each question carries 20 marks divided equally under each sub question
Answer 4 questions

80 marks

Q1.
(a)
(b)
(c)
(d)
(e)

Explain the Separation of Concerns principle?


What is a dependency in enterprise code?
What are the impacts of dependencies in enterprise code?
How to achieve Separation of Concerns (SoC) in enterprise code? Explain.
Explain the Single Responsibility Principle (SRP)

Q2.
(a)
(b)
(c)
(d)

What is refactoring? Explain the types of refactoring.


Explain the Dependency Injection Principle (DIP)
What is Inversion of Control (IoC)?
Explain the application of Dependency Injection (DI) pattern? What is its relationship with
Inversion of Control (IoC)?
(e) Name the three flavours of DI and explain them

Q3.
(a)
(b)
(c)
(d)
(e)

What is Test Driven Development (TDD)?


Explain the concept of Test Driven Development (TDD) by means of a diagram
Why is it necessary to work in short cycles when Test Driven Development (TDD) is used?
What are unit tests?
Explain how to use the NUnit testing framework in an application during its development

Page 3 of 4

Q4.
(a) Why is managing dependencies in enterprise code important? By means of a high level
diagram interpret what it means.
(b) What are the three elements of a Dependency Injection (DI) pattern? By means of a diagram
explain how the traditional code defers from the Dependency Injected code
(c) What are patterns?
(d) What are the three parts of a pattern? What are the motivations for using patterns?
(e) List three patterns used under management of dependencies

Q5.
(a) Explain the purpose of the business logic layer? Provide three patterns used in the business
logic layer
(b) List down the strengths and weaknesses in one of the business logic layer pattern in (a)
(c) What is the purpose of the service layer in an enterprise application?
(d) What is Domain Driver Design (DDD)?
(e) Describe the following concepts in Domain Driven Design (DDD)
a. Entities
b. Value objects
c. Aggregates and aggregate roots

Q6.
(a)
(b)
(c)
(d)
(e)

What is the role of the data access layer in enterprise application architecture?
What are the issues in building our own data access layer in Microsoft?
Explain the role of an Object Relational Mapper (ORM). List down the ORMs you have learnt.
What is a data context?
What is the difference between data first and model first approach of software
development? Name a pattern used in each approach.

Q7.
(a) What is the purpose of the presentation layer in an enterprise application?
(b) Over the years, the front end has become very rich in appearance - Illustrate this
statement
(c) What is the problem associated with the front end in business applications?
(d) What are the benefits of Model-View-Controller (MVC) and Model-View-Presenter (MVP)
patterns?
(e) What are the differences between the Model-View-Controller (MVC) and Model-ViewPresenter (MVP) patterns?

Page 4 of 4