Professional Documents
Culture Documents
FACULTY OF ENGINEERING
NOVEMBER/DECEMBER 2011
INSTRUCTIONS TO CANDIDATES
Question 1
Read carefully the case study which is about meeting planner and hotel site selection
system and answer the questions that follow.
(a) “Requirements should state what a system should do, without stating how it
should do it”. Describe why this distinction is important?
[3 marks]
(b) State and explain four reasons why stakeholders tend to change Requirements in
software development life cycle.
[4 marks]
Page 1 of 6
SOFTWARE ENGINEERING – CSE 2142(3)
Question 1 [Cont’d]
(d) Requirement specification may yield some problems stemming from the use of
natural language. Suggest two problems that may be encountered and provide
one alternative that is available for requirements specification.
[2+1 marks]
(e) Propose the most suitable software process model that WorldVenueQuest(WVQ)
can use to solve the problems encountered. Justify your answer.
[2+4 marks]
(f) Assess how the software requirement specification (SRS) document is useful to
WorldVenueQuest(WVQ).
[3 marks]
Question 2
(a) Describe two reasons why software project fails and two reasons why software
project management is difficult. [4 marks]
(b) Explain why the process of project planning is iterative and why a plan must be
continually reviewed during a software project. [2+2 marks]
Page 2 of 6
SOFTWARE ENGINEERING – CSE 2142(3)
Question 2 [Cont’d]
(iii) Give one advantage and one disadvantage of using the Function point
analysis to estimate size of software. [2 marks]
(iv) Given that the unadjusted function points is 243 and the adjustment factor
is 23 and the software for the automated warehouse is to be developed in
java, calculate the size(SLOC) of the program assuming that 1 Function
point is equivalent to 50 lines of code.
[3 marks]
(v) Using the SLOC obtained in part (iv) and an algorithmic model with
Effort =3.0(SKLOC) 1.1, calculate the amount of people required to work on
the project. (Hint: the critical path gives the total duration of the project).
[2 marks]
(vi) Using the SLOC obtained in part (iv) and the basic COCOMO method,
Calculate the total effort in person months and the total development time.
(Hint: use SLOC to get project mode).
[4 marks]
Question 3
(a) With the help of a diagram, explain the different phases in the design process.
[6 marks]
(b) (i) Identify the type of cohesion in Figure 1 and give a brief explanation of this
type of cohesion.
[3 marks]
Figure 1
…/Cont’d next page
Page 3 of 6
SOFTWARE ENGINEERING – CSE 2142(3)
Question 3 [Cont’d]
(ii) Identify the type of coupling in Figure 2 and give a brief explanation of this
type of coupling.
[3 marks]
if empStatus = 1
return(“CEO”);
elif empStatus = 2
return(“Manager”);
elif empStatus = 3
return(“Supervisor”);
End Function
Figure 2
(c) ElectricSys is an application that allows customers to query their electric utility
bills and to perform their payments online. The application allows users to input
their account information, which is used to query the billing information. The
billing details are sent back to the customer in the form of an electronic invoice.
The customer can then decide to pay the bill online or else print a copy of the
invoice for payment at the closest electric utility bill counter. The application
should be scalable to cater for the increasing number of users and accommodate
future services.
(i) Suggest the most suitable architectural design model that can be used for
the ElectricSys application. Justify your answer.
[1+2 marks]
(d) The Capability Maturity Model (CMM) is a methodology used to develop and
refine an organization's software development process. Briefly explain the
different phases in the CMM.
[5 marks]
(ii) A new software has been delivered to a client. If the number of errors
found before delivery = 8 and the number of defects noted after the
delivery = 0, calculate the DRE. Comment on your answer.
[2+2 marks]
Page 4 of 6
SOFTWARE ENGINEERING – CSE 2142(3)
Question 4
(a) Differentiate between white box testing and black box testing.
[2 marks]
Sum = 0
Count = 0
i, a, b = input("Enter i,a,b:")
while (i > 0):
num = input("Enter num:")
if (num >= a and num <= b):
Sum = Sum + num
Count = Count + 1
else:
print "Number is out of range entered"
i=i-1
Average = Sum/Count
print Average
(i) Draw the flow graph for the above code. [7 marks]
(iii) With reference to your flow graph, write down all the different paths that
have to be tested. [4 marks]
(c) You have just been hired as Software Tester at SoftComp Ltd. Your first
assignment concerns the client module of “Pizza home delivery”, that has just
been implemented. The module accepts the name, age and phone number of the
client. The specifications state that (1) name is to be in alphabetic characters from 3
to 30 in length, (2) age may be a value between 18 and 100, and (3) phone numbers
are 7 numeric characters.
(i) Derive the equivalence classes for the above specification. [6 marks]
(ii) Assuming that the inputs are each delimited by a comma, write five (5) test
cases, for which the expected outcome is FALSE/INVALID. You are
required to use the table header below to populate your test cases.
[5 marks]
Page 5 of 6
SOFTWARE ENGINEERING – CSE 2142(3)
Question 5
(a) Requirement engineering builds a bridge from the system requirements into
software design and construction. During validation phase, the work products
produced as a result of requirements engineering are assessed.
(b) During elaboration phase of requirement engineering the software engineer takes
the information obtained during inception and elicitation and begins to expand
and refine it. Elaboration focuses on developing a refined technical model of
software functions, features, and constraints. Explain using an example, how the
technical model is developed.
[5 marks]
(c) You are the project manager of the Pixel software company. The software
company is currently facing financial problems and is being restructured. You
have been asked to lead a team that's developing an online Sales and Inventory
Management System (SIMS). The company has traditionally developed stand-
alone desktop systems and it is the first time that an online system is developed at
Pixel.
(i) Identify and state the five most important risks for the above project. State
the category of each risk identified.
[5 marks]
(ii) Describe one strategy to manage each of the risks identified above.
[5 marks]
(iii) Identify an appropriate indicator for each of the risks to assess whether or
not that risk is becoming more or less probable or whether the effect of the
risk have changed.
[5 marks]
Page 6 of 6