5.2 软件过程模型
掌握常见软件开发模型的基本概念。
瀑布模型:各阶段的固定顺序,如同瀑布流水。适用于需求明确,且很少发生较大变化的项目。
演化模型:
- 原型模型:适用于用户需求不清,需求经常变化的情况,当系统规模不是很大也不太复杂的时候,采用该方法。
- 螺旋模型:对于复杂的大型软件。增加了风险分析。
喷泉模型:主要用来描述面向对象的软件开发过程。
软件的质量度量指标
- 软件维护的工作量比开发阶段的工作量大,通常估计的是开发阶段的工作量占软件生命周期整个工作量的40%,维护阶段的工作量则占60%,甚至更多。
- 软件的正确性是指软件完成所需功能的程度,不能直接等同说正确性可用每千行代码的故障数来度量
- 软件完整性是指软件在安全方面抗攻击的能力
- 软件可用性用来度量软件的用户友好性
设计模式:是对被用来在特定场景下解决一般设计问题的类和相互通信的对象的描述。一般而言一个设计模式有4个基本要素:模式名称,问题,解决的方案和效果。
设计模式使人们可以更加简单方便的复用成功的设计和体系结构。
软件项目开发成本,开发成本估算模型:
- IBM模型是静态变量模型
- Putnam模型是一种动态多变量模型,一般应用于超过70000行代码的项目
- COCOMO模型是一种精确且易于适用的成本估算模型。由基本、中、高级COCOMO模型组成。基本COCOMO模型是静态单变量模型。