软件工程曹哲电子教案 第09章.pptVIP

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件工程 主编 曹哲 高诚 中国水利水电出版社 9.1 面向数据设计的概念 9.2 Jackson系统开发方法 9.3 基于结构化数据的系统开发(DSSD)方法 9.1 面向数据设计的概念 JSD方法是Jackson 于1989年对软件设计中广为使用的Jackson结构程序设计(Jackson Structured Programming,JSP)方法的扩展,并且在某些方面与面向对象方法有些类似。DSSD方法也称为Warnier?Orr方法,是对Warnier程序逻辑构造(Logical Construction of Program,LCP)方法的扩充,除了设计能力以外,还加强了分析能力。 尽管不同的面向数据设计方法有不同的规则,但一般都包括下列任务: (1)确定数据结构特征。 (2)用顺序、选择和重复三种基本形式表示数据。 (3)把数据结构表示映射为软件的控制结构。 (4)用与具体方法配套的设计指南进一步精化控制结构。 (5)开发软件的过程性描述。 9.1 Jackson系统开发方法 SP技术是一种详细设计技术,它由问题所固有的数据结构导出过程的内部结构。所用的基本工具称为数据结构图,是Jackson结构图的变种,专门用于描述数据元素之间的逻辑关系。 JSP方法通过综合、对照过程的输入/输出数据结构的层次关系导出对应的过程性表示,即程序。具体步骤如下: (1)分析并确定输入数据和输出数据的逻辑结构,并用Jackson图描绘这些数据结构。 (2)找出输入数据结构与输出数据结构中有对应关系的数据元素,即有直接因果关系者,它们在程序中可以一并处理。 (3)依据下述三条规则从数据结构图导出Jackson结构图。 ① 在Jackson结构图中,为有对应关系的每对数据元素画一个处理框,该框所处层次取这两个数据元素在各自数据结构图中层次较低者。 ② 参照输入数据结构图中剩余的每个数据元素所处层次,在Jackson结构图的相应层次上画一个处理框。 ③ 参照输出数据结构图中剩余的每个数据元素所处层次,在Jackson结构图的相应层次上画一个处理框。 (4)列出所有操作和条件(包括分支和循环条件),并把它们分配到Jackson结构图中。 (5)根据Jackson结构图,产生结构正文描述。 9.2.2 Jackson伪代码逻辑结构 Jackson方法中使用的伪码和Jackson图是完全对应的。图9-1、图9-2和9-3分别是图6-7、图6-8和图6-9所示的顺序结构、选择结构和重复结构及其对应的伪码。其中seq、select、iter、until、while和end是关键字,cond1、cond2和cond是条件。 9.2.3 确定输入/输出数据的逻辑结构 类似于面向对象分析中对象的识别,Jackson方法针对初步需求分析形成的用户需求描述进行语法分析。名词及名词短语是潜在的实体。分析人员根据应用问题的边界及自己的理解,决定对潜在实体的取舍。通过分析形成逻辑结构。 【例9.1】一个正文文件由若干个记录所组成,每个记录是一个字符串。要求统计每个记录中空格字符的个数,以及文件中空格字符的总数。要求的输出数据格式是,每复制一行输入字符串之后,另起一行印出这个字符串中的空格数,最后印出文件中空格的总个数。 6.2.4 找出输入/输出数据结构中有对应关系的数据单元 确定了输入/输出数据结构之后.下一步是分析确定在输入数据结构和输出数据结构中有对应关系的数据单元。在这个例子中,输出数据总是通过对输入数据的处理而得到的,因此在输入/输出数据结构最高层次的两个单元(在这个例子中是“正文文件”和“输出表格”)总是有对应关系的。这一对单元将和程序结构图中最顶层的方框(代表程序)相对应,也就是说经过程序的处理由正文文件得到输出表格。因为每处理输入数据中一个“字符串”之后,就可以得到输出数据中一个“串信息”,它们都是重复出现的数据单元,而且出现次序和重复次数都完全相同。因此,“字符串”和“串信息”也是一对有对应关系的单元。 下面我们依次考察输入数据结构中余下的每个数据单元看是否还有其他有对应关系的单元。“字符”不可能和多个字符组成的“字符串”对应,也不能和输出数据结构中的其他数据单元对应。单个空格并不能决定—个记录中包含的空格个数,因此也没有对应关系。通过类似的考察发现,输入数据结构中余下的任何一个单元在输出数据结构中都找不到对应的单元。也就是说,在这个例子中输入/输出数据结构中只有上述两对有对应关系的单元。在图9-5 中用一对虚线箭头把有对应关系的数据单元连接起来,以突出表明这种对应关系。 9.2.5 产生过程表示 Jackson程序设计方法的第三步是从数据结构图导出程序结构图。按照前面

您可能关注的文档

文档评论(0)

带头大哥 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档