Software Engineering Final Exam Questions

Software Engineering Final Exam Questions

Software Engineering Final Exam Questions (1)

multiple choice questions

1. The existence problem of waterfall model is (B)

A.It is easy for users to participate in the development B. lack of flexibility

C.Easy communication between users and developers D. Adapt to variable needs

2. There is a sharp contradiction between the high cost of developing software and the low quality of the product. This phenomenon is called (C)

A. Software Engineering B. Software Cycle

C. Software crisis D. Software generation

3. The order of data coupling, public coupling, tag coupling, and control coupling from low to high is ( B )

A. data, public, flag, control B. data, flag, control, public

C. Control, data, flag, public D. Control, data, public, flag

4. The most important principle to comprehensively guide the division of modules in the SD method is (D)

A. Program modularization B. High cohesion of modules

C. Module low coupling D. Module independence

5. The purpose of software testing is (B).

A.Evaluate the quality of software B. Find software errors

C.Find all errors in the software D. Prove that the software is correct

6. When designing test cases, (A) is the most commonly used black-box testing method.

A.Equivalence class division B. Boundary value analysis C. Cause and effect diagram D. Decision table

  1. The final result of requirements analysis is to produce (B).

A. Project Development Plan B. Requirements Specification

C. Design specification D. Feasibility analysis report

  1. In the Jackson diagram, if there is a straight line connection between the module boxes, it means that there is (B) between them.

A. Call relationship B. Composition relationship C. Link relationship D. Sequential execution relationship

  1. The main task of software detailed design is to determine (C) of each module.

A. Functionality B. External interface C. Algorithms and data structures used D. Programming

10. In order to improve the maintainability of the software, attention should be paid in the coding phase (D)

A. Save test cases and data B. Improve module independence

C. Side effects of documentation D. Develop a good programming style

11. Assuming that the annual interest rate is i, depositing p yuan now, if compound interest is calculated, the amount of money that can be obtained after n years is (B)

A.p﹡(1+i﹡n) B.p﹡(i+1)n

C.p﹡(1+i)﹡n D.p﹡(i+n)

12. When examining some states of the system involving timing and changes, it is necessary to use a dynamic model to represent them. The dynamic model focuses on the control logic of the system, and it includes two diagrams: one is an event tracing diagram, and the other is (A).

A.State diagram B. Data flow diagram C. System structure diagram D. Timing diagram

  1. The object realizes the combination of data and operation, making data and operation (C) in the unity of object.

A. combine B. hide C. encapsulate D. abstract

  1. The main task of software detailed design is to determine (A) of each module.

A. Algorithms and data structures used B. External interface C. Functionality D. Programming

  1. In the software structure diagram, if there is a straight line connection between the module boxes, it means that (A) exists between them.

A. Call relationship B. Composition relationship C. Link relationship D. Sequential execution relationship

  1. The final result of requirements analysis is to produce (B).

A. Project Development Plan B. Requirements Specification

C. Design specification D. Feasibility analysis report

  1. In the detailed design stage, the tools that are often used are (A).

A. PAD B. SA C. SC D. DFD

18. The process of modifying software due to changes in computer hardware and software environments is called (C)

A. Teaching positive maintenance B. Adaptive maintenance

C. Perfect maintenance D. Preventive maintenance

20. In order to improve the maintainability of the software, attention should be paid in the coding phase (D)

A. Save test cases and data B. Improve module independence

C. Side effects of documentation D. Develop a good programming style

1. The object-oriented development method includes three parts: OOA, OOD and OOP.

2. Benefits are divided into tangible benefits and intangible benefits. Tangible benefits can be measured by indicators such as net income, value of money time, and investment payback period; intangible benefits are mainly measured in terms of nature and psychology, and it is difficult to directly compare quantities.

3. From the perspective of application characteristics, we can divide high-level languages ​​into three categories: basic languages, structural languages, and special-purpose languages.

design questions

The following pseudocode programs are known:

                START

                 I:=1;

                 WHILE i:<=n-1 DO

                        min:=A[i];

                         j:=i+1;

                         WHILEj<=n DO

                             IF min>A[j]

                                 THEN

                                      BLOCK

                                          temp:=min;

                                          min:=A[j];

                                          A[j]:=temp;

                                      ENDBLOCK

                                 ENDIF;

                                 j:=j+1;

                              ENDDO

                              i:=i+1;

                           ENDDO

                           STOP

Requirements: Please use boxplots to describe.

Software Engineering Final Exam Questions (2)

**

1. True or false questions (mark "√" in the brackets for the correct ones, and "×" for the incorrect ones. Each question is worth 1.5 points, a total of 15 points)

**
The Warnier method is also a data structure-oriented design method, and its logic is stricter. (×) The
PAD diagram also allows recursive calls after five basic control structures are set. (×)
In order to speed up the progress of software maintenance tasks , the number of maintenance personnel should be increased as much as possible. (×)
When the acceptance test is passed, the software development is completed. (×)
After the test operation is completed, the comments in the program should be deleted in order to shorten the length of the source program. (×)
System structure A graph is a graphical representation that accurately expresses the program structure. Therefore, sometimes the system structure diagram can also be used as a system flow chart. (×)
When debugging a program, it is more difficult to find out the location and nature of the error than to correct the error. ( √)
The object-oriented design method (OOD) based on object, class, inheritance and communication is also one of the common software outline design methods. (√)
**

2. Multiple choice questions (2 points for each question, 10 points in total)

**
试判断下列叙述中,哪 个(些)是正确的(D)
a,软件系统中所有的信息流都可以认为是事务流
b,软件系统中所有的信息流都可以认为是变换流
c,事务分析和变换分析的设计步骤是基本相似的
A,a B,b C,c D,b和c
进行需求分析可使用多种工具,但(B)是不适用的.
A,数据流图 B,PAD图 C,判定表 D,数据词典
在详细设计阶段,经常采用的工具有(A).
A,PAD B,SA C,SC D,DFD
详细设计的结果基本决定了最终程序的©
A,代码的规模 B,运行速度 C,质量 D,可维护性
使用白盒测试方法时,确定测试数据应根据(A)和指定的覆盖标准.
A,程序的内部逻辑 B,程序的复杂程度
C,该软件的编辑人员 D,程序的功能

三,多项选择题(每题2分,共10分.注:正确得2分,漏选得1分,多选,错选不得分.)

(ABCD) can be used as a module.
A, subroutine B, function C, process D, compiled file
which of the following tests belong to black box testing (BCD).
A, path test B, equivalence class division C, boundary value analysis D, error Speculation E, cyclical testing
The following are methods of measuring benefits (ABCD).
A, time value of money B, investment payback period C, income D, return on investment
The strategy of software maintenance includes (BCD).
A, regular inspection and maintenance B , corrective maintenance C, adaptive maintenance D, complete maintenance
The following belongs to the software testing process (ABE).
A, unit testing B, assembly testing C, kernel testing D, legal verification E, confirmation testing

4. Short answer questions (6 points for each question, 24 points in total)

1. There are several types of coupling and cohesion. The degree of coupling and the order of cohesion strength Answer
: Low: Indirect coupling, data coupling, label coupling, control coupling, external coupling, public coupling, content coupling:
high strength : Functional cohesion, information cohesion, communication cohesion, process cohesion, time cohesion, logical cohesion, accidental cohesion: weak 2. Please give an example to explain what
is polymorphism and what is overloading
Answer: polymorphism is It means that the subclass object can be used like the parent class object, and the same message can be sent to both the parent class object and the subclass object. That is to say, a behavior (method) can be shared (common) in different levels of the class hierarchy ), but each class in different levels implements this behavior according to its own needs. When an object receives a message sent to it, it dynamically selects the implementation defined in the class according to the class to which the object belongs. Algorithm.
3. Overloading means that there are multiple methods with the same name in a class, but there are differences in the number or type of operands. Example:
public class A{ int age; String name; public void setValue(int i) { age=i; } public void setValue(String s) { name=s; } 4. What is a data dictionary Briefly describe the relationship between the data dictionary and the data flow diagram. Answer: The data dictionary is a collection of information about data, and it is important for data flow Complete definitions and descriptions of each element in the diagram are supplementary tools for the data flow diagram. (2 points) The data flow diagram and the data dictionary together constitute the logical model of the system. Without the data dictionary, the data flow diagram is not strict, but without data The flow graph data dictionary is also difficult to play a role. The data flow graph and the precise definition of each element in the data flow graph can together form the specification of the system. (3 points) 5. Briefly describe the importance of coding style .









Answer: Reading programs is an important part of the software development and maintenance process, and programs are actually articles for people to read. You should pay attention to the style of programs when writing programs, which will greatly reduce the time people spend reading programs. A good coding style helps to write a reliable and easy-to-maintain program, and the coding style largely determines the quality of the program.
What is the difference between object-oriented testing and testing in traditional development methods
Answers: (1) Two Either can be divided into four stages. But the smallest unit of traditional testing is the module, and in the object-oriented environment, the smallest testable unit is the encapsulated class or object, not the program module. (2) Because object-oriented software There is no hierarchical control structure, so traditional top-down and bottom-up assembly strategies make little sense. Assembling operations into classes one at a time (like traditional multiply There are various direct and indirect interactions between the various components of a class. There are two different testing strategies for assembly testing of object-oriented systems.

Software Engineering Final Exam Paper (3)

2004 final exam in the second half of the year

(Open Education Undergraduate) Computer Science and Technology

"Software Engineering" Exam Question B

                                                      2005年1月

Question number

one

two

three

Four

five

six

total score

fraction

1. Fill in the blanks (1 point for each blank, 20 points in total)

1. The software life cycle can generally be divided into __________, feasibility study, design, coding , operation and maintenance phases.

2. The IPO chart consists of three boxes __________, __________, and __________.

3. Software = __________ + __________.

4. The methods of software testing are __________ and __________ (that is, black box method).

5. In addition to expressing program structure, Jackson diagram can also express __________.

6. Detailed design tools include graphics tools, and .

7. __________ and __________ together form the logical model of the system.

8. There are mainly three types of cost estimation methods: __________, __________ and algorithmic model estimation.

9. Graphical tools commonly used in the requirements analysis stage are __________, __________, and __________.

Answer: Fill in the blanks (1 point for each blank, 20 points in total)

1. Problem Definition Requirements Analysis Test

2. Input processing output

3. Program documentation

4. Analytical methods are not analytical methods

5. Data structure

6. Form tool language tool

7. Data flow graph data dictionary

8. Top-down estimation and bottom-up estimation

9. Hierarchical block diagram Warnier diagram IPO diagram

2. Multiple-choice questions (2 points for each question, 10 points in total)

A system flow chart is a traditional tool for drawing ( ).
A. Logical system B. Data structure C. State transition D. Physical system

The most independent of the following modules is ( )
A, non-direct coupling B, data coupling C, public coupling D, content coupling

Which of the following phases does not belong to the three phases of the software life cycle ( ).
A. Planning stage B. Development stage

C. Coding phase D. Maintenance phase

There are three common software outline design methods, among which the module structure is constructed based on the data flow diagram ( ).
A. Jackson method and LCP (Wanier) logic construction method

B. Structured Design Approach (SD)

C. Object-Oriented Design (OOD)

D. Rapid prototyping

When using the white box testing method, determine the test data should be based on ( ) and specified coverage criteria.
A. The internal logic of the program B. The complexity of the program

C. The editor of the software D. The function of the program

Answer: 1, D2, A3, C4, A5, A

3. Multiple choice questions (2 points for each question, 10 points in total)

( ) can be used as a module.
A. Subroutine B. Function C. Process D. Compiled file

The correct description about content coupling is ( ).
A. Content coupling is the highest degree of coupling

B. High-level languages ​​are generally designed to allow the formation of content coupling

C. Content coupling should be used as much as possible

D. If a module can directly call another module, it can be called content coupling

Which of the following belongs to the method of measuring benefits is ( ).
A. Time value of money B. Payback period

B. Income D. Return on investment

Software maintenance strategies include ( ).
A. Regular inspection and maintenance

B. Corrective maintenance

C. Adaptive maintenance

D、 perfect maintenance

Which of the following does not belong to the software testing process is ( ).
A. Unit test B. Assembly test C. Kernel test D. Legal verification

答:1、ABCD 2、AD 3、ABC 4、BCD 5、CD

4. True or False Questions

(Please mark "√" in the brackets for the correct ones, and "×" for the incorrect ones. 2 points for each question, 20 points in total)

The Warnier method is also a data structure-oriented design method with stricter logic. ( )
The PAD diagram also allows recursive calls after five basic control structures are set. ( )
In order to speed up the progress of software maintenance operations, the number of maintenance personnel should be increased as much as possible. ( )
When the acceptance tests pass, software development is complete. ( )
After the test operation is completed, the comments in the program should be deleted in order to shorten the length of the source program. ( )
The connection between modules should be strengthened during the overall design. ( )
A system structure diagram is a graphical representation that accurately expresses the structure of a program. Therefore, sometimes the system structure diagram can also be used as a system flow chart. ( )
When testing with the black box method, the test cases are designed according to the internal logic of the program. ( )
When debugging a program, it is more difficult to find out the location and nature of the error than to correct the error. ( )
The object-oriented design method (OOD) based on objects, classes, inheritance and communication is also one of the common software outline design methods. ( )
Answer: 1-5: √√××× 6-10: ×××√√

5. Short answer questions (5 points each, 20 points in total)

1. What is a software crisis? Why does a software crisis occur?

Answer: Software crisis refers to a serious system problem encountered in the process of software development and maintenance. It mainly includes two problems, one is how to develop and utilize software, and the other is how to maintain the existing software that is constantly expanding. The causes of software crisis The reason, on the one hand, is related to the characteristics of the software itself, and on the other hand, it is related to the incorrect method of software development and maintenance.

2. What is the software life cycle? Which parts are included?

Answer: A piece of software has to go through a long period from definition to development, use and maintenance, until it is finally abandoned. This long period that software goes through is usually called the life cycle. The software life cycle is the whole process from proposing a software product until the software product is eliminated. It includes planning, requirements analysis, software design, programming, software testing, operation and maintenance, etc.

3. What is Black Box Testing?

Answer: The black-box testing method regards the program as a black box and does not consider the internal structure and processing process of the program at all. It only checks whether the program function can be used normally according to the specifications, whether the program can properly receive input data, and generate Output information correctly.

4. How many types of coupling and cohesion are there? What is the order of coupling degree and cohesion strength?

Answer: Low: Indirect Coupling® Data Coupling® Tag Coupling® Control Coupling® External Coupling® Public Coupling® Content Coupling: High

Strong: Functional Cohesion® Information Cohesion® Communication Cohesion® Process Cohesion® Temporal Cohesion® Logical Cohesion® Coincidence Cohesion: Weak

6. Analysis and design questions (20 points in total)

(8 points) Assuming that the investment in developing a computer application system is 3,000 yuan, after the computer application system is put into use, it can save 1,000 yuan a year, and may save 5,000 yuan in 5 years. 3,000 yuan is the money invested now, and 5,000 yuan is the money saved in 5 years. Assuming that the annual interest rate is 12%, please calculate the net income, investment recovery period, and investment recovery rate of the system.
answer:

Year

save

interest rate

current value

cumulative present value

1

1000

1.12

892.86

892.86

2

1000

1.25

800.00

1692.86

3

1000

1.40

714.29

2407.15

4

1000

1.57

636.94

3044.09

5

1000

1.76

568.18

3612.27

Calculate the net income of the system: 3612.27-3000=612.27

Payback period: 3+(3000-2407.15)/(3044.09-2407.15)=3.93

return on investment r

3000=1000/(1+r)+1000/(1+r)2+1000/(1+r)3+1000/(1+r)4+1000/(1+r)5

The solution is r=20%

Find the maximum number in a group of arrays, the array is expressed as A(n), n=1, 2...n natural numbers. (12 points)

  1. Please draw a flow chart of the program (4 points)

  2. Please draw the NS diagram of the algorithm (4 points)

  3. Please use the PAD diagram to represent the algorithm (4 points)

Answer: (1)

(2)

(3)

1. Short answer questions (25%, 5 points for each question):

1. Please briefly explain the three levels of needs analysis including those main contents.

Software requirements include three different levels—business requirements, user requirements, and functional requirements—also including non-functional requirements.

Business requirements reflect the high-level target requirements of organizations or customers for systems and products.

User requirements documents describe the tasks that users must complete to use the product.

Functional requirements define the software functions that developers must implement to enable users to complete their tasks, thus satisfying business needs.

2. Why design modules with strong independence and how to judge the independence of modules?

3 points for first, 1 point for coupling, 1 point for cohesion

Strong module independence means: (1) easy system development (2) high system reliability (3) easy system maintenance

The basic principle for judging the independence of modules: "small coupling, large cohesion"

3. Why must a subclass instantiated from an existing class be retested if the existing class is already thoroughly tested?

 使用的场景:3分.   2分

 因为父类和子类的运行环境是不同的。

 另外,如果是多重继承会显著地增加派生类的复杂程度,导致一些难以发现的隐含错误。

4. To develop software of "very good" quality, analyze its pros and cons from a software engineering perspective.

 利:3分;弊:2分

 利:容易维护,用户比较满意

 弊:成本高,周期长

5. When using the object-oriented method to design a software system, the division of subsystems is usually divided horizontally or vertically. Please explain the characteristics of the subsystems obtained by these two divisions.

c/s: 3 points, p2p: 2 points

P2P of the horizontal partition system: Each word system can call any other subsystem, which is more complicated than c/s and may deadlock.

Vertically divide c/s: the client calls the server, the server provides the service, and returns the result. The client needs to know the server's interface, and the server doesn't have to know the client's interface.

2. Application questions (45%, 10 points for each small question 1-3, 15 points for 4 small questions)

1. The company plans to use new technology to develop a new mobile phone software product, hoping to occupy the market as soon as possible. Suppose you are a project manager, which software process model would you choose? Why?

选模型:5分;原因:5分

Selected model: Incremental model/incremental + prototype/spiral model, etc. can be used. But it is not suitable if rapid development is adopted.

Reasons for analysis: The technology is relatively new and needs to occupy the market quickly, so the prototype of the product or the usable subsystem should appear in a short period of time.

2. Please draw a task network diagram, a Gantt chart, identify critical paths and phase milestone positions according to the task schedule below.

mission name

start date

end date

demand analysis

2008.3.1

2008.3.13

Test Plan

2008.3.13

2008.3.15

outline design

2008.3.13

2008.3.16

detailed design

2008.3.16

2008.3.20

coding

2008.3.20

2008.3.26

Test plan design

2008.3.16

2008.3.19

product testing

2008.3.26

2008.3.30

Documentation

2008.3.28

2008.3.30

Task network diagram:

Task network diagram 3 points

Gantt chart 3 points

Identify the critical path 2 points

Stage milestone position 2 points.

3. Consider a program that reads in three integers representing the three sides of a triangle. The output indicates whether the triangle is irregular, isosceles, or equilateral. Please use the black-box equivalence class division method to design a set of test cases.

不规则:3 4 5

Isosceles: 3 3 4

Equilateral: 3 3 3

Others: 1 9 2

不规则的3分

isosceles 3 points

equilateral 3 points

other 1 point

4. Design a simplified online personal bank inquiry system, users can inquire their account details, balance and change password through the Internet.

(1) Using a structured approach: 7 points

1) Please draw the ER diagram for 2 points

Layer 0 and Layer 1 of the DFD graph. 3 points

2) Write a data dictionary of two keyword entries. 2 minutes

Data Dictionary:

Name: Account

Alias: None

Where/How to use: Required to log in to account

Description: The unique identifier of the account, each account corresponds to an account number

  帐号= 12个数字

Name: Account Password

Alias: None

Where to use/how to use: Enter when logging in to the account; enter when changing the password, and save it to the account database after the modification is successful

Description: Password = 6 letters

(2) Adopt object-oriented method: 8 points

1) Please draw a use case diagram of the system; 2 points

2) Identify the main categories of the system 2 points

User、Account、DetailItem

Mainly include users, accounts, income and expenditure details and other categories.

And draw the two class diagrams (including the main attributes and operations). 2 minutes

3) Draw a UML sequence diagram to describe a specific interaction of querying the balance through online banking. 2 minutes

Software Engineering Final Exam Paper (5)

1. Fill in the blanks

1. Software development models include waterfall model, spiral model, fourth-generation technology model, prototype model, component assembly model, and hybrid model.

2.可行性研究一般可以从      经济    可行性、       技术  可行性、运行可行性、法律可行性和开发可行性等方面来研究。

3.现在向银行存款,年利率为i,若希望在n年后从银行得到F元,现在应该存入的钱数为   F/(1+i)n       。

4.数据流图的基本符号包括数据输入的源点和数据输出的汇点    加工    数据流    数据存储文件

5.Jackson图除了可以表达程序结构外,还可以表达   数据结构       ,它首先要分析  数据结构        ,并用适当的工具来描述。

6.详细设计的工具有    图形工具           、表格工具和      语言工具        。

7.IPO图由   输入       、处理和     输出      三个框组成。这个图的特点是能够直观的显示三者之间的关系。

8.面向对象技术是一整套关于如何看待   软件系统         和现实世界           的关系,以什么观点来研究问题并进行分析求解,以及如何进行系统构造的软件方法学。面向对象方法是一种运用对象、   类    、继承   、 封装、聚集、消息传送、多态性等概念来构造系统的软件开发方法。

2. Single choice questions

1.下列(      A  )属于系统软件。

WINDOWS 2000
Word
Flash
3D MAX

2. Which of the following diagrams is a component of N-S diagrams (C).

3. For the spiral model, the following (D) is not an activity expressed in Cartesian coordinates.

A. Make a plan B. Implement the project

C. Risk Analysis D. Program Coding

Three, multiple choice questions

1.软件危机可以表现为(  ABCD        )。

A.The product does not meet the user's needs

B.The quality of the software product is poor

C.Poor software maintainability

D.software is expensive

2. A Jackson diagram may generally include (ABCD).

A.Header

B. face

C.Table Name

D.field name

3.关于内容耦合的描述正确的是(  AD  )。

  A、内容耦合是最高程度的耦合

  B、应该尽量使用内容耦合

  C、高级语言一般设计成允许内容耦合的形式

  D、如果一个模块有多个入口,可能发生内容耦合

4. The following are non-standard writing formats (BCD).

  A、书写时适当使用空格分隔

  B、一行写入多条语句

  C、嵌套结构不使用分层缩进的写法

  D、程序中不加注释

4. True or False Questions

(Tick "√" in the brackets for the correct ones, and "" for the wrong ones)

1. The software life cycle is the entire period from the beginning of software development to the end of development. (×)

2. System flowchart is a typical traditional tool for describing logic system. ( × )

3. The data flow diagram and the data dictionary together constitute the logical model of the system. (√)

4. Fan-out is the number of modules directly called by a module, and the recommended fan-out is generally 3 or 4. (√)

5. Coupling is used to measure how closely the various elements within a module are combined with each other. (×)

6.程序运行过程中出现错误叫做容错。                               (  ×  )

7.软件测试的目的是证明程序没有错误。                             (   × )

8.白盒测试法是将程序看成一个透明的盒子,不需要了解程序的内部结构和处理过程。

                                                                  (   × )

5. Quiz

1. What is software life cycle.

Answer: A software goes through a long period from definition to development, use and maintenance, until it is finally discarded. This long period of software is usually called the life cycle. The software life cycle is the whole process from proposing a software product until the software product is eliminated.

2. In the requirements analysis stage, what is the specific method of establishing the logical model of the target system.

A: A system flow diagram is a traditional tool for describing a physical system. Its basic idea is to use graphical symbols to describe each component (program, file, database, table, manual process, etc.) in the system in the form of a black box. The system flow chart expresses the information flow of the components, not the control process for processing the information.

3. Why should the data flow diagram be layered?

Answer: In order to express the data processing situation of the data processing process, it is not enough to use a data flow diagram. In order to express a slightly complicated practical problem, it is necessary to decompose step by step according to the hierarchical structure of the problem, and reflect this structural relationship with a hierarchical data flow diagram.

4. What problems does the quality of the software reflect?

Answer: Software requirements are the basis for measuring software quality, and software that does not meet the requirements does not have quality.

在各种标准中定义了一些开发准则,用来指导软件人员用工程化的方法来开发软件。

如果不遵守这些开发准则,软件质量就得不到保证。

往往会有一些隐含的需求没有明确地提出来。如果软件只满足那些精确定义了的需求而没有满足这些隐含的需求,软件质量也不能保证。

软件质量是各种特性的复杂组合。它随着应用的不同而不同,随着用户提出的质量要求不同而不同。

软件工程期末试卷(六)

软件工程导论试题

一.选择

1、瀑布模型把软件生命周期划分为八个阶段:问题的定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试和运行、维护。八个阶段又可归纳为三个大的阶段:计划阶段、开发阶段和( C)。
A、详细计划 B、可行性分析

C、 运行阶段 D、 测试与排错

2、从结构化的瀑布模型看,在它的生命周期中的八个阶段中,下面的几个选项中哪个环节出错,对软件的影响最大(C )。
A、详细设计阶段 B、概要设计阶段

C、 需求分析阶段 D、 测试和运行阶段

3、在结构化的瀑布模型中,哪一个阶段定义的标准将成为软件测试中的系统测试阶段的目标(A )。
A、 需求分析阶段 B、 详细设计阶段

C、 概要设计阶段 D、 可行性研究阶段

4、软件工程的出现主要是由于(C )。
A.程序设计方法学的影响 B.其它工程科学的影响

C. 软件危机的出现 D.计算机的发展

5、软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是(C )
A、 硬件环境 B、软件开发的环境
C、软件开发工具和软件开发的环境 D、 开发人员的素质

6、软件开发常使用的两种基本方法是结构化和原型化方法,在实际的应用中,它们之间的关系表现为 ( B)
A、 相互排斥 B、 相互补充

C. Use independently D. Use alternately

7. UML is an important tool in software development. Which software development method is it mainly used in (C) A.
Structural method based on waterfall model B. Prototype method based on dynamic definition of requirements
C. Object-oriented object-oriented Method D, data-based data flow development method

8. Among the following software development methods, which one has the highest requirements for software design and development personnel (B)
A, structured method B, prototyping method C, object-oriented method D, control flow method

9. The structured analysis method is a method that strictly defines the requirements in advance. It emphasizes the analysis object (B)
A, control flow B, data flow C, program flow D, and instruction flow during implementation.

10. The structured life cycle method of software development divides the software life cycle into (A)
A, planning phase, development phase, operation phase B, planning phase, programming phase, testing phase
C, overall design, detailed design, programming debugging D , requirements analysis, function definition, system design

11. The structured life cycle method often used in software development is generally called (A)
A, waterfall model B, object model C, spiral model D, hierarchical model due to its characteristics

12. The waterfall model of software development generally divides the development process into stages: analysis, design, coding, and testing. It is generally believed that the stage that may occupy the most personnel is (C) A, analysis stage B, design stage C, and coding
stage D. the testing phase

2. Fill in the blanks

twenty one. The system flow chart is a traditional tool to describe the physical model, and each element in the system is represented by graphical symbols to express the (information flow) situation between various elements in the system.

[Analysis] The system flow chart is a traditional tool for describing the physical system. It uses graphic symbols to represent each element in the system, such as manual processing, data processing, database, files, equipment, etc., and expresses the flow of information between elements.

twenty two. The purpose of cost-benefit analysis is to evaluate whether it is feasible to develop a project from an (economic) point of view.

[Analysis] Cost-benefit analysis is to first estimate the development cost of the system to be developed, and then compare and weigh it with the possible benefits. Its purpose is to evaluate the feasibility of developing a new software project from an economic point of view.

twenty three. The top-down combined incremental testing method has two combination strategies when combining modules: depth-first strategy and (breadth-first strategy).

[Analysis] The incremental testing method has two methods of assembling modules: top-down integration and bottom-up integration, among which top-down integration is an incremental way to construct the program structure, without writing a driver module, Only stub modules need to be written. It starts from the main control module, according to the control hierarchy of the software, and gradually integrates each module together with the strategy of depth-first or breadth-first.

twenty four. A stand-alone path is a path that includes a set of statements or conditions that have not been processed before. From the program graph, an independent path is a path that contains at least one edge (not in other independent paths).

[Analysis] In the basic path test, based on the detailed design or the source program, the topology structure of the control flow diagram—the program diagram is derived. After calculating the cycle complexity of the program diagram, determine the basic path that only includes independent paths graph, where an independent path is a path that includes a set of statements or conditions that have not been previously processed. From the perspective of the program graph, an independent path is a path that contains at least one edge that has not been seen in other independent paths.

25.Assembly language is (machine-oriented), and can perform special functions that cannot be performed by high-level languages, such as some interface work with external devices.

[Analysis] Assembly language is a low-level language and a machine-oriented language. Compared with high-level languages, it has many advantages: such as flexible operation, it can directly affect the lowest layer of hardware, and complete the interface work with external devices, etc. It is the only language that can use computer hardware features to directly control hardware devices.

26.The specific way to resolve structural conflicts in JSP methods is (intermediate data structure or intermediate file).

[Analysis] The JSP method is a data structure-oriented design method. It defines a set of mapping process guided by the data structure. According to the input and output data structure, it is mapped into the process description of the software according to certain rules. The specific way to solve the structure conflict in the JSP method is to introduce an intermediate data structure or an intermediate Files separate the conflicting parts, establish multiple program structures, and then use intermediate files to link them to form a system as a whole.

27.The task of detailed design is to determine the internal characteristics of each module, that is, the algorithm, (data used) of the module.

[解析]详细设计的基本任务是为每个模块进行详细的算法设计,为模块内的数据结构进行设计,确定每个模块的内部特性,包括模块的算法和使用的数据。对数据库进行物理设计等。

28.所有软件维护申请报告要按规定方式提出,该报告也称(  软件问题 )报告。

[解析]在软件维护的流程中,第一步就是制定维护申请报告,也称为软件问题报告,它是维护阶段的一种文档,由申请维护的用户填写。

29.有两类维护技术:在开发阶段使用来减少错误、提高软件可维护性的面向维护的技术;在维护阶段用来提高维护的效率和质量的( 维护支援 )技术。

[解析]面向维护的技术涉及软件开发的所有阶段,能够减少软件错误,提高软件的可维护性。而维护支援技术则包含信息收集,错误原因分析,维护方案评价等项,是在软件维护阶段用来提高维护效率和质量的技术。

30.科学工程计算需要大量的标准库函数,以便处理复杂的数值计算,可供选择的语言有:( FORTRAN语言)、PASCAL语言、C语言和PL/1语言。

[解析]计算机语言根据不同行业的需求,使用的侧重点也不尽相同,在办公管理方面,一些数据库语言如FOXPRO、ORICAL有很多的应用,在工程行业,计算机语言的科学计算能力就显得格外重要,如MATLAB、PL/1、FORTRAN语言都是工程计算中常用的语言。

三.判断

1.软件的开发与运行经常受到硬件的限制和制约。(√)

2.模块内的高内聚往往意味着模块间的松耦合。(√ )

3.Jackson图只能表达程序结构,不能表达数据结构。(X)

上述数据流图表示数据A和B同时输入变换成C。(X )

5.软件的质量好坏主要由验收人员负责,其他开发人员不必关心。(X )

6.判定覆盖不一定包含条件覆盖,条件覆盖也不一定包含判定覆盖。(√)

7.应该尽量使用机器语言编写代码,提高程序运行效率,而减少高级语言的使用。(X)

8.UML只能应用于软件系统模型的建立。(X)

9.容错就是每个程序采用两种不同的算法编写。(X)

10.软件测试的目的是为了无一遗漏的找出所有的错误。(X)

四、名词解释题(本大题共5小题,每小题3分,共15分)

31.软件开发环境

32.错误推测法

33.黑盒测试法

34.软件质量保证

35.瀑布模型

31.经济可行性

解:进行开发成本的估算以及了解取得效益的评估,确定要开发的项目是否值得投资开发。

[解析]对于一个系统所必须要衡量的是经济上是否合算,经济可行性的范围很广,包括效益分析、潜在市场前景等。

32.社会可行性

解:要开发的项目是否存在任何侵犯、妨碍等责任问题,要开发项目目的运行方式在用户组织内是否行得通,现有管理制度、人员素质、操作方式是否可行。

[解析]社会可行性包括合同、责任、侵权等技术人员不甚了解的诸多问题。

33.投资回收期

解:投资回收期就是使累计的经济效益等于最初的投资费用所需的时间。

[解析]通常我们用投资回收期来衡量一个开发项目的价值,投资回收期越短,就越快获得利润。

34.对应关系

解:即有直接因果关系在程序中可以同时处理。

[解析]对应关系是指数据单元在数据内容上、数量上和顺序上有直接的因果关系,对于重复的数据单元,重复的次序和次数都相同才有对应关系。

35.结构冲突

解:输入数据与输出数据结构找不到对应关系的情况,称为结构冲突。

[解析]使用JSP方法时会遇到此类结构冲突问题,对此,Jackson提出了引入中间数据结构或中间文件的办法,将冲突部分分隔开来,建立多个程序结构,再利用中间文件把它们联系起来,构成一个系统的整体。

五、图 a 中,模块 G 为判定,判断涉及到模块 B、F、G,请指出设计中的错误,再根据

改进模 块图的基本原则,画出 1~2 个改进方案(不改变模块 G 的判断关系),并说明是按照

哪条基本 原则进行改进的。

解:图 b 为一个改进方案,将模块 G 的位置提高,使其作用范围为控制范围的子集,减

少模块 之间的联系。

40.请使用PAD图和PDL语言描述在数组A(1)~A(10)中找最大数的算法。

解:PDL语言:

N=1

WHILE N<=10 DO

IF A(N)<=A(N+1) MAX =A(N+1);

ELSE MAX =A(N) ENDIF;

N=N+1;

ENDWHILE;

PAD图:

[解析]人工查找时,是从第一个元素开始查找,用当前元素与下一个元素比较,将较大者作为当前元素又与下一元素比较,如此循环,直到数组末尾。

41.根据下列条件使用等价类划分法设计测试用例。

某一8位微机,其八进制常数定义为:以零开头的数是八进制整数,其值的范围是-177~177,如05,0127,-065

解:(1)划分等价类并编号,如下表示:(4分)

(2)为合理等价类设计测试用例,表中有两个合理等价类,设计两个例子(2分)

(3)为不合理等价类测试用例,至少设计一个测试用例(2分)

[解析]等价类划分属于黑盒测试的一种,它将输入数据域按有效的或无效的划分成若干个等价类,测试每个等价类的代表值就等于对该类其他值的测试,这样用少量有代表性的例子代替大量测试目的相同的例子,可以有效提高测试效率。本题划分了3个合理等价类,9个不合理等价类进行测试,取到了预期的效果。

42.某电器集团公司下属的厂包括技术科、生产科等基层单位。现在想建立一个计算机辅助企业管理系统,其中:

生产科的任务是:

(1)根据销售公司转来的内部合同(产品型号、规格、数量、交获日期)制定车间月生产计划。

(2)根据车间实际生产日报表、周报表调整月生产计划

(3)以月生产计划为以及,制定产品设计(结构、工艺)及产品组装月计划。

(4)将产品的组装计划传达到各科,将组装月计划分解为周计划,下达给车间

技术科的任务是:

(1)根据生产科转来的组装计划进行产品结构设计,产生产品装配图给生产科,产生外购需求计划给供应科,并产生产品自制物料清单。

(2)根据组装计划进行产品工艺设计,根据产品自制物料清单产生工艺流程图给零件厂。 试写出以上系统中生产科和技术科处理的软件结构图。

解:

画出生产科图的给6分,画出技术科的给4分。

[Analysis] The software structure diagram is the module hierarchy of the software system, which reflects the function realization of the entire system, that is, the control hierarchy of the future program. The software structure is often represented by a tree or network structure, and its main content is the module. And the control relationship of the modules, according to the meaning of the question, the software structure diagram of the production department and the technology department can be drawn. The depth and width of the structure diagram of the production department are both 4, and the depth and width of the structure diagram of the technology department are both 3.

Software Engineering Final Exam Paper (7)

1. True or False Questions (2 points for each question, 30 points in total)

1. The Spiral Model is based on the Waterfall Model and the Incremental Model by adding risk analysis activities. (right)

2. The data dictionary is a detailed definition of the data flow, processing, data storage, data source and destination in the data flow diagram. (wrong)

3. The JAVA language compiler is a CASE tool. (right).

4. Software refers to programs written in programming languages ​​(such as PASCAL, C, VISUAL BASIC, etc.), and software development is actually writing program codes. (wrong)

5. The weaker the coupling between software modules, the more. (right)

6. The database design manual is a software configuration item (right)

7. In the object-oriented software development method, each class has its corresponding object, the class is the instance of the object, and the object is the template for generating the class. (wrong)

8. The process description language can be used to describe the system structure of the software. (wrong)

9. If no errors are found through software testing, the software is correct. (wrong)

10. The rapid prototyping model can effectively adapt to the dynamic changes of user needs. (right)

11. The software design principles of modularization, information hiding, abstraction and gradual refinement help to obtain software products with high cohesion and low coupling. (right)

12. Integration testing is mainly done by users. (wrong)

13. Confirm that the test plan should be developed during the feasibility study phase (wrong)

14. White box testing does not need to consider the internal execution process and program structure of the module, as long as the function of the module is understood. (wrong)

15. Software outline design includes software system structure design, data structure and database design. (right)

two. Multiple choice questions (2 points for each question, 20 points in total)

1. The key shortcomings of the waterfall model are (2)
(1) too simple (2) unable to adapt to dynamic changes in demand (3) too flexible (4) need to be reviewed at each stage

2. In the object-oriented software development method, there are mainly the following structural relationships between classes (1)
(1) Inheritance and aggregation (2) Inheritance and general (3) Aggregation and message passing (4) Inheritance and method invocation

3. Which of the following is not a manifestation of the software crisis (3)
(1) high cost (2) low productivity (3) rapid technological development (4) quality is not guaranteed

4. Which of the following is not an object-oriented feature (4)
(1) Polymorphism (2) Inheritance (3) Encapsulation (4) Procedure call

5. The object-oriented model is mainly composed of which of the following models (1)
(1) object model, dynamic model, functional model (2) object model, data model, functional model (3) data model, dynamic model, functional model (4) object model, dynamic model, data model

6. Software feasibility study generally does not consider (4)
(1) whether there are enough personnel and related technologies to support system development (2) whether there are enough tools and related technologies to support system development (3) software to be developed Whether there is a market and whether it is economically cost-effective (4) Whether the software to be developed will have quality problems

7. The side effects of software maintenance mainly include the following types (3)
(1) coding side effects, data side effects, testing side effects (2) coding side effects, data side effects, debugging side effects (3) coding side effects, data side effects, document side effects (4) ) Coding Side Effects, Documentation Side Effects, Test Side Effects

8. Software project plans generally do not include which of the following: (4)
(1) Training plan (2) Personnel arrangement (3) Schedule arrangement (4) Selection and formulation of software development standards

9. Which of the following does not belong to the object-oriented software development method (3)
(1) coad method (2) booch method (3) jackson method (4) omt method

10. Which of the following testing methods does not belong to white box testing technology (2)
(1) Basic path testing (2) Boundary value analysis testing (3) Cycle coverage testing (4) Logic coverage testing

three. Short answer questions (5 points each, 25 points in total)

1. What are the main reasons for analyzing the software crisis?
Answer: The main reasons for the software crisis are:
(1) The software is increasingly complex and large (2) The software development management is difficult and complex (3) The software development technology is backward (4) The production method is backward (5) The development tools are backward (6) Software The development cost is constantly increasing.
1 point for 1 point, as long as you answer 5 points, you will get 5 points!

2. What are the main ideas behind structured programming?
Answer: (1) Top-down, progressively refined programming method (2 points) (2) Use 3 basic control structures, single entry, single exit to construct the program. (3 points)

3. What are the steps involved in software testing? What is the test object that illustrates these steps?
Answer: (1) Unit test, the test object is the unit module (2 points) (2) Integration test, the test object is the assembled program module (2 points) (3) Confirmation test, the test object is the operable target software system (1 point)

4. What is the main difference between the two phases of requirements analysis and software design?
Answer: Requirements analysis defines the user requirements of the software, that is, defines what the software to be developed can do (2.5 points)
software design defines the implementation details of the software to meet user needs, that is, studies how to implement the software. (2.5 points)

5. Explain the difference between the purpose of software testing and debugging?
Answer: The purpose of testing is to judge and discover whether the software has errors (2.5 points). The purpose of debugging is to locate software errors and correct them. (2.5 points)

Software Engineering Final Exam Paper (8)

choose

1. There is a sharp contradiction between the high cost of developing software and the low quality of the product. This phenomenon is called©

A. Software Engineering B. Software Cycle

C. Software crisis D. Software generation

2. The cost and resources required for research and development are one aspect of (B) research in the feasibility study.

A. Technical feasibility B. Economic feasibility

C. Social Feasibility D. Legal Feasibility

  1. Which of the following belongs to the design of test cases using white box technology (B)

A.Wrong guessing b. logic coverage

C.Equivalence class partitioning D. causal diagram

4. The module with the highest cohesion is (D)

A. Logical cohesion B. Temporal cohesion

C.偶然内聚 D.功能内聚

5.在SD方法中全面指导模块划分的最重要的原则是(D)

A.程序模块化 B.模块高内聚

C.模块低耦合 D.模块独立性

6.软件详细设计主要采用的方法是(D)

A.模块设计 B.结构化设计

C.PDL语言 D.结构化程序设计

  1. 根据对软件开发机构调查的结果可知,各类维护活动所占的比重是(A)

A.完善性占50%,适应性占25%,校正性占21%,其他维护占4%

B.完善性占25%,适应性占50%,校正性占21%,其他维护占4%

C.完善性占21%,适应性占25%,校正性占50%,其他维护占4%

D.完善性占21%,适应性占50%,校正性占25%,其他维护占4%

8.不适合作为科学工程计算的语言是(D)

A. Pascal B. C

C. Fortran D. Prolog

9.黑盒测试在设计测试用例时,主要需要研究(A)

A.需求规格说明与概要设计说明 B.详细设计说明

C.项目开发计划 D.概要设计说明与详细设计说明

10.若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。设计这组测试用例的方法是©

A.条件覆盖法 B.等价分类法

C.边界值分析法 D.错误推测法

11.下列属于维护阶段的文档是(B)

A.软件规格说明 B.用户操作手册

C.软件问题报告 D.软件测试分析报告

12.快速原型模型的主要特点之一是(B)

A.开发完毕才见到产品 B.及早提供全部完整的软件产品

C.开发完毕后才见到工作软件 D.及早提供工作软件

13.因计算机硬件和软件环境的变化而作出的修改软件的过程称为(B)

A.教正性维护 B.适应性维护

C.完善性维护 D.预防性维护

  1. 面向对象方法学的出发点和基本原则是尽可能模拟人类习惯的思维方式,分析、设计和实现一个软件系统的方法和过程,尽可能接近于人类认识世界解决问题的方法和过程。因此面向对象方法有许多特征,如软件系统是由对象组成的;(A);对象彼此之间仅能通过传递消息互相联系;层次结构的继承。

A.The development process is based on functional analysis and functional decomposition

B.Emphasize the importance of needs analysis

C.Divide objects into classes, each object class defines a set of data and methods

D.Make adjustments to existing classes

  1. The tools not used in the software detailed design process are (A)

A.Judgment table B. PDL

C.Data flow diagramD. IPO chart

  1. The address of the same data structure is passed between the two modules. This coupling method is called (C)

A.control coupling b. public coupling

C.Label coupling D. data coupling

  1. Software requirements should not include (B)

A.Functional requirements b. Environmental requirements

C.Space requirements for standard implementations D. UI Requirements

18. The following documents are related to maintenance personnel (D)

A. Software Requirements Specification B. Project Development Plan

C. Outline Design Manual D. Operation Manual

19. Use the Gantt diagram to represent the schedule of the software project. Which of the following statements is correct (D)

A. Can reflect the complex relationship between multiple tasks

B. Can visually express the interdependence and constraint relationship between tasks

C. Be able to indicate which tasks are mission critical

D. Ability to represent parallel and serial relationships between subtasks

1. The characteristics of the software include (A).

A.software is abstract

B.During the operation and use of software, there are also aging problems similar to hardware

C.Software development and maintenance are dependent on hardware

D.Software development costs are gradually falling

2. The basic principles of needs analysis include (A).

A.Must be able to express and understand the data and functional domains of the problem

B.Top-down, layer-by-layer decomposition of the problem

C.Revised system development plan

D.To give a logical and physical view of the system

5. The strength of coupling depends on (A).

A.The complexity of the interface between modules

B.How to call the module

C.information via the interface

D.The degree of close integration between the various elements within the module

fill in the blank

Software engineering is a discipline that studies how to use the basic principles and methods of engineering to better develop and maintain computer software from two aspects of (software development technology) and (software engineering).
The basic symbols of the data flow diagram include (arrow), (circle or ellipse), (double bar), (box).
Now deposit P yuan in the bank, the annual interest rate is i, and the amount of money you can get after n years is ( p*(1+n*j) ).
The transfer of a program from one hardware or software environment to another configuration is called software (portability).
In the detailed design of the software, according to the control flow from top to bottom, the design tool that expands from left to right is (_PDL diagram).
The number of directly subordinate modules owned by a module is called (stub module), and the number of directly superior modules of a module is called (driver module).
Large-scale software testing includes four steps: (unit testing), (integration testing), confirmation testing, and (driving testing).
The definition of UML includes two parts (UML semantics) and (UML notation).
The tools for detailed design are (graphics), (tables) and language tools.
Techniques to improve software quality and reliability can be roughly divided into two categories, one is (avoiding techniques) and the other is (fault-tolerant techniques).
The white box method includes a variety of methods for specifically designing program test cases, the main purpose of which is to improve the (efficiency) of testing.
short answer

1. Software is program. (F)

2. Information hiding means that the information contained in a module does not allow other modules that do not need this information to call. (F)

3. Performance testing is to test the maximum actual limit of the system's ability, and let the system run the test system under the conditions of abnormal amount, abnormal frequency, and abnormal batch of resources. (F)

4. User needs are often changing, because the software is flexible, so it can always meet the needs of users. (F)

5. Briefly describe the basic principles that the demand analysis method should follow?

Answer: 1. Must be able to express and understand the data domain and functional domain of the problem. 2. A complex problem can be decomposed by function and can be refined layer by layer. 3. Modeling

6. What are the types of coupling between modules? Ranked by strength.

Answer: There are the following types of coupling, and the degree of coupling between them is arranged from high to low:

1. Content coupling: If one functional module directly accesses the content of another functional module, the two functional modules are called content coupling. 2. Public coupling: If a functional module all accesses the unified global data structure, it is called public coupling. 3. External coupling: If a functional module all accesses the unified global data item, it is called external coupling. 4. Control coupling: If one functional module obviously sends information such as switching value and name to another functional module to control the function of another functional module, it is called control coupling. 5. Label coupling: If a function module shares a certain record instead of a simple variable, that is, when these function modules all need a substructure of a certain data, they need to operate according to the structure of the record and pass it through the parameter table Record information, such coupling is called tag coupling. 6. Data coupling: If one functional module accesses another functional module, and the input and output of the accessed functional module are data item parameters, then the two functional modules are data coupling. 7. Indirect coupling: If there is no direct relationship between the two functional modules, and the connection between them is completely realized through the control and calling of the main program, the two functional modules are called indirect coupling, and the independence is the strongest.

7. What is Black Box Testing?

Answer: The black box testing method is also called functional testing or data-driven testing. This method regards the tested object as an opaque black box. Testers do not consider the internal structure and processing process of the program at all, and only test at the interface of the program. According to the requirements specification, check whether the program meets the functional requirements, whether it can accept data well, and produce correct output.

8. What levels does the CMM model include?

Answer: 1. Initial level 2. Repeatable level 3. Defined level 4. Managed level 5. Optimization level

Software Engineering Final Exam Paper (9)

Software Engineering Final Exam Paper (A)

Explanation: This test paper is the final test paper of software engineering for level 04 computer major (upgraded to undergraduate), with a total of 100 points and a time of 100 minutes

1. Multiple choice questions: (1 point for each question, 20 points in total) (write the answer in () before the question number)

(C) 1. The software is ( ).

A. Description of objects of processing and processing rules B. Procedures

C. Programs and their documentation D. Computer systems

(B) 2. The content of the software requirements specification should not include ( ).

A. Main functions B. Detailed description of the algorithm

C. User interface and operating environment D. Software performance

(B) 3. The three basic control structures of the program are ( ).

A. Procedures, subroutines, and subroutines B. Sequence, selection, and repetition

C. Recursion, iteration, and backtracking D. Call, return, and transfer

(D) 4. The object-oriented analysis method mainly establishes three types of models, namely ( ).
A) System model, ER model, application model
B) Object model, dynamic model, application model
C) E-R model, object model, function model
D) Object model, dynamic model, function model
( C ) 5. In ER model , contains the following basic ingredients ( ).
A) data, object, entity
B) control, connection, object
C) entity, connection, attribute
D) entity, attribute, operation
(A) 6. The most important type of various software maintenance is ().
A) Perfect maintenance B) Error corrective maintenance C) Adaptive maintenance D) Preventive maintenance
( B ) 7.The goal of software testing is ( ).

A. Prove that the software is correct B. Find errors and reduce the risk of errors

C. Eliminate all errors in the software D. Same as software debugging

(D) 8. The most expensive stage in the software life cycle is ( )

A.detailed design b. software coding c. software testing d. Software maintenance

(C)9. If there is a program of calculation type, its input is only one X, and its range is [-1.0, 1.0]. Now consider a set of test cases from the perspective of input: -1.001, -1.0, 1.0, 1.001. Design this set The method of the test case is ( )

A.Conditional coverage b. Equivalence ClassificationC. Boundary value analysis d. error guessing

(D) 10. The basic task of detailed design is to determine the ( ) design of each module

A.Function B. Call relationship C. Input and output data D. Algorithm

(A) 11. Let function C(X) define the complex program of problem X, and function E(X) determine the amount of work (time) required to solve problem X. For two problems P1 and P2, if C(P1)>C(P2) is obviously E(P1)>E(P2), then it is concluded that E(P1+P2)>E(P1)+E(P2) is : ( )

A.Modular basis B. The basis for progressive refinement C. Abstract basis D. The rationale for information hiding and localization

( D ) 12 . Which of the following white box testing techniques is the strongest coverage criterion ( )

A.Statement coverage b. Condition coverageC. Judgment coverage D. Condition combination coverage

(A)13. The data flow-oriented design method maps ( ) to a software structure.

A.data flow b. system structure c. control structure d. Information Flow

(A) 14. The lowest degree of cohesion is ( ) cohesion

A. chance B. process C. sequence D. time

(A) 15. Make sure that the test plan is developed in the ( ) stage.

A.Overall Design B. Detailed Design C. Coding D. Testing

( D ) 16 . The product of requirement analysis is ( )

        A.数据流程图案  B.数据字典  C.判定表  D.需求规格说明书

( C ) 17 . The data dictionary is one of the most important tools in the software requirements analysis phase, and its most basic function is ( )

A.database design b. data communication c. data definition d. data maintenance

(D)18.( ) introduces the idea of ​​"risk-driven", which is suitable for large-scale internal development projects.

       A.增量模型   B.喷泉模型     C.原型模型    D.螺旋模型

( D ) 19 . The module with the highest cohesion is ( )

A.logical cohesion b. Accumulated in time C. Accidental cohesion D. functional cohesion

( D ) 20. It is very important to improve the effectiveness of the test, a successful test means ( )

A. It proves that the tested program is correct B. It shows that the tested program meets the corresponding requirements

C. No bugs in the program under test were found D. Bugs that were hitherto undiscovered were found

two. For the true or false questions (1 point for each question, 10 points in total), write the answer in ( ) before the question number, use √ for correct and χ for incorrect.

(×) 1. To develop software is to write programs.

( × ) 2. The main method of system testing is the white box method, mainly for functional testing, performance testing, security testing and reliability testing.

( × ) 3. When programming, hardware features should be used as much as possible to improve program efficiency.

(×) 4. The task of software requirements analysis is to establish a software module structure diagram.

(√) 5. Use high-level language to write programs as much as possible

( × ) 6. The system model established by the structural analysis method is the data flow diagram.

( × ) 7. Strengthen the connection between modules when carrying out overall design.

( × ) 8. Use global variables as much as possible when coding.

(√) 9. Use the CASE environment or program automatic generation tools to automatically generate a part of the program.

(×) 10. Software testing is to find all errors in the software.

3. Fill in the blank (1 point for each question, 5 points in total): fill in the result in ( )

1. Classify the following relationships by inheritance relationship, aggregation relationship or general association.

Car---------Hongqi sedan (inherited)

Car---------driver (common association)

class------------student(gather)

2. Classify the following into classes or instances of classes

my car (instance)

means of transport (class)

3. Short answer questions: (5 points for each question, 25 points in total)

  1. What are the tasks in each phase of the software life cycle?
    Answer: The software life cycle is divided into 7 stages:
    1. Problem definition: what is the problem to be solved

2. Feasibility study: determine whether the problem is worth solving, technical feasibility, economic feasibility, and operational feasibility

3. Requirements analysis: what the system must do

4. Overall design: how to implement the system, including system design and structure design

5. Detailed design: the system that implements the design in detail

6. Implementation: coding and testing

7. Operation and maintenance: to ensure the normal operation of the software.

 2、软件重用的效益是什么?
 答:1、软件重用可以显著地改善软件的质量和可靠性。

2. Software reuse can greatly improve the efficiency of software development.

3. Save the cost of software development, avoid unnecessary duplication of labor and waste of human and financial resources.

 3、 自顶而下渐增测试与自底而上渐增测试各有何优、缺点?
 答:
 ① 自顶而下渐增测试

 优点:不需要测试驱动程序,能够在测试阶段的早期实现并验证系统的主要功能,而且能够尽早发现上层模块的接口错误。

 缺点:需要存根程序,底层错误发现较晚。

 ② 自底而上渐增测试

 优点与缺点和自顶而下渐增测试相反。



 4 、 提高可维护性的方法有哪些?
 答:在软件工程的每一阶段都应该努力提高系统的可维护性,在每个阶段结束前的审查和复审中,应着重对可维护性进行复审。
 在需求分析阶段的复审中,应对将来要扩充和修改的部分加以注明。在讨论软件可移植性问题时,要考虑可能要影响软件维护的系统界面。
 在软件设计的复审中,因从便于修改、模块化和功能独立的目标出发,评价软件的结构和过程,还应对将来可能修改的部分预先做准备。
 在软件代码复审中,应强调编码风格和内部说明这两个影响可维护性的因素。
 在软件系统交付使用前的每一测试步骤中都应给出需要进行预防性维护部分的提示。
 在完成每项维护工作后,都应对软件维护本身进行仔细认真的复审。
 为了从根本上提高软件系统的可维护性,人们正试图通过直接维护软件规格说明来维护软件 ,同时也在大力发展软件重用技术。

Briefly describe the steps that software testing goes through, and what documents are related to each step.

【answer】

The testing process is carried out in four steps, namely, unit testing (module testing), integration testing (subsystem testing and system testing), confirmation testing (acceptance testing) and parallel operation.

Unit testing focuses on testing each program unit implemented with source code, and the related documents are unit testing plans and detailed design instructions.

Integration testing assembles the tested modules and mainly tests the construction of the software architecture related to the design. The related documents are Integration Test Plan and Software Requirements Specification.

Confirmation testing is to check whether the implemented software meets various requirements identified in the requirements specification, and whether the software configuration is complete and correct. The related documents are Validation Test Plan and Software Requirements Specification.

Parallel operation puts the validated software into the actual operating environment and combines it with other system components for testing. Documentation related to it: user guide, user manual, etc.

4. Application questions (8 points for each question, 40 points in total)

Suppose the purchasing department of a factory needs an order report every day, the report is sorted by part number, and all parts that need to be ordered again are listed in the table. For each part that needs to be reordered, the following data should be listed: part number, part name, order quantity, current price, primary supplier, and secondary supplier. Parts storage or storage is called a transaction, and the transaction is reported to the ordering system through the CRT terminal placed in the warehouse. When the inventory quantity of a certain part is less than the inventory threshold, it should order again. Requirements: Draw a data flow diagram of the system.

3. Input three integers to determine whether a triangle is formed. If a triangle is formed, output the values ​​of the three sides, otherwise output "cannot form a triangle". Requirements: 1. Use a program flow chart to represent the algorithm of the problem; 2. The calculation program is complex 3. Design test cases for path coverage.

Answer: (1)

(2)

(3)

4. An airline stipulates that passengers can check in luggage weighing no more than 30kg for free. When the weight of luggage exceeds 30kg, the overweight part of domestic passengers in the first class will be charged 4 yuan per kilogram, the overweight part of domestic passengers in other classes will be charged 6 yuan per kilogram, and the overweight part of foreign passengers will be charged twice as much as that of domestic passengers. The overweight fee for disabled passengers is half that of normal passengers. Use a decision tree to represent the algorithm for calculating baggage fees corresponding to each combination of the above conditions.

Answer:

5. A software company has many departments, which are divided into development department and management department. Each development department develops multiple software products, and each department is uniquely identified by the department name. The company has many employees and the employees are divided into managers, workers and developers.

The development department has managers and developers, and the management department has managers and staff. Each developer can participate in multiple development projects, each development project requires multiple developers, and each manager can host multiple development projects to establish the company's object model.

(10) Special training in software engineering

choose

① The most expensive stage in the software life cycle is (D)

A.detailed design b. software coding c. software testing d. Software maintenance

② Feasibility analysis is an important demonstration work done in the early stage of system development, it is to decide whether the system is developed or not

The basis for decision-making, because the answer (B) must be given.

A.OK B.OK or not C. correct D.Unambiguous

③The following description about the waterfall model is correct (C).

A. The core of the waterfall model is to simplify the problem according to the chronological order of software development.

B. The waterfall model has good flexibility.

C. The waterfall model uses a structured analysis and design approach that separates logical implementation from physical implementation.

D. With the waterfall model, if a problem is found, it is cheap to fix it.

④ The result of the detailed design basically determines the (C) of the final program

A.The size of the code b. running speed c. quality D.maintainability

⑤ The main emphasis of structured programming is (D)

A.The size of the program b. Program efficiency C. The advancement of programming languages ​​D. program readability

⑥ The three basic control structures of the program are (B)

A.Procedures, subroutines, and subroutines B. Sequence, selection, and repetition C. Recursion, stacks, and queues d. call, return and transfer

⑦ The test to confirm whether the function of the software conforms to the function required in the requirements specification belongs to (C)

A. Integration testing B. Recovery testing C. Acceptance testing D. Unit testing

⑧ In object-oriented technology, an object is an instance of a class. Objects have three components: (A), properties and methods (or operations).

A. Identification B. Rules C. Encapsulation D. Message

⑨ The following statement about the message in the object-oriented method is incorrect (B).

A. Whenever there is a change in the keyboard, mouse, communication port, network and other equipment, a message will be generated

B.The operating system keeps sending messages to the application, but the application cannot send messages to the operating system

C. Applications can send messages to each other

D.The communication mechanism for sending and receiving messages is different from the traditional subroutine calling mechanism

⑩ Data hiding in object-oriented programming refers to (D).

A.Enter the data must enter the confidential password

B.Data is encrypted

C. A firewall is built on the internal data structure of the object

D.Inaccessibility of object internal data structures

Answer: ①D ②B ③C ④C ⑤D ⑥B ⑦C ⑧A ⑨B ⑩D

1. Program design belongs to the software development process (C) stage.

A. Design B. Programming C. Implementation D. Coding

2. Structural design is one of the most widely used system design methods, based on (A), top-down, step-by-step refinement

and modular processes.

A. Data flow B. Data flow diagram C. Database D. Data structure

  1. Structured programming mainly emphasizes the (C) of the program.

A. Efficiency B. Speed ​​C. Readability D. Size

4. The analyst is (B)

A. The direct user of the outdoor system B. The middleman between the user and the software personnel

C. Software programmers D. Leaders of users and software personnel

  1. The common feature of the three basic control structures of the program is (D).

A. Cannot be nested. B. Can only be used to write simple programs

C. It has been realized by hardware D. There is only one entrance and one exit

  1. During the software production process, the requirement information is given by (D).

A. Programmer B. Project manager C. Software analyst and designer D. Software user

7. Documentation not related to design test data is (D).

A. Requirements specification B. Design specification C. Source program D. Project development and design

8. Structural analysis The SA method uses description tools such as data flow diagram, (B) and processing description, that is, to describe the soft system model with intuitive diagrams and concise language.

A. DFD diagram B. Data dictionary C. IPO diagram D. PAD diagram

9. The data flow-oriented software design method generally divides the data flow in the data flow graph into (B), and then maps the data flow graph into a software structure.

A. Data flow and transaction flow B. Exchange flow and transaction flow

C. Information flow and control flow D. Exchange flow and data flow

10. The result of the overall design is to provide a copy (A).

A. Module manual B. Block diagram C. Program D. Data structure

答案:1. C 2. A 3. C 4. B 5. D 6. D 7. D 8. B 9. B 10. A

  1. The software is (C).

A. Description of objects of processing and processing rules B. Procedures

C. Programs and their documentation D. Computer systems

  1. The content of the software requirements specification should not include (B).

A. Main functions B. Detailed description of the algorithm

C. User interface and operating environment D. Software performance

  1. The three basic control structures of a program are (B).

A. Procedures, subroutines, and subroutines B. Sequence, selection, and repetition

C. Recursion, iteration, and backtracking D. Call, return, and transfer

  1. The object-oriented analysis method mainly establishes three types of models, namely (D).

A) System model, ER model, application model

B) Object model, dynamic model, application model

C) E-R model, object model, function model

D) Object model, dynamic model, functional model

  1. In the ER model, the following basic components (C) are included.

A) Data, Objects, Entities

B) control, connection, object

C) Entity, relationship, attribute

D) Entities, attributes, operations

  1. The most important of the various types of software maintenance is (A).

A) Perfect maintenance B) Corrective maintenance C) Adaptive maintenance D) Preventive maintenance

7. The goal of software testing is (B).

A. Prove that the software is correct B. Find errors and reduce the risk of errors

C. Eliminate all errors in the software D. Same as software debugging

8. The most expensive stage in the software life cycle is (D)

A.detailed design b. software coding c. software testing d. Software maintenance

9. If there is a program of calculation type, its input is only one X, and its range is [-1.0, 1.0], now from

Consider a set of test cases in terms of input: -1.001, -1.0, 1.0, 1.001. The method of designing this set of test cases is (C)

A.Conditional coverage b. Equivalence ClassificationC. Boundary value analysis d. error guessing

10. The basic task of detailed design is to determine the (D) design of each module

A.Function B. Call relationship C. Input and output data D. Algorithm

11. Let function C(X) define the complex program of problem X, and function E(X) determine the work required to solve problem X.

Amount (time). For two problems P1 and P2, if C(P1)>C(P2) obviously E(P1)>E(P2), then

The conclusion E(P1+P2)>E(P1)+E(P2) is: (A)

A.Modular basis B. The basis for progressive refinement C. Abstract basis D. The rationale for information hiding and localization

12. Which of the following white box testing techniques is the strongest coverage criterion (D)

A.Statement coverage b. Condition coverageC. Judgment coverage D. Condition combination coverage

13. Dataflow-oriented design methods map (A) into software structures.

A.data flow b. system structure c. control structure d. Information Flow

14. The least cohesive is (A) Cohesive

A. chance B. process C. sequence D. time

15. Confirm that the test plan is developed in the (A) stage.

A.Overall Design B. Detailed Design C. Coding D. Testing

16. The product of needs analysis is (D)

A.Data flow pattern B. data dictionary c. Judgment tableD. Requirements Specification

17. The data dictionary is one of the most important tools in the software requirements analysis phase, and its most basic function is (C)

A.database design b. data communication c. data definition d. data maintenance

18. (D) Introduced the idea of ​​"risk-driven", suitable for large-scale internal development projects.

A.Incremental model b. Fountain model C. prototype model d. spiral model

19. The module with the highest cohesion is (D)

A.logical cohesion b. Accumulated in time C. Accidental cohesion D. functional cohesion

20. It is very important to improve the effectiveness of the test, a successful test means (D)

A. It proves that the tested program is correct B. It shows that the tested program meets the corresponding requirements

C. No errors were found in the program under test D. A hitherto undiscovered error was found__

答案:1.C 2.B 3.B 4.D 5.C 6.A 7.B 8.D 9.C 10.D 11.A 12.D 13.A 14.A 15.A 16.D 17.C 18.D 19.D 20.D

1.

The fact of the software crisis has made people realize that the key to promoting the use of computers lies in the innovation of _________ technology.

Your answer is: ; The correct answer is: Software Development

2.

The so-called "user requirements" refer to the _________ and restrictions that the soft computer system must meet.

Your answer is: ; The correct answer is: all properties

3.

In software engineering techniques, the two basic means of controlling complexity are "decomposition" and _________.

Your answer is: ; The correct answer is: abstract

4.

The design principle of the Jackson method is: the program structure corresponds to _________.

Your answer is: ; The correct answer is: Data structure

5.

The goal of programming is to write programs that are logically correct and easy to _________.

Your answer is: ; The correct answer is: easy to read (and easy to maintain)

6.

Inspection is an indispensable part of the software development process, and the purpose of inspection is to _________.

Your answer is: ; The correct answer is: find the error and correct it in time

7.

In the joint test, each module is tested independently first, and then connected together to run, this method is called _________ joint debugging.

Your answer is: ; The correct answer is: non-incremental

8.

A so-called second-generation data model suitable as a conceptual data model is _________.

Your answer is: ; The correct answer is: ER model (conceptual data model)

9.

The biggest advantage of object-oriented development is to help analysts, designers and users to clearly express _________, so that they can communicate with each other.

Your answer is: ; The correct answer is: abstract concept

10.

The main function of the program evaluation and testing system PET is to support the white-box testing of FORTRAN programs, and to monitor the _________ of the test.

Your answer is: ; The correct answer is: Actual coverage

Supplementary date: 2003-10-30 11:11:11

choose:

1.

The scale of software can be classified according to the number of source program lines. The so-called large-scale software usually refers to the number of source program lines ( )

A.5 ~ 50K   B.50 ~100K   C.1M   D.1 ~ 10M

Your answer is: ; The correct answer is: B

2.

In the software life cycle, what accounts for the largest proportion of workload is ( )

A.Feasibility study b. Establish the structure of the system C. Write a program d. maintain

Your answer is: ; The correct answer is: D

3.

The requirements specification obtained by using the SA method has four parts, which are used to describe the components of the system and the relationship between the parts, etc., which are in ( )

A.A set of hierarchical data flow diagrams B. A data dictionary C. A small set of instructions D. supplementary material

Your answer is: ; The correct answer is: A

4.

The characteristic of the SA method in the way of description is to try to use ( )

A.natural language b. formal language c. Graphic representation d. sheet

Your answer is: ; The correct answer is: C

5.

It is the task of ( ) to determine the external characteristics of each module in the software system, that is, its input, output and function.

A.needs analysis b. Outline design c. detailed design d. programming stage

Your answer is: ; The correct answer is: B

6.

The description method used for the outline design is ( )

A.DFD B.SC C.block diagramD.Data Structure Diagram

Your answer is: ; The correct answer is: B

7.

The parameters passed from one module to another are arrays of single data items belonging to the ( )

A.data type b. Composite C. Content type D.public type

Your answer is: ; The correct answer is: A

8.

In the design document of the outline design, the description of each module includes ( )

A.Function, interface, input, output B. Interface, input, output, process C. Interfaces, procedures, limits and constraints d. function, interface, procedure, annotation

Your answer is: ; The correct answer is: D

9.

According to the main points of the SP method, the program should be finally approved by ( ).

A.expert b. Who edits who judges C. main programmer d. Information officer

Your answer is: ; The correct answer is: C

10.

The arrows in the structured program diagram (FC) are used to represent ( )

A.control flow b. data flow c. data/control d. call relationship

Your answer is: ; The correct answer is: A

11.

The reason why it is possible to verify the correctness of a structured program is that ( )

A.There are only three basic structures B. Restricted use of GOTO statements C. There is "internal documentation" inside the program D. Choose good data structures and algorithms

Your answer is: ; The correct answer is: A

12.

A powerful means to improve program readability is ( )

A.Choose a programming language B. Explicitly state all variables C. Use three standard control statements D. annotate the program

Your answer is: ; The correct answer is: D

13.

By testing the software, it can be proved that ( )

A.Procedural correctness b. Errors do not exist C. Errors exist d. Does not contain hidden dangers

Your answer is: ; The correct answer is: C

14.

In the function description of a certain program, it is listed that "each athlete is required to participate in 1 to 3 events", and the equivalence classification method in the black box method is used to determine the equivalence class is ( )

A.1≤Number of items≤3 B.Number of items <1 C. Number of items > 3 D. All of the above

Your answer is: ; The correct answer is: D

15.

In the description of the program function, it is pointed out that the lengths of the three sides of a triangle are represented by three input data. Design test cases according to the marginal value analysis method in the black box method, you should choose ( )

A.a=3,b=4,c=5 B.a=1,b=2,c=4 C.Both A and B above should be selected D. a=1,b=2,c=3

Your answer is: ; The correct answer is: D

16.

Software maintenance can be classified according to different maintenance purposes. It is ( ) to modify the software to adapt to changes in the hardware environment or software environment

A.corrective maintenance b. Adaptive maintenanceC. Perfection maintenance d. preventive maintenance

Your answer is: ; The correct answer is: B

17.

The key goal that determines all steps of a software engineering methodology is to improve the software's ( )

A.portability b. reliabilityC. maintainability d. efficiency

Your answer is: ; The correct answer is: C

18.

The key in the whole process of database design is ( )

A.Analyze user requirements b. Create a conceptual data model C. logic design d. physical design

Your answer is: ; The correct answer is: B

19.

As the basis of object-oriented analysis, it is composed of objects in the problem domain, and what is described by ER diagram is ( )

A.message model b. processing model c. state model d. waterfall model

Your answer is: ; The correct answer is: B

20.

Among the following software tools, the tools that can be used to support the outline design are ( )

A.PSL/PSA system B.SDL/PAD system C.AIDES system D.Tektronix Toolbox

Your answer is: ; The correct answer is: C

short answer

   1.     什么软件?软件按功能进行划分,可以划分成哪几类?按工作方式进行分类,可以划分成哪几类?

Answer: Software is composed of computer programs, data used by the programs, and various documents explaining them. According to the function, it can be divided into: system software, support software, application software; according to the software working method, it can be divided into: real-time processing software, time-sharing processing software, interactive software and batch processing software.

   2.     软件危机产生的原因是什么?

Answer: The reasons for the software crisis:

a) Software is different from hardware and is a logical component;

b) The software is large in scale and complex in logic structure;

c) Software developers and management personnel only pay attention to designing programs but ignore the needs analysis of users, resulting in the final software products being unable to meet the needs of users;

d) Software design technology and management technology are backward, and there is no unified software quality management specification;

e) There are erroneous concepts on the relationship between software development and maintenance, focusing on development and ignoring maintenance.

   3.     简述软件工程的定义。

Answer: Software engineering is a discipline that uses scientific knowledge and technical principles to define, develop and maintain software. Use engineering concepts, principles, techniques, and methods to develop and maintain software, combining time-tested and proven management techniques with the best technical methods currently available.

   4.     简述软件生存周期的定义及组成部分。

Answer: A software goes through a long period from definition to development, use and maintenance, until it is finally discarded. This long period that software goes through is usually called the software life cycle. It includes planning (problem definition), feasibility study, demand analysis, overall design, detailed design, programming (coding), comprehensive testing, operation and maintenance, etc.

   5.     可行性研究的目的是什么?可以从哪些方面来考虑软件开发的可行性?

Answer: The purpose of the feasibility study is to determine whether the problem can be solved in the shortest possible time with the minimum cost. Mainly from the four aspects of technical feasibility, economic feasibility, operational feasibility and legal feasibility.

   6.     面向对象方法学的优点有哪些?

Answer: Advantages of object-oriented methodology:

(1) Simulate the objective world from multiple angles;

(2) High stability;

(3) Good reusability;

(4) Suitable for developing large-scale software.

    7.     需求分析的主要方法是什么?用这种方法进行需求分析的主要步骤有哪些?

Answer: The methods of requirements analysis include data flow-oriented analysis methods, data structure-oriented analysis methods, object-oriented analysis methods and dynamic analysis methods, etc., and data flow-oriented analysis methods are mainly used. The main steps include: (1) analyzing the data flow diagram; (2) user review; (3) refining the data flow diagram; (4) revising the development plan; (5) reviewing the development plan.

    8.     细化数据流图需要遵循哪些基本原则?

Answer: The principles to be followed in refining the data flow diagram are:

a) Data continuity must be maintained during hierarchical refinement, that is to say, the input/output data of corresponding functions must be the same before and after refinement.

b) Further decompose a function into sub-functions, these sub-functions must have independent functions, otherwise, no further decomposition is required.

     9.     什么是对象?什么是类?什么是消息?

Answer: The things that exist objectively in the real world are called objects. An abstraction of objects with the same or similar properties is called a class. Communications between objects are called messages.

    10.  什么是对象的封装?主要表现在哪些方面?

Answer: Encapsulation is to wrap the object so that the outside world can only see the interface of the object, but not the specific content inside the object. Mainly manifested in: (1) There is a fixed interface; (2) Internal implementation is protected.

    11.  简述过程设计语言(PDL)的特点。

Answer: The characteristics of PDL are: (1) keywords should have a fixed syntax, and provide structured control structures and statement descriptions; (2) use natural language to describe system processing functions, which is easy to understand; (3) can use flexible language editing Program or word processing system, it is very convenient to complete the writing and editing of PDL; (4) It is easy to let the computer handle it.

    12.  怎样从客户类的角度发现协作?

Answer: Collaboration can be discovered by asking the following questions of the client class:

a) Can the class itself perform this operation?

b) If not, what does it require?

c) From what other classes does it get what it needs?

    13.  简述软件质量的定义及在软件开发过程中管理软件质量的办法。

Answer: Software quality refers to all the characteristics and characteristics of software products that meet the specified and hidden capabilities related to requirements. Ways to manage software quality: (1) The specified documents must be completed at each stage, and the task of that stage has not been completed if no qualified documents are handed over; (2) The completed documents and programs must be reviewed before the end of each stage Conduct reviews so that problems can be identified early and mistakes can be corrected.

    14.  什么是白盒测试?什么是黑盒测试?

Answer: White box testing is also called structural testing. Its prerequisite is to put the program in a transparent white box, that is, to fully understand the structure of the software system and the entire processing process.

Black-box testing, also known as functional testing, regards the program as an opaque black box and does not consider the internal structure and processing of the program at all.

    15.  什么是软件维护?软件维护可以分为哪几类?

Answer: Software maintenance refers to the process of modifying the software system by software users in order to adapt to new requirements, meet new needs or correct errors in the software after the software system has been put into use. It can be divided into corrective maintenance, perfect maintenance, adaptive maintenance and predictive maintenance.

    16.  简述软件质量三要素及其具体包括的内容。

Answer: Software quality elements can be divided into three categories. The first category of elements expresses the operating characteristics of software, including correctness, reliability, effectiveness, security, and usability; the second category of elements expresses the ability of software to withstand modification, including maintainability. Flexibility, flexibility and testability; the third category of elements shows the adaptability of the software to the new environment, including portability, reusability and interoperability.

Guess you like

Origin blog.csdn.net/qq_45973897/article/details/117364562