- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件工程 ch6
瀑布模型 第六章 详细设计 教学的基本要求: 掌握结构程序设计的方法;熟悉过程设计的工具和面向数据结构的设计方法及详细设计的目的和任务。 详细设计 概要设计完成了软件系统的总体设计,规定了各模块的功能及模块之间的联系。下一步就要考虑实现各个模块所规定的功能,在使用程序设计编程之前,需要对所采取算法的逻辑关系进行分析,设计出全部必要的过程细节。并给予清晰的表达,使之成为编码的依据。我们将本阶段的设计称之为详细设计,又称为过程设计。 详细设计是软件开发的第二阶段,它要求在概要设计的基础上,考虑“怎样实现软件系统,直到系统中的每个模块给出足够详细的过程性描述”,这些描述通常用表达式工具来表示。 详细设计是编码的先导,这个阶段所产生的设计文档的质量将直接影响下一阶段程序的质量。 6.1 结构程序设计 1. 从效率第一到清晰第一 结构程序设计是一种设计程序的技术,该概念最早是由著名的计算机科学家Dijkstra 于1965年提出的。他提出“在高级语言中取消GOTO语句”,“程序质量与程序中使用的GOTO语句成反比”,从而挑起了程序设计中关于“GOTO”问题的大讨论。“GOTO”问题讨论的焦点是“在高级语言中是否应该取消无条件转移语句GOTO?”。 事实上,“GOTO”争论的实质是:在程序设计中,到底是良好的程序模块化结构优先还是程序执行效率优先。 6.1 结构程序设计 2. 结构化控制结构 综合在关于GOTO语句中众多学者的意见,对结构化程序设计的概念逐渐清晰起来。 结构化程序设计原理的目标是提供一种严格定义的简明的程序设计方法,这种方法应比那些随意设计的方法更容易理解、评审和修改。结构化设计要求的就是单入口和单出口的控制结构以及改善程序的清晰度。 1966年,Boehm和Jacopini等证明了只用顺序、分支、重复3种基本控制结构可以实现任何单入口/单出口的程序。 程序设计三种基本结构 ⑴ 顺序结构 此结构仅仅表示:如果没有任何的干预,则控制流就顺序地从一条命令自然地过度到下一条命令。 ⑵ 控制结构(if_then_else) 这是一种双向选择。每当表达式为真,就执行该语句的then分支;表达式为假,则执行else分支。在这两种情况下,都将控制流传递到控制结构后面的语句。 ⑶ 重复结构(do_while) 这是一种重复进行控制的结构。当表达式被测试为真时,则重复执行结构中的循环体部分,否则,重复的循环即告结束,接着将控制传递到其后的语句(指令)。 程序设计两种扩展结构 实践证明,仅使用上述三种经典的结构化程序设计,还会遇到一些困难,因此,人们又对经典的结构化程序设计工作又作了一些补充和修改: ⑴ 为了方便使用或提高效率,大多数软件开发项目还允许在详细设计中补充使用do_until和do_case两种控制结构。 ⑵ 在多数情况下,当程序执行到满足某种条件时,需要立即从循环中转移出来。如果死抠单出口的原则,则必然使循环重复下去,延长程序的执行时间。 ⑶ GOTO语句不应滥用,但也不完全禁止。一般来说,GOTO语句的转移范围应控制在同一控制结构的内部,不让它从一个控制结构转移到另一个控制结构中。这样也就不会引起流程的混乱。 控制结构 6.1 结构程序设计 3. 结构化设计的原则 结构化设计的主要原则是: ⑴ 采用自顶向下逐步求精的设计方法。 ⑵ 使用语言中的顺序、选择、重复等有限的基本结构表示程序逻辑。 ⑶ 选用的控制结构只允许一个入口和一个出口。 ⑷ 复杂结构应该用基本控制结构进行组合嵌套来实现。 ⑸ 严格控制GOTO语句。 6.1 结构程序设计 4. 程序设计采用自顶向下逐步求精的方法 在前面,我们通过采用自顶向下逐步求精的方法把一个复杂问题的解法分解和细化成了一个由许多功能模块组成的软件结构图。在详细设计和编码阶段,还应当采用自顶向下逐步求精的方法,把一个模块的功能逐步分解,细化为一系列具体的步骤,进而翻译成一系列用某种程序设计语言写成的程序。用此中方法产生的程序逻辑上一般错误较少,可靠性也比较高。 逐步细化与自顶向下设计的区别 自顶向下设计是一种分解问题的技术,与所要用的控制结构无关,即它既可用结构化的方法,也可用非结构化的方法予以实现。 逐步细化是用于结构化程序的连续分解,它使程序的较低层的结构为顺序、分支、重复结构的组合。 例子 例1:在一数组中,找出其中的最大数。 第一步 (i) 输入一数组 (ii) 找出其中最大数 (iii) 输出最大数 第二步 细化 (ii,i) 任取一数,假设它就是最大数 (ii
您可能关注的文档
- 车险查勘定损技能大赛预赛试题.doc
- 车间防火防爆区域安全作业标准.doc
- 车险理赔流程及常见问题解答.pptx
- 轨监控系统.ppt
- 车辆段基地.ppt
- 车险基础知识(培训1).ppt
- 车险的销售应对.ppt
- 轨道板运存板技术培训课件.ppt
- 轨道检修轨道焊接及焊工知识.ppt
- 轨道检查1.ppt
- 2025至2030中国移动治疗台行业发展研究与产业战略规划分析评估报告.docx
- 2025至2030链激酶行业细分市场及应用领域与趋势展望研究报告.docx
- 2025至2030爆炸物探测扫描仪行业市场占有率及有效策略与实施路径评估报告.docx
- 2025至2030四川省智能制造行业细分市场及应用领域与趋势展望研究报告.docx
- 2026届高三二轮复习试题政治大单元突破练1生产资料所有制与分配制度含解析.docx
- 2026届高三二轮复习试题政治大单元突破练16哲学基本思想与辩证唯物论含解析.docx
- 2026届高三二轮复习试题政治大单元突破练2社会主义市场经济体制含解析.docx
- 浙江省衢州市五校联盟2025-2026学年高二上学期期中联考技术试题-高中信息技术含解析.docx
- 浙江省金丽衢十二校2026届高三上学期11月联考政治试题含解析.docx
- 2026届高三二轮复习试题政治大单元突破练7领导力量:中国共产党的领导含解析.docx
最近下载
- DB23T 1496.22-2021 劳动防护用品配备 第22部分:种植业生产人员.docx VIP
- TCL海外员工管理.docx VIP
- 神经内科DRGs病案首页诊断栏和手术操作栏填写要求.pdf VIP
- GB T 28896-2023 金属材料 焊接接头准静态断裂韧度测定的试验方法(OCR).pdf VIP
- 高中信息技术校本教材《计算机及网络简介》.pdf VIP
- 牛津树阅读绘本(适合2-8岁小童)A present for Mum【有书】.pdf VIP
- 《电击伤急救护理教程》课件.ppt VIP
- 浙江省杭州市滨江区杭二统考2024-2025学年高二上学期语文期末考试卷(含答案).docx VIP
- 工程廉政风险点及其防控措施表完整.docx VIP
- 河海大学《高等数学》 2017-2018学年第一学期期末试卷B卷.pdf VIP
原创力文档


文档评论(0)