


Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Information about an exam held at the cork institute of technology in winter 2009 for the software engineering module (comp7018) as part of the bachelor of science (honours) in software development and computer networking programs. The exam covers topics such as lehman's laws of software evolution, software process frameworks, prescriptive process models, and agile development using scrum. Candidates are required to answer questions related to these topics, including eliciting and understanding requirements, architectural styles, dependencies, and testing.
Typology: Exams
1 / 4
This page cannot be seen from the preview
Don't miss anything!



Semester 1 Examinations 2009/
Module Code: COMP
School: School of Computing and Mathematics
Programme Title: Bachelor of Science (Honours) in Software Development – Stage 3 Bachelor of Science (Honours) in Software Development and Computer Networking – Stage 3
Programme Code: KSDEV_8_Y3 KDNET_8_Y
External Examiner(s): Mr. Anthony O’Leary Internal Examiner(s): Mr. John O’Brien
Instructions: Answer Question 1 and THREE other questions.
Duration: 2 Hours
Sitting: Winter 2009
Requirements for this examination:
Note to Candidates: Please check the Programme Title and the Module Title to ensure that you have received the correct examination paper. If in doubt please contact an Invigilator.
Q1. (a) Over the past 30 years Lehman and his colleagues have performed detailed analyses of “industry-grade” software and systems with a view to developing a unified theory of software evolution. Elaborate, briefly, on each of the following laws which has emerged from this work: i. The Law of Continuing Change (1974). ii. The Law of Increasing complexity (1974). (6 Marks)
(b) A process framework establishes the foundations for a complete software process by identifying a small number of framework activities that are applicable to all software projects. Identify, and elaborate on, the generic process framework activities that are applicable to the development of most computer-based systems. (8 Marks)
(c) Prescriptive process models were originally proposed to bring order to the chaos of software development. History has indicated that these conventional methods have brought a certain amount of useful structure to software teams. Describe the following prescriptive process models which are used by the developers of software solutions: i. Incremental model; ii. Rapid application development model. Your presentation should address, among other issues, the claimed strengths and weaknesses of each of the models. You should also indicate the type of software project where each of the models is likely to be appropriate. Support your presentation with suitable illustrative diagrams. (8 Marks)
(d) Explain how the agile process, for software development, known as Scrum is used in practice. Support your answer with suitable illustration(s).
Q4. (a) Consider the following statement: “The testing of a software system is a destructive activity”. Do you agree/disagree? Justify your answer. (5 Marks)
(b) Describe, in detail, the integration testing approach known as “Smoke Testing”. Your presentation should address, among other issues: i. The steps involved ii. Any advantages and/or disadvantages (8 Marks)
(c) Consider the following definition of software “testability” , as provided by Bach: “Software testability is simply how easily a computer program can be tested.” Identify, and elaborate briefly on, the characteristics of testable software, as documented by Bach. (7 Marks)
Q5. (a) Explain, in detail, how and why each of the following issues contributes to the challenge of maintaining software systems: (i) Documentation that is absent, out-of-date, or insufficient. (4 Marks) (ii) The perception of maintenance as a “second-rate” job. (6 Marks)
(b) (i) Differentiate between W-type, A-type , and L-type systems staff departmentalisation approaches for the organisation of maintenance activities. (6 Marks)
(ii) Elaborate, briefly, on each of the following advantages and/or disadvantages which arise as a result of separating development activities from maintenance activities: ¾ Clear accountability; ¾ Higher-quality user service; ¾ De-motivation of personnel; ¾ Loss of system knowledge when transferred from development to maintenance.