第3章-信息系统分析与设计方法-2(设计).pptVIP

第3章-信息系统分析与设计方法-2(设计).ppt

  1. 1、本文档共107页,可阅读全部内容。
  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文档。上传文档
查看更多
3.1.3 结构化系统设计 系统设计的任务 总体设计 结构化设计的概念、基本原则 从数据流图导出结构图 详细设计 输出设计 输入设计 人机对话设计 模块详细设计 数据库设计、网络设计 系统设计说明书 从分析到设计 1 系统设计的任务 通俗地说,设计就是要回答“怎么做” 完成技术实现方案的制定,即信息系统的物理模型 一个逻辑模型,可以提出多个物理模型 根据物理模型进行实施,得到最终的物理系统 信息系统的可变更性 变化是不变的真理。 统计表示:在信息系统的整个生命周期中,系统维护成本占总成本的80%左右。 因此,可变更性是衡量信息系统设计的重要指标。 如何提高系统变更性 结构简单 系统各组成元素分工明确,易于理解 元素之间的关系清晰简洁 变动灵活 软件维护中的“水波效应” 使系统各组成元素内部的改变容易实现,改动对其它部分的影响尽量减少 提前考虑将来最易出现的扩展和变更 设计方法:结构化设计和面向对象设计 (2) 系统设计的内容 一般划分为两部分: 总体设计 也称概要设计 明确软件的组成元素及其结构(structure)、体系结构(architecture) 详细设计 各项具体细节,设计硬件软件的各个方面 详细设计 包括 代码设计 输入设计 输出设计 人机交互设计(用户界面设计) 模块处理过程设计(模块详细设计) 数据库设计 网络设计 2 结构化设计的概念 结构化:自上至下,逐步分解求精 结构化设计:模块化 模块化的基本思想 使用结构化设计方法一定程度上能够简化系统结构,使系统容易修改和理解。 具体做法: 把整个软件划分为部分,其中每一部分的功能简单明确,即程序模块(可以是子过程或函数) 划分模块的工作按层次进行,上层模块调用下层模块 每一个模块应尽可能独立 模块间的调用接口要阐明(模块名称、输入数据、输出数据) (1) 模块的概念 模块(Module)一词使用很广泛。通常对应于用一个名字就可以调用的一段程序语句(子程序或函数) 模块具有输入和输出、逻辑功能、运行程序、内部数据四种属性。 (2) 模块结构图 结构图(Structured Chart)描述系统的模块结构及模块间的联系 结构图中的主要成分有: 模块:用长方形表示 调用:从一个模块指向另一模块的箭头表示前一个模块调用后一个模块。有循环调用和条件调用 数据:用带圆圈的小箭头表示从一个模块传递给另一模块的数据(有实义) 控制信息:带涂黑圆圈的小箭头表示一个模块传送给另一模块的控制信息 模块设计的度量标准 为了衡量模块的相对独立性,提出了模块间的耦合(Coupling)与模块的内聚(Cohesion)两个标准 耦合:模块内部各元素之间的联系程度 内聚:模块和模块之间的联系程度 设计目标: 模块内的联系越紧越好 模块间的联系越少越好 为什么? (3) 模块的耦合 double CalculateAvg() { int n; double total, average, value; scanf(“input value:”, value); while value=0.0 { n=n+1; total=total+value; scanf(“\ninput value:”, value); } average=total/n; return(average); } 影响耦合度的因素 如果使用模块A需要了解模块B,那么A和B是耦合的。影响模块间耦合程度有三方面的因素: 联系方式--模块间通过什么方式联系 来往信息的作用--模块间来往信息作什么用 数量--模块间来往信息的多少。 模块联系方式 直接引用:一个模块直接存取另一个模块的某些信息,例如全程变量、FORTRAN的common量、C语言的extern量、共享的通信区等 。也称为公共环境耦合(common environment coupling) 降低这种耦合程度的办法是使数据局部化,即使用局部变量 过程语句调用:一个模块调用另一个模块,所有数据来往都以参数或返回值方式传递并使用 来往信息的作用 模块间的来往信息可以作数据用,也可以作控制信息用 来往信息的数量 模块间传递的信息量越大,它们之间的耦合程度越高。 一个模块最好只了解它确实需要使用的数据,而完全不知道其他数据的存在(独立性好) 耦合的类型 根据以上因素,对耦合分类如下: 数据耦合:采用子程序调用,调用模块将需要进行处理的数据传递给被调模块。数据耦合是不可避免的。 控制耦合:一个模块将控制信息传递给另一个模块,以控制被调模块的内部处理逻辑。(可以分解) 公共耦合:如果两个模块共享同一全局数据,称为公共耦合。 内容耦合:两个模块之间的内部属性有直接关联,也称病态耦合。(某些GO

文档评论(0)

好文精选 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档