Cleanroom Software - Software Engineering - Exam Paper, Exams of Software Engineering

These are the Exam Paper of Software Engineering which includes Software Engineering, Building Software, Pivotal Activity, Exhibit High Quality, Software Engineering, Engineering Work, Agile Software, Software Development, Highsmith State etc.Key important poinst are: Cleanroom Software, Official Language, Delegate Speaks, Joincheckoutqueue, Person’S Name, Availability, Maintainability, Claimed Advantages, Developers Willing, Developers Capable

Typology: Exams

2012/2013

Uploaded on 03/25/2013

digvastra
digvastra 🇮🇳

3.8

(36)

186 documents

1 / 5

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Cork Institute of Technology
Bachelor of Science (Honours) in Software Development &
Computer Networking – Award
(NFQ – Level 8)
January 2007
Software Engineering
Time: 2 hours
Answer four questions. Examiners: Mr. J. O’Brien
Dr. J. Buckley
Dr. A. Kinsella
Q1. (a) What is cleanroom software engineering?
[5 marks]
(b) Software reviews act as “filters” for the software engineering process,
purifying the work-products that result from analysis, design, and
implementation. Do you agree/disagree? State your reasons.
[5 Marks]
(c) Describe, briefly, the relationship between cleanroom software
engineering and the following practices:
(i) Object orientation;
(ii) Software reuse;
(iii) Software architecture.
[9 Marks]
(d) Describe the application of statistical testing to cleanroom software
development. Support your answer with suitable illustration(s).
[6 Marks]
pf3
pf4
pf5

Partial preview of the text

Download Cleanroom Software - Software Engineering - Exam Paper and more Exams Software Engineering in PDF only on Docsity!

Cork Institute of Technology

Bachelor of Science (Honours) in Software Development &

Computer Networking – Award

(NFQ – Level 8)

January 2007

Software Engineering

Time: 2 hours

Answer four questions. Examiners: Mr. J. O’Brien Dr. J. Buckley Dr. A. Kinsella

Q1. (a) What is cleanroom software engineering? [5 marks]

(b) Software reviews act as “filters” for the software engineering process, purifying the work-products that result from analysis, design, and implementation. Do you agree/disagree? State your reasons. [5 Marks]

(c) Describe, briefly, the relationship between cleanroom software engineering and the following practices: (i) Object orientation; (ii) Software reuse; (iii) Software architecture. [9 Marks]

(d) Describe the application of statistical testing to cleanroom software development. Support your answer with suitable illustration(s).

[6 Marks]

Q2. (a) Describe, briefly, each of the following identified deficiencies of non- formal software development approaches: (i) Contradiction; (ii) Ambiguity; (iii) Vagueness; (iv) Incomplete statements; (v) Mixed levels of abstraction. [5 Marks]

(b) Consider the following declarations which are part of the description of an international conference:

[PERSON] the set of all possible uniquely identified persons [LANGUAGE] the set of languages of the world

official : P LANGUAGE

______ Conference __________________________ |

| delegates : P PERSON

| official : P LANGUAGE

| speaks : PERSON LANGUAGE |________________________________________________

Write expressions for each of the following,(each expression to be independent of the effect of the other expressions): (i) Every delegate speaks at least one language. (ii) Every delegate speaks at least one official language of the conference. (iii) There is at least one language that every delegate speaks. (iv) There is a delegate who speaks a language that no other delegate speaks. [8 Marks]

(c) A shop has a single check-out which may or may not be open. When it is open it is always staffed by one of the shop’s employees. As customers finish their shopping they queue up at the check-out to pay for their purchases. The following invariants must be satisfied: ¾ either the check-out is not open or the cashier is an employee; ¾ the cashier cannot be in the queue; ¾ a person cannot be in the queue more than once

(ii) Write a Z schema, called ServeCheckOutQueue , that deals with what happens when a person presents him/herself to be served. Four situations can occur, as outlined below: ¾ The person’s name/id is input. The person is at the head of the queue. The till is open. The name is taken from the queue. The other state variables remain unchanged. The message ‘ ok’ is returned.

¾ The person’s name/id is input. The queue is empty. The operation is rejected. The state remains unchanged. The message ‘ empty ’ is returned.

¾ The person’s name is input. The queue is not empty and the person is not at the head of the queue. The operation is rejected. The state remains unchanged. The message ‘ cheat ’ is returned.

¾ The person’s name/id is input. The check-out is closed. The operation is rejected. The state remains unchanged. The message ‘ closed ’ is returned. [12 Marks]

Q3. (a) Currently, more than 300 software engineering standards, developed and maintained by more than 50 different organisations, exist. These standards are inconsistent, overlapping and occasionally contradictory. Standards development organisations are aware of the difficulties and are making progress towards a solution with improved planning and coordination mechanisms. Two standards bodies, in particular, are leading the way, namely: (i) The Software Engineering Standards Committee, SESC, of the Computer Society of the Institute of Electrical and Electronic Engineers, IEEE. (ii) Subcommittee 7 of the Joint Technical Committee 1, created by the International Organisation for Standardisation, ISO, and the International Electrotechnical Commission, IEC, generally referred to as ISO/IEC JTC1/SC7. Describe, in detail, the membership, mission, and approach used by each of the above-identified software engineering standards development bodies. [17 Marks]

(b) (i) What is the purpose of IEEE std 1028-1997? (ii) Give a brief explanation of the underlying concepts of IEEE std. 1028-1997. [8 Marks]

Q4. (a) System architecture affects the performance, robustness, distributability, and maintainability of a system. The particular style and structure selected for an application may depend on non-functional system requirements. What is the impact of the following non-functional requirements on system structure: (i) Performance. (ii) Security. (iii) Safety. (iv) Availability. (v) Maintainability. [10 Marks]

(b) (i) Describe, in detail, the following tiered architectures which can be found in client/server software applications:

1. Two-tier; 2. Three-tier; 3. N-tier. [12 Marks]

(ii) List the claimed advantages and/or disadvantages associated with each of the above-identified tiered architectures. [3 Marks]

Q5. (a) In order for large-scale reuse of software components to become feasible, a number of issues, including searching, needs to be resolved. Searching for a component in a database of available components is possible only if appropriate methods are available to describe the components. If developers don’t know how to specify what they are looking for, there is little chance of them finding it. Describe, in detail, each of the following categories of classification schemes for software components: (i) Enumerated classification; (ii) Faceted classification; (iii) Attribute-value classification. [15 Marks]

(b) In trying to achieve reusability within a specific domain, semantically primitive notions, known to those working within the domain, should be the main focus. For most domains, the right primitives are not immediately obvious; however, as the domain matures a number of stages may be observed. Describe, briefly, the four stages that may be observed as knowledge of a domain develops. [4 Marks]

(c) Software reuse means that developers have to adapt, incorporate, and/or rejuvenate software that was written by other developers. Discuss, briefly, the following important psychological aspects to this process: (i) Are developers willing to do so? (ii) Are developers capable of doing so? [6 Marks]