2024年1月12日发(作者:)
《软件工程》期中试题
一、选择题:
1. The waterfall model of software development is also known as the ( ) A
A. Classical life cycle model B. Fountain model
C. Spiral model D. Chaos model
2. 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.
3. COCOMO II is an example of a suite of modern empirical estimation models that
require sizing information expressed as ( ) D
A. function points B. lines of code C. application points D. any
of the above
4. An effective risk management plan will need to address which of the following
issues ( ) D
A. risk avoidance B. risk monitoring
C. contingency planning D. all of the above
5. The relationships shown in a data model must be classified to show their
( ) C
A. Width and depth B. Directionality and reliability
C. cardinality and modality D. probability and risk
6. The data dictionary contains descriptions of each software ( )
B
A. configuration item B. data object C. diagram D.
notation
7. The state transition diagram ( ) A
A. indicates system reactions to external events
B. depicts relationships between data objects
C. depicts functions that transform the data flow
D. indicates how data are transformed by the system
8. Which of the following is not an area of concern in the design model ( )
D
A. architecture B. data C. interfaces D. project
scope
9. A program design language (PDL) is often a ( ) A
A. combination of programming constructs and narrative text
B. legitimate programming language in its own right
C. machine readable software development language
D. useful way to represent software architecture
10. What types of errors are missed by black-box testing and can be uncovered
by white-box testing ( ) B
A. behavioral errors B. subtle logic errors C. performance errors
D. input error
11. To achieve high modularity of software components you need C
A. high coupling and high cohesion
B. high coupling and low cohesion
C. low coupling and high cohesion
D. low coupling and low cohesion
12. Which of the following is not an objective for building an analysis model
C
A. define set of software requirements
B. describe customer requirements
C. develop an abbreviated solution for the problem
D. establish basis for software design
13.下图所示的软件模块结构图,该软件的宽度为( )。 D
A.1 B.3 C.5 D.6
14.面向对象的软件工程中,识别主类主要靠( )。 A
A.经验 B.技巧 C.启发式规则 D.面向对象分析理论
15.用例图是( )。 D
A.系统特定行为的描述
B.系统行为之间交互的描述
C.系统和外部实体交互的描述
D.系统特定行为和外部实体以及和其他行为交互的描述
二、简答题:
1.What are the differences between generic software product development and
custom software development
A:The essential difference is that in generic software product development, the
specification is owned by the product developer. For custom product development,
the specification is owned by the customer. Of course, there may be differences
in development processes but this is not necessarily the case.
2.What are the four important attributes which all software products should have
A:For important attributes are maintainability, dependability, efficiency and
usability.
3.A software architecture describes a high-level design view of a software system.
What are the advantages of explicitly describing the architecture independently
from the implementation
参考答案(不够准确):The architecture may have to be designed before
specifications are written to provide a means of structuring the specification
and developing different sub-system specifications concurrently, to allow
manufacture of hardware by sub-contractors and to provide a model for system
costing.
4.Explain why it is important to produce an overall description of a system
architecture at an early stage in the system specification process.
A:An overall architectural description should be produced to identify sub-systems
making up the system. Once these have been identified, they may be specified in
parallel with other systems and the interfaces between sub-systems defined.
5.Requirements should state what a system should do, without stating how it should
do it. Why is this distinction useful
6.Define
black box
and
white box
testing. What are the advantages of each approach
Why are both necessary
7.Full path coverage
testing requires that every possible
path
through the code
be tested at least once. Why is full path coverage testing desirable For the code
fragment above, how many test cases would be needed for full path coverage Why
might full path coverage be impossible to achieve for some programs
8.Why is software maintenance difficult Why is it necessary
9.If you want develop an interactive system that allows railway passengers to
find train times from terminals installed in stations, which generic software
process model that more suitable to management the development process And why
A:Interactive timetable
System with a complex user interface but which must be
stable and reliable. Should be based on throw-away prototyping to find
requirements then either incremental development or waterfall model.
10.Describe four types of non-functional requirements that may be placed on a
system. Give examples of each of these types of requirement.
A:There are many possibilities here. Some suggestions are shown in Figure .
Figure Non-functional requirements
Non-functional
requirement
Performance
Description
Performance requirements
set
out limits to the
performance
expected of the system.
These
may be expressed in
different
ways depending on the type
of
system . number of
transactions processed
per
second, response time to
user
requests, etc.
Defines specific
standards or
methods which must be used
in
the development process
for the
system
Defines requirements
which
relate to the usability of
the
system by end-users.
Description
The system must process at
least 150
transactions per second.
The maximum response time
for any user
request should be 2
seconds.
Implementation The system design must be
developed using
an object-oriented
approach based on the
UML process.
The system must be
implemented in C++,
Version .
All operations which are
potentially
destructive must include
an undo facility
which allows users to
reverse their action.
(This is an example of a
functional
requirement which is
associated with a
Usability
nonfunctional
requirement)
All operations which are
potentially
destructive must be
highlighted in red in the
system user interface.
Safety Safety requirements are
concerned with the
overall safe
operation of the system
The system must be
certified according to
Health and Safety
Regulations XYZ 123.
三、综合题
1.The following table shows the estimated activity durations and pre-requisites
for a project development.
Activity
T1
T2
T3
T4
T5
T6
T7
T8
T9
T10
Description Duration(weeks) Task Pre-requisites
1
1
2
1,2,3,4
5
4,6
6,7
5,6,7
9
Requirements Elicitation 4
Analysis & Design
Install hardware
Design Review
Code & Unit Test
Integration Test
Porting Software
Documentation
Acceptance Test
Install & Train
3
2
1
4
2
1
2
3
2
Draw a activity chart to determine the earliest week of completion, the activities
which have some float or slack, and the activities on the critical path. Draw
a bar chart showing the project schedule.
2.绘制打电话的状态转换图
3.某校教务系统具备以下功能,输入用户ID号及口令后,经验证进入教务管理系统,可进行如下功能的处理:
查询成绩:查询成绩以及从名次表中得到名次信息。
学籍管理:根据学生总成绩排出名次信息。
成绩处理:处理单科成绩并输入成绩表中。
就以上系统功能画出0层,1层的DFD图。
教务系统0层DFD 图
教务系统1层DFD 图
(身份验证处理框对应有一个用户信息的存储,名次表和学生成绩表应用存储的表示法)
4.一个自动化图书馆目录的软件系统要被开发。这个系统将要包含图书馆中所有图书的信息,要求该系统对图书管理员、借阅者和读者都可用。该系统应该支持目录浏览、查询,允许用户发送消息给图书管理员预订一本在借图书。识别出系统描述中应考虑的基本视点,并用视点继承图(层次图)来描述它们之间的关系。 6版题
A:The viewpoints are shown in Figure . Note that system management . those
responsible for installing and maintaining the computer system are a viewpoint
as
well as library staff and library users. Library users have been separately
identified as
browsers and searchers as these operations typically require different types of
services.
Figure Viewpoint hierarchy diagram
5.Develop an object model, including a class hierarchy diagram and an aggregation
diagram showing the principal components of a personal computer system and its
system software.
A:There are many possible organizations for the class hierarchy. I show a simple
one in Figure with only two levels. A three-level hierarchy would also be OK
but more than that would be too much. The aggregation diagram shows the part-of
relationships between objects. This is shown in Figure . Obviously, further
decomposition of the lowest level is possible.
Figure Class hierarchy for a PC
Fig Aggregation diagram for a PC
6.Develop a sequence diagram showing the interactions involved when a student
registers for a course in a university. Course may have limited enrolment, so
the registration process must include checks that places are available. Assume
that the student accesses an electronic course catalogue to find out about
available courses.
A:See Figure .
Figure Sequence diagram of course registration
7.What is the fundamental difference between a fat-client and a thin-client
approach to client-server systems development
A:In a fat-client system, some of the application processing is carried out on
the client whereas in a thin client system only the user interface is displayed
on the client and all of the application processing is carried out on the server.
8.Using the UML graphical notation for object classes, design the following object
classes identifying attributes and operations. Use your own experience to decide
on the attributes and operations that should be associated with these objects:
A printer for a personal computer
A bank account
A:Objects shown in Figure
Figure Objects, attributes and operations
9.请建立下述的图书馆馆藏出版物的对象模型。
一家图书馆藏有书籍、杂志、小册子、电影录影带、音乐CD、录音磁带和报纸等出版物,供读者借阅。这些出版物有出版物名、出版者、获得日期、目录编号、书架位置、借出状态和借出限制等属性,并有借出、收回等服务。
馆藏出版物
出版物名
出版者
获得日期
目录编号
书架位置
借出状态
借出限制
借出
收回
书
作者
杂志
日期
小册子
作者
录像带
电影名
CD
演员名
录音磁带
作者
报纸
日期
发布者:admin,转转请注明出处:http://www.yc00.com/news/1705045338a1388181.html
评论列表(0条)