【复习笔记】软件工程概论复习(2)

设计工程#

抽象##

  • 过程抽象
  • 数据抽象

架构(体系结构)##

  • 为系统提供概念上完整性的方式
  • 程序构件的结构或组织+和构件的交互形式+构件所用的数据结构

(设计)模式##

已证实的解决方案集

逐步求精(refinement)##

  • 自顶向下的设计策略
  • 通过连续精化层次结构的程序细节来实现程序的开发

模块化##

  • 将软件划分为独立命名的、可寻址的构件,被称为模块,把这些模块集成到一起满足问题的需求
  • 避免过低或过高的模块化,应该遵循以下原则:
    - 使软件开发更容易;
    - 可以定义和交付软件增量;
    - 更容易实施变更;
    - 更有效地开展测试和调试

信息隐藏##

  • 每个模块对其他所有模块都隐藏 自己的设计决策。

功能独立##

  • 是模块化、抽象概念和信息隐藏的直接结果。
  • 开发具有专一功能且避免与其他模块过多交互的模块实现功能独立

重构##

不改变代码的外部行为的情况下改进其内部结构的过程。

架构(体系结构)设计#

为何进行体系结构设计?##

  • 有助于软件产品的共同利益者相互交流
  • 体系结构突出了早期设计决策。
  • 体系结构构建了一个相对小的,易于理解的模型,描述了系统如何构成以及其构件如何一起工作

体系结构风格(style)##

  • 以数据为中心的体系结构
  • 数据流体系结构
  • 调用和返回体系结构
  • 面向对象的体系结构
  • 层次体系结构
posted @ 2018-01-06 20:32  我也想学编程  阅读(281)  评论(0编辑  收藏  举报