KEMBAR78
366 FinalExam Spring2018 | PDF | Unified Modeling Language | Software Development Process
0% found this document useful (0 votes)
21 views14 pages

366 FinalExam Spring2018

The document is a final exam for the Software Engineering course at the University of Sharjah, consisting of multiple parts that assess knowledge in software development life cycles, UML, software metrics, and software testing. It includes various questions requiring students to demonstrate their understanding of software engineering concepts, such as SDLC models, UML diagrams, function points, and testing strategies. The exam has a total score of 45 marks, divided across four parts with specific marking schemes.

Uploaded by

Ali Sultan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
21 views14 pages

366 FinalExam Spring2018

The document is a final exam for the Software Engineering course at the University of Sharjah, consisting of multiple parts that assess knowledge in software development life cycles, UML, software metrics, and software testing. It includes various questions requiring students to demonstrate their understanding of software engineering concepts, such as SDLC models, UML diagrams, function points, and testing strategies. The exam has a total score of 45 marks, divided across four parts with specific marking schemes.

Uploaded by

Ali Sultan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 14

University of Sharjah

College of Sciences
Department of Computer Science
Software Engineering (1411366)
Final Exam, Spring 2017-2018
(Duration: Two Hours)

Student Name: _________________________________ ID#: ______________

INSTRUCTIONS:
 Closed Books, Closed Notes.
 Make sure that you have 13 different pages including the cover page.
 Answer ALL the questions in each section.

Marking Scheme:
Score Weight
Part I 10

Part II 10

Part III 15

Part IV 10

Total 45

Outcome-Based Analysis:
Weigh
Outcome Questions Score
t
Distinguish different process models for software
B. engineering, their pros and cons, and frameworks 10 Part I
related to them.
Master the current standard modeling language UML
D. and use it throughout project development and 10 Part II
notably in analysis and design.
Evaluate software quality metrics, in particular, how
E. disciplined object-oriented software engineering Part III
15
constructively improves reliability.

F. Verify, validate and test codes of a software system. Part IV


10
Part I (10 marks – SDLC):
Question 1: Which type of SDLC (Water Fall Model, Unified Process, Spiral, Rapid
prototyping, Evolutionary/incremental) do you recommend for the following systems?
Explain. (3 pts)

Aircraft Systems Mobile Application Online Business

Question 2: What is the difference between functional requirements and non-functional


requirements? (2 pts.)

Question 3: What are some of the problems that occur when classes have low cohesion?
(2 pts.)

Question 4: Sequence diagrams can be somewhat similar to the actual code. Why not just
code up the algorithm? Why bother with sequence diagrams? (3 pts.)

1.

2.

3.

Page 1
Part II (10 marks – UML):
Question 1: The following table describes the required behavior of a car’s cruise control
system. Draw a UML state chart diagram to show the same information. Use super states
(where appropriate) to simplify your diagram and be sure to label all transitions with the
relevant events and conditions. (3 pts)

Page 2
Question 2: Draw a sequence diagram for the following casual use case:
A customer calls an insurance clerk at the insurance company and gives his/her policy
number. The clerk enters this information, and the system displays the basic insurance
policy. The clerk then checks the information to make sure the premiums are current and
the policy is in force.
The customer gives the make, model, year, and vehicle identification number (VIN) of the
car to be added. The clerk enters this information, and the system validates that the given
data is valid. Next the customer selects the types of coverage desired and the amount of
each. The clerk enters the information, and the system records each and validates the
requested amount against the policy limits. After all of the coverages have been entered,
the system validates the total coverage against all other ranges, including other cars on the
policy.
Finally, the customer must identify all drivers and the percent of time they drive the car. If
a new driver is to be added, then another use case, Add new driver, is invoked.
At the end of the process, the system updates the policy, calculates a new premium amount,
and prints the updated policy statement to be mailed out to the policy owner. (3 pts.)

Page 3
Question 3: Draw class diagram for the following case study: DownTown Videos is a chain
of 11 video stores scattered throughout a major metropolitan area in the Midwest. The
chain started with a single store several years ago and has grown to its present size. Paul
Lowes, the owner of the chain, knows that to compete with the national chains will require
a state-of-the-art movie rental system. You have been asked to develop the system
requirements for the new system.

Each store has a stock of movies and video games for rent. It is important to keep track of
each movie title to know and to identify its category (classical, drama, comedy, and so on),
its rental type (new release, standard), movie rating, and other general information such as
movie producer, release date, cost, and so forth. In addition to tracking each title, the
business must track each individual copy to note its purchase date, its condition, and its
rental status. User functions must be provided to maintain this inventory information.

Customers, the lifeblood of the business, are also tracked. DownTown considers each
family to be a customer, so special mailings and promotions are offered to each household.
For any given customer, several people may be authorized to rent videos and games. The
primary contact for each customer can also establish rental parameters for other members
of the household. For example, if a parent wants to limit a child’s rental authorization to
only PG and PG-13 movies, the system will track that.

Each time a movie is rented, the system must keep track of which copies of which movies
and games are rented; the rental date and time and the return date and time; and the
household and person renting the movie. Each rental is considered to be open until all of
the movies and games have been returned. Customers pay for rentals when checking out
videos at the store. (4 pts.)

Page 4
Part III (15 marks –Software Metrics):
Question 1
A Purchase Order software has the following capabilities: to add a new order and to initiate a
change request to an order. The users can inquiry the status of an order and the regional
report. A regional report will be generated and an order notification report will be distributed.
Count the Function Points for this software (3 pts.). Calculate the total software cost by
considering the following assumptions (3 pts.):
 It is assumed that developers would be given a salary of $20/h for 8h/day workday
 Developers would work 5 days per week for a total of 160 hours / month
 The average productivity is set to 6.5 pm (same value as seen in class)
 The complexity factors are set to an average complexity except for “add a new order” is
high in complexity.

Factor Value
Reliable Backup & Recovery 3
Data communications 5
Distributed processing functions 6
Performance critical 5
Existing operating environment 4
On-line data entry 6
Operational ease 4
Online update 5
Complex interface 4
Complex processing 4
Reusability 3
Installation ease 4
Multiple sites 0
Facilitate change 4

Page 5
Answer for question 1:

Coun Weig
Measurement parameter t x ht

Number of user inputs

Number of user outputs

Number of user inquiries

Number of internal files

Number of ext. interfaces 1 x 10 = 10

UFP

Complexity multiplier

Burdened Labor rate

Average productivity

= Effort (p-m)

= )$( Costs

Page 6
Question 2
;cin.get(c)
while (c!= '\n')
{
if (c == 'Z' || c == 'z')
;'*' = c
else if (c >= 'A' && c < 'Z' || c >= 'a' && c < 'z')
;++c
;cout << c
;cin.get(c)
}
Compute the minimum number of test cases for the linearly independent paths strategy. (3
pts.)

Question 3: Use the golden design rules in design report to constrcut the GQM (3 pts.)

Page 7
Question 4: (3 pts.)
For the following project description, generate estimates for total effort, project duration and
number of people needed using COCOMO model. CAD CO, Inc, wants to produce a system
that will perform computer-aided design for the home constrcution industry. They are a new
compnay, and thought they want to be the best in CAD systems. Overall, they are
inexperienced. What type of this project? Initial analysis of the problem leads to requirements
calling for 3 major modules, with the following sizes:
Screen drawing 2.00 KDSI
Object-base management 3.50 KDSI
Algebra/Numerical Methods 1.75 KDSI

Page 8
Page 9
Part IV (10 marks – Software Testing):

Q. 1: What is the MINIMUM combination of paths required to provide full statement coverage?
Exhibit:

A. 1
B. 2
C. 3
D. 4

Q. 2: How many test cases are necessary to cover all the possible sequences of statements for the
following program fragment? Assume that the two conditions are independent of each other:
if (Condition 1)
then statement 1
else statement 2

if (Condition 2)
then statement 3
A. 2 Test Cases
B. 3 Test Cases
C. 4 Test Cases
D. Not achievable

Page 10
Q. 3: Given the following:
Switch PC on
Start "outlook"
IF outlook appears THEN
Send an email
Close outlook
A. 1 test for statement coverage, 1 for branch coverage
B. 1 test for statement coverage, 2 for branch coverage
C. 1 test for statement coverage. 3 for branch coverage
D. 2 tests for statement coverage, 2 for branch coverage
E. 2 tests for statement coverage, 3 for branch coverage

Q. 4: Given the following code, which is true:


IF A > B THEN
C=A–B
ELSE
C=A+B
ENDIF
Read D
IF C = D Then
Print "Error"
ENDIF
A. 1 test for statement coverage, 3 for branch coverage
B. 2 tests for statement coverage, 2 for branch coverage
C. 2 tests for statement coverage. 3 for branch coverage
D. 3 tests for statement coverage, 3 for branch coverage
E. 3 tests for statement coverage, 2 for branch coverage

Q. 5: Given the following code, which is true about the minimum number of test
cases required for full statement and branch coverage:
Read P
Read Q
IF P+Q > 100 THEN
Print "Large"
ENDIF
If P > 50 THEN
Print "P Large"

Page 11
ENDIF
A. 1 test for statement coverage, 3 for branch coverage
B. 1 test for statement coverage, 2 for branch coverage
C. 1 test for statement coverage, 1 for branch coverage
D. 2 tests for statement coverage, 3 for branch coverage
E. 2 tests for statement coverage, 2 for branch coverage

Q. 6: Minimum Test Required for Statement Coverage:


Disc = 0
Order-qty = 0
Read Order-qty
If Order-qty >=20 then
Disc = 0.05
If Order-qty >=100 then
Disc =0.1
End if
End if
A. Statement coverage is 4
B. Statement coverage is 1
C. Statement coverage is 3
D. Statement Coverage is 2

Q. 7: What is the smallest number of test cases required to Provide 100% branch
coverage?
If(x>y) x=x+1;
else y=y+1;
while(x>y)
{
y=x*y; x=x+1;
}
A. 1
B. 2
C. 3
D. 4

Page 12
Q. 8: If the pseudo code below were a programming language ,how many tests are
required to achieve 100% statement coverage?
1. If x=3 then
2. Display_messageX;
3. If y=2 then
4. Display_messageY;
5. Else
6. Display_messageZ;
7. Else
8. Display_messageZ;
A. 1
B. 2
C. 3
D. 4

Below given is a program of placing the order and subsequently providing the discount based on
the ordered amount. Is there infeasible path? Explain.
A → Place Order (Amount in Rs);
B → If Order Amount< 500;
C → then Print "No Discount";
D → Else Print "Applicable for 25% discount";
E → If Order Amount>1000;
F → then Print "Applicable for 40% discount";
G → End

Bonus Mark Question:


?How we can improve this course from the student perspective
_________________________________________________.1
_________________________________________________.2

Good
Luck
Page 13

You might also like