软件开发一个复杂的活动, 它包含了需求调研, 系统设计, 开发, 部署, 维护等活动
而且现有规范和流程目的并不是让你去完成文档,而是通过这些文档, 让软件的质量更能得到保证
组成软件开发和系统演化的活动有着各种模型( 软件生存周期,软件开发模型,软件过程) ,但是典型地都包含了以下的过程或活动:分析、设计、实现、确认( 测试验收) 、产品化、维护
软件开发方法的一般要求:当提出一种软件开发方法时,应该考虑许多因素,包括:①覆盖开发全过程,并且便于在各阶段间的过渡;②便于在开发各阶段中有关人员之间的通信;③支持有效的解决问题的技术④支持系统设计和开发的各种不同途径⑤在开发过程中支持软件正确性的校验和验证;⑥便于在系统需求中列入设计、实际和性能的约束;⑦支持设计师和其他技术人员的智力劳动;⑧在系统的整个生存周期都支持它的演化;⑨受自动化工具的支持
一个项目的成功与否跟人员、技术、资源、测试、架构、需求、领导、组织等因素有关系
把以上内容我们划分为生命周期、人员、方法、工件、组织
而我们的软件过程就针对这些方面讨论解决方案,目前的有Rup 、AP 、MP 、HP 、CMMI 、Psp 、Tsp 等
这里将介绍一些方法的思想与指导原则
一、软件过程模型分类:1
惯例过程模型
瀑布模型( 又叫作生命周期模型)
增量过程模型: 包括增量模型、RAD 模型
演化过程模型: 包括原型开发模型、螺旋模型、协同开发模型
专用过程模型: 包括基于构件的开发模型、形式化方法模型、面向方面的软件开发模型
过程模型图:二、常见软件过程开发方法( Rup 、 AP 、 MP 、 HP )1 、 RUPRUP ( Rational Unified Process ,统一软件开发过程,统一软件过程 ) 是一个面向对象且基于网络的程序开发方法论
以用例驱动、架构为中心、迭代增量开