软件工程–第五章– 总体设计

文章目录

    • 设计原理
      • 模块化
      • ==模块独立性 (最重要的特性)==
      • 抽象
      • 逐步求精
    • 启发式规则
    • 图形工具
    • 面向数据流的设计方法
    • 概要设计说明书

系统的总体设计=概要设计/初步设计
这个阶段任务:划分出组成系统的物理元素——程序、文件、数据库、人工文档等;设计软件结构,系统之间的模块

总体设计主要由两个部分组成:系统设计阶段;结构设计阶段

步骤:

软件工程--第五章-- 总体设计

模块独立性 (最重要的特性)

1.独立性很重要

软件工程--第五章-- 总体设计
  • 控制耦合 中耦合,增加系统复杂度,if数据冗余可以将模块分解之后用数据耦合来代替

    软件工程--第五章-- 总体设计
  • 内容耦合:

    软件工程--第五章-- 总体设计

应追求尽可能松散耦合,避免强耦合,这样模块间的联系就越小,模块的独立性就越强,对模块的测试、维护就越容易

因此建议:尽量使用数据耦合,少用控制耦合,限制公用耦合,完全不用内容偶合。

3.内聚(对于一个模块内部)

软件工程--第五章-- 总体设计
  • 顺序内聚

    软件工程--第五章-- 总体设计
  • 通信内聚

    软件工程--第五章-- 总体设计
    后面会调用前面的
  • 时间内聚

    软件工程--第五章-- 总体设计
  • 逻辑内聚

  • 软件工程--第五章-- 总体设计
  • 偶然内聚
    如果一个模块由完成若干毫无关系的功能处理元素偶然组合在一起的,就叫偶然内聚。
    偶然内聚是最差的一种内聚。

  • 软件设计中应该:力求做到高内聚,尽量少用中内聚,不用低内聚

    抽象

    逐步求精

    启发式规则

    1. 改进软件结构提高模块独立性

    2. 模块规模应该适中

    3. 深度、宽度、扇出和扇入都应适当

      软件工程--第五章-- 总体设计
    4. 模块的作用域应该在控制域之内
      作用域:受该模块内一个判定影响的所有模块的集合。
      控制域:模块本身以及所有从属于它的模块的集合。

    5. 力争降低模块接口的复杂度

      软件工程--第五章-- 总体设计
      自顶向下的设计思想
    6. HIPO图
      h是层次的意思
      然后每一张图都是一个ipo
      每一个都加编号

      软件工程--第五章-- 总体设计
      每一个方块代表一个模块
      方框之间的连线表示调用模块的调用关系
      箭头尾部表示传递的是:数据信息(空心圆) 控制信息(实心圆)
      软件工程--第五章-- 总体设计

      事务流—
      存在一个事务中心(也就是数据处理、加工中心),它将输入分离成若干个发散的数据流,形成许多活动路径,并根据输入值选择其中一条路径

      软件工程--第五章-- 总体设计

      软件工程--第五章-- 总体设计
      事务设计
      为以事务为中心的设计。
      软件工程--第五章-- 总体设计

      软件工程--第五章-- 总体设计

      概要设计说明书

      该说明书是概要实际阶段的工作成果,它应说明功能分配、模块划分、程序的总体结构、输入输出以及接口设计、运行设计、数据结构设计和出错处理设计等,为详细设计提供基础

      来源:吃橘子要剥橘子皮

      声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

    上一篇 2020年10月2日
    下一篇 2020年10月2日

    相关推荐