【软件⼯程习题(含参考答案)】总复习60多道题总复习题(含参考答案),希望对⼤家的软件⼯程期末复习有帮助,你值得收藏!(#^.^#)
☞
第⼀题:名词解释
1、极限编程 (Extreme programming)
答:极限编程,把好的开发实践运⽤到极致,是⼀种典型的开发⽅式。
2、状态转换图
答:状态转换图(简称为状态图)通过描绘系统的状态及引起系统状态转换的事件,来表⽰系统的⾏为。
3、软件⽣命周期(Software Life Cycle,SLC)
答:由软件定义、软件开发和运⾏维护这3个时期组成,每个时期⼜进⼀步划分成若⼲个阶段。
4、问题域(Problem Domain)
答:问题域:描述问题的问题空间。
⾯向对象⽅法学的出发点和基本原则,是尽可能模拟⼈类习惯的思维⽅式,使开发软件的⽅法与过程尽可能接近⼈类认识世界解决问题的⽅法与过程,也即让描述问题的问题空间(也称为问题域)与实现解法的解空间(也称为求解域)在结构上尽可能⼀致。
5、PAD图
答:PAD图:Problem Analysis Diagram,即问题分析图,PAD⽤⼆维树形结构的图来表⽰程序的控制流。
6、实体-关联图(Entity Relationship Diagram)。
答:为了把⽤户的数据要求清楚并准确地描述出来,系统分析员通常建⽴⼀个概念性的数据模型即实体关联图(ER图)。
7、软件危机(Software Crisis)
8、软件质量保证(Software Quality)
答:软件质量保证的措施主要有:基于⾮执⾏的测试(也称为复审或评审),基于执⾏的测试(即以前讲过的软件测试)和程序正确性证明。
9、IPO图
答:IPO图是输⼊、处理、输出图的简称,它是由美国IBM公司发展完善起来的⼀种图形⼯具,能够⽅便地描绘输⼊数据、对数据的处理和输出数据之间的关系。
10、⾯向对象的⾼内聚低耦合
答:
· 耦合:⼀个软件结构内不同模块之间互连的紧密程度
· 低耦合:系统中某⼀部分的变化对其他部分的影响降到最低程度
· 对象之间的耦合:交互耦合&继承耦合
· 内聚衡量⼀个模块内各个元素彼此结合的紧密程度
· 在设计时应该⼒求做到⾼内聚低耦合
· ⾯向对象设计的3种内聚:服务内聚、类内聚、⼀般\特殊内聚
11、数据流图 (DFD)
答:DFD是⼀种图形化技术, 它描绘信息流和数据从输⼊移动到输出的过程中所经受的变换。
12、(Function Point)
答:依据对软件信息域特性和软件复杂性的评估结果,估算软件规模。这种⽅法⽤功能点(FP)为单位度量软件规模。
13、功能模型
答:功能模型表⽰变化的系统的“功能”性质,它指明系统应该“做什么”,因此更直接地反映了⽤户对⽬标系统的需求。
功能模型由⼀组数据流图组成。建⽴功能模型有助于软件开发⼈员更深⼊地理解问题域,改进和完善⾃⼰的设计。
14、数据规范化
答:软件系统经常使⽤各种长期保存的信息,这些信息通常以⼀定的⽅式组织并存储在数据库或⽂件中,为减少数据冗余,避免出现插⼊异常或删除异常,简化数据修改的过程,通常需要把数据结构规范化
15、软件⼯程⽅法学
软件⼯程⽅法学:通常把在软件⽣命周期全过程中使⽤的⼀整套技术⽅法的集合称为⽅法学,也称范型。
软件过程是软件⼯程⽅法学的3个重要组成部分之⼀。对象模型是什么
16、软件质量
概括地说,软件质量就是“软件与明确地和隐含地定义的需求相⼀致的程度”。
更具体地说,软件质量是软件与明确地叙述的功能和性能需求、⽂档中明确描述的开发标准以及任何专业开发的软件产品都应该具有的隐含特征相⼀致的程度。
17、敏捷过程
答:敏捷过程:为了使软件开发团队具有⾼效⼯作和快速响应变化的能⼒
18、⼯程⽹络图
答:⼯程⽹络是制定进度计划时另⼀种常⽤的图形⼯具,它同样能描绘任务分解情况以及每项作业的开始时间和结束时间。此外,它还显式地描绘各个作业彼此间的依赖关系。因此,⼯程⽹络图是系统分析和系统设计的强有⼒的⼯具。
19、动态联编
答:动态联编指应⽤系统在运⾏过程中,当需要执⾏⼀个特定服务的时候,选择(或联编)实现该服务的适当算法的能⼒。
20、系统流程图
答:⼀个概括地描绘物理系统的传统⼯具,表达了数据在系统各部件之间流动的情况。
21、HIPO图
答:HIPO图是美国IBM公司发明的“层次图加输⼊/处理/输出图”,即Hierarchical diagram plus input / processing / output,简称HIPO。
22、软件重⽤
软件重⽤也叫软件再⽤或复⽤,是指同⼀个软件部分不作修改或稍加改动就多次重复使⽤。
⼴义地说,软件重⽤可分为以下3个层次:
(1) 知识重⽤
(2) ⽅法和标准的重⽤
(3) 软件成分的重⽤
23、数字字典(Digital Dictionary)
答:是关于数据的信息的集合, 也就是对数据流图中包含的所有元素的定义的集合。
24、判定树
答:判定树是判定表的变种,它也能清晰地表⽰复杂的条件组合与应做的动作之间的对应关系。
25、过程设计语⾔(PDL)
答:过程设计语⾔(PDL)也称为伪码。是⽤正⽂形式表⽰数据和处理过程的设计⼯具。
26、代码的健壮性(Robust)
答:健壮性就是在硬件故障、输⼊的数据⽆效或操作错误等意外环境下,系统能做出适当响应的程度。
第⼆题: 说明典型的可重⽤软件成分,主要有哪⼗种?
答:典型的可重⽤软件成分:
1. 项⽬计划
2. 成本估计
3. 体系结构
4. 需求模型和规格说明
5. 设计
6. 源代码
7. ⽤户⽂档和技术⽂档
8. ⽤户界⾯
9. 数据
10. 测试⽤例
第三题: 说明软件维护的定义?以及通过描述软件交付使⽤后可能进⾏的4项活动?
(1)软件维护:在软件已经交付使⽤之后,为改正错误或满⾜新的需要⽽修改软件的过程。
(2)软件交付使⽤后可能进⾏的4项活动:
1.改正性维护
2.适应性维护
2.适应性维护
3.完善性维护
4.预防性维护
第四题:功能需求是对软件系统的⼀项基本需求,试问通常对软件系统有哪⼏⽅⾯的综合要求?
答:对软件系统8个⽅⾯的综合要求:
1. 功能需求
2. 性能需求
3. 可靠性和可⽤性需求
4. 出错处理需求
5. 接⼝需求
6. 约束
7. 逆向需求
8. 将来可能提出的要求
第五题:试述⾯向对象的封装(encapsulation)、继承(inheritance)、多态性(polymorphism)和重载(overloading)?
答:
1. 封装:把数据和实现操作的代码集中起来放在对象内部隐藏起来,只保留有限的接⼝与外界联系。
2. 继承:⼦类⾃动地共享基类中定义的数据和⽅法的机制。
3. 多态性:⼦类对象可以像⽗类对象那样使⽤,同样的消息既可以发送给⽗类对象也可以发送给⼦类对象。
4. 重载,有两种:①函数重载,在同⼀作⽤域内的若⼲个参数特征不同的函数可以使⽤相同的函数名字;②运算符重载,同⼀个运算
符可以施加于不同类型的操作数上⾯。
第六题: 试绘出⾃动售货机系统的⽤例图并说明。
⾃动售货机系统的⽤例图
椭圆代表⽤例(售货、供货和取货款是⾃动售货机系统的典型⽤例);
线条⼈代表⾏为者,它们之间的连线表⽰关系。
第七题: 说明在⾯向对象分析中的3个模型与5个层次?
第⼋题: 使⽤Z语⾔描述的、最简单的形式化规格说明含有哪4个部分?
1. 给定的集合、数据类型及常数。
2. 状态定义。
3. 初始状态。
4. 操作。
第九题: 请说明模块独⽴性的重要性?
第⼗题: 验证软件需求的⽅法,⾄少必须哪4个不同⾓度验证软件需求的正确性?
1. ⼀致性:所有需求必须是⼀致的,任何⼀条需求不能和其他需求互相⽭盾。
2. 完整性:需求必须是完整的,规格说明书应该包括⽥户需要的每⼀个功能或性能
3. 现实性:指定的需求应该是⽤现有的硬件技术和软件技术基本上可以实现的。
4. 有效性:必须证明需求是正确有效的,确实能解决⽤户⾯对的问题。
第⼗⼀题: 请试描绘⼀家计算机公司全部产品的数据结构,⽤层次⽅框图和Warnier图表⽰。
层次⽅框图
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论