软件工程(SoftwareEngineering).ppt
《软件工程(SoftwareEngineering).ppt》由会员分享,可在线阅读,更多相关《软件工程(SoftwareEngineering).ppt(51页珍藏版)》请在三一办公上搜索。
1、2023/9/16,1,软件工程(Software Engineering),第六章 详细设计,2023/9/16,2,详细设计,前一页,详细设计(Procedural Design)的目标是确定,并具体地实现所要求的系统,从而在编码阶段可以把该实现的描述直接翻译成用某种程序设计语言书写的程序。详细设计的目标不仅是在逻辑上能够正确地实现每个模块的功能,还要求设计的处理过程应该尽可能简明易懂。,2023/9/16,3,本章主要内容,结构化程序设计 人机界面设计过程设计的工具 面向数据结构的设计方法 程序复杂程度的定量度量,前一页,2023/9/16,4,结构化程序设计,前一页,1965年最早由提
2、出:“可以从高级语言中取消goto语句,程序的质量与程序中所包含的goto语句的数量成反比”。1966年,Bohm和Jacopini证明了,只用“顺序”(Sequence)、“选择”(Condition Select)和“循环”(Repetition)三种基本的控制结构就能实现任何单入口单出口的程序。1972年,IBM公司的Mills进一步提出,程序应该只有一个入口和一个出口。,2023/9/16,5,前一页,三种基本结构,2023/9/16,6,结构化程序设计,经典定义:如果一个程序的代码块仅仅通过顺序、选择和循环这3种基本控制结构进行连接,并且每个代码块只有一个入口和一个出口,则称这个程序
3、是结构化的。全面的定义:结构程序设计是尽可能少用GO TO 语句的程序设计方法。最好仅在检测出错误时才使用GO TO语句,而且应该总是使用前向GO TO语句。,2023/9/16,7,结构化程序设计,前一页,经典的结构程序设计:只允许使用顺序、IF-THEN-ELSE型分支和DO-WHIL型循环三种基本控制结构。扩展的结构程序设计:允许使用DO-CASE型多分支结构和DO-UNTIL型循环结构。修正的结构程序设计:允许使用LEAVE(或BREAK)结构。,2023/9/16,8,人机界面设计,人机界面设计是接口设计的一个重要的组成部分有些系统中人机界面的设计工作量占到一半人机界面设计的质量,直
4、接影响用户对软件产品的评价,2023/9/16,9,人机界面设计,遇到的4个问题:系统响应时间用户帮助设施出错信息处理命令交互,设计问题,2023/9/16,10,人机界面设计,系统响应时间:从用户完成某个控制动作,到软件给出预期的响应之间的时间。系统响应时间的长度易变性:系统响应时间相对于平均时间的偏差,设计问题,2023/9/16,11,人机界面设计,用户帮助设施:集成的帮助设施设计在软件里面,缩短用户获得帮助的时间附加的帮助设施在系统建成后添加到软件中的集成的帮助设施优于附加的帮助设施,设计过程,2023/9/16,12,人机界面设计,出错信息和警告信息,是出现问题时交互式系统给出的“坏
5、消息”有效的出错信息能提高交互式系统的质量,减轻用户的挫折感,设计过程,2023/9/16,13,人机界面设计,命令行曾经是用户和系统软件交互的常用方式许多高级用户仍偏爱命令行交互用户既可以从菜单中选择软件功能,也可以通过键盘命令序列调用软件功能,设计过程,2023/9/16,14,人机界面设计,用户界面设计是一个迭代的过程先创建设计模型,再用原型实现这个设计模型,并由用户试用和评估,然后根据用户意见修改,2023/9/16,15,详细设计的工具,前一页,描述程序处理过程的工具称为详细设计的工具,分为图形、表格和语言三类。都要求能提供对设计的无歧义(无二义性)的描述。,2023/9/16,16
6、,前一页,详细设计的工具,程序流程图 盒图(N-S图)PAD图判定表判定树 过程设计语言(PDL),主要内容,2023/9/16,17,详细设计的工具,前一页,程序流程图,程序流程图又称为程序框图,是历史最悠久、使用最广泛、也是用得最混乱的一种描述软件设计的方法。总的趋势是正在逐步被淘汰。,(1)程序流程图在本质上并不是逐步求精的好工具,它诱使程序员过早地考虑程序的控制流程,而不去考虑程序的全局结构。(2)程序流程图中用箭头代表控制流,因此程序员不受任何约束,可以完全不顾结构化程序设计的原则,随意转移控制。(3)程序流程图不便于表示数据结构。,2023/9/16,18,程序流程图,缺点:(1)
7、程序流程图在本质上并不是逐步求精的好工具,它诱使程序员过早地考虑程序的控制流程,而不去考虑程序的全局结构。(2)程序流程图中用箭头代表控制流,因此程序员不受任何约束,可以完全不顾结构化程序设计的原则,随意转移控制。(3)程序流程图不便于表示数据结构。,优缺点比较:优点是对控制流程的描绘很直观。,2023/9/16,19,前一页,程序流程图,2023/9/16,20,前一页,详细设计的工具,盒图(N-S图),Nassi和Shneiderman提出盒图,(1)功能域(一个特定控制结构的作用域)明确,可以从盒图上一眼就看出来。(2)不能够随意转移控制。(3)很容易确定局部和全局数据的作用域。(4)很
8、容易表现嵌套关系,也可以表示模块的层次结构。,2023/9/16,21,前一页,盒图(N-S图),2023/9/16,22,详细设计的工具,前一页,PAD图,PAD是问题分析图(Problem Analysis Diagram)的英文缩写,自1973年由日本日立公司发明以后,已得到一定程度的推广。它用二维树结构的图来表示程序的控制流,将这种图翻译成程序代码比较容易。,2023/9/16,23,详细设计的工具,前一页,PAD图,优点:(1)使用表示结构化控制结构的PAD符号所设计出来的程序必然是结构化程序。(2)PAD图所描绘的程序结构十分清晰。图中最左面的竖线是程序的主干线,即第一层结构。随着
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 SoftwareEngineering

链接地址:https://www.31ppt.com/p-6027872.html