- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 大连理工大学软件学院 * * 大连理工大学软件学院 * 判定树 判定表虽然能清晰地表示复杂的条件组合与应做的动作之间的对应关系,但其含义却不是一目了然,理解它也需要有一个学习过程。 当数据元素的值多于两个时(例如,例子中假设对机票需细分为头等舱、二等舱和经济舱等多种级别时),判定表的简洁程度也将下降。 判定树是判定表的变种,也能清晰地表示复杂的条件组合与应做的动作之间的对应关系。 * 大连理工大学软件学院 * 用判定树表示计算行李费的算法 * 大连理工大学软件学院 * 过程设计语言(PDL) PDL也称为伪码,这是一个笼统的名称,有许多种不同的过程设计语言在使用。它是用正文形式表示数据和处理过程的设计工具。 PDL具有严格的关键字外部语法,用于定义控制结构和数据结构;另一方面,PDL表示实际操作和条件的内部语法通常又是灵活自由的,以便可以适应各种工程项目的需要。 PDL是一种“混杂”语言,它使用一种语言(通常是某种自然语言)的词汇,同时却使用另一种语言(某种结构化的程序设计语言)的语法。 * 大连理工大学软件学院 * 6.5 程序复杂程度的定量度量 McCabe方法:流图 设计测试方案时需要仔细分析程序的控制流。 为了突出表示程序的控制流,可以使用流图(也称为程序图)。 流图仅描绘程序的控制流程,完全不表现对数据的具体操作以及分支或循环的具体条件。 * 大连理工大学软件学院 * 流图用圆表示节点,一个圆代表一条或多条语句。 程序流程图中的一个处理框序列和一个菱形判定框,可以映射成流图中的一个节点。 流图中的箭头线称为边,和程序流程图中的箭头线类似,代表控制流。 在流图中一条边必须终止于一个节点,即使这个节点并不代表任何语句(实际上相当于一个空语句)。 由边和节点围成的面积称为区域,区域数应该包括图外部未被围起来的区域。 * 大连理工大学软件学院 * * 大连理工大学软件学院 * 把程序流程图映射成流图 (a)程序流程图;(b)流图 * 大连理工大学软件学院 * PDL procedure: sort 1: do while records remain read record; 2: if record field 1 = 0 3: then process record; store in buffer; increment counter; 4: else if record field 2 = 0 5: then reset counter; 6: else process record; store in file; 7a: end if end if 7b: end do 8: end * 大连理工大学软件学院 * 由PDL翻译成的流图 * 大连理工大学软件学院 * 由包含复合条件的PDL映射成的流图 * 大连理工大学软件学院 * 流图的环形复杂度 环形复杂度定量度量程序的逻辑复杂性。三种方法来计算环形复杂度。 流图中的区域数等于环形复杂度。 流图G的环形复杂度V(G)=E-N+2,其中E是流图中边的条数,N是流图中节点数。 流图G的环形复杂度V(G)=P+1,其中P是流图中判定节点的数目。 * 大连理工大学软件学院 * 6.6 小结 人机界面设计是接口设计的一个组成部分。对于交互式系统来说,人机界面设计和数据设计、体系结构设计、过程设计一样重要。 过程设计应该在数据设计、体系结构设计和接口设计完成之后进行,它是详细设计阶段的主要任务。过程设计的目标不仅是保证算法正确,更重要的是设计出的处理过程应该尽可能简明易懂。结构程序设计技术是实现上述目标的关键技术,因此是过程设计的逻辑基础。 * 大连理工大学软件学院 * 描述程序处理过程的工具,可分为图形、表格和语言三类,这三类工具各有所长,读者应该能够根据需要选用适当的工具。 在许多应用领域中信息都有清楚的层次结构,在开发这类应用系统时可以采用面向数据结构的设计方法完成过程设计。 * 大连理工大学软件学院 * 作业 见“软件工程习题”文档要求。 大连理工大学软件学院 软件工程 * 大连理工大学软件学院 * 第6章 详细设计 6.1 结构程序设计 6.2 人机界面设计 6.3 过程设计的工具 6.4 面向数据结构的设计方法 6.5 程序复杂程度的度量方法 6.6 小结 * 大连理工大学软件学院 * 过程设计应该在数据设计、体系结构设计和接口设计完成之后进行,它是详细设计阶段应该完成的主要任务。 过程设计的任务还不是具体地编写程序,而是要设计出程序的“蓝图”,以后程序员将根据这个蓝图写出实际的程序代码。 因此,过程设计的结果基本上决定了最终的程序代码
原创力文档


文档评论(0)