软件工程(张海藩)第6章.pptVIP

  1. 1、本文档共44页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件工程(张海藩)第6章

第6章 详细设计 6.1 结构程序设计 6.2 人机界面设计(自学) 6.3 过程设计的工具 6.4 面向数据结构的设计方法 6.5 程序复杂程度的定量度量(自学) 总体设计是软件结构的建立过程,详细设计是建立和完善上述过程的细节,给出软件结构中各个模块内部过程的描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。 详细设计的任务 (1)确定每个模块的算法 (2)确定每一个模块的数据组织 (3)确定每个模块的接口 (4)为每个模块设计一组测试用例 结构化程序设计 结构化程序一般具有如下四个基本特征: 一个入口 一个出口 程序中无死语句 程序中没有死循环 在结构化程序设计技术提出以前,程序的正确性证明几乎是不可能的。 1971年IBM公司在纽约时报信息库管理系统的设计中成功地使用了结构程序设计技术,随后在美国宇航局空间实验室飞行模拟系统的设计中,结构程序设计技术再次获得成功。 结构化程序设计一种比较流行的定义是:结构化程序设计是一种设计程序的技术,它采用自顶向下逐步求精的方法和单入口单出口的控制结构。 结构化程序设计应遵循的基本原则 (一)采用自顶向下、逐步求精的模块化方法设计程序 自底向上的程序设计方法,编写出的程序往往局部结构较好,而整体结构不佳,有时会导致程序设计不理想或失败。 自顶向下逐步求精是分解一个问题的一种技术,也是结构化程序设计的精髓。 自顶向下逐步求精的方法符合人们解决复杂问题的普遍规律,先全局后局部使设计出来的软件可读性好,整体结构清晰、合理,提高了软件的可靠性和可理解性。 (二)尽量使用 “基本结构”编程 基本结构通常包括: (三)限制转向语句的使用 结构化程序设计并没有从根本上取消GOTO语句,这主要是因为: 许多程序设计语言本身是非结构化的语言,goto语句往往是构造三种控制结构的元素 goto语句在解决程序设计语言中循环体内的出口问题上起着重要作用 大量的资料数据表明:软件产品的质量与软件中goto语句的数量成反比;转向语句跨度越大,可能引起的错误越多,错误的性质越严重;有人证明前转goto语句比后转goto语句更坏。因此程序设计必须限制goto语句的使用,避免滥用goto语句。 结构化程序设计的好处 由于自顶向下逐步求精的软件开发方法比较复合人们解决复杂问题的普遍规律,因此可以提高软件开发工程的成功率和生产率。 由全局到局部,由整体到细节,由抽象到具体的逐步求精过程开发出的软件具有良好的层次结构,更易于人们的阅读和理解。 由于限制或不使用goto语句,只使用单入口单出口的基本控制结构,使得程序的静态结构和它的动态执行情况较为接近。对于错误的诊断和纠正比较容易。 详细设计阶段的工具 (一)程序流程图 在40年代末到70年代中期,程序流程图一直是软件设计的工具,它以对控制流程的描绘直观、易于掌握而被设计人员青睐。依据国家标准,我们给出有关程序流程图的基本符号。 缺陷: (1)程序流程图本质上不是逐步求精的好工具。 (2)由于程序流程图中可以使用箭头来代表控制流,因此程序员可以不顾结构化程序设计的约束,随意转移控制。 (3)程序流程图不易表示数据结构。 (二)盒图(N-S图) N-S图是Nassi和Shneiderman提出来的,它体现了结构化程序设计精神,是目前过程设计中广泛使用的一种图形工具。 基本符号 优点:功能域明确,结构层次清晰,局部和全程数据的作用域明确。 缺点:随着程序内嵌套的层次增多时,内层方框越来越小,这样不仅会增加画图的难度,还会影响图形的清晰度。 (三)PAD图 PAD-Problem Analysis Diagram是问题分析图的英文缩写,由日立公司中央研究所主任研究员二村良彦等人在1973年研究开发的。 它使用二维树形结构的图来描述程序的逻辑,是一种十分有前途的表达方法。 PAD图的优点:程序应该是结构化的。 PAD图中竖线的总条数就是程序中的层次数,既表示程序逻辑,也描绘数据结构。 (四)判定表 判定表能够清晰地表示复杂的条件组合与所产生的动作之间的关系。一张判定表由四部分组成: 左上部列出所有条件Ⅰ 右上部是各种条件的组合矩阵Ⅱ 左下部是所有可能的操作Ⅲ 右下部是和每种条件组合相对应的动作。 例:某航空公司规定,乘客可以免费托运重量不超过30kg的行李。当行李重量超过30kg时,对头等舱的国内乘客超重部

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档