资源描述
Chapter 1 - Introduction to Software Engineering
Multiple Choices
1. Which question no longer concerns the modern software engineer? (a)
a) Why does computer hardware cost so much?
b) Why does software take a long time to finish?
c) Why does it cost so much to develop a piece of software?
d) Why can't software errors be removed from products prior to delivery?
2. Today the increased power of the personal computer has brought about an abandonment of
the practice of team development of software.(b)
a) True b) False
3. Software is a product and can be manufactured using the same technologies used for other
engineering artifacts.(b)
a) True b) False
4. Software deteriorates rather than wears out because (c)
a) Software suffers from exposure to hostile environments
b) Defects are more likely to arise after software has been used often
c) Multiple change requests introduce errors in component interactions
d) Software spare parts become harder to order
5. Most software continues to be custom built because (d)
a) Component reuse is common in the software world.
b) Reusable components are too expensive to use.
c) Software is easier to build without using someone else's components.
d) Off-the-shelf software components are unavailable in many application domains.
6. The nature of software applications can be characterized by their information (d)
a) complexity b) content c) determinacy d) both b and c
7. Modern software applications are so complex that it is hard to develop mutually exclusive
category names.(a)
a) True b) False
8. The so called "new economy" that gripped commerce and finance during the 1990s died and
No longer influences decisions made by businesses and software engineers.(b)
a) True b) False
9. The functionality of most computer systems does not need to be enhanced the lifetime of the
system.(b)
a) True b) False
10. Change cannot be easily accommodated in most software systems, unless the system was
designed with change in mind.(a)
a) True b) False
11. Most software development projects are initiated to try to meet some business need.(a)
a) True b) False
12. In general software only succeeds if its behavior is consistent with the objectives of its
designers.(b)
a) True b) False
Chapter 2 – A Generic View of Process
Multiple Choices
1. Which of the items listed below is not one of the software engineering layers?(b)
a) Process b) Manufacturing c) Methods d)Tools
2. Software engineering umbrella activities are only applied during the initial phases of software
development projects.(b)
a) True b) False
3. Which of these are the 5 generic software engineering framework activities?(a)
a) communication, planning, modeling, construction, deployment
b) communication, risk management, measurement, production, reviewing
c) analysis, designing, programming, debugging, maintenance
d) analysis, planning, designing, programming, testing
4. Process models are described as agile because they(b)
a) eliminate the need for cumbersome documentation
b) emphasize maneuverability and adaptability
c) do not waste development time on planning activities
d) make extensive use of prototype creation
5. Which of these terms are level names in the Capability Maturity Model?(e)
a) Performed b) Repeated c) Reused d) Optimized
e) both a and d
6. Software processes can be constructed out of pre-existing software patterns to best meet the
needs of a software project.(a)
a) True b) False
7. Which of these are standards for assessing software processes?(e)
a) SEI b) SPICE c) ISO 19002 d) ISO 9001
e) both b and d
8. The best software process model is one that has been created by the people who will actually
be doing the work.(a)
a) True b) False
9. Which of these is not a characteristic of Personal Software Process?(b)
a) Emphasizes personal measurement of work product
b) Practitioner requires careful supervision by the project manager
c) Individual practitioner is responsible for estimating and scheduling
d) Practitioner is empowered to control quality of software work products
10. Which of these are objectives of Team Software Process?(e)
a) Accelerate software process improvement
b) Allow better time management by highly trained professionals
c) Build self-directed software teams
d) Show managers how to reduce costs and sustain quality
e) both b and c
11. Process technology tools allow software organizations to compress schedules by skipping
unimportant activities.(b)
a) True b) False
12. It is generally accepted that one cannot have weak software processes and create high quality
end products.(a)
a) True b) False
Chapter 3 – Process Models
Multiple Choices
1. The linear sequential model of software development is(a)
a) A reasonable approach when requirements are well defined.
b) A good approach when a working program is required quickly.
c) The best approach to use for projects with large development teams.
d) An old fashioned model that cannot be used in a modern context.
2. The linear sequential model of software development is also known as the(e)
a) Classical life cycle model
b) Fountain model
c) Spiral model
d) Waterfall model
e) both a and d
3. The incremental model of software development is(b)
a) A reasonable approach when requirements are well defined.
b) A good approach when a working core product is required quickly.
c) The best approach to use for projects with large development teams.
d) A revolutionary model that is not used for commercial products.
4. The rapid application development model is(c)
a) Another name for component-based development.
b) A useful approach when a customer cannot define requirements clearly.
c) A high speed adaptation of the linear sequential model.
d) All of the above.
5. Evolutionary software process models(d)
a) Are iterative in nature
b) Can easily accommodate product requirements changes
c) Do not generally produce throwaway systems
d) All of the above
6. The prototyping model of software development is (b)
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.
7. The spiral model of software development(c)
a) Ends with the delivery of the software product
b) Is more chaotic than the incremental model
c) Includes project risks evaluation during each iteration
d) All of the above
8. The concurrent development model is(b)
a) Another name for the rapid application development model.
b) Often used for the development of client/server applications.
c) Only used for development of parallel or distributed systems.
d) Used whenever a large number of change requests are anticipated.
9. The component-based development model is(c)
a) Only appropriate for computer hardware design.
b) Not able to support the development of reusable components.
c) Works best when object technologies are available for support.
d) Not cost effective by known quantifiable software metrics.
10. The formal methods model of software development makes use of mathematical methods
to(d)
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
11 Which of these is not one of the phase names defined by the Unified Process model for
software development?(d)
a) Inception phase
b) Elaboration phase
c) Construction phase
d) Validation phase
12 In the Unified Process model requirements are determined iteratively and may span more
than one phase of the process.(a)
a) True b) False
Chapter 6 – System Engineering Test
Multiple Choices
1.Software engineers do not need to consider hardware when designing a computer-based
system.(b)
a) True b) False
2. Which of the following can be elements of computer-based systems?(e)
a) documentation
b) software
c) people
d) hardware
e) all of the above
3. The system engineering process usually begins with the(d)
a) detailed view
b) domain view
c) element view
d) world view
4. To construct a system model the engineer should consider which of the following restraining
factors? (e)
a) assumptions
b) b udget
c) constraints
d) schedule
e) both a and c
5. By following modern system engineering practices simulation of reactive systems is no longer
necessary.(b)
a) True b) False
6. During business process engineering(BPE), three different architectures are examined.(a)
a) applications, data, technology infrastructure
b) communications, organization, financial infrastructure
c) network, database, reporting structure
d) systems, requirements, data structure
7. Which elements of business processing engineering are the responsibilities of the software
engineer?(e)
a) business area analysis
b) business system design
c) construction and integration
d) information strategy planning
e) both b and c
8. The goal of product engineering is to translate the customer's desire for a set of defined
capabilities into a working product.(a)
a) True b) False
9. The architecture components for product engineering are(a)
a) data, hardware, software, people
b) data, documentation, hardware, software
c) data, hardware, software, procedures
d) documentation, hardware, people, procedures
10. The top level of the hierarchical model of a system is known as the (c)
a) AFD
b) DFD
c) SCD (系统环境视图)
d) SFD
11. The system model template contains which of the following elements(d)
a) input
b) output
c) user interface
d) all of the above
12. UML notations that can be used to model the hardware and software elements of a system
are (e)
a) Activity diagrams
b) class diagram
c) Deployment diagrams
d) Use-case diagrams
e) a, b, and c,d
Chapter 7 – Requirements Engineering Test
Multiple Choices
1. Requirements engineering is a generic process that does not vary from one software project to
another.(A)
a) True b) False
2. During project inception the intent of the of the tasks are to determine(E)
a) basic problem understanding
b) nature of the solution needed
c) people who want a solution
d) none of the bbove
e) a, b and c
3. Three things that make requirements elicitation difficult are problems of(e)
a) budgeting
b) scope
c) understanding
d) volatility
e) b, c and d
4.It is relatively common for different customers to propose conflicting requirements, each
arguing that his or her version is the right one.(a)
a) True b) False
5. The result of the requirements engineering elaboration task is an analysis model that defines
which of the following problem domain(s)? (d)
a) information
b) functional
c) behavioral
d) all of the above
6. The system specification describes the (A)
a) Function, performance and constraints of a computer-based system
b) implementation of each allocated system
c) element software architecture
d) time required for system simulation
7. The best way to conduct a requirements validation review is to (d)
a) examine the system model for errors
b) have the customer look over the requirements
c) send them to the design team and see if they have any concerns
d) use a checklist of questions to examine each requirement
8. The use of traceability tables helps to(c)
a) debug programs following the detection of run-time errors
b) determine the performance of algorithm implementations
c) identify, control, and track requirements changes
d) none of the above
9. The nature of collaboration is such that all system requirements are defined by consensus of a
committee of customers and developers. (B)
a) True b) False
10. The job of the requirements engineer is to categorize all stakeholder information in a way
that allows decision makers to choose an internally consistent set of requirements.(a)
a) True b) False
11. A stakeholder is anyone who will purchase the completed software system under
development.(b)
a) True b) False
12. Which of the following is not one of the context-free questions that would be used during
project inception?(b)
a) What will be the economic benefit from a good solution?
b) Who is against this project?
c) Who will pay for the work?
d) Who will use the solution?
13. Developers and customers create use-cases to help the software team understand how
different classes of end-users will use functions.(a)
a) True b) False
14. In collaborative requirements gathering, the facilitator(c)
a) cannot be a member of the software team
b) cannot be a customer
c) controls and facilitates the process
d) must be an outsider
15. Which of the following is not one of the requirement classifications used in Quality Function
Deployment (QFD)?(C)
a) exciting
b) expected
c) mandatory
d) normal
16. The work products produced during requirement elicitation will vary depending on the(B)
a) size of the budget
b) size of the product being built
c) software process being used
d) stakeholders needs
17. Use-case actors are always people, never system devices.(B)
a) True b) False
18. Which of following is not a UML diagram used creating a system analysis model?(C)
a) activity diagram
b) class diagram
c) dataflow diagram
d) state diagram
19. Analysis patterns facilitate the transformation of the analysis model into a design model by
suggesting reliable solutions to common problems.(B)
a) True b) False
20. In win-win negotiation, the customer's needs are met even though the developer's need may
not be.(B)
a) True b) False
21. In requirements validation the requirements model is reviewed to ensure its technical
feasibility.(B)
a) True b) False
Chapter
展开阅读全文