UNIVERSITY EXAMINATIONS: 2016/2017
EXAMINATION FOR THE DEGREE OF BACHELOR OF SCIENCE IN
BIT2106 SOFTWARE ENGINEERING PRINCIPLES
FULL TIME & PART TIME
SPECIAL SUPPLEMENTARY EXAMINATION
DATE: JULY, 2017 TIME: 2 HOURS
INSTRUCTIONS: Answer Question One & ANY OTHER TWO questions.
QUESTION ONE – COMPULSORY (30 MARKS)
a) Describe what a critical system is (3 Marks)
b) Describe three types of critical systems (3 Marks)
c) Every software design approach has its benefits and costs. Illustrate the benefits of designing
a system using the distributed systems approach. (5 Marks)
d) Discuss the following approaches to software testing (8 Marks )
i. Functional testing
ii. Structural testing
iii. Integration testing
iv. Component Testing
e) Suppose you are in charge of the inspection team of your organization’s software
development project. Discuss the various team members and their respective roles that you
would invite to the team. (6 Marks)
f) Describe the viewpoints approach to requirements discovery, giving the types of viewpoint.
QUESTION TWO (20 MARKS)
a) Explain the goals of the following testing strategies (4 Marks)
i. Validation testing
ii. Defect testing
b) Any software systems have two sets of requirements: the user requirements and the system
requirements. Define the system requirements and describe all the types of system
requirements. (5 Marks)
c) Describe the Interview method of discovering the software requirement, highlighting the
following areas: tools used to capture data, types, advantages and disadvantages.
d) State and explain the three key challenges facing software engineering in the 21st century.
QUESTION THREE (20 MARKS)
a) With the aid of a diagram describe the Component Based Software Engineering (CBSE)
process. (8 Marks)
b) Define the term software maintenance. (2 Marks)
c) Describe four types of maintenance stating when each is appropriate (4 Marks)
d) An organization has the following categories of employees. There two broad categories of
employees: Managers and programmers. There are three types of managers: project
managers, department managers and strategic managers Using OOD and UML notation
create a class hierarchy diagram and use it to illustrate the concept of inheritance.
QUESTION FOUR (20 MARKS)
a) Discuss five system characteristics that must be considered in architectural design.
b) Software projects under development will always consume resources, e.g. costs. Describe the
various cost items needed in a software development project. (5 Marks)
c) Differentiate between static and dynamic verification. (4 Marks)
d) Discuss four characteristics of good software. (6 Marks)
QUESTION FIVE (20 MARKS)
a) You are a systems engineer involved in the development of an inventory management
system. During installation you discover that this system will make a significant number of
people redundant. The people in the environment deny you access to essential information to
complete the system installation.
i. To what extent should you, as a system engineer, become involved in making a
decision on an implementation that will make the workers redundant? (4 Marks)
ii. What is your professional responsibility as contracted software engineer?
iii. Should you simply abandon the work until the procuring organization has sorted out
the problem? Justify your answer. (3 Marks)
b. Explain why it is important to produce an overall description of systems architecture at an
early stage in the system specification process. (5 Marks)