文档库

最新最全的文档下载
当前位置:文档库 > 安徽工业大学软件工程试卷

安徽工业大学软件工程试卷

《软件工程(双语)》复习范围

注意事项:

每个学生必须写上本人的学号、任课教师姓名、姓名、班级,另外所有的答案必须全部写在答卷纸上请不要写的试卷上,试题及答卷一同交上。

Part 1 Select the most appropriate choice to answer the following questions or to complete following statements. (1*15 =15 )

1.About the MVC (Model-View-Controller) pattern, which one of following statements is not right?

a)Separates presentation and interaction from the system data.

b)The system is structured into three logical components that interact with each other. The

Model component manages the system data and associated operations on that data. .

c)The Model component defines and manages how the data is presented to the user..

d)The Controller component manages user interaction (e.g., key presses, mouse clicks, etc.)

and passes these interactions to the View and the Model..

2. The statistical data show that the distribution of maintenance effort is close to? B

a)Fault repair 65%, Software adaptation 18%, Function addition or modification 17%.

b)Fault repair 17%, Software adaptation 18%, Function addition or modification 65%.

c)Fault repair 17%, Software adaptation 65%, Function addition or modification 18%.

d)Fault repair 40%, Software adaptation 40%, Function addition or modification 20%.

3. Which statement is a wrong statement for Waterfall Model?B

a)Inflexible partitioning of the project into distinct stages

b)This model is only appropriate when the requirements are poorly understood

c)This model is difficult to respond to changing customer requirements

d)This model is appropriate when the requirements are well-understood.

4. Which one of following statements is not in the complete test coverage of a class?B

a)Testing all operations associated with an object

b)Setting and interrogating all object attributes

c)Exercising the object in all possible states

d)Testing all the possible objects

5. When we have little experiences about a project, that is to say we know little requirements and are not family with how to develop it. Which model should be adopted? A

a)Formal systems development.

b)Waterfall model.

c)Exploratory development

d)Reuse-oriented development.

Part 2 Mark the right statement √, the wrong statement×(1*15=15)

1.In the software architecture design,using large-grain components improves

performance and maintainability. 错

2. A software process model is an abstract representation of a process. It presents a

description of a process from all perspective.

3.Re-engineering is enhancing the functionality and performance of the system. 错

4.According Lehman and Belady's ‘laws’,over a program’s lifetime, its rate of

development is approximately constant and independent of the resources devoted

to system development. 对

5.The goal of program testing is to show the program is free of defects.

Part 3 Fill the blankets: (1*15=15)

1.Risk management is concerned with identifying risks which may affect the project, there

may be several kinds of risks, including technology risks , people risks ,

organizational risks , tools risks . (requirements risks)

http://www.wendangku.net/doc/e6f88aea25c52cc58ad6be0d.htmlmon activities in object-oriented design processes

include , ,

, , .

Define the context models of the system, Design the system architecture, identify the principal system objects, Develop design models, Specify boject interfaces

3.General issues that affect most software

are , ,

.

Heterogeneity, Business and social, Security and trust.

4. A structured set of activities required to develop a software system, which

are , ______________________,

_____________________.

Specification, development, valodation,evolution.

5.Generic process models

are , , Waterfall model, Evolutionary development, Incremental development, Reuse-based development

6.The stages of development testing

are , ,

.

Unit testing, Component testing, System testing.

7. Exploratory development 、Throw-away prototyping are two kind models of evolutionary model.

7.

8.According to its function, Requirement can be classified as function

requirement, , .

Non-functional requirements, Domain requirements

9.software pricing estimation techniques include ,

________________, Parkinson's Law, ________ ______.

a)Algorithmic cost modelling, Expert judgement, Estimation by analogy

( Pricing to win )

Part 4 Answer the following questions in brief. (5*5=25 )

1.Which approaches to object class identification are introduced in this book?

2.What is Path testing?

Answer:

The bojective of path testing is to ensure that the set of test cases is such that each path through the program is executed at least once.

3.What is architectural patterns?

4.Why software engineering is born?

Answer:

Because of software crisis in the 1960’s, main characteristics are: low quality of software, high costs of software, slow delivery of software. Software engineering is first proposed at a NATO meeting in 1968.

5.What is the difference between software engineering and computer science?

Answer:

Computer science is concerned with theory and fundamentals;

Software engineering is concerned with the practicalities of developing and delivering

useful software.

6.Please answer the stages of waterfall model, and its advantages and disadvantages.

Answer:

Stages :Requirements definition, system and software design, implementation and unit testing, integration and system testing, operation and maintenance

Advantages:Therefore this model is appropriate when the requirements are well-understood, Process is visible and standard and all documennts are formal

Disadvantages:Inflexible partitioning of the project into distinct stages,This makes it difficult to respond to changing customer requirements.

7.What are the two types of software prototyping and the advantages and disadvantages

of software prototyping?

Answer:

two types:

Exploratory development and Throw-away prototyping.

Advantages:

1.Improved system usability

2.Closer match to the system needed

3.Improved design quality

4.Improved maintainability

5.Reduced overall development effort

Disadvantages:

http://www.wendangku.net/doc/e6f88aea25c52cc58ad6be0d.htmlck of process visibility(过程不可见)

2.Systems are often poorly structured(系统结构不好)

3.Special skills (e.g. in languages for rapid prototyping) may be required(需要一些技

巧)

8.What are the five types of interaction styles in user interface design?

Answers:

1.Direct manipulation 直接操作

2.Menu selection 菜单选择

3.Form fill-in 表格填写

http://www.wendangku.net/doc/e6f88aea25c52cc58ad6be0d.htmlmand language 命令语言

5.Natural language 自然语言

9.Please answer the two methods of testing and serial stages of testing.

answers:

two types:

white-box testing and black-box testing.

serial stages of testing:

unit testing, integration testing.

10.Please answer the two methods of testing and serial stages of testing.

Answers:

two types:

white-box testing and black-box testing.

serial stages of testing:

unit testing, integration testing.

11. What is Beta testing?

Answer:

A release of the software is made available to users to allow them to experiment and to raise problems that they discover with the sysytem developers.

Part 5 Solve the following problems(30)

http://www.wendangku.net/doc/e6f88aea25c52cc58ad6be0d.htmling 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 telephone

? a printer for a personal computer

? a personal stereo system

? a bank account

? a library catalogue

Answer:

There are many possible designs here and a great deal of complexity can be added to the objects. However, I am only really looking for simple objects which encapsulate the principal requirements of these artefacts. Possible designs are shown in the above diagram.

2.Design a set of

test data to

accomplish the

path testing

about the

following

program

(Figure 1). (5)

安徽工业大学软件工程试卷

Figure 1 b d

安徽工业大学软件工程试卷

Answer :

A=100

B=100 cover path ace;

A=100

B=80 cover path acde;

A=50

B=100 cover path abce

A=40

B=60 cover path abcde

3.Based on your experience with a bank ATM, draw an activity diagram that models the

data processing involved when a customer withdraws cash from the machine. Answer:

Notice that I have not developed the activities representing other services or failed authentication.

安徽工业大学软件工程试卷

4.Design the web application architecture using the MVC pattern.

5.Based on following data-flow diagram, design its system structure.

安徽工业大学软件工程试卷

安徽工业大学软件工程试卷

安徽工业大学软件工程试卷

6.Based on the above sequence diagram, describe the whole process in detail.

7.

8.Develop a sequence diagram showing the interactions involved when a student

registers for a course in a university. Courses may have limited enrolment, so the

registration process must include checks that places are available. Assume that the

student accesses an electronic course catalog to find out about available courses.

Answer:

A relatively simple diagram is all that is needed here. It is best not to be too fussy about things like UML arrow styles as hardly anyone can remember the differences between them.

安徽工业大学软件工程试卷

9. A bank ATM takes the cash card and read the password, check the id and password, the

ATM let the user to enter the amount of cash to be drawn, The ATM check the balance

of the user account, if the balance is larger than or equal to the amount, then give the

cash and deduct the amount from the account; if the balance is less than the amount,

then return the previous screen. Draw a data-flow diagram about the system.

10. A weather data collection system is required to generate weather maps on a regular

basis using data collected from remote, unattended weather stations and other data sources such as weather observers, balloons and satellites. Weather stations transmit their data to the area computer in response to a request from that machine.

The area computer validates the collected data and integrates it with the data from different sources. The integrated data is archived and, using data from this archive and a digitized map database a set of local weather maps is created. Maps may be printed for distribution on a special-purpose map printer or may be displayed in a number of different formats.

Weather station description

A weather station is a package of software controlled instruments which collects data, performs some data processing and transmits this data for further processing. The instruments include air and ground thermometers, an anemometer, a wind vane, a barometer and a rain gauge. Data is collected every five minutes.

When a command is issued to transmit the weather data, the weather station processes and summarizes the collected data. The summarized data is transmitted to the mapping computer when a request is received.

●Design the architectural model for this weather mapping system (2)

●Design the context model for the weather station (2)

安徽工业大学软件工程试卷

●Design the Use-case model for the weather station (2)

安徽工业大学软件工程试卷

●Design the architectural model for the weather station ((2)

安徽工业大学软件工程试卷

●Identify object classes and design the subsystem of the weather station(7)

安徽工业大学软件工程试卷