0% found this document useful (0 votes)
78 views3 pages

Endterm SE

This document contains the mid-term examination for the Software Engineering CO 307 course held in Spring 2009. It consists of 5 questions with multiple parts each. Question 1 asks about inheritance, templates, and project partitioning. Question 2 asks about software quality attributes and data flow diagrams. Question 3 asks about a sorting function's cyclomatic complexity and test cases. Question 4 asks about coding errors, the Pareto principle, software maintenance costs, and legacy systems. Question 5 asks about Lehman's laws of software evolution, UML diagrams, and modeling an airline reservation system. The exam is 3 hours long and students must answer question 1 fully and select 3 other questions.

Uploaded by

adityabaid4
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
78 views3 pages

Endterm SE

This document contains the mid-term examination for the Software Engineering CO 307 course held in Spring 2009. It consists of 5 questions with multiple parts each. Question 1 asks about inheritance, templates, and project partitioning. Question 2 asks about software quality attributes and data flow diagrams. Question 3 asks about a sorting function's cyclomatic complexity and test cases. Question 4 asks about coding errors, the Pareto principle, software maintenance costs, and legacy systems. Question 5 asks about Lehman's laws of software evolution, UML diagrams, and modeling an airline reservation system. The exam is 3 hours long and students must answer question 1 fully and select 3 other questions.

Uploaded by

adityabaid4
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 3

Software Engineering CO 307

Spring 2009 Mid-term examination Total Marks: 70


Answer question number 1 and any three from the rest. 1. a. Inheritance and templates are helpful programming constructs because they contribute to what characteristic of a good design? [1] b. It seems that since dividing a project into functional partitions can increase the likelihood of successful implementation, why don't we divide the project into as many subprojects as possible? [2] c. Fred Brooks in his classic book "The Mythical Man-Month" is famous for his quote "Adding people to a late software project makes it later." Explain this phenomenon. [2] d. What is the purpose of a use case diagram? Is it created before or after writing the use cases? [2] e. Do you agree: The number of defects remaining in a software product is directly related to its reliability Give reasons [2] f. During SD, the __________of SA is transformed to a structured chart representation. [1] 2. a. What is quality? List the ISO qualities of good software. [4] b. Draw the DFD and Structure chart for the following for the following Book Sales Processing Automation software: [ 10 ] A book store deals with a large number of orders from customers. The book store has a regular set of customers. Each of these regular customers is assigned a unique ID. The customers quote the ID on every order they place. Once an order is placed, the software checks for the credit worthiness of the customer. The credit worthiness is determined by analyzing the credit-info from the customer file. If the customer is valid then his/her orders are processed else appropriate apology message sent. The orders placed may be of two types: Bulk order and regular order. A bulk order has at least 100 book orders. Appropriate discount is given for Bulk orders and then the orders are processed and invoice generated. For regular orders (Order < 100 books) no discount is given. Regular orders are also processed and invoice is generated. Finally invoices are sent back to the customers and to the shipping department. c. Consider the following java function and determine the cyclomatic complexity. Design a test suite for the sort function using the white box testing strategies (statement coverage, branch coverage, condition coverage & path coverage). [6]
public static void selSort(int[] x) { for (int i=0; i<x.length-1; i++) { int minIndex = i; // Index of smallest remaining value.

Time: 3 hours

for (int j=i+1; j<x.length; j++) { if (x[minIndex] > x[j]) { minIndex = j; // Remember index of new minimum } } if (minIndex != i) { //... Exchange current element with smallest remaining. int temp = x[i]; x[i] = x[minIndex]; x[minIndex] = temp; } } }

3. a. Explain some strategies for reducing coding errors. [8] b. The Pareto Principle defines the vital few, the trivial many. Explain. Is complete testing impossible? Justify. [2+3] c. A software product has been installed in the year 2000. The cost incurred during developing the product was Rs. 2,00,000 and every year for maintenance purposes 5% of code is added and 3% of code is deleted. What will be the maintenance cost at the beginning of 2010. [5] d. How can we change from existing software to new software? [2] 4. a. Give three software reliability metrics. Do you think the three metrics given by you can entirely measure the reliability of a system? Justify. [4] b. What are legacy systems? What are its problems? Give the best solution. [5] c. During the software testing process, why is the reliability growth initially high but slows down later? What are the different types of testing? Explain. [2+5] d. What is a widget? Give two kinds of widget? 5. a. State Lehmans three laws. Give the different UML views. [3+3] c. Draw the Use case, Class, Sequence, Collaboration and Activity diagrams for the following: [ 14 ] Suppose you are representing airline reservation software by UML. Passengers on arrival will go through the process of Check-in, luggage weighing and seat-assigning. It must be clear that in order to check in a Passenger, Luggage must be weighed and a Seat assigned. Moreover, in order to add a seat-reservation to the system, the available space must be checked and the passenger's information (Name, ticket number, luggage ticket, flight number) must be recorded. Not all of the seats aboard the airplane are exactly alike (some window and some aisle seats), and sometimes passengers will express a preference for one of these types of seats but not the other. But of course, they cannot just be given their preference right away, because the seat they want might not be available. Therefore, the process of assigning a window seat involves checking for the availability of window seats, whereas the process of assigning an aisle seat [4]

involves checking for the availability of aisle seats. Once all passengers have been assigned seats, and luggage sent to the luggage van. The passengers are asked to move to their designated flight number.

You might also like