结构化设计


概要设计:将软件需求转化为数据结构和软件系统结构
详细设计:过程设计,对结构细化,得到软件的详细数据结构和算法


模块又称之为构件,一般指用一个名字调用的相邻程序元素序列
模块化:按照适当的原则将软件划分为一个个较小的,相关而又独立的模块
因为各个击破比把若干模块集成为一个大问题解决要花费更少的工作量和成本
虽然模块划分可以解决单个模块成本,但是模块之间的接口成本攀升

还是最小成本区比较舒服

抽象:抽出事物的本质特性,暂不考虑细节
求精:添加细节,本质上是细化过程
信息隐藏:隐藏每个模块的实现细节,对于使用它的又无需了解内部细节的模块

模块之间的关系相对简单,经过划分以后相对独立
①容易分工合作,降低耦合度
②容易测试和维护,测试方法简单,只需解决出现问题的模块(错误传播范围小)
③扩充功能容易

衡量指标:耦合、内聚

相关