Get premium membership and access revision papers, questions with answers as well as video lessons.

Comp 306: Software Engineering I Question Paper

Comp 306: Software Engineering I 

Course:Bachelor Of Science In Computer Science

Institution: Chuka University question papers

Exam Year:2011



CHUKA UNIVERSITY
KAPKWEN@CU2014
UNIVERSITY EXAMINATIONS

THIRD YEAR EXAMINATION FOR THE AWARD OF DEGREE OF
BACHELOR OF SCIENCE IN COMPUTER SCIENCE

COMP 306: SOFTWARE ENGINEERING I

STREAM: B.SC. (COMP. SCIENCE) TIME: 2 HOURS

DAY/DATE: WEDNESDAY 3/8/2011 11.30 A.M. – 1.30 P.M.
INSTRUCTIONS:

• Answer QUESTION ONE and any other TWO questions.
• This is a CLOSED BOOK exam. No reference materials are allowed in the exam room.
• No mobile phone allowed in the exam room (Make sure to switch it off and leave it with the invigilator if you carried one).
• Write your answers legibly and use your time wisely

Question One (Compulsory) [30 marks]

a) What is the difference between Software Engineering and Computer Science?
[2 marks]
b) Why is the primary goal of software development now shifting from producing good quality software to good quality maintainable software? [2 marks]

c) Explain how software differs from a program. [2 marks]

d) Distinguish between generic and customized software products. Which one has larger share of market and why? [4 marks]

e) Distinguish between a milestone and a deliverable. [2 marks]

f) Software engineering is different from other traditional engineering disciplines such as civil engineering. In relation to this, explain any TWO reasons why software managers find software management particularly difficult. [4 marks]

g) Explain the importance of validation testing and defect testing. How do you ascertain the success of each of the two? [4 marks]

h) Requirements should state what a system should do, without stating how it should do it. Why is this distinction useful? [2 marks]

i) Software requirements can be classified as either functional or non-functional requirements. Explain the difference between the two. [4 marks]

j) Explain how you, as a user interface designer, might get feedback on an interface before coding even starts. [2 marks]

k) In relation to objectives of formal methods, explain the difference between verification and validation. [2 marks]


Question Two [20 marks]

a) A software project, regardless of whether large or small, goes through some stages in development. However, various different software development methodology emphasize different phases, in connection to this, your manager would like to know the stages involved in software development regardless of the methodology used. Discuss giving reasons any five phases you think are relevant in any software development process. [10 marks]

b) Discuss the waterfall model in software development and describe its strengths and weaknesses. [10 marks]

Question Three [20 marks]

a) Suppose your company is creating a new application that will make heavy use of user interface features. A decision has to be made on whether to use a standard graphics library which will not do exactly what was initially wanted or to develop a new library which will perfectly fit the new application. Explain TWO reasons why a standard library might be the right choice. [4 marks]

b) Despite the fact that businesses are traditionally very protective of software that they develop, some companies now attempt to develop open source software. State two reasons why these businesses may be better off even though competitors can now use the same software. [2 marks]

c) As a software developer, you are assigned the task of gathering user requirements for the software project you just won. State and explain any three problems you may encounter in developing a requirements document in natural language such as English. [6 marks]

d) Describe the guidelines of writing software requirements. [8 marks]



Question Four [20 marks]

a) In your software project, you are assigned a team of six developers. Since you are expected to work on one project for duration of two months, as a team you need to develop a project plan for the project.

i) Describe any THREE activities you will undertake for effective project planning. [6 marks]
ii) Suppose you discover half way the project, users have changed the requirements; explain what you would do as the project manager. [2 marks]

iii) In your project, explain the process you would consider in order to manage any risks that may surface in the life of the project. [8 marks]

b) In software engineering formal methods are techniques and notations for unambiguous specification of software. Explain any TWO reasons for using formal methods.
[4 marks]


Question Five [20 marks]

a) Why is random testing insufficient even for relatively small programs? [2 marks]

b) Unit testing is the process of testing a single program unit (e.g. a procedure) in isolation from the rest of the program. How would you go about choosing test cases for unit testing? [4 marks]

c) Integration testing can be tacked top-down or bottom-up. Describe each of these strategies. Why is integration testing harder than unit testing? [6 marks]

d) Explain the purpose of each of the following testing strategies.

i) Structural testing [2 marks]
ii) Performance testing [2 marks]
iii) Path testing [2 marks]

e) The company you work for develops internet applications. To reduce time to market, the company is considering dispensing altogether with integration testing. Instead, the company plans to rely on Beta testing, in which free trial versions of new software will be sent to existing, trusted customers to try out, with the agreement that they will report any problems they encounter. What are the advantages and disadvantages of this approach? [4 marks]

KAPKWEN@CU2014
----------------------------------------------------------------------------------------------------------------






More Question Papers


Popular Exams



Return to Question Papers