美文网首页
《软件工程》笔记2

《软件工程》笔记2

作者: 菜鸟nana | 来源:发表于2016-11-02 23:38 被阅读28次

    结构化设计

    一、前面学习了采用结构化分析的方法对需求进行完整、准确、具体的需求后,就进入到软件设计阶段,包括概要设计(怎么实现?共分为几个模块?)和详细设计(每个模块的数据结构等)两个阶段。软件设计阶段采用的方法是结构化设计方法。

    结构化分析为结构化设计提供了重要的输入信息,也就是说,设计是依托在分析上面的。下面贴图细数结构化分析与结构化设计的关系

    由图也可以看到,结构化设计大体分为:数据设计体系结构设计和接口设计。

    二、具体介绍上述设计方法前,必须明确软件设计的一些概念和原理

    (1)模块化:把程序划分成可独立命名和独立运行的模块

    (2)抽象:抽象出许多层次,忽略细节

    (3)逐步求精:从高层到低层逐步细化,提供越来越多细节

    (4)信息隐藏:一个模块的实现细节等内部信息,对于不需要这些信息的模块来说是不能访问的

    三、模块独立:低耦合,高内聚

    耦合:模块与模块之间

    内聚:一个模块内部

    四、启发规则

    (1)改进软件结构,提高模块独立性

    (2)模块规模适中

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

    深度:层次数

    宽度:同一层次模块数

    扇出:一个模块控制的模块数

    扇入:有多少个上级模块直接调用这个模块

    (4)模块的作用域(影响)应该在控制域(从属,子节点)之内

    (5)降低模块接口复杂度

    (6)设计单入口单出口模块

    (7)模块功能应该可以预测

    五、表示软件结构的图形工具

    (1)层次图和HIPO图

    (2)结构图

    六、面向数据流的设计方法

    把信息流映射成软件结构,信息流的类型决定了映射方法,信息流有变换流和事务流两种类型。所以映射方法有变流分析和事务分析。

    七、人机界面设计

    (1)设计问题

    ①系统响应时间

    ②用户帮助设施

    ③出错信息处理

    ④命令交互

    (2)设计过程

    (3)设计指南

    八、过程设计

    过程设计应该在数据设计、体系结构设计和接口设计之后进行,是详细设计的主要内容。它并不是具体编写程序,过程设计的目标不仅仅是逻辑上正确的实现每个模块的功能,更重要的是设计出的处理过程应该简明易懂。实现这一目标的关键设计是结构程序设计。

    结构程序设计叙述如下

    九、过程设计的工具:描述程序处理过程的工具

    (1)程序流程图

    (2)盒图(N/S)

    (3)PAD图

    (4)判定表

    (5)判定树

    (6)过程设计语言:伪码

    十、面向数据结构的设计方法:根据数据结构设计(每个模块)程序处理过程的方法

    使用面向数据结构的设计方法,首先要分析确定数据结构,并用适当工具清晰地描绘数据结构,下面介绍了几种工具。

    (1)Jackson图

    (2)改进的Jackson图

    (3)Jackson方法


    效率不高,昨天还偷懒了,555555....明天继续~

    相关文章

      网友评论

          本文标题:《软件工程》笔记2

          本文链接:https://www.haomeiwen.com/subject/eilbuttx.html