se05.doc

8
The Middle Examination of Software Engineering The Second Term in 2004-2005 Academic Year For the Undergraduates at Yunnan University (120 minutes) Teacher: Li Tong Student Number:__________ Name:____________ School:_________ 1. Multiple Choices (10 Points, Each 0.5 Point): (1) Which of the items listed below is not one of the software engineering layers? a. Process b. Manufacturing c. Methods d. Tools (2) What are the three generic phases of software engineering? a. definition, development, support b. what, how, where c. programming, debugging, maintenance d. analysis, design, testing (3) The prototyping model of software development is a. A reasonable approach when requirements are well defined. b. A useful approach when a customer cannot define requirements clearly. c. The best approach to use for projects with large development teams. d. A risky model that rarely produces a meaningful product. 1

Upload: nguyen-anh-tu

Post on 22-Nov-2015

2 views

Category:

Documents


0 download

TRANSCRIPT

Final Exam

The Middle Examination of Software Engineering

The Second Term in 2004-2005 Academic Year

For the Undergraduates at Yunnan University(120 minutes)Teacher: Li TongStudent Number:__________ Name:____________ School:_________1. Multiple Choices (10 Points, Each 0.5 Point): (1) Which of the items listed below is not one of the software engineering layers?

a. Process b. Manufacturing c. Methods d. Tools

(2) What are the three generic phases of software engineering?

a. definition, development, support b. what, how, where c. programming, debugging, maintenance d. analysis, design, testing

(3) The prototyping model of software development is

a. A reasonable approach when requirements are well defined. b. A useful approach when a customer cannot define requirements clearly. c. The best approach to use for projects with large development teams. d. A risky model that rarely produces a meaningful product.

(4) The formal methods model of software development makes use of mathematical methods to

a. Define the specification for computer-based systems b. Develop defect free computer-based systems c. Verify the correctness of computer-based systems d. All of the above

(5) Use-cases are scenarios that describe

a. how software is to be used in a given situation. b. how CASE tools will be used to construct the system. c. the build plan for a software product. d. the test cases for a software product.

(6) What types of models are created during software requirements analysis?

a. functional and behavioral b. algorithmic and data structure c. architectural and structural d. usability and reliability

(7) The data flow diagram

a. depicts relationships between data objects b. depicts functions that transform the data flow c. specified major logical decisions as they occur d. indicates system reactions to external events

(8) Which of the following is not an area of concern in the design model?

a. architecture b. data c. interfaces d. project scope

(9) To achieve high modularity of software components, you need

a. high coupling and high cohesion b. high coupling and low cohesion c. low coupling and high cohesion d. low coupling and low cohesion

(10) Which of the following is not part of software architecture?

a. algorithm details b. databases c. data design d. program structure

(11) Which of the following is not a fundamental structured programming construct?

a. recursion b. condition c. repetition d. sequence

(12) Which of these are objectives for software testing?

a. determine the productivity of programmers b. eliminate the need for future program maintenance c. eliminate every error prior to release d. uncover software errors

(13) Encapsulation of attributes and operations within an object

a. allows for easy reuse of this information. b. increases the cost of program maintenance. c. is a poor programming practice. d. none of the above

(14) A generalized description of a collection of similar objects is a

a. class b. instance c. subclass d. super class

(15) Which of the following should be considered as candidate objects in a problem space?

a. events b. people c. structures d. all of the above

(16) The first step in any OOA process model are to

a. build an object-relationship model b. define collaborations between objects c. elicit customer requirements d. select a representation language

(17) Which of the following items does not appear on a CRC card?

a. class collaborators b. class name c. class reliability d. class responsibilities

(18) The UML approach to object-oriented design has two major activities.

a. architectural design and object design b. interface design and message design c. message design and system design d. system design and object design

(19) The correctness of the OOA and OOD models is judged based on the

a. models conformance to real world problem domain b. review of the connections between classes c. review of the modeling conventions used d. both a and c

(20) What are the two parallel engineering activities found in the CBSE process model?

a. component-based development and library development b. domain engineering and component-based development c. domain engineering and process development d. none of the above

2. True or False (15 Points, Each 1 Point):(1) The architectural model provides the software engineer with a view of the system as a whole.

a. True b. False

(2) Modern software engineers believe that the only design notation useful for procedural representation is pseudocode.

a. Trueb. False

(3) The cyclomatic complexity of a program can be computed directly from a PDL representation of an algorithm without drawing a program flow graph.

a. True b. False

(4) Boundary value analysis can only be used during white-box testing.

a. True b. False

(5) Drivers and stubs are not needed for unit testing because the modules are tested independently of one another.

a. True b. False

(6) Debugging is not testing, but always occurs as a consequence of testing.

a. True b. False

(7) Operations are object procedures that are invoked when an object receives a message.

a. True b. False

(8) Inheritance provides a mechanism by which changes to lower level classes can be propagated to all super classes quickly.

a. Trueb. False

(9) Object-oriented design achieves low module coupling and provides better information hiding than traditional approaches.

a. True b. False

(10) Object-oriented designs do not need to be implemented using object-oriented programming techniques.

a. True b. False

(11) Class testing for OO software is equivalent to unit testing in conventional software testing.

a. True b. False

(12) Test case design for OO software is driven by the algorithmic detail of the individual operations.

a. True b. False(13) Software is a product and can be manufactured using the same technologies used for other engineering artifacts.

a. True b. False

(14) Adding more people to a project that is already behind schedule is a good way to catch up.

a. Trueb. False

(15) When using structured design methodologies the process of stepwise refinement is unnecessary.

a. True b. False 3. Answer the following questions briefly (45 Points, Each 15 Points):(1) What is a formal technical review and why are users conducted?(2) Explain why encapsulation, inheritance, and polymorphism are three important characteristics of object-oriented systems.

(3) What are the names and contents of the five levels of the SEI Capability Maturity Model?4. (30 Points)Analyse and design a simple management information system of your class using one of structured methodology and OO methodology. The system allows the users to manage personnel information, scores and research projects of the students in your class. Write out the following specifications briefly:(1) Requirements specification,(2) Design specification.PAGE 1