《软件工程》复习提纲

2018-06-13  本文已影响85人  曹真

整理自教材、PPT以及坊间流传的材料。

软件工程概念

软件生命周期模型

image
生命周期模型 长处 短处
进化树模型 与现实世界软件开发最接近的模型,与迭代-递增模型等价
迭代-递增生命周期模型 于现实世界软件开发最接近的模型,蕴含统一过程方法
编码-修补生命周期模型 适用于不需要维护的小程序 不适合重要的程序
瀑布生命周期模型 纪律性强制的方法,文档驱动 支付的产品可能不符合客户的要求
快速原型开发生命周期模型 确保交付的产品符合客户的要求 还没有证明无懈可击
开源生命周期模型 少量实例周期工作中相当好 实用性有限,通常不太起作用
敏捷过程 客户的需求模糊时能很好地工作 似乎只适合小规模项目
同步-稳定生命周期模型 能满足未来用户的要求,确保各组件能够成功集成 除了微软,没有广泛应用
螺旋生命周期模型 风险驱动 只能用于大型的内部软件产品,开发者必须精 通风险分析和风险排除

软件过程

image

软件生命周期的工作流

需求

image

软件过程中统一过程的五个核心工作流和各阶段:

阶段:

面向对象分析

image

类的种类:

抽取实体类

实体类抽取包括三个迭代和递增完成的步骤:

注:对于所有迭代和递增的处理,这三个步骤不总是以这个顺序进行,一个模型中的变化通常引发其他两个模型对应的修改。

设计

image

面向操作设计

数据流分析

数据流分析(DFA)是一项得到高内聚模块的传统设计技术。该技术的输入时一个数据流图,一旦完成了DFA,软件设计者就有了关于产品的输入和输出的精确和完整的信息。

输入的最高点(point of highest abstration of input):讲输入失去作为输入的性质并且简单的变成内部产品操作的内部数据的点。

输出的最高点:也就是数据流图中输出可以被识别的第一点,而不是被识别为某种内部数据。

两个最高点讲产品分解为三个模块,输入模块、转换模块、输出模块

符合结构化设计的目标是高内聚的同事还要低耦合。

事务分析

如何完成事务分析:

面向数据设计

基本原则:根据其运行的数据结构设计产品。

面向对象设计

实现

image

良好的编程实践

编码标准

代码重用

集成

集成方式:

方法 优点 缺点
实现然后集成 没有错误隔离手段,主要涉及错误发现迟,潜在可重用代码制品不能被充分测试
自顶向下的集成 具有错误隔离,主要涉及错误发现早 潜在可重用代码制品不能被充分测试
自底向上的集成 具有错误隔离手段,潜在可重用代码制品能被充分的测试 主要设计错误发现迟
三明治集成 具有错误隔离,主要设计错误发现早,潜在可重用代码制品测能够被充分测试

测试

image

黑盒测试

玻璃盒测试

模块

一个或多个邻接的程序语句的集合,它有一个名称以便系统的其他部分调用它,并且最好具有自己专用的变量名集。

维护

上一篇 下一篇

猜你喜欢

热点阅读