软件工程打印题.docx
《软件工程打印题.docx》由会员分享,可在线阅读,更多相关《软件工程打印题.docx(30页珍藏版)》请在冰点文库上搜索。
![软件工程打印题.docx](https://file1.bingdoc.com/fileroot1/2023-6/4/e5e22370-ebe2-4900-be11-e03d062b69be/e5e22370-ebe2-4900-be11-e03d062b69be1.gif)
软件工程打印题
31.软件开发方法:
一种使用早已定义好的技术集及符号表示习惯来组织软件生产的过程.
32.数据字典:
简称DD,就是用来定义数据流图中的各个成分具体含义的,它以一种准确的、无二义性的说明方式为系统的分析、设计及维护提供了有关元素的一致的定义和详细的描述.
33.黑盒测试法:
将程序当成是黑盒子以设计中的功能为标准在程序的接口出进行测试看它能否达到功能要求。
34.软件质量保证:
向用户及社会提供满意的高质量的产品,确保软件产品从诞生到消亡为止的所有阶段的质量活动,即确定、达到和维护需要的软件质量而进行的所有有计划、有系统的管理活动。
35.模块的作用范围:
一个模块的控制范围是指它本身及其所有下属模块的集合。
这里下属模块包括直接下属模块及下属模块的下属模块
四、简答题(本大题共4小题,每小题5分,共20分)
36.简述软件产品的特性。
答:
1.软件产品是一种逻辑产品。
2.软件产品的生产主是研制,软件产品的成本主要体现在软件的开发和研制上,软件开发完成后,复制就产生了大量软件产品。
3.软件产品不会用坏,不存在磨损、消耗问题。
4.软件产品的生产主要是脑力劳动,还未完全摆脱手工开发方式,而且碰分是"定做"的。
5.软件费用不断增加,成本相当昂贵。
37.简述在需求分析基本任务中,对问题的综合需求包括哪几个方面。
答:
一.确定对系统的综合要求
1.功能需求
这方面的需求指定系统必须提供的服务。
通过需求分析应该划分出系统必须完成的所有功能。
2.性能需求
性能需求指定系统必须满足的定时约束或容量约束,通常包括速度(响应时间)、信息量速率、主存容量、磁盘容量、安全性等方面的需求。
3.可靠性和可用性需求
可靠性需求定量地指定系统的可靠性。
可用性与可靠性密切相关,它量化了用户可以使用系统的程度。
4.出错处理需求
这类需求说明系统对环境错误应该怎样响应。
例如,如果它接收到从另一个系统发来的违反协议格式的消息,应该做什么?
注意,上述这类错误并不是由该应用系统本身造成的。
5.接口需求
接口需求描述应用系统与它的环境通信的格式。
常见的接口需求有:
用户接口需求;硬件接口需求;软件接口需求;通信接口需求。
6.约束
设计约束或实现约束描述在设计或实现应用系统时应遵守的限制条件。
在需求分析阶段提出这类需求,并不是要取代设计(或实现)过程,只是说明用户或环境强加给项目的限制条件。
常见的约束有:
精度;工具和语言约束;设计约束;应该使用的标准;应该使用的硬件平台。
7.逆向需求
逆向需求说明软件系统不应该做什么。
理论上有无限多个逆向需求,我们应该仅选取能澄清真实需求且可消除可能发生的误解的那些逆向需求。
8.将来可能提出的要求
应该明确地列出那些虽然不属于当前系统开发范畴,但是据分析将来很可能会提出来的要求。
二.分析系统的数据要求
任何一个软件系统本质上都是信息处理系统,系统必须处理的信息和系统应该产生的信息在很大程度上决定了系统的面貌,对软件设计有深远影响,因此,必须分析系统的数据要求,这是软件需求分析的一个重要任务。
三.导出系统的逻辑模型
综合上述两项分析的结果可以导出系统的详细的逻辑模型,通常用数据流图、实体-联系图、状态转换图、数据字典和主要的处理算法描述这个逻辑模型。
四.修正系统开发计划
根据在分析过程中获得的对系统的更深入更具体的了解,可以比较准确地估计系统的成本和进度,修正以前制定的开发计划。
38.简述结构化程序设计的基本要点。
答:
(1)设计软件系统结构(简称软件结构)
a.采用某种设计方法,将一个复杂的系统按功能划分成模块(划分)
b.确定模块的功能。
(功能)
c.确定模块之间的调用关系。
(调用)
d.确定模块之间的接口,即模块之间传递的信息。
(接口)
e.评价模块结构的质量。
(质量)
(2)数据结构及数据库设计
a.数据结构设计
b.数据库设计:
(概念设计、逻辑设计、物理设计)
(3)编写概要设计文档(文档主要有:
概要设计说明书、数据库设计说明书、用户手册、修订测试计划)
(4)评审
39.简述提高软件可维护性的方法。
A、建立明确的软件质量目标。
B、利用先进的软件开发技术和工具。
C、建立明确的质量保证工作。
D、选择可维护的程序设计语言。
E、改进程序文档。
三、名词解释(本大题共5小题,每小题3分,共15分)
31.软件工程过程即软件生命周期的方法、工具和概念
32.模块化模块化是指解决一个复杂问题时自顶向下逐层把系统划分成若干模块的过程,有多种属性,分别反映其内部特性.每个模块完成一个特定的子功能,所有的模块按某种方法组装起来,成为一个整体,完成整个系统所要求的功能
33.集成测试(如根据结构图)组装成为子系统或系统,进行集成测试。
34.软件可靠性
(1)在规定的条件下,在规定的时间内,软件不引起系统失效的概率;
(2)在规定的时间周期内,在所述条件下程序执行所要求的功能的能力;
35.模块的控制范围
四、简答题(本大题共4小题,每小题5分,共20分)
36.简述软件工程面临的问题。
答:
内容:
①软件开发技术②软件开发管理
面临的主要问题:
①软件费用②软件可靠性③软件维护④软件生产率⑤软件重用
37.简述可行性研究报告包含的主要内容。
技术可行性:
对要开发项目的功能、性能、限制条件进行分析,确定在现有的资源条件下,技术风险有多大,项目是否能实现。
包括:
开发的风险;资源的有效性;技术;开发人员在评估技术可行性时,一旦估计错误,将会出现灾难性后果。
经济可行性:
包括成本――效果分析、公司经营长期策略、开发所需的成本和资源、潜在的市场前景。
社会可行性包括:
合同、责任、侵权、用户组织的管理模式及规范,其他一些技术人员常常不了解的陷阱等。
38.简述软件结构设计的优化准则。
39.简述快速原型的开发步骤。
答:
快速原型开发步骤可划分下列阶段:
(1)快速分析:
迅速确定基本需求、集中力量确定需求说明。
(2)快速构造原型:
在快速分析基础上,在强有力的软件工具支持下,快速构造所需原型。
(3)运行原型:
在开发者指导下,用户参与原型的运行,各类人员在共同运行原型中进一步加深对系统的了解及相互间的
理解,以发现各种问题。
(4)评价原型;在运行基础上,根据原型目标,考核原型的特性,分析原型效果是否满足用户需求,提出修改意见。
(5)修改原型:
在评价基础上进行修改。
若不满足需求说明,则根据明确的需求修改原型。
若不满足用户需求,则先修改并明确用户需求,再重新构造原型。
二、填空题(本大题共10小题,每小题2分,共20分)
请在每小题的空格中填上正确答案。
错填、不填均不得分。
21.计算机程序及其说明程序的各种文档称为_软件____。
22.IDEF0用来描述系统的功能活动及其联系,建立系统的_功能模型____。
23.结构化分析方法是一种面向_数据流____的开发方法。
24.成本——效益分析的目的是从_经济____角度评价开发一个新的软件项目是否可行。
25.模块有四个基本属性,其中反映它的内部特性的是_逻辑____。
26.确认测试可以发现软件系统是否符合用户的功能和性能_____要求。
27.在算法描述工具中,_PAD____是一种由左往右展开的二维树型结构。
28.动态模型是与时间和变化有关的系统性质,它描述了系统的_控制____结构。
29.成本估算方法中,有自顶向下估算方法、自底向上估算方法和__差别估算___方法。
30.随着软硬件环境变化而修改软件的维护活动称为适应性维护_____。
三、名词解释题(本大题共5小题,每小题3分,共15分)31.软件生存周期模型32.模块
33.可维护性34.继承性
35.投资回收期
四、简答题(本大题共4小题,每小题5分,共20分)36.简述软件危机产生的原因。
37.简述需求分析的概念及需求分析的基本任务。
38.简述数据流图的分类及每一类的特点。
39.简述建立对象模型的过程。
二、填空题(本大题共20空,每空1分,共20分)
请在每小题的空格中填上正确答案。
错填、不填均不得分。
16.软件工程概念的提出,其目的是为了解决20世纪60年代以来出现的日益严重的__软件危机____。
15
17.一般来说,需求分类中作为整个需求的主体是__功能需求___。
24
18.需求分析的首要任务是建立系统的___功能模型___,DFD是一种常用的表达工具。
37
19.所谓模块化是指按照___高内聚低耦合___的设计原则,形成一个相互独立但又有较少联系的模块结构的过程。
而模块通常由___接口___和模块体组成。
56,69
20.UML把状态分为了3类,即初态、终态和__通常状态_。
109
21.在UML表达关系的术语中,汽车和汽车引擎之间是___组合___关系。
组合和聚合的区别?
22.RUP是一种软件开发的过程框架,它的突出特点是以_usecase_为驱动、以_体系结构_为中心的迭代、增量式开
发。
123
23.在RUP的每次迭代中都要经历一个核心工作流:
即需求获取、分析、设计、_实现_和测试。
125
24.软件测试的首要目标是预防错误,但这几乎不可实现,所以测试的目标只能是__发现错误__。
175
25.有效性测试通常采用_黑盒_测试技术,验证_需求_的可追溯性。
193
26.单元测试以_详细设计_文档作为指导,多采用_白盒_测试技术。
191
27.集成测试的目标是发现与_接口_有关的错误。
192
28.在标准(ISO/IEC软件生存周期过程12207—1995)中,按过程主体把软件生存周期过程分为基本过程、_支持过程_和组织过程。
199-202
29.CMMI是针对系统/产品开发的能力成熟度模型,集成了3个源模型:
_软件CMM_、系统工程CMM和集成产
品开发CMM。
240
30.CMMI提供了两种过程改善路径,一个称为__能力等级__,另一个称为成熟度等级,应用于一个组织过程改善
第2/5页
的成熟度等级有_5_个。
244,258
三、简答题(本大题共6小题,每小题5分,共30分)
31.简述软件需求的分类及其关系。
P23-24;
答:
软件需求可以分为功能需求和非功能需求2大类;功能需求规定了系统及构件必须执行的功能;非功能需
求又可以分为性能需求、外部接口需求、设计约束和质量属性需求。
功能需求是整个软件需求的主体,没有功能需求就没有性能、外部接口、设计约束和质量的需求;一个非功能需求可以作用于1个或多个功能需求。
32.什么是模块?
什么是模块内聚?
请列出从低到高的常见内聚类型。
P56、57、58、59
答:
模块是执行一个特殊任务的过程以及相关的数据结构。
内聚是指一个模块内部各个成分之间相互关联程度
的度量。
从低到高的内聚类型:
偶然内聚;逻辑内聚;时间内聚;过程内聚;通信内聚;顺序内聚;功能内聚。
33.什么是状态?
什么是状态图?
简述实际应用中使用状态图的作用。
107、108、113
答:
状态是类目的一个实例在其生存中的一种条件或情况;期间该实例满足这一条件,就执行某一活动或等待
一个消息。
状态图是现实状态机的图,强调从一个状态到另一个状态的控制流。
在实际使用中状态图的作用:
创建一个系统的动态图和创建一个场景的模型。
34.简述RUP中需求获取的基本步骤和相关制品。
P132
答:
需求获取的步骤和相关制品:
第1步是列出候选的特征,相关制品是特征表;
第2步是理解系统语境,相关制品是领域模型或业务模型;
第3步是捕获系统功能需求,相关制品是用况模型(usecase模型);
第4步是捕获非功能需求,相关制品是补充的需求或针对特殊需求的用况。
35.简述黑盒测试技术的要点。
P186
答:
黑盒测试技术的要点:
(1)支持测试工程模型的中间部分;
(2)事务流测试技术是将路径测试技术用于功能测试的产物,是一种实用的功能测试技术,通过事务的操
作逻辑发现软件中的错误;
(3)事务流测试技术是基于软件规约的,对错误的假定是软件通过了与预想不同的事务路径;
(4)基于事务的基本操作;事务流测试技术的最大问题和最大代价是获取事务流程图及用例设计;
(5)事务处理流程测试要达到基本的测试覆盖。
36.简述增量模型以及可适应的情况。
P224
答:
增量模型意指需求可以结构化分组,形成一个个增量,并形成一个结构,之后对每一个增量进行瀑布开发。
用增量模型开发的前提是需求的结构化,模型适合“技术驱动”的软件产品开发。
二、填空题(本大题共10小题,每小题2分,共20分)
请在每小题的空格中填上正确答案。
错填、不填均不得分。
21.Jackson方法是一种面向______数据结构__________的设计方法。
22.使累计的经济效益等于最初的投资费用所需要的时间称为___投资回收期_________。
23.软件工程研究的主要内容是软件开发技术和_____软件开发管理___________两个方面。
24.描述加工逻辑一般用以下三种工具:
结构化语言、判定表和_____判断树_______。
25.若某个加工将它的输入流分离成许多发散的数据流,形成许多加工路径,并根据输入的值选择其中一个路径执行,这种特征的DFD称为____事物型________的数据流图。
26.测试用例应由输入数据和______输出预期结果_________两部分组成。
27.测试的模块往往不是独立程序,需要为被测试模块设计若干辅助模块,其中用来模拟被测模块的上级调用模块称为______驱动__________模块。
28.采用软件工程的方法开发软件,各阶段都有相应的文档,容易进行维护工作,这是一种______结构化______维护。
29.状态图反映了状态与______事物__________的关系。
30.规定功能的软件,在一定程度上能从错误状态自动恢复到正常状态,这种软件称之为______容错_______软件。
三、名词解释题(本大题共5小题,每小题3分,共15分)
31.结构化分析方法
结构化分析方法(SA)系统化地使用问题域术语,给出该问题的模型。
结构化分析方法给出一组帮助系统分析人员产生功能规约的原理与技术它一般利用图形表达用户需求使用的手段主要有数据流图、数据字典、结构化语言、判定表以及判定树等。
32.黑盒测试
黑盒测试是在程序接口进行的测试它只检查程序功能是否能按照规格说明书的规定正常使用程序是否能适当地接收输入数据并产生正确的输出信息程序运行过程中能否保持外部信息的完整性。
黑盒测试又称为功能测试。
33.维护的副作用所谓副作用是指因维护修改软件而造成的错误或其它不希望发生的情况有三种副作用修改代码的副作用、修改数据的副作用、文档的副作用。
34.软件配置管理软件配置管理SCM是一种标识、组织和控制修改的技术。
软件配置管理应用于整个软件工程过程。
SCM活动的目标就是为了标识变更、控制变更、确保变更正确
实现并向其他有关人员报告变更。
目的是使错误降为最小并最有效地提高生产效率。
35.软件质量保证软件质量保证SQA是建立一套有计划有系统的方法来向管理层保证拟定出的标准、步骤、实践和方法能够正确地被所有项目所采用。
软件质量保证的目的是使软件过程对于管理人员来说是可见的它通过对软件产品和活动进行评审和审计来验证软件是合乎标准的。
四、简答题(本大题共4小题,每小题5分,共20分)
36.简述软件危机形成的原因及其表现。
答软件危机的原因
1)如何开发软件,以满足对软件日益增长的需求
2)如何维护数量不断膨胀的已有软件。
软件危机的表现
1)价格高
2)规模越来越大,开发不易控制
3)软件开发工作量估计困难
4)软件质量低
5)软件项目失败率高
6)错误率高
7)无法判断系统能否正常工作
8)维护任务重
37.简述数据流图工具及其四种基本图形符号的含义。
答:
数据流图是表达功能模型的工具,是一种描述数据变换的图形化工具,其中包含的元素可以是数据流、数据存储、加工、数据源和数据潭等。
38.简述衡量模块独立性的两个标准及其含义。
答:
耦合不同模块之间相互依赖程度的度量,它也是衡量模块独立性的一种重要的标准。
内聚是一个模块之内各成分之间相互依赖程度的度量,它是衡量模块独立性的一个重要标
准。
通常,内聚度越高,模块的独立性越强。
39.简述原型的作用。
答:
原型的作用是在客户需求不明确的情况下用于吸引需求。
当项目的规模或开发风险较大,可使用原型做技术评估,包括考核方案是否合适,规格说明是否可靠,方案中比较难的技术问题是否可以解决等。
39.简述原型的作用。
五、应用题(本大题共2小题,第40小题13分,第41小题12分,共25分)40.某公司为本科以上学历的人重新分配工作,分配原则如下:
(1)如果年龄不满30岁,学历是本科,男性要求报考研究生,女性则担任行政工作;学历是硕士,不分男女,任课题组组长。
(2)如果年龄满30岁不满50岁,学历本科,不分男女,任中层领导职务;学历是硕士不分男女,任课题组组长。
(3)如果年龄满50岁,学历本科,男性任科研人员,女性则担任资料员;学历是硕士不分男女,任课题组组长。
下列步骤是根据以上加工逻辑,得出判定表,并进行化简的过程。
请根据题意,在条件取值表的“取值”列填入相应内容,在初步判断表和简化后的判断表的“年龄”及“文化程度”这两行的空格中填入条件取值表中规定的符号。
(1)
(2)计算组合数2×3×2=12
41.一个软件公司有许多开发部门,每个部门由部门名字唯一确定。
每个开发部门开发多个软件产品。
开发部门有许多员工,分为经理和开发人员。
每个开发人员可参加多个开发项目,每个开发项目需要多个开发人员,开发人员使用语言开发项目。
每位经理可主持多个开发项目。
请在该公司的对象模型中填入相应的对象名。
二、填空题(本大题共20空,每空1分,共20分)
请在每小题的空格中填上正确答案。
错填、不填均不得分。
16.在软件开发领域,系统模型分为两大类,其中之一的__概念模型_____描述了系统是什么。
17.任何软件工程项目的基础是___软件需求____。
18.需求阶段的主要任务一般包括需求发现、需求分析和需求验证,最终形成系统的__软件需求规格说明书_____。
19.HIPO图是由一组IPO图和一张_H图(或层次图)______图组成。
20.结构化设计分为__总体设计_____和详细设计,而详细设计要提供实现该模块功能的_具体算法______。
21.耦合和内聚是衡量模块__独立性_____的两个定性指标。
22.UML的图形化工具分为结构图和__行为图_____。
23.在UML中,描述系统与外部系统及用户之间交互的图是_用况图______。
24.RUP是基于_UML______的一种软件开发过程框架,两者一起才称得上是一种_软件开发方法学______。
25.在RUP的每次迭代中都要经历一个核心工作流:
即需求获取、分析、设计、实现和__测试_____。
26.白盒测试技术,典型的是__路径测试_____技术,它依据的是程序的__逻辑结构_____。
27.单元测试主要检验软件设计的最小单元——___模块___________,多采用__白盒_____测试技术。
28.在标准《ISO/IEC软件生存周期过程12207—1995》中,按过程主体把软件生存周期过程分为基本过程、支持过程和__组织过程_____。
29.CMMI是针对系统/产品开发的能力成熟度模型,集成了3个源模型:
软件CMM、集成产品开发CMM和__系统工程CMM_____。
30.CMMI的能力等级和成熟度等级在概念上互补,区别在于成熟度等级用于表征组织对_一组(或多个)_过程域的改进,而能力等级用于表组织对__单个_____过程域的改进。
二、填空题(本大题共10小题,每小题2分,共20分)
请在每小题的空格中填上正确答案。
错填、不填均无分。
21.螺旋模型是将两种软件生存周期模型结合起来,加入了风险分析,这两种模型是指瀑布模型和___增量模型____。
22.在软件项目的经济可行性分析中,所谓投资回收期指的是:
使开发项目累计的经济效益等于__最初投资_____所需的时间。
23.数据流图中描述加工逻辑一般使用三种工具,分别是___DFD_____、判定表、判定树。
24.变换型的DFD是由输入、___变换_____和输出三部分组成。
25.Jackson开发方法中,Jackson结构图由___顺序结构_____、选择结构和重复结构这三种基本结构组合而成。
26.为开发一个特定项目选择程序设计语言时,必须从技术特性、_工程特征____和心理特
性几方面考虑。
27.软件产品在交付使用之前一般要经过以下四步测试:
___单元测试__、集成测试、确认测
试和系统测试。
28.软件维护的副作用有三种,分别是编码副作用、____数据副作用____、文档副作用。
29.面向对象设计可以细分为系统设计和__对象设计____。
30.面向对象分析要建立三个模型,其中___建立对象_____模型是三个模型的核心,也是其他两个模型的框架。
1、解释术语
(1)软件:
软件是指计算机系统中的程序及其文档。
P16
(2)软件工程:
软件工程是应用计算机科学理论和技术以及工程管理原则和方法,按预算和进度实现满足用户要求的软件产品的工程,或以此为研究对象的学科。
P15
(3)软件危机:
软件生产率、软件质量远远满足不了社会发展的需求,成为社会,经济发展的制约因素,人们通常把这一现象称为“软件危机”。
1、解释术语
(1)软件需求
软件需求以一种技术形式,描述了一个产品/系统应该具有的功能、性能和其它性质。
P23
(2)功能需求
功能需求规约了系统或系统构件必须执行的功能。
P24
(3)非公能需求
非公能需求是性能、外部接口、设计约束和质量属性这4类需求的统称。
P23
(4)需求规约
需求规约是一个软件项/产品/系统所有需求陈述的正式文档,它表达了一个软件产品/系统的概念模型。
需求分析:
一般来说,分析是系统地使用信息,对一个问题的估算。
软件需求分析是这一概念的特化,即系统化地使用“数据流”、“加工”、“数据存储”、“数据源”和“数据潭”等术语所表达的信息,对待建系统“是什么”给出一个估算――系统概念模型
软件设计:
在需求分析的基础上,定义满足需求所需要的结构,即针对给定的问题,给出该问题的软件解决方案,确定“怎么做”的问题
数据流图:
表达功能模型的工具,即数据流图(DataflowDiagram)简称DFD图,简单的说,DFD图是一种描述数据变换的图形化工具,其中饮食的元素可以是数据流、数据存储、加工、数据源和数据潭等
变换型数据流图:
具有较明显的输入部分和变换(主加工)部分之间的界面变换部分和输出部分之间界面的数据流图
事务型数据流图:
数据到达一个加工T,该加工T根据输入数据的值,在其后的基干动作序号(称为一个事务)中选出一个来执行
模块:
执行一个特殊任务的一个过程以及相关的数据结构
类及其属性和操作
类是一组具有相同属性、操作、关系和语义的对象的描述。
类的属性是类的一个命名特征,该特征是由该类的所有对象所共享、用于表达对象状态的数据
接口是操作的一个集合,其中每个操作描述了类、构件或子系统的一个服务
关联及其链:
关联是类目之间的一种结构关系,是对一组具有相同结构、相同链的描述。
链是对象之间具有特定语义关系的抽象泛化:
活佛是一般性类目(称为超类或父类)和它的较为特殊性类目(称为子类)之间的一种关系,有时称为”isakindof”关