UNIVERSITY EXAMINATIONS: 2010/2011
SECOND YEAR EXAMINATION FOR THE DEGREE OF
BACHELOR OF SCIENCE IN INFORMATION TECHNOLOGY
BIT 2106: SOFTWARE ENGINEERING PRINCIPLES
DATE: AUGUST 2011 TIME: 2 HOURS
INSTRUCTIONS: Answer question ONE and any other TWO questions
Question One: 30 Marks (Compulsory)
a) Describe a critical system and explain three types of critical system. (8 Marks)
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. (6 Marks)
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 concepts! (6 Marks)
i. Software
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 Marks)
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. (3 Marks)
b) Using a diagram distinguish between thin and fat client architectures. (6 Marks)
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 defects.
i. Describe two faults that you would put in your error check list for your static analysis activity.
(2 Marks)
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 Marks)
b) Discuss four software cost estimation techniques available to the project manager stating when
each is applicable. (8 Marks)
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)