- 1、本文档共55页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
教学课件医学学院应用教学课件
2018-2-15
©曲阜师范大学计算机科学学院
1
第3篇 软件开发及维护
第8章 结构化详细设计
2018-2-15
©曲阜师范大学计算机科学学院
2
第8章 结构化详细设计
本章的主要目标是基于总体设计结果,进行结构化的软件模块详细设计。读完本章,你将了解以下基本内容:
结构化程序设计的理念。
人机界面设计原理及注意问题。
详细设计工具。
面向数据结构的设计方法。
程序复杂程度定量度量标准。
详细设计的根本目标是确定怎样具体地实现所要求的系统。即经过这个阶段的设计工作,应该得出对目标系统的精确描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。
详细设计阶段的任务还不是具体地编写程序代码,而是设计出程序的“蓝图”,程序员则根据蓝图写出实际的程序代码。
2018-2-15
©曲阜师范大学计算机科学学院
3
Contents
8.1 结构化程序设计基础
8.2 人机界面设计
8.3 过程设计的工具
8.4 面向数据结构的设计方法
8.5 程序复杂程度的定量度量
2018-2-15
©曲阜师范大学计算机科学学院
4
8.1 结构化程序设计基础
结构化程序设计的概念最早由E.W. Dijkstra提出。 1966年Bohm和Jacopini证明了,只用3种基本的控制结构就能实现任何单入口单出口的程序。
2018-2-15
©曲阜师范大学计算机科学学院
5
1968年Dijkstra再次建议从一切高级语言中取消GOTO语句,只使用3种基本控制结构写程序。
1971年IBM公司在纽约时报信息库管理系统设计中成功地使用了结构化程序设计技术,随后在美国宇航局空间实验室飞行模拟系统的设计中,结构化程序设计技术再次获得圆满成功。
1972年IBM公司的Mills进一步提出,程序应该只有一个入口和一个出口,从而补充了结构程序设计的规则。
6
三种基本的控制结构
顺序结构,先执行A再执行B
IF_THEN_ELSE型选择(分支)结构
DO_WHILE型循环结构:
在循环控制条件成立时,重复执行特定的加工。
实际上用顺序结构和循环结构(又称DO_WHILE结构)完全可以实现选择结构(又称IF_THEN_ELSE结构),因此,理论上最基本的控制结构只有两种。
7
三种基本的控制结构
8
结构程序设计的定义
结构程序设计是一种设计程序的技术,它采用自顶向下逐步求精的设计方法和单入口单出口的控制结构。
在总体设计阶段采用自顶向下逐步求精的方法:把一个复杂问题的解法分解和细化成一个由许多模块组成的层次结构的软件系统。
详细设计或编码阶段采用自顶向下逐步求精的方法:可以把一个模块的功能逐步分解细化为一系列具体的处理步骤或某种高级语言的语句。
9
结构程序设计的优点
可以显著提高软件开发工程的成功率和生产率 。
程序有清晰的层次结构,因此容易阅读和理解。
开发时比较容易保证程序的正确性,即使出现错误也比较容易诊断和纠正。
源程序清晰流畅,易读易懂而且容易测试。
程序清晰和模块化使得在修改和重新设计一个软件时可以重用的代码量最大。
程序的逻辑结构清晰,有利于程序正确性证明。
10
扩充的控制结构
为了实际使用方便起见,常常还允许使用DO_CASE型多分支结构和DO_UNTIL型循环结构。
有时需要立即从循环(甚至嵌套的循环)中转移出来,如果允许使用LEAVE(或BREAK)结构,则不仅方便而且会使效率提高很多。
11
扩充的控制结构
12
结构程序设计
经典的结构程序设计:
只允许使用顺序、IF_THEN_ELSE型分支和DO_WHILE型循环这三种基本控制结构。
扩展的结构程序设计:
还允许使用DO_CASE型多分支结构和DO_UNTIL型循环结构。
修正的结构程序设计:
再加上允许使用LEAVE(或BREAK)结构。
16
17
18
2018-2-15
©曲阜师范大学计算机科学学院
19
8.2 人机界面设计
人机界面设计是系统接口设计的一个重要的组成部分。
人机界面的设计质量,直接影响用户对软件产品的评价,从而影响软件产品的竞争力和寿命。
20
21
22
23
2018-2-15
©曲阜师范大学计算机科学学院
24
8.3 过程设计的工具
8.3.1 程序流程图
程序流程图又称为程序框图,它是历史最悠久、使用最广泛的描述过程设计的方法,然而它也是用得最混乱的一种方法。
2018-2-15
©曲阜师范大学计算机科学学院
25
从20世纪40年代末到70年代中期,程序流程图一直是软件设计的主要工具。
文档评论(0)