第一题:名词解释
- 极限编程 (Extreme programming)。
- 状态转换图。
3、软件生命周期(Software Life Cycle,SLC)。
4、问题域(Problem Domain)。
5、PAD图。
6、实体-关联图(Entity Relationship Diagram)。
7、软件危机(Software Crisis)。
8、软件质量保证(Software Quality)。
9、IPO图。
10、面向对象的高内聚低耦合。
11、数据流图 (DFD) 。
12、功能点技术(Function Point) 。
13、功能模型。
14、数据规范化。
15、软件工程方法学。
16、软件质量。
17、敏捷过程。
18、工程网络图。
19、动态联编。
20、系统流程图。
21、HIPO图。
22、软件重用。
23、数字字典(Digital Dictionary)。
24、判定树。
25、过程设计语言(PDL)
26、代码的健壮性(Robust)。
答:
1.极限编程 (Extreme programming):
把好的开发实践运用到极致,是一种典型的开发方式。
2.状态转换图:
状态转换图(简称为状态图)通过描绘系统的状态及引起系统状态转换的事件,来表示系统的行为。此外,状态图还指明了作为特定事件的结果系统将做哪些动作。
3.软件生命周期(Software Life Cycle,SLC):
由软件定义,软件开发和运行维护3个时期组成,每个时期又进一步划分成若干个阶段。
4.问题域(Problem Domain):
面向对象方法学的要点面向对象方法学的出发点和基本原则,是尽可能模拟人类习惯的思维方式,使开发软件的方法与过程尽可能接近人类认识世界解决问题的方法与过程,也就是使描述问题的问题空间(也称为问题域)与实现解法的解空间(也称为求解域)在结构上尽可能一致。
5.PAD图:
PAD是问题分析图(problem analysis diagram)的英文缩写,用二维树形结构的图来表示程序的控制流。
6.实体-关联图(Entity Relationship Diagram):
为了把用户的数据要求清楚,准确地描述出来,系统分析员通常建立一个概念性的数据模型(也称为信习模型。
7.软件危机(Software Crisis):
软件危机是指在计算机软件开发、使用与维护过程中遇到的一系列严重问题和难题。它包括两方面:如何开发软件,已满足对软件日益增长的需求;如何维护数量不断增长的已有软件。
8.软件质量保证(Software Quality):
软件质量保证(software quality assurance, SQA)的措施主要有:基于非执行的测试(也称为复审或评审),基于执行的测试(即以前讲过的软件测试)和程序正确性证明。
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公司发明的“层次图加输入/处理/输出图”的英文缩写。为了能使HIPO图具有可追踪性,在H图(层次图)里除了最顶层的方框之外,每个方框都加了编号。
22.软件重用:
重用也叫再用或复用,是指同一事物不作修改或稍加改动就多次重复使用。
广义地说,软件重用可分为以下3个层次:
• 知识重用
• 方法和标准的重用
• 软件成分的重用
23.数字字典(Digital Dictionary):
是关于数据的信息的集合, 也就是对数据流图中包含的所有元素的定义的集合。
24.判定树:
判定树是判定表的变种,它也能清晰地表示复杂的条件组合与应做的动作之间的对应关系。