第6章 详细的设计 软件工程-课件.ppt

  1. 1、本文档共94页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章 详细的设计 软件工程-课件.ppt

图6.10 A由B出现N次(N≥0)组成 Jackson图有下述优点: 便于表示层次结构,而且是对结构进行自顶向下分解的有力工具; 形象直观可读性好; 既能表示数据结构也能表示程序结构(因为结构程序设计也只使用上述3种基本控制结构)。 Jackson图的缺点是: 选择条件或循环结束条件不能直接在图上表示出来 框间连线为斜线,不易在行式打印机上输出。 6.4.2 改进的Jackson图 图6.11 改进的Jackson图 和层次图的区别 层次图中的一个方框通常代表一个模块;而Jackson图即使在描绘程序结构时,一个方框也并不代表一个模块,通常一个方框只代表几个语句。 层次图表现的是调用关系,通常一个模块除了调用下级模块外,还完成其他操作;而Jackson图表现的是组成关系,一个方框中包括的操作仅仅由它下层框中的那些操作组成。 5个步骤组成: (1) 分析并确定输入数据和输出数据的逻辑结构,并用Jackson图描绘这些数据结构。 (2) 找出输入数据结构和输出数据结构中有对应关系的数据单元。 (3) 用下述3条规则从描绘数据结构的Jackson图导出描绘程序结构的Jackson图: 6.4.3 Jackson方法 第一,为每对有对应关系的数据单元,按照它们在数据结构图中的层次在程序结构图的相应层次画一个处理框; 第二,根据输入数据结构中剩余的每个数据单元所处的层次,在程序结构图的相应层次分别为它们画上对应的处理框; 第三,根据输出数据结构中剩余的每个数据单元所处的层次,在程序结构图的相应层次分别为它们画上对应的处理框。 可能需要增加中间层次的处理框 (4) 列出所有操作和条件(包括分支条件和循环结束条件),并且把它们分配到程序结构图的适当位置。 (5) 用伪码表示程序。 Jackson方法中使用的伪码和Jackson图是完全对应的,下面是和3种基本结构对应的伪码。 顺序结构对应的伪码: A seq B C D A end A select cond1 B A or cond2 C A or cond3 D A end 重复结构对应的伪码:其中‘iter’、‘until’、‘while’和‘end’是关键字,cond是条件: A iter until(或while) cond B A end [例]一个正文文件由若干个记录组成,每个记录是一个字符串。要求统计每个记录中空格字符的个数,以及文件中空格字符的总个数。要求的输出数据格式是,每复制一行输入字符串之后,另起一行印出这个字符串中的空格数,最后印出文件中空格的总个数。 图6.12 表示输入输出数据结构的Jackson图 第二步是分析确定在输入数据结构和输出数据结构中有对应关系的数据单元。 在这个例子中输入输出数据结构中只有两对有对应关系的单元。 第三步是从数据结构图导出程序结构图。 图6.13 描绘统计空格程序结构的Jackson图 第四步是列出所有操作和条件,并且把它们分配到程序结构图的适当位置。 首先,列出统计空格个数需要的全部操作和条件。 经过简单分析不难把这些操作和条件分配到程序结构图的适当位置,结果为图6.14。 最后一步是用伪码表示程序处理过程。 图6.14 把操作和条件分配到程序结构图的适当位置 统计空格seq 打开文件 读入字符串 totalsum∶=0 程序体iter until文件结束 处理字符串seq 印字符串seq 印出字符串 印字符串end sum∶=0 pointer∶=1 分析字符串iter until字符串结束 分析字符select字符是空格 处理空格seq sum∶=sum+1 pointer∶=pointer+1 处理空格end 分析字符or字符不是空格 处理非空格seq pointer∶=pointer+1 处理非空格end 分析字符end 分析字符串end 印空格数seq 印出空格数目 印空格数end totalsum∶=totalsum+sum 读入字符串 处理字符串end 程序体end 印总数seq 印出空格总数 印总数end 关闭文件 停止 统计空格end 定量度量程序复杂度的方法很有价值,因为程序的复杂程度乘以适当常数即可估算出软件中错误的数量以及软件开发需要用的工作量 定量度量

文档评论(0)

yuzongxu123 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档