




已阅读5页,还剩73页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
8.2详细设计的工具,详细设计工具包括图形,表格,语言三类。不论是哪一类工具,都应该指明控制流,处理功能,数据组织以及其它方面的实现细节,从而在编码阶段能把对设计的描述直接翻译成程序代码。,描述程序处理过程的工具称为详细设计工具。,1.程序流程图,2.盒图(N-S图),3.问题分析图(PAD),5.过程设计语言(PDL)(伪码),4.判定树与判定表,1.程序流程图程序流程图又称为程序框图,是详细设计中最古老、使用最广泛的图形描述工具。是流经一个系统的信息流、观点流或部件流的图形代表。,流程图由一些图框和流程线组成,图框表示操作的类型,图框中的文字和符号表示操作的内容,流程线表示操作的先后。最简单的结构是矩形(代表处理)和菱形(代表决策)。,五种基本控制结构:,示例,程序流程图的规定符号,1)顺序型结构顺序结构由带箭头的控制线依次连接几个处理方框构成。,例题,2)选择型结构选择型结构是流程图中最为常用的结构,其结构构造有两种,一种是条件选择结构又称为IF-THEN-ELSE结构,使用菱形表现逻辑判定条件,条件结果决定选择两个处理方框中的一个。,No,处理1,决策条件1,Yes,处理2,决策条件2,Yes,处理n,决策条件n,Yes,No,No,例题,3)循环型结构重复执行某种功能的程序时就用到循环结构,流程图中循环型结构分为两种,一种是先判定型循环,又称为DO-WHILE型循环结构,测试一个循环控制条件为真时,就重复执行特定的处理。,循环条件,处理,No,Yes,例题,先判定型循环结构流程图,先判定再执行,4)循环型结构另一种是后判定型循环,又称为Repeat-Until型循环结构,重复执行某特定的处理,直到控制条件成立为止。,循环条件,处理,No,Yes,例题,先执行再判断,至少执行一次指定的操作,后判定型循环结构流程图,5)综合嵌套型结构,流程图的优缺点,(1)优点:它独立于任何一种程序设计语言,比较直观,清晰,易于掌握。(2)缺点:流程图所使用的符号不够规范,常常使用一些习惯性用法。特别是表示程序控制流程的前头,使用的灵活性极大,程序员可以不受任何约束随意转移控制。(3)对程序图所用的符号做出严格的定义,不允许人们随心所欲地画出各种不规范的流程图。,2、盒图(N-S图),1973年,Nassi和Shneiderman发表了题为“结构化程序的流程图技术”的文章,提出用盒图(Boxdiagram)来代替传统的流程图,引起了人们的重视,根据这两位创始人的名字,许多人把它简称为NS图(NSchart)。NS的主要特色,就是只能描述结构化程序所允许的标准结构,根本取消了表现诸如含有GOTO语句的非标准结构的手段。,用方框图代替传统的流程图,N-S结构流程图也成为盒图,是一种符合结构化程序设计原则的图形描述工具。,N-S图对五种基本控制结构,由五种图形构件表示。,(a)顺序;(b)选择;(c)CASE多分支;(d)循环;(e)调用子程序A,示例,1)功能域(即一个特定控制结构的作用域)明确2)不可能任意转移控制3)很容易确定局部和全程数据的作用域4)很容易表现嵌套关系,也可以表示模块的层次结构,N-S图的特点,N-S图示例,例1:,startifpthenwhileqdofenddoelseblockgnendblockendifstop,例2:以下是两个程序流程图,试用NS图表示。,N-S图的优缺点,(1)优点:所有的程序结构均用方框来表示,无论并列或者嵌套,程序的结构清晰可见。而且,由于它只能表达结构化的程序逻辑,使应用NS图来描述软件设计的人不得不遵守结构化程序设计的规定。久而久之,就可自然地养成良好的程序设计风格。(2)缺点:当程序内嵌套的层数增多时,内层的方块越画越小,不仅会增加画图的困难,并将使图形的清晰性受到影响。,N-S图的扩展形式,扩展:要相应位置用名字(用椭园框),在另外的地方把这些命名的部分进一步展开。,3、问题分析图(PAD)(ProblemAnalysisDiagram),PAD图是日本日立公司于1979年提出的一种算法描述工具,现已等到ISO认可。它是一种由左往右展开的二维树型结构。PAD图的控制流程为自上而下,从左往右地执行。优点:清晰地反映了程序的层次结构。(层次数即为纵线数)支持逐步求精的设计方法,左边层次中的内容可以抽象,然后由左到右逐步细化。易读易写,使用方便(比流程图)。支持结构化的程序设计原理。可自动生成程序。,PAD也设置了五种基本控制结构的图式,并允许递归使用。,PAD描述的示例,对应于增量型循环结构fori:=n1ton2stepn3do在PAD中有相应的循环控制结构,PAD的扩充控制结构,使用PAD图提供的定义功能来逐步求精的例子,(a)初始的PAD图;(b)使用def符号细化处理框P2,例1:,startifpthenwhileqdofenddoelseblockgnendblockendifstop,例2:以下是两个程序流程图,试用PAD图表示。,使用PAD符号设计的程序必然是结构化的程序.PAD图所描绘的程序结构十分清晰.用PAD图表现程序逻辑,易读,易记,易懂.容易将PAD图转换成高级语言源程序.可用软件工具实现自动转换.即可以表示程序逻辑,也可以描绘数据结构.支持自顶向下,逐步求精方法的使用.,PAD图的优点:,4、判定表,程序流程图、N-S图、PAD图都不易清楚的描述含有多重嵌套的条件选择。判定表可以清晰的表示复杂的条件组合与其对应的处理之间的关系。,一张判定表由4部分组成,左上部列出所有条件,左下部是所有可能做的动作,右上部是表示各种条件组合的一个矩阵,右下部是和每种条件组合相对应的动作.判定表右半部实质上是一条规则,规定了与特定条件组合相对应的动作.,所有条件,条件组合矩阵,与每种条件组合所对应的动作表,所有可能的动作列表,国内乘客,头等舱,残疾乘客,行李30kg,免费,(W-30)*2,(W-30)*3,(W-30)*4,(W-30)*6,(W-30)*8,(W-30)*12,T,T,T,F,T,T,T,T,T,T,T,T,T,T,F,F,F,F,F,F,F,F,F,F,F,F,F,F,F,F,F,F,F,例1假设某航空公司规定,乘客可以免费托运重量不超过30公斤的行李。当行李重量超过30公斤时,对头等舱的国内乘客超重部分每公斤收费4元,对其它舱的国内乘客超重部分每公斤收费6元,对外国乘客超重部分每公斤收费比国内乘客多一倍,对残疾乘客超重部分每公斤收费比正常乘客少一半。用判定表来表示与上述每种条件组合相对应的动作。,用判定表表示计算行李费算法,例2:某校制定了教师的讲课课时津贴标准。对于各种性质的讲座,无论教师是什么职称,每课时津贴费一律是50元;而对于一般的授课,则根据教师的职称来决定每课时津贴费:教授30元,副教授25元,讲师20元,助教15元。,行李费算法,行李重量W30,国内乘客,外国乘客,头等舱,其它舱,残疾乘客-(W-30)*2,正常乘客-(W-30)*4,残疾乘客-(W-30)*3,正常乘客-(W-30)*6,头等舱,其它舱,残疾乘客-(W-30)*4,正常乘客-(W-30)*8,残疾乘客-(W-30)*6,正常乘客-(W-30)*12,行李重量W30,免费,判定树是判定表的变体,其优点是形式简单,不需要任何说明,一眼就可以看出它的含义.,5、判定树,例1、某厂对部分职工重新分配工作的政策是:年龄在20岁以下者,初中文化程度脱产学习。高中文化程度当电工;年龄在2040岁之间者,中学文化程度男性当钳工,女性当车工,大学文化程度都当技术员。年龄在40岁以上者,中学文化程度当材料员,大学文化程度当技术员。请用判定表或判定树描述上述问题的加工逻辑。,分析:本题条件包括年龄、文化程度、性别三个,构成的判定条件取值表如表所示,所有的组合条件为3X3x218,2、用判定表描述“检查定货单”的处理逻辑:“如果金额超过1000元而又未过期,则发出批准单和提货单。如果金额超过2000元,但已过期,则不发出批准单和提货单。如果金额低于2000元,则不论是否过期,都发出批准单和提货单,而且对低于2000元已过期的还需发出通知单”。,6、PDL语言,8.3详细设计说明书,引言程序系统的组织结构关键程序的设计说明,详细设计说明书规格,例1,例2,例3,填空题,1详细设计阶段主要完成的任务是。,2软件的详细设计可以采用、三种形式的描述工具表示模块的处理过程。,设计出模块的执行过程。,图、表、过程设计语言,3Jackson方法可以实现从中推导出程序结构,数据结构,4.程序流程图称,包括三个基本的成分:,。5.为了实现使用程序流程图描述结构化程序,必须限制程序流程图只使用以下五种基本控制结构、。6.PAD图是一种描述程序逻辑结构的图形工具,这种图形由程序流程图演化而来,它把程序的结构表示成结构。,程序框图加工处理步骤逻辑条件控制流向,顺序型选择型先判定(while)型循环后判定(until)型循环多情况(case)型选择,二维树型,7.过程设计语言属于一种,是一种描述的语言。8.Jackson方法简称JSD,是一种典型的的设计方法。,面向数据结构,伪码模块算法设计及处理细节,1软件详细设计阶段的任务是()。A.算法设计B.功能设计C.调用关系设计D输入/输出设计,选择题,2软件详细设计阶段主要采用的工具是()A.DFDBPADC.DDDSA,A,B,3.软件详细设计阶段采用自左向右的二维图形结构描述算法的是().AIPOBJSPCPADDJSD,C,4软件详细设计阶段的任务是()。A.确定程序文件名B.确定模块的算法C.确定变量名D确定使用的语言,B,5.结构化程序设计采用的思想是()。A.筛选法B逐步求精法C.迭代法D递归法,B,6.软件详细设计阶段属于软件生存周期的()阶段。A.需求分析B软件设计C编码D软件维护,B,7.以语言形式描述模块算法的是()。A.PADB.程序流程图C.PDLD.盒图,C,8、为了使程序能在不同的计算机上运行,程序应当具有较好的()A.可移植性B可重用性C.可维护性D可适用性,A,9、下列属于功能性注释的是()。A.说明模块的用处和功能的注释B.说明数据的名称和用处的注释C.说明程序段的注释D.说明程序开发背景的注释,C,10.下面对提高程序编码效率没有影响的是()。A.选择良好的设计方法B选择良好的算法C.选择良好的数据结构D变量名的使用,D,11.软件详细设计的主要任务是确定每个模块的()A.功能B.外部接口C.算法和使用的数据结构D.编程实现12.下面关于PDL语言不正确的说法是()A.PDL的外层语法必须符合一般程序设计语言常用的语法规则B.PDL是一种伪码C.PDL只是描述加工的具体实现D.PDL是描述处理过程怎么做13.PAD图在()可以大大提高开发效率A.系统分析B.自动分析数据C.软件的自动化生成D.测试软件,C,C,C,14.下列工具在软件详细设计过程中不常用的是()A.PDLB.NS图C.DFD图D.PAD图15.Jackson方法是软件设计中用到的一种常用的设计方法,使用Jackson方法可以实现()。A.从模块结构中导出数据结构B.从模块结构中导出程序结构C.从数据流图中导出初始的结构图D.从结构图导出程序结构,C,D,应用题,begins1;ifx5thens2elses3;whileyOdobeginifz3thens4elses5;ifw0s6;s7;ends8;ifu0thens9;s10;end,1.将下面的伪码表示转换为PAD图,1.答案,3.将下图所示的PAD图转换为伪码表示。,whileAdoifx0thenx1e
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年 延安市特岗教师招聘考试笔试试题附答案
- 药用包装材料生产项目可行性研究报告(申请备案案例)
- 中国PBN棒行业市场全景监测及投资前景展望报告
- 中国车间除尘设备行业投资潜力分析及行业发展趋势报告
- 2025年 德州庆云县卫生健康系统招聘考试笔试试题附答案
- 2025年 北京大兴区安定镇委托招聘考试笔试试题附答案
- 年电解水制氢研究分析报告
- 2025年中国汽车用镀锌板行业市场深度分析及投资策略咨询报告
- 2024年全球及中国储能服务行业头部企业市场占有率及排名调研报告
- 民政志愿者培训课件
- YY/T 1908-2023核酸提取仪
- MSA-GRR数据自动生成工具(已经解密)
- 广东省广州市增城区2022-2023学年一年级下学期期末数学试卷
- 2.1.4-驾驶员、押运员安全生产责任制考核表
- 化工原理课件-两流体间的热量传递
- 《人工智能基础概念》考试复习题库(浓缩300题)
- 端子压接技术标准
- 消费经济学完整整套教学课件
- 机械特性测试仪操作规程
- 超星学习通艺术美学(苏州大学)章节答案
- 护理查房高位截瘫584
评论
0/150
提交评论