You are on page 1of 3

1. Indicate True or False for following statements with a justification within 30 words.

No credit is
given for answers with no justification or lengthy justification, exceeding word limit. (6 X 1) a. Software processes can be constructed out of pre-existing patterns to best meet the needs of a software project. True. Process patterns enable practitioners to share successful approaches to software development As we learn from Polya, Software Engineering consists of understanding the problem, plan a solution, carry out the plan, and deploy the solution. False, As per Polya Software Engineering would consist understanding the problem, plan a solution, carry out the plan, and examine solution for accuracy. Teams using agile software practices do not generally create models. False. Agile practitioners typically create light weight models that do not require heavy rework in case of changes. Agile Unified Process adopts Serial in the small philosophy. False, AUP recommends Serial in the large. Iterations are done within phases, even as phase sequence is kept intact. Change is more expensive during initial phases in agile process compared to prescriptive process True. Agile practitioners implement code early. So change can be costly. In case of conventional process, early phases focus only documentation & modelling. Analysis Patterns are discovered while Design Patterns are created. True. Software Engineer does Analysis to understand business problems, while design can be creative. While modelling for WebApps, configuration analysis focuses on the architecture of the user's web browsing environment. False. Configuration analysis includes responsibilities of various servers, caching architecture, remote database, and client attributes. For successful design, you must practice diversification followed by convergence. True, Software engineers can be creative w.r.t. design. They can consider several documented alternatives and choose a right combination for the project situation. The best representation of system architecture is an operational software prototype. False. Architecture is a overall structural representation enabling communication among competent stakeholders on effectiveness of design and various risks. Quantitative methods for assessing the quality of proposed architectural designs are readily available. False, Architecture can only be assessed indirectly by analyzing the ability to meet documented non-functional and functional requirements

b.

c.

d.

e.

f.

g.

h.

i.

j.

2. Provide point-wise, concise answers for following questions. (5 X 5)

Perceptions and beliefs of stakeholders make or break software projects. Write your observations with suitable illustrations. (5) a. Myths vs. realities from customer view 1.5 marks b. Myths vs. realities from management view 1.5 marks c. Myths vs. Realities from practitioner view 2 marks

Describe Extreme Programming highlighting its similarities and differences with Scrum. (5) a. XP has Plan-Design-Code-Test cycle. The explanation of the cycle 2 marks

b. Comparison with Scrum 3 marks


i. Scrum doesn't prescribe any engineering practices; XP does particularly things like test-driven development, the focus on automated testing, pair programming, simple design, spike solutions, refactoring, and so on. On the other hand, Scrum has stronger management practices such as Scrum meetings. ii. Scrum teams do not allow changes into their sprints. XP teams are much more amenable to change within their iterations. As long as the team hasn't started work on a particular feature, a new feature of equivalent size can be swapped into the XP team's iteration in exchange for the unstarted feature. iii. Extreme Programming teams work in a priority (customer value) order. By contrast, the Scrum team determines the sequence in which they will develop the backlog items. iv. Scrum teams typically work in iterations (called sprints) that are up to one month long. XP teams typically work in iterations that are max three weeks long.

Describe desirable practices for Construction activity during software development. (5) Coding preparation principles 1 mark Coding principles - 1.5 marks Coding validation - 1 mark Testing principles 1.5 marks
Propose, justify, and describe architecture style for a DBMS serving diverse applications. (3) Diagram & description of data-centered architecture Differentiate architectural styles and architectural patterns with examples (2) Architectural Style is a transformation that is imposed on the design of an entire system, e.g. Data flow architecture Architectural Pattern also imposes a transformation on the design, but differs from style in following ways: The scope is less broad; focus on one aspect Imposes a rule on architecture w.r.t. some functionality e.g. concurrency Address specific behavioral issues e.g. synchronization or interrupt handling

Draw Use case diagram for an on-line travel reservation system offering services of checking for flights, ticket booking, ticket cancellation. Provide detailed documentation for one of the use cases. (2+3) The use case diagram should have the following use cases as per drawing conventions: Search for a Flight, Book a ticket, Cancel a ticket, View Booking History Detailed documentation for the use case should include following sub-headings with reasonable content: Use case name Primary actor Pre-condition Main Task Alternate Flow/Exception Flow

Post-condition Quality requirements

You might also like