ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

软件工程 结构化设计方法 第3篇随笔

2022-08-29 15:30:49  阅读:161  来源: 互联网

标签:结构化 MSD 表达 软件工程 模块 内聚 耦合 设计 随笔


3.2、结构化设计方法

何谓设计?

一种软件开发活动,定义实现需求规约所需结构

1.对设计方法的需求

  • 提供可体现“原理/原则”的一组术语(符号),形成一个特定的抽象层,用于表达设计中所使用的部件
  • 依据术语形成的“空间”,给出表达软件模型工具
  • 给出设计的过程指导

2.总体设计层

  • 引入两个术语/符号

    • 模型:一种可独立标识的软件成分

    • 调用:模块间的一种关系,模块A为了完成其任务必须依赖其他模块

      ​ ——————>

  • 引入了模块结构图

    用于表达软件系统的静态结构

  • 过程指导

    为了实现水目标,总体设计的具体任务:将DFD转化为MSD

    分两步实现:


    第一步:如何将DFD转化为MSD

    ​ 分类:变换型数据流图

    ​ 事务型数据流图

    ​ 变换设计

    ​ 事务设计

    数据流图分类:

    变换型:

    事务型:

    变换设计:

    事务设计:


    第二步:基于模块化原理—高内聚 低耦合

    ​ 给出一些设计规则—经验规则

    ​ 用于精化初始的MSD

    ​ — 体现设计人员的创造

    耦合:

    不同模块之间相互依赖程度的度量

    耦合类型:

    • 内容耦合
    • 公共耦合
    • 控制耦合
    • 标记耦合
    • 数据耦合

    内聚:

    一个模块之内各个成分之间相互依赖程度的度量

    内聚类型:

    • 偶然内聚
    • 逻辑内聚
    • 时间内聚
    • 过程内聚
    • 通信内聚
    • 顺序内聚
    • 功能内聚

    启发性规则—建经验的总结

    • 改进软件结构,提高模块独立性
    • 模块规模适中-每页60行语句
    • 深度、宽度、扇入和扇出适中
    • 模块的作用域力争在控制域之内
    • 降低模块接口的复杂性
    • 模块功能应该可以预测

3.详细设计层

主要引入了关于三种动作控制结构的术语/符号

三种控制结构:顺序,选择和循环

  • 第一种表达-伪代码

    顺序:
    	begin s1;s2;...;sn end;
    选择:
    	if 条件表达式	then s1
    				   else s2;
    循环
    	while 条件表达式  do  s;
    
  • 第二种表达-框图

  • 第三种表达-PAD图

  • 第四种表达-N-S图

标签:结构化,MSD,表达,软件工程,模块,内聚,耦合,设计,随笔
来源: https://www.cnblogs.com/shuisanya/p/16636097.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有