软件工程导论复习重点总结 很全(第六版)
- 格式:doc
- 大小:830.43 KB
- 文档页数:24
软件工程导论复习整理(最新)第一篇:软件工程导论复习整理(最新)第一章1..软件危机:在计算机软件的开发和维护过程中所遇到的一系列严重问题。
2.软件与硬件的区别:软件不同于硬件,它是计算机系统中的逻辑部件而不是物理部件。
3.软件:程序、数据及相关文档的完整集合。
4.软件工程是指导计算机软件开发和维护的一门工程学科,采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到最好的技术方法结合起来,以经济地开发出高质量的软件并有校地维护它。
5.软件工程方法学三要素:方法、工具和过程。
6.传统方法学也称为生命周期方法学或结构化范型。
它采用结构化技术来完成软件开发的各项任务,并使用适当的软件工具或软件工程环境来支持结构化技术的运用。
7.面向对象方法学把数据和行为看成同等重要的,它是一种以数据为主线,把数据和对数据的操作紧密地结合起来的方法。
8.软件生命周期划分为三个时期:1软件定义(问题定义、可行性研究、需求分析),2软件开发(总体设计、详细设计、编码和单元测试、综合测试),3运行维护(软件维护)。
9.4类软件维护活动:改正性维护,也就是诊断和改正在使用过程中发现的软件错误;适应性维护,即修改软件以适应环境的变化;完善性维护,即根据用户的要求改进或扩充软件使它更完善;预防性维护,即修改软件,为将来的维护活动预先做准备。
10.“瀑布模型”的缺点:它是由文档驱动的,仅仅通过写在纸上的静态的规格说明,很难全面正确地认识动态的软件产品;瀑布模型几乎完全依赖于书面的规格说明,很可能导致最终开发出的产品不能真正的满足用户的需要。
11.快速原型模型的优点:原型系统已经通过与用户交互而得到验证,据此产生的规格说明文档正确地描述了用户需求;开发人员通过建立原型系统已经学到了很多东西,因此,在设计和编码阶段发生错误的可能性也比较小,这自然减少了在后续阶段需要改正前面阶段所犯错误的可能性。
软件工程导论第六版课后习题答案完整版首先,感谢您对软件工程导论课后习题答案的需求。
以下是软件工程导论第六版课后习题的完整答案。
第一章:软件工程概述1.1 问题1. 什么是软件工程?答:软件工程是一种应用工程原理、方法和工具来开发和维护高质量软件的学科。
1.2 问题1. 什么是软件?答:软件是一系列按照特定顺序组织的计算机数据和指令。
第二章:软件过程模型2.1 问题1. 软件过程模型有哪些类型?答:常见的软件过程模型包括瀑布模型、迭代模型、螺旋模型和敏捷开发模型等。
2.2 问题1. 瀑布模型的特点是什么?答:瀑布模型是一种线性顺序模型,以阶段划分为基础,每个阶段的任务在进入下一个阶段前必须完成。
第三章:需求分析与规格说明3.1 问题1. 软件需求描述包括哪些方面的内容?答:软件需求描述需要包括功能性需求、非功能性需求、用户需求和系统需求等。
3.2 问题1. 什么是需求跟踪?答:需求跟踪是指在软件开发过程中,通过建立需求和软件项目中其他相关工件之间的关联,确保需求的准确实现和变更的有效管理。
第四章:软件设计4.1 问题1. 软件设计的目标是什么?答:软件设计的目标是通过确定软件的整体结构和组成部分,确保软件满足需求并具有良好的可维护性和可重用性。
第五章:软件测试与维护5.1 问题1. 什么是软件测试?答:软件测试是一种评估和改进软件质量的过程,目的是发现错误并提高软件的可靠性和可用性。
5.2 问题1. 什么是软件维护?答:软件维护是指在软件交付后的整个生命周期中对软件进行修改和改进,以满足用户需求和修复错误。
第六章:软件配置管理6.1 问题1. 软件配置管理的目标是什么?答:软件配置管理的目标是确保软件在开发和维护过程中的可控性和可追踪性,以及保持软件配置的稳定性和一致性。
6.2 问题1. 软件版本控制是什么?答:软件版本控制是指对软件的不同版本进行管理,包括版本的创建、检出、合并和更新等操作。
至此,我们完成了软件工程导论第六版课后习题的完整答案。
软件工程导论复习重点总结很全(第六版)软件工程导论复习重点总结很全(第六版)软件工程是一门研究如何以系统化的、可管理的和可维护的方式来构建高质量的软件的学科。
在软件工程导论中,我们学习了软件开发的基本概念、原理和方法。
本文将对软件工程导论的重点内容进行总结,帮助读者巩固所学知识,为学习和工作提供帮助。
1. 软件工程概述软件工程的定义、目标和原则;软件生命周期和过程模型;软件开发的重要性和挑战;软件工程中的质量保证和风险管理。
2. 软件需求工程软件需求的定义和分类;需求获取、分析和建模;需求验证和确认;需求变更和配置管理。
3. 软件设计软件设计原则和方法;面向对象设计和结构化设计;软件架构设计;设计模式的应用。
4. 软件测试与调试软件测试的概念和目的;测试策略和技术;测试用例的设计和执行;测试评估和管理;软件错误调试和修复。
5. 软件项目管理软件项目管理的基本概念和流程;项目计划和进度管理;团队组织和沟通;风险管理和变更管理;质量管理和配置管理;软件工程伦理与法规。
6. 软件开发过程软件开发过程模型的选择和应用;瀑布模型、迭代模型和敏捷开发等常用模型的特点和比较;敏捷开发方法的原理和实践。
7. 软件工具与环境软件开发工具的选择和使用;集成开发环境、版本控制工具、测试工具和调试工具等的功能和特点;软件工程中的自动化工具和技术。
8. 软件工程的前沿技术软件工程的新兴技术和趋势;人工智能、大数据、云计算等技术在软件开发中的应用;软件工程的创新与创业。
通过对上述主要内容的学习和理解,我们可以全面掌握软件工程导论的核心知识和方法。
在今后的学习和实践中,我们应该注重理论与实际的结合,不断提高自己在软件开发和项目管理方面的能力。
只有不断学习和实践,我们才能成为优秀的软件工程师,为社会和企业创造更大的价值。
总结:软件工程导论是软件工程领域中的重要基础课程,通过对软件开发过程和管理原理的学习,我们可以掌握软件工程的基本概念、原则和方法。
第1章软件工程学概述1.1 软件危机1.1.1 软件危机旳简介软件危机(软件萧条、软件困扰): 是指在计算机软件旳开发和维护过程中所碰到旳一系列严重问题。
软件危机包括下述两方面旳问题:怎样开发软件, 满足对软件日益增长旳需求;怎样维护数量不停膨胀旳已经有软件。
软件危机旳经典体现:(1)对软件开发成本和进度旳估计常常很不精确;(2)顾客对“已完毕旳”软件系统不满意旳现象常常发生;(3)软件产品旳质量往往靠不住;(4)软件常常是不可维护旳;(5)软件一般没有合适旳文档资料;(6)软件成本在计算机系统总成本中所占旳比例逐年上升;(7)软件开发生产率提高旳速度, 远远跟不上计算机应用迅速普及深入旳趋势。
1.1.2 产生软件危机旳原因(1)与软件自身旳特点有关(2)与软件开发与维护旳措施不对旳有关1.1.3 消除软件危机旳途径对计算机软件有对旳旳认识。
认识到软件开发是一种组织良好、管理严密、各类人员协同配合、共同完毕旳工程项目。
应当推广使用在实践中总结出来旳开发软件旳成功技术和措施, 并继续研究探索。
应当开发和使用更好旳软件工具。
总之, 为了处理软件危机, 既要有技术措施(措施和工具), 又要有必要旳组织管理措施。
1.21.2.1 软件工程旳简介软件工程: 是指导计算机软件开发和维护旳一门工程学科。
采用工程旳概念、原理、技术和措施来开发与维护软件, 把通过时间考验而证明对旳旳管理技术和目前可以得到旳最佳旳技术措施结合起来, 以经济地开发出高质量旳软件并有效地维护它, 这就是软件工程。
(期中考)软件工程旳本质特性:软件工程关注于大型程序旳构造软件工程旳中心课题是控制复杂性软件常常变化开发软件旳效率非常重要友好地合作是开发软件旳关键软件必须有效地支持它旳顾客在软件工程领域中是由具有一种文化背景旳人替具有另一种文化背景旳人发明产品1.2.2 软件工程旳基本原理用分阶段旳生命周期计划严格管理坚持进行阶段评审实行严格旳产品控制采用现代程序设计技术成果应能清晰地审查开发小组旳人员应当少而精承认不停改善软件工程实践旳必要性1.2.3 软件工程措施学软件工程包括技术和管理两方面旳内容。
软件工程导论(第6版)知识点总结、复习课-图文复习课--------酷爱YC第一章1、什么是软件危机,什么是软件工程软件危机是指在计算机软件开发、使用与维护过程中遇到的一系列严重问题和难题。
它包括两方面:(1如何开发软件,以满足对软件日益增长的需求;(2如何维护数量不断膨胀的已有软件。
软件工程:采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件,并有效地维护它。
2、完整的软件配置由哪些内容组成软件配置主要包括程序,文档和数据等成分。
3、软件生命周期分为哪3个时期和8个阶段,每个阶段的任务(工作分别是什么,重要性如何开发时期具体设计和实现在前一个时期定义的软件,它通常由下述4个阶段组成:总体设计,详细设计,编码和单元测试,综合测试。
其中前两个阶段又称为系统设计,后两个阶段又称为系统实现。
(1 总体设计(概要设计,回答“怎样实现目标系统”。
建立系统的总体结构,划分子系统;确定系统由哪些模块组成,各子系统间、各模块间的关系(包括定义各子系统接口界面和各功能模块的接口,设计全局数据库或数据结构,规定设计约束,制定组装测试计划。
成果:概要设计说明书、数据库或数据结构说明书、系统的组装(集成测试计划等文档。
(2详细设计任务就是把解法具体化,也就是回答:“应该怎样具体地实现这个系统呢?”,设计每个程序模块的内部细节,包括数据结构、算法以及各程序模块间的接口信息,并设计模块的单元测试计划。
成果:详细设计规格说明和单元测试计划等详细设计文档。
以上(1、(2又合称为软件设计。
(3编码和单元测试这个阶段的关键任务是写出正确的容易理解、容易维护的程序模块。
根据详细设计规格说明,选用某种程序设计语言把详细设计的结果转化为机器可运行的源程序模块;运行和调试每一个程序模块;每编写出一个程序模块的源程序,调试通过后,即对该模块进行单元测试。
第一章、软件工程学概述软件危机:是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
软件危机包含下述两个方面的问题:1.如何开发软件,以满足对软件日益增长的需求。
2.如何维护数量不断膨胀的已有软件。
具体的说,软件危机主要有以下一些典型表现:1.对软件开发成本的进度的估计常常很不准确。
2.用户对“已完成的”软件系统不满意的现象经常发生3.软件产品的质量往往靠不住。
4.软件常常是不可维护的。
5.软件通常没有适当的文档材料。
6.软件成本在计算机系统总成本中所占的比例逐年上升。
7.软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。
软件生命周期:一个软件从定义、开发、使用和维护,知道最终被废弃,要经历一个漫长的时期,通常把软件经历的这个漫长的时期称为生命周期。
软件配置:程序、文档和数据。
软件工程学的一个重要的目标:就是提高软件的可维护性,减少软件维护的代价。
软件:是程序、数据及相关文档的集合。
程序:是能够完成预定功能和性能的可执行的指令序列。
数据:是使程序能够适当地处理信息的数据结构。
文档:是开发、使用和维护程序所需要的图文资料。
软件工程:指导计算机软件开发和维护的一门工程学科。
软件工程具有下属的本质特性:1.软件工程关注于大型程序的构造。
2.软件工程的中心课题是控制复杂性。
3.软件经常变化。
4.开发软件的效率非常重要。
5.和谐地合作是开发软件的关键。
6.软件必须有效地支持它的用户。
7.在软件工程领域中通常由具有一种文化背景的人替具有另一种文化背景的人创造产品。
软件工程的7条基本原理:1.用分阶段的生命周期计划严格管理。
2.坚持进行阶段评审。
3.实行严格的产品控制4.采用现代程序设计技术。
5.结构应能清楚的审查。
6.开发小组的人员应该少而精。
7.承认不断改进软件工程实践的必要性。
软件工程:包括技术和管理两方面的内容,是技术与管理紧密结合所形成的工程学科。
通常把在软件生命周期全过程中使用的一整套技术方法的集合称为方法学,也称为泛型。
复习全书重点(包含老师重点不包括第一章)软件开发生命周期每个阶段的任务:1、问题定义:要解决的问题是什么2、可行性分析:确定问题是否值得去解决3、需求分析:回答系统必须做什么4、总体设计:系统该如何实现5、详细设计:怎样具体实现所要求的系统6、编码和单元测试:编写软件程序,并对每一个模块进行单元测试7、综合测试:通过各种测试以及相应的调试,使软件达到预定的要求8、软件维护:过各种必要的维护活动使系统持久地满足用户的需要可行性研究目的:用最小的代价在尽可能短的时间内确定问题是否能够解决。
研究方法:技术可行性、经济可行性、操作可行性。
可行性研究的最根本的任务:对以后的行动方针提供建议。
可行性研究过程:1、复查系统规模和目标2、研究目前正在使用的系统3、导出新系统的高层逻辑模型4、进一步定义问题5、导出和评价供选择的解法6、推荐行动方针7、草拟开发计划8、书写文档提交审查系统流程图:是概括的描绘物理系统的传统工具,表达的是数据在各个部件之间的流动情况,不对数据进行加工。
数据流图:是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经历的变换。
在数据流图中没有任何具体的物理部件,它只描绘数据在软件中流动和被处理的逻辑过程。
数据流图的4中成分:源点或终点、处理、数据存储、数据流数据流图是系统的逻辑模型。
画数据流图的目的是用它来作为交流信息、分析和设计的工具。
数据字典是关于数据信息的集合,也就是对数据流图中的所有元素的定义的集合。
提供关于数据的描述信息。
数据流图和数据字典共同构成系统的逻辑模型,没有数据字典,数据流图就不严格,没有数据流图,数据字典很难发挥作用。
数据元素组成数据的方式的3种基本类型:顺序、选择、重复(可选是增加的关系算符)“=”意为等价于“+”是和[]是或{}是重复()是可选需求分析应该建立的三种模型:数据模型、功能模型、行为模型实体-联系图(E-R图)是描绘数据对象及数据对象之间的关系是用于建立数据模型的图形。
软件工程导论复习重点总结--很全(第六版) 咱今儿就来说说这软件工程导论复习重点总结啊,用的还是那第六版嘞。
我跟你讲啊,当初我翻开这本书的时候,那心情啊,就跟探险似的。
这书啊,就跟一个神秘的宝藏库一样,里面藏着各种各样关于软件工程的宝贝。
我还记得那时候,我坐在图书馆的角落里,周围都是些埋头苦读的学生。
阳光透过窗户洒在桌子上,那书上的字啊,在光影里就跟活了似的。
我就盯着那书,心里想着,得把这里头的门道都给弄明白咯。
这软件工程导论啊,可不是个简单玩意儿。
它就像盖房子一样,得有一套严谨的流程。
从需求分析开始,就好比是打地基。
你得搞清楚这房子是给谁住的,人家有啥要求,要是这地基没打牢,后面那楼啊,指不定啥时候就塌咯。
我有个同学啊,他当初就没把需求分析当回事儿。
结果到后面编码的时候,发现这也不对,那也不合适,急得满头大汗,那头发啊,乱得跟鸡窝似的。
他跟我抱怨说:“早知道当初就好好琢磨琢磨那需求了,现在可倒好,全乱套啦。
”我就笑着跟他说:“你呀,就是太心急,这软件工程,得一步一个脚印来。
”再说说这软件设计,这就好比是画房子的蓝图。
得把各个房间怎么布局,功能怎么划分,都想得明明白白的。
这时候啊,就得发挥咱的想象力和创造力啦。
就像艺术家画画一样,得精心构思,不能马虎。
到了编码阶段,那就是真正动手盖房子的时候啦。
敲代码的时候,那键盘声噼里啪啦的,就跟放鞭炮似的。
有时候啊,代码写得顺,那感觉就跟顺水行舟一样,心里别提多畅快了。
可有时候呢,遇到个 bug,那可就头疼啦。
就跟房子突然出现个裂缝一样,得费好大劲儿去找原因,修修补补的。
还有那软件测试,这就好比是房子盖好后的验收工作。
得仔仔细细地检查每一个角落,看看有没有啥毛病。
有时候啊,测试人员就跟侦探似的,得把那些隐藏得很深的问题都给找出来。
咱这复习重点总结啊,就是帮咱把这些重要的环节都梳理清楚,让咱心里有个底儿。
就像给咱准备了一张地图,顺着这地图走,咱就能在软件工程这个大迷宫里不迷路。
1、软件危机是指在计算机开发过程中旳开发和维护过程中所碰到旳一系列旳严重问题。
2、软件是程序、数据及有关文档旳完整集合,程序是可以完毕预定功能和性能旳可执行旳程序序列;数据是是使程序可以合适旳处理信息旳数据构造;文档是开发、使用和维护程序所需要旳图文资料。
3、软件工程学包括3个要素:措施、工具、过程。
4、目前使用最广泛旳软件工程措施学是老式措施学和面向对象措施学。
5、软件工程措施学旳软件过程基本上可以用瀑布模型来描述。
6、瀑布模型、迅速原型模型、增量模型、螺旋模型、喷泉模型。
7、Rup把软件生命周期划为:初始、精化、构建、移交阶段。
8、可行性研究旳三方面:技术可行性、经济可行性、操作可行性。
9、数据流图(DFD是一种图形化技术,他描绘信息流和数据从输入移动到输出旳过程中所经受旳变化。
10、数据字典是有关数据信息旳集合,也就是对数据流程图中所包括旳所有元素旳定义旳集合。
11、数据流图和数据字典共同构成系统旳逻辑模型,没有数据字典,数据如就不严格,没有流程图,数据字典也难以发挥作用。
12、需求分析阶段结束之前,系统分析员应当写出软件需求规格阐明书,以书面形式准确旳描述软件需求。
13、9、构造化分析措施就是面向数据流自顶向下逐渐求精进行需求分析旳措施。
14、ER图中包括了实体、关系和属性,矩形代表实体,菱形表达关系,椭圆或圆角矩形表达属性,用直线把实体和其属性连接。
15、验证软件需求旳对旳性:一致性、完整性、现实性、有效性。
16、总体设计旳基本目旳是回答“概括地说,系统应当怎样实现?”,总体设计又称为概要设或初步设计。
17、模块旳独立程度可以有两个定性标量度量:内聚和耦合。
18、软件测试旳目旳:(1测试是为了发现程序中旳错误而执行程序旳过程;(2好旳测试方案是极也许发现迄今为止尚未发现旳错误旳测试方案;(3成功旳测试是发现可至今为止尚未发现旳错误旳测试。
19、软件测试环节:模块测试、子系统测试、系统测试、验收测试、平行运行。
第一章、软件工程学概述软件危机:是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
软件危机包含下述两个方面的问题:1.如何开发软件,以满足对软件日益增长的需求。
2.如何维护数量不断膨胀的已有软件。
具体的说,软件危机主要有以下一些典型表现:1.对软件开发成本的进度的估计常常很不准确。
2.用户对“已完成的”软件系统不满意的现象经常发生3.软件产品的质量往往靠不住。
4.软件常常是不可维护的。
5.软件通常没有适当的文档材料。
6.软件成本在计算机系统总成本中所占的比例逐年上升。
7.软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。
软件生命周期:一个软件从定义、开发、使用和维护,知道最终被废弃,要经历一个漫长的时期,通常把软件经历的这个漫长的时期称为生命周期。
软件配置:程序、文档和数据。
软件工程学的一个重要的目标:就是提高软件的可维护性,减少软件维护的代价。
软件:是程序、数据及相关文档的集合。
程序:是能够完成预定功能和性能的可执行的指令序列。
数据:是使程序能够适当地处理信息的数据结构。
文档:是开发、使用和维护程序所需要的图文资料。
软件工程:指导计算机软件开发和维护的一门工程学科。
软件工程具有下属的本质特性:1.软件工程关注于大型程序的构造。
2.软件工程的中心课题是控制复杂性。
3.软件经常变化。
4.开发软件的效率非常重要。
5.和谐地合作是开发软件的关键。
6.软件必须有效地支持它的用户。
7.在软件工程领域中通常由具有一种文化背景的人替具有另一种文化背景的人创造产品。
软件工程的7条基本原理:1.用分阶段的生命周期计划严格管理。
2.坚持进行阶段评审。
3.实行严格的产品控制4.采用现代程序设计技术。
5.结构应能清楚的审查。
6.开发小组的人员应该少而精。
7.承认不断改进软件工程实践的必要性。
软件工程:包括技术和管理两方面的内容,是技术与管理紧密结合所形成的工程学科。
通常把在软件生命周期全过程中使用的一整套技术方法的集合称为方法学,也称为泛型。
软件工程导论期末复习重点软件工程期末复习一、软件工程学概述1.软件危机:计算机开发和维护的过程中所遇到的一系列问题名词解释(需要加上软件危机产生的原因)对用户的要求没有完整准确的认识就匆忙着手编写程序论述题(需要加上软件危机的典型表现)01.对软件开发成本和嫉妒的估计常常不准确02.用户对已完成软件系统的不满意情况经常发生03.软件的质量靠不住2.软件工程:指导计算机开发和维护的一门工程学科?名词解释3.软件工程方法学的三要素:方法、工具、过程4.软件生命周期的三个时期:软件定义、软件开发、运行维护01.软件定义时期的三个阶段:问题定义、可行性研究、需求分析02.软件开发时期的四个阶段:总体设计、详细设计、编码、单元测试,综合测试,前两个称系统设计,后两个称系统实现03.软件维护时期:只要任务是使软件持久的满足用户的需要,具体的说,当软件在使用过程中发现错误时应该加以纠正,当环境改变时应修改软件以适应新的环境,当用户有新的需要时,应该及时改进软件以满足用户新的需求,本时期不在划分阶段,但是每一次维护活动本质上都是一次压缩和简化了的定义和开发过程5.可行性研究的结果是客户做出是否继续这项工程的决定的重要依据,只有投资取得较大收益的的那些工程项目才是值得继续进行下去的6.需求分析的目标是:确定出系统必须具备哪些功能,和用户密切配合,充分交流信息,以得出经过系统确认的系统逻辑模型7.软件维护的四类维护活动:01.改正性维护:改正和诊断在使用过程中发生的软件错误02.适应性维护:修改软件以适应新的环境变化03.完善性维护:根据用户的需求改善和扩充软件使它更完善04.预防性维护:为将来的维护活动事先做准备8.瀑布模型: ?论述题01.传统的瀑布模型开发软件的特点A.阶段间具有顺序性和依赖性B.推迟实现的观点C.质量保证的观点02.软件配置:程序、文档、数据03.注释有什么用:提高代码的可读性(有待补充)二、可行性研究1.可行性研究的目的:就是用最小的代价在尽可能短的时间内确定问题是否能够解决2.从三个方面研究每种解法的可读性;01.技术可行性:使用现在的技术能实现这个系统吗?02.经济可行性:这个系统的经济效益能超过它的开发成本吗?03.操作可行性:系统的操作方式在这个用户组织内能行得通吗?3.系统流程图:是概括的描绘物理系统的传统工具。
复习课-------- 热爱 YC第一章1、什么是软件危机 ,什么是软件工程软件危机是指在计算机软件开发、使用与保护过程中碰到的一系列严重问题和难题。
它包含双方面 :(1 如何开发软件 ,以知足对软件日趋增添的需求 ;(2 如何保护数目不停膨胀的已有软件。
软件工程 :采纳工程的观点、原理、技术和方法来开发与保护软件,把经过时间考验而证明正确的管理技术和目前能够获取的最好的技术方法联合起来 ,以经济地开发出高质量的软件 ,并有效地保护它。
2、完好的软件配置由哪些内容构成软件配置主要包含程序 ,文档和数据等成分。
3、软件生命周期分为哪 3 个期间和 8 个阶段 ,每个阶段的任务 (工作分别是什么 ,重要性如何归纳地说 ,软件生命周期由软件定义、软件开发和运转保护 3 个期间构成1、软件定义 (系统剖析。
软件定义期间的任务是 :确立软件开发工程一定达成的总目标 ;确立工程的可行性 ;导出实现工程目标应当采纳的策略及系统一定达成的功能 ;预计达成该项工程需要的资源和成本 ,并且拟订工程进度表。
这个期间的工作往常又称为系统剖析 ,由系统剖析员负责达成。
软件定义期间往常进一步区分红 3 个阶段 ,即问题定义、可行性研究和需求剖析。
(1 问题定义 ,确立系统要解决的问题是什么。
成就:对于问题性质、工程目标和工程规模的报告。
(2 可行性研究 ,确立问题能否有可用的、能行得通的解(包含 :技术、经济、操作、社会等方面的可行性。
这个阶段的任务不是详细解决问题,而是研究问题的范围 ,探究这个问题能否值得去解,能否有可行的解决方法。
成就:可行性研究报告。
(3 需求剖析 ,确立软件系统的一定实现的功能、一定达到的性能、一定知足的运转环境要求。
系统剖析员在需求剖析阶段一定和用户亲密配合 ,充足沟通讯息 ,以得出经过用户确认的系统逻辑模型。
往常用数据流图、数据词典和简要的算法表示系统的逻辑模型。
在需求剖析阶段确立的系统逻辑模型是此后设计和实现目标系统的基础 ,所以一定正确完好地表现用户的要求。
软件工程一、名词解释与问答1、SA——结构化分析方法2、画数据流图应注意什么事项?(1)数据流名称只能是名词或是名词短语;(2)每个加工至少有一个输入数据和一个输出数据流,反映出此加工数据的来源与加工的结果;(3)编号:某个加工分解成一张数据流图时,上层图为父类,下层图为子类;父图与子图的平衡:子图的输入输出数据流同父类相应的输入输出数据流必须一致;(4)注意数据流图的易理解性;3、什么是软件生存周期?它有那几个活动?一个软件从提出开发要求开始直到该软件报废为止的整个时期。
包括:可行性分析和项目开发计划,需求分析,概要设计,详细设计,编码,测试,维护。
4、什么是数据流图?作用是什么?其中的基本符号表示什么含义?以图的方式描述数据在系统中流动和处理的过程,只反映系统必须完成的逻辑功能,是一种功能模型。
箭头,表示数据流数据流是数据在系统内传播的路径,由一组成分固定的数据项组成;圆或椭圆,表示加工对数据进行某些操作或变换,每个加工要有名字,通常是动词短语,描述完成的加工;双杆,表示数据存储指暂时保存的数据;方框,数据源点或终点软件系统外部环境的实体,为帮助理解系统接口界面引入,只出现在顶层图中;什么是数据字典简述数据字典与数据流图的关系.答案:数据字典是关于数据的信息的集合,对数据流程图中的各个元素做完整的定义与说明,是数据流程图的补充工具.(2分)数据流图和数据字典共同构成系统的逻辑模型,没有数据字典数据流图就不严格,然而没有数据流图数据字典也难于发挥作用. 数据流图和对数据流图中每个元素的精确定义放在一起,才能共同构成系统的规格说明.(3分) 简述编码风格的重要性. 答案:阅读程序是软件开发和维护过程中的一个重要组成部分,程序实际上也是一种供人阅读的文章.应当在编写程序时讲求程序的风格,这将大量地减少人们读程序的时间.良好的编码风格有助于编写出可靠而又容易维护的程序,编码的风格在很大程度上决定着程序的质量.简述软件测试的任务、目的与类型。
软件工程导论期末复习重点选择、判断略一、名词解释1、软件危机2、软件工程3、数据字典4、模块化5、黑盒测试6、软件维护7、软件过程8、快速原型9、白盒测试二、简答题1、可行性研究目的和任务?2、可行性研究包括哪几方面的内容?3、简述需求分析的描述工具和基本任务?4、什么是模块化?模块设计的准则?5、详细设计阶段的根本目标和任务?6、比较面向数据流和面向数据结构两类设计方法的异同?7、测试与调试的主要区别?8、什么是软件生命周期模型?试比较瀑布模型、快速原型模型、增量模型和螺旋模型的优缺点,说明每种模型的适用X围.9、比较层次方框图与结构图的异同?10、结构化程序设计的基本原则?11、提高软件编码效率的3条原则?一、名词解释1、软件危机答:软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题.概括地说,包含两方面的问题:如何开发软件,以满足对软件日益增长的需求;如何维护数量不断膨胀的已有软件.2、软件工程答:①把系统的、规X的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用于软件;②研究①中提到的途径.3、数据字典答:数据字典是描述数据流图中数据的信息的集合.它对数据流图上每一个成分:数据项、文件<数据结构>、数据流、数据存储、加工和外部项等给以定义和说明;它主要由数据流描述、加工描述和文件描述三部分组成.4、模块化答:模块化就是把程序划分成独立命名且可独立访问的模块,每个模块完成一个子功能,把这些模块集成起来构成一个整体,可以完成指定的功能满足用户的需求.5、黑盒测试答:黑盒测试也称为功能测试,它着眼于程序的外部特征,而不考虑程序的内部逻辑结构.测试者把被测程序看成一个黑盒,不用关心程序的内部结构.黑盒测试是在程序接口处进行测试,它只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当地接收输入数据产生正确的输出信息,并且保持外部信息<如数据库或文件>的完整性.6、软件维护软件维护就是在软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程.7、软件过程答:软件过程是为了获得高质量软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤.8、快速原型答:快速原型是快速建立起来的可以在计算机上运行的程序,它所能完成的功能往往是最终产品能完成的功能的一个子集.9、白盒测试答:白盒测试是指测试者了解被测程序的内部结构和处理过程,对程序的所有逻辑路径进行测试,在不同点检查程序状态,确定实际状态与预期状态是否一致.二、简答题1、可行性研究目的和任务?目的:确定在问题定义中所提出的问题是否值得去解,在限制条件下问题能否解决.可行性研究的任务:<1> 进一步分析和澄清问题的定义,在澄清问题的基础上,导出系统的逻辑模型;<2> 从系统逻辑模型中,选择问题的若干种主要解法,研究每一种解法的可行性,为以后的行动提出建议;<3> 如果问题没有可行的解,建议停止系统开发;如果问题有可行的解,应该推荐一个较好的解决方案,并为工程制定一个初步的计划.2、可行性研究包括哪几方面的内容?答:<1>技术可行性:现有技术能否实现本系统,现有技术人员能否胜任,开发系统的资源能否满足;<2>经济可行性:经济效益是否超出开发成本;<3>操作可行性:系统操作在用户内部行得通吗?<4>法律可行性:新系统开发是否会侵犯他人、集体或国家利益,是否违反国家法律. 3、简述需求分析的描述工具和基本任务?答:需求分析的描述工具有数据流图、数据字典、判定表、判定树、结构化自然语言、层次方框图、Warnier图、IPO图和需求描述语言等.需求分析的基本任务是:准确定义未来系统的目标,确定为满足用户的需要系统必须做什么.4、什么是模块化?模块设计的准则?答:模块化就是把程序划分成独立命名且可独立访问的模块,每个模块完成一个子功能,把这些模块集成起来构成一个整体,可以完成指定的功能满足用户的需求.模块设计的准则:<1> 改进软件结构, 提高模块独立性:在对初步模块进行合并、分解和移动的分析、精化过程中力求提高模块的内聚,降低藕合.<2> 模块大小要适中:大约50行语句的代码,过大的模块应分解以提高理解性和可维护性;过小的模块,合并到上级模块中.<3> 软件结构图的深度、宽度、扇入和扇出要适当.一般模块的调用个数不要超过5个.<4> 尽量降低模块接口的复杂程度;<5> 设计单入口、单出口的模块.<6> 模块的作用域应在控制域之内.5、详细设计阶段的根本目标和任务?答:详细设计阶段的根本目标是确定应该怎样具体地实现所要求的系统;详细设计阶段的任务还不是具体地编写程序,而是要设计出程序的"蓝图〞.6、比较面向数据流和面向数据结构两类设计方法的异同?答:相同点:<1> 遵守结构程序设计"由顶向下〞逐步细化的原则,并以其为共同的基础;<2> 均服从"程序结构必须适应问题结构〞的基本原则,各自拥有从问题结构<包括数据结构>导出程序结构的一组映射规则.不同点:<1> 面向数据流的设计以数据流图为基础,在分析阶段用DFD表示软件的逻辑模型,在设计阶段按数据流类型,将数据流图转换为软件结构.面向数据结构的设计以数据结构为基础,从问题的数据结构出发导出它的程序结构.<2> 面向数据流的设计的最终目标是软件的最终结构图,面向数据结构的设计的最终目标是程序的过程性描述.7、测试与调试的主要区别?答: <1> 测试从一个侧面证明程序员的失败;调试证明程序员的正确;<2> 测试从已知条件开始,使用预先定义的程序,且有预知的结果,不可预见的仅是程序是否通过测试;调试从不可知内部条件开始,除统计性调试外,结果是不可预见的;<3> 测试有计划并且要进行测试设计;调试不受时间约束;<4> 测试是发现错误、改正错误、重新测试的过程;调试是一个推理的过程;<5> 测试执行是有规程的;调试执行要求程序员进行必要的推理;<6> 测试由独立的测试组在不了解软件设计的件下完成;调试由了解详细设计的程序员完成;<7> 大多数测试的执行和设计可由工具支持;调试用的工具主要是调试器.8、什么是软件生命周期模型?试比较瀑布模型、快速原型模型、增量模型和螺旋模型的优缺点,说明每种模型的适用X围.答:软件生命周期模型可以简洁地描述软件过程,它规定了把生命周期划分成哪些阶段与各个阶段的执行顺序.包括瀑布模型、快速原型模型、增量模型和螺旋模型等.瀑布模型优点:可强迫开发人员采用规X的方法〔例如,结构化技术〕;严格地规定了每个阶段必须提交的文档;要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证.缺点:模型过于理想化,是由文档驱动的.快速原型模型优点:通过快速构建起一个可在计算机上运行的原型系统,让用户试用原型并收集用户反馈意见的方法,获取用户真正的需要.增量模型优点:能在较短时间内向用户提交可完成部分工作的产品;逐步增加产品功能可以使用户有较充实的时间学习和适应新产品,从而减少一个全新的软件可能给客户组织带来的冲击.螺旋模型优点:对可选方案和约束条件的强调有利于已有软件的重用;减少过多测试.瀑布模型适用于文档驱动的产品研发;快速原型模型适用于软件交付时间紧急,且需获知用户真实需求的情况;增量模型适用于能在较短时间内向用户提交可完成部分工作的产品;螺旋模型适用于内部开发的大规模软件项目.9、比较层次方框图与结构图的异同?答: <1> 层次方框图描绘数据的层次结构, 结构图描绘的是软件结构.<2> 二者都采用多层次矩形框树形结构.层次方框图的顶层矩形框代表完整的数据结构, 下面各层矩形框依次代表上个框数据的子集;结构图是在层次图的每一个方框内注明模块的名字或主要功能,方框之间的直线表示模块的调用关系,用带注解的箭头表示模块调用过程中传递的信息.10、结构化程序设计的基本原则?答:结构化程序设计的基本原则是:在详细设计中所有模块都使用单入口、单出口的顺序、选择、循环三种基本控制结构.11、提高软件编码效率的3条原则?答:3条原则为:1〕效率是性能要求,因此应该在需求分析阶段确定效率方面的要求.2〕效率是靠好设计来提高的.3〕程序的效率和程序的简单程度是一致的,不要牺牲程序的清晰性和可读性来不必要地提高效率.。
第一章、软件工程学概述软件危机:是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
软件危机包含下述两个方面的问题:1.如何开发软件,以满足对软件日益增长的需求。
2.如何维护数量不断膨胀的已有软件。
具体的说,软件危机主要有以下一些典型表现:1.对软件开发成本的进度的估计常常很不准确。
2.用户对“已完成的”软件系统不满意的现象经常发生3.软件产品的质量往往靠不住。
4.软件常常是不可维护的。
5.软件通常没有适当的文档材料。
6.软件成本在计算机系统总成本中所占的比例逐年上升。
7.软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。
软件生命周期:一个软件从定义、开发、使用和维护,知道最终被废弃,要经历一个漫长的时期,通常把软件经历的这个漫长的时期称为生命周期。
软件配置:程序、文档和数据。
软件工程学的一个重要的目标:就是提高软件的可维护性,减少软件维护的代价。
软件:是程序、数据及相关文档的集合。
程序:是能够完成预定功能和性能的可执行的指令序列。
数据:是使程序能够适当地处理信息的数据结构。
文档:是开发、使用和维护程序所需要的图文资料。
软件工程:指导计算机软件开发和维护的一门工程学科。
软件工程具有下属的本质特性:1.软件工程关注于大型程序的构造。
2.软件工程的中心课题是控制复杂性。
3.软件经常变化。
4.开发软件的效率非常重要。
5.和谐地合作是开发软件的关键。
6.软件必须有效地支持它的用户。
7.在软件工程领域中通常由具有一种文化背景的人替具有另一种文化背景的人创造产品。
软件工程的7条基本原理:1.用分阶段的生命周期计划严格管理。
2.坚持进行阶段评审。
3.实行严格的产品控制4.采用现代程序设计技术。
5.结构应能清楚的审查。
6.开发小组的人员应该少而精。
7.承认不断改进软件工程实践的必要性。
软件工程:包括技术和管理两方面的内容,是技术与管理紧密结合所形成的工程学科。
通常把在软件生命周期全过程中使用的一整套技术方法的集合称为方法学,也称为泛型。
第1章软件工程学概述1.1 软件危机1.1.1 软件危机的介绍软件危机(软件萧条、软件困扰):是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
软件危机包含下述两方面的问题:如何开发软件,满足对软件日益增长的需求;如何维护数量不断膨胀的已有软件。
软件危机的典型表现:(1)对软件开发成本和进度的估计常常很不准确;(2)用户对“已完成的”软件系统不满意的现象经常发生;(3)软件产品的质量往往靠不住;(4)软件常常是不可维护的;(5)软件通常没有适当的文档资料;(6)软件成本在计算机系统总成本中所占的比例逐年上升;(7)软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。
1.1.2 产生软件危机的原因(1)与软件本身的特点有关(2)与软件开发与维护的方法不正确有关1.1.3 消除软件危机的途径对计算机软件有正确的认识。
认识到软件开发是一种组织良好、管理严密、各类人员协同配合、共同完成的工程项目。
应该推广使用在实践中总结出来的开发软件的成功技术和方法,并继续研究探索。
应该开发和使用更好的软件工具。
总之,为了解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。
1.21.2.1 软件工程的介绍软件工程:是指导计算机软件开发和维护的一门工程学科。
采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它,这就是软件工程。
(期中考)软件工程的本质特性:软件工程关注于大型程序的构造软件工程的中心课题是控制复杂性软件经常变化开发软件的效率非常重要和谐地合作是开发软件的关键软件必须有效地支持它的用户在软件工程领域中是由具有一种文化背景的人替具有另一种文化背景的人创造产品1.2.2 软件工程的基本原理用分阶段的生命周期计划严格管理坚持进行阶段评审实行严格的产品控制采用现代程序设计技术结果应能清楚地审查开发小组的人员应该少而精承认不断改进软件工程实践的必要性1.2.3 软件工程方法学软件工程包括技术和管理两方面的内容。
软件工程方法学3要素:方法、工具、过程1.传统方法学(生命周期方法学或结构化范型)——强调自顶向下2.面向对象方法学——强调主动地多次反复迭代面向对象方法学4个要点:对象、类、继承、消息1.3 软件生命周期(必考)三个时期八个阶段:软件生命周期由软件定义、软件开发和运行维护(也称为软件维护)三个时期组成,每个时期又进一步划分成若干个阶段。
三个时期:八个阶段:软件生命周期软件定义软件开发软件维护问题定义可行性研究需求分析概要设计详细设计编码和单元测试综合测试运行维护系统设计系统实现1.4 软件过程1.4.1 瀑布模型1.4.2 快速原型模型1.4.3 增量模型1.4.4 螺旋模型1.4.5 喷泉模型第2章可行性研究2.1可行性研究的任务可行性研究的目的:不是解决问题,而是确定问题是否值得去解决。
可行性研究的实质:进行一次大大压缩简化了的系统分析和设计的过程,也就是在较高层次上以较抽象的方式进行的系统分析和设计的过程。
可行性研究的内容:首先进一步分析和澄清问题定义,导出系统的逻辑模型;然后从系统逻辑模型出发,探索若干种可供选择的主要解法(即系统实现方案);对每种解法都研究它的可行性,至少应该从三方面研究每种解法的可行性。
主要方面:技术可行性,经济可行性,操作可行性,其他方面:运行可行性,法律可行性,2.2 可行性研究过程1.复查系统规模和目标2. 研究目前正在使用的系统3. 导出新系统的高层逻辑模型4. 进一步定义问题5. 导出和评价供选择的解法6. 推荐行动方针7. 草拟开发计划8. 书写文档提交审查2.3 系统流程图系统流程图:是概括地描绘物理系统的传统工具。
表达的是数据在系统各部件之间流动的情况,而不是对数据进行加工处理的控制过程。
2.4数据流图2.4.1符号基本符号:数据存储:数据存储是处于静止状态的数据;数据流:数据流是处于运动中的数据。
附加符号:星号(*):表示“与”关系加号(+):表示“或”关系异或(⊕):表示互斥关系2.5数据字典数据流图和数据字典共同构成系统的逻辑模型。
2.5.1 数据字典的内容数据字典的组成:数据流数据流分量(即数据元素) 数据存储处理2.5.2定义数据的方法方法:对数据自顶向下分解。
数据组成方式(三种基本类型):顺序选择重复附加类型:可选符号:=意思是等价于(或定义为);+意思是和(即,连接两个分量);[]意思是或(即,从方括弧内列出的若干个分量中选择一个),通常用“|”号隔开供选择的分量;{ }意思是重复(即,重复花括弧内的分量);常常使用上限和下限进一步注释表示重复的花括弧。
( )意思是可选(即,圆括弧里的分量可有可无)。
2.5.3数据字典的实现计算机实现人工实现2.6成本/效益分析2.6.1 成本估计:1. 代码行技术 2. 任务分解技术3. 自动估计成本技术2.6.2 成本/效益分析的方法成本/效益分析涉及的4个概念:1. 货币的时间价值2. 投资回收期3. 纯收入4. 投资回收率:P = F1/( 1 + j ) + F2/( 1 + j )2 + …+ Fn( 1 + j )n第3章需求分析需求分析的任务:需求分析是软件定义时期的最后一个阶段,它的基本任务是准确地回答“系统必须做什么?”这个问题。
确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、具体的要求。
系统分析员应该写出软件需求规格说明书,以书面形式准确地描述软件需求3.1需求分析的任务确定对系统的综合要求分析系统的数据要求导出系统的逻辑模型修正系统开发计划3.1.1确定对系统的综合要求1.功能需求2. 性能需求3. 可靠性和可用性需求4. 出错处理需求5. 接口需求6. 约束7. 逆向需求8. 将来可能提出的要求3.1.2 分析系统的数据要求建立数据模型——ER图描绘数据结构——层次方框图和Warnier图数据结构规范化3.2 与用户沟通获取需求的方法访谈:1. 正式访谈 2. 非正式访谈 3. 调查表 4. 情景分析技术面向数据流自顶向下求精简易的应用规格说明技术快速建立软件原型:(1) 第四代技术(4GL)(2) 可重用的软件构件 (3) 形式化规格说明和原型环境3.3分析建模与规格说明3.3.1 分析建模需求分析过程应该建立3种模型:数据模型功能模型行为模型数据字典是分析模型的核心实体-联系图用于建立数据模型的图形数据流图是建立功能模型的基础状态转换图是行为建模的基础3.4实体-联系图数据模型中包含3种相互关联的信息:数据对象、数据对象的属性、数据对象彼此间相互连接的关系3.4状态转换图3.6.1状态状态图分类:表示系统循环运行过程,通常不关心循环是怎样启动的。
表示系统单程生命期,需要标明初始状态和最终状态。
3.6.2事件事件就是引起系统做动作或(和)转换状态的控制信息。
3.6.3符号3.7其他图形工具3.7.1 层次方框图3.7.2Warnier图3.7.3IPO图3.8验证软件需求(重点)3.8.1 从哪些方面验证软件需求的正确性一致性完整性现实性有效性第五章总体设计5.1设计过程由两个主要阶段组成:系统设计阶段,确定系统的具体实现方案:设想供选择的方案选取合理的方案推荐最佳方案结构设计阶段,确定软件结构:功能分解设计软件结构设计数据库制定测试文档书写文档审查和复查5.2设计原理5.2.1 模块化模块化的作用:采用模块化原理可以使软件结构清晰,不仅容易设计也容易阅读和理解。
模块化使软件容易测试和调试,因而有助于提高软件的可靠性。
模块化能够提高软件的可修改性。
模块化也有助于软件开发工程的组织管理。
5.2.2抽象5.2.3逐步求精5.2.4信息隐藏和局部化5.2.5 模块独立尽量使用数据耦合,少用控制耦合和特征耦合,限制公共环境耦合的范围,完全不用内容耦合。
七种内聚的优劣评分结果:高内聚:功能内聚顺序内聚中内聚:通信内聚过程内聚低内聚:时间内聚逻辑内聚偶然内聚5.3启发规则1.改进软件结构提高模块独立性2.模块规模应该适中3.深度、宽度、扇出和扇入都应适当4.5.模块的作用域应该在控制域之内6.7.力争降低模块接口的复杂程度6. 设计单入口单出口的模块7. 模块功能应该可以预测5.4 描绘软件结构的图形工具5.4.1 层次图和HIPO图1. 层次图(H图)层次图用来描绘软件的层次结构。
很适于在自顶向下设计软件的过程中使用。
2.HIPO图7.4.2结构图7.5面向数据流的设计方法结构化设计方法(简称SD方法),也就是基于数据流的设计方法。
5.5.1概念面向数据流的设计方法把信息流映射成软件结构,信息流的类型决定了映射的方法。
信息流有两种类型:变换流事务流第6章详细设计6.1 结构程序设计经典的结构程序设计:只允许使用顺序、IF-THEN-ELSE型分支和DO-WHILE型循环这3种基本控制结构;扩展的结构程序设计:如果除了上述3种基本控制结构之外,还允许使用DO-CASE型多分支结构和DO-UNTIL型循环结构;修正的结构程序设计:再加上允许使用LEAVE(或BREAK)结构。
6.2人机界面设计6.2.1设计问题设计人机界面过程中会遇到的4个问题:系统响应时间:长度易变性用户帮助设施:集成的帮助设施附加的帮助设施出错信息处理命令交互6.2.3 人机界面设计指南一般交互指南信息显示指南数据输入指南6.3过程设计的工具6.3.1 程序流程图(程序框图)程序流程图的主要缺点:程序流程图本质上不是逐步求精的好工具,它诱使程序员过早地考虑程序的控制流程,而不去考虑程序的全局结构。
程序流程图中用箭头代表控制流,因此程序员不受任何约束,可以完全不顾结构程序设计的精神,随意转移控制。
程序流程图不易表示数据结构。
6.3.2盒图(N-S图)盒图具有下述特点:功能域明确。
不可能任意转移控制。
很容易确定局部和全程数据的作用域。
很容易表现嵌套关系,也可以表示模块的层次结构。
6.3.3 PAD图它用二维树形结构的图来表示程序的控制流,将这种图翻译成程序代码比较容易。
PAD图的主要优点如下:使用表示结构化控制结构的PAD符号设计出来的程序必然是结构化程序。
PAD图所描绘的程序结构十分清晰。
PAD图表现程序逻辑易读、易懂、易记。
容易将PAD图转换成高级语言源程序,这种转换可用软件工具自动完成。
即可表示程序逻辑,也可描绘数据结构。
PAD图的符号支持自顶向下、逐步求精方法的使用。
6.3.4 判定表判定表却能够清晰地表示复杂的条件组合与应做的动作之间的对应关系。
判定表的缺点:判定表的含义不是一眼就能看出来的,初次接触这种工具的人理解它需要有一个简短的学习过程。