UNIVERSITY EXAMINATIONS: 2012/2013
EXAMINATION FOR THE BACHELOR OF SCIENCE IN
BIT 2106 SOFTWARE ENGINEERING PRINCIPLES
DATE: AUGUST, 2013 TIME: 2 HOURS
INSTRUCTIONS: Answer Question ONE and Any Other TWO Questions
QUESTION ONE: 30 MARKS (COMPULSORY)
a) Describe a critical system stating three types and examples of each critical system.
b) Discuss four types of application architectures used in designing software systems to
meet the needs of various organizations. (8 Marks)
c) Before you carry out the requirements engineering process it is always important to
undertake a feasibility study.
i). What is a feasibility study? (2 Marks)
ii). Discuss three reasons why it is important to carrying out a feasibility study.
d) You are the project manager of a software engineering team. You also charged with
responsibility of selecting the members who will work with you in the team. Discuss
six staff selection factors that you would consider during the exercise. (6 marks)
QUESTION TWO: 20 MARKS
a) Define the following terms (6 marks)
ii). Software engineering
iii). Software process
b) Using a clearly labeled diagram describe the Component-Based Software Engineering
process of developing software, stating two advantages and two disadvantages of the
process . (8 Marks)
c) State and explain three types of interfaces that may be defined during the interface
specification activity. (6 Marks)
QUESTION THREE: 20 MARKS
a) Suppose you are gathering the requirements for a library system and you are required
to use the View Points technique to carryout this activity.
i). Explain what a view point is (2 Marks)
ii). Giving two examples for each discuss the types of view points that you would
discover. (7 Marks)
b) Discuss three interactions styles at the interface stating two advantages and two
disadvantages of each. (6 Mark)
c) Describe the components that make a Distributed System. (5 Marks)
QUESTION FOUR: 20 MARKS
a) Discuss why you would choose to design a system as an objected-oriented system.
b) Using a diagram distinguish between thin and fat client architectures.
c) Distinguish between static verification and dynamic verification. (4 marks )
d) You are involved in the Verification and Validation of a system in order to discover
i). Describe two faults that you would put in your error check list for your static
analysis activity. (2 Mark)
ii). State and explain five guidelines that you would follow when testing in order
to reveal defects. (5 Marks )
QUESTION FIVE: 20 MARKS
a) Assume you are software engineer and you are required to familiarize your self with
the ACM/IEEE codes of ethics. Discuss three principles that you would find in these
documents. (6 Mark)
b) Discuss four software cost estimation techniques available to the project manager
stating when each is applicable. (8 Mark)
c) After the requirements engineering process is complete the SRS is written down.
Describe the document stating the various guidelines you should follow when writing
it. (6 Marks )