Xungerrrr's Blog

软件项目过程模型与规划

系统分析与设计 Homework 3

Word count: 1.2kReading time: 4 min
2019/04/01 14 Share

简述瀑布模型、增量模型、螺旋模型(含原型方法),并分析优缺点

从项目特点、风险特征、人力资源利用角度思考

瀑布模型

优点

  • 降低软件开发的复杂程度,提高开发过程的透明性和可管理性。
  • 推迟软件实现,强调分析和设计工作的重要性。
  • 以项目的阶段评审和文档控制为手段,有效地对整个开发过程进行指导,能够及时发现并纠正问题。

缺点

  • 强调开发过程的线性顺序,缺乏灵活性。
  • 无法解决软件需求不明确的问题。
  • 瀑布模型是文档驱动的,规定过多的文档会大大增加工作量,仅根据文档来评估进度可能会出错。
  • 风险控制的能力较弱。
  • 资源调配问题:知识技能需求不同,人员数量要求不同。

增量模型

优点

  • 增强客户对系统的信心。
  • 降低系统失败的风险。
  • 提高系统可靠性。
  • 提高系统的稳定性和可维护性。

缺点

  • 建立初始模型时,作为增量基础的基本业务服务的确定有一定难度。
  • 增量粒度难以选择。

螺旋模型(含原型方法)

优点

  • 风险驱动的迭代过程,强调可选方案和约束条件从而支持软件的重用,有助于将软件质量作为特殊目标融入产品开发之中。
  • 结合了瀑布模型和快速原型方法,将瀑布模型的多个阶段转化到多个迭代过程中,以降低项目的风险。

缺点

  • 螺旋模型强调风险分析,但说服外部客户接受和相信分析结果并做出相关反应并不容易,因此螺旋模型往往比较适合内部的大规模软件开发。
  • 风险分析需要耗费相当的成本,因此螺旋模型比较适合投资规模较大的软件项目。
  • 失误的风险分析可能带来更大的风险。

简述统一过程三大特点,与面向对象的方法有什么关系?

  • 软件开发是一个迭代过程。
  • 软件开发是由Use Case驱动的。
  • 软件开发是以架构设计为中心的。

统一过程是一个面向对象的软件开发方法,它给出了有关软件开发过程组织及实施的指导。

简述统一过程四个阶段的划分准则是什么?每个阶段关键的里程碑是什么?

统一过程四个阶段的划分准则是每个阶段的目标和里程碑。

  • 初始阶段
    生命周期目标里程碑:通过对文档的评审确定用例需求理解正确、项目风险评估合理、阶段计划可行等。
  • 细化阶段
    生命周期体系结构里程碑:通过评审确定软件体系结构已经稳定、高风险的业务需求和技术机制已经解决、修订的项目计划可行等。
  • 构建阶段
    初始运行能力里程碑:包括可以运行的软件产品、用户手册等,它决定了产品是否可以在测试环境中进行部署。此刻,要确定软件、环境、用户是否可以开始系统的运行。
  • 交付阶段
    产品发布里程碑:确定最终目标是否实现,是否应该开始产品下一个版本的另一个开发周
    期。

软件企业为什么能按固定节奏生产、固定周期发布软件产品?它给企业项目管理带来哪些好处?

软件企业采用基于统一过程的软件项目规划,利用软件产品范围的弹性,合理规划范围(20%业务决定80%满意度),使得软件企业按固定节奏生产、固定周期发布软件产品。

统一过程能够对过程加以调整改造,通过适当裁剪过程,可以调整生命周期阶段过程的正规性,持续优化过程。统一过程可以平衡竞争利益相关者的优先级,通过定义、理解和划分业务与用户优先次序的需求,为项目和需求制定优先次序,将需求和软件能力相结合,平衡资产重用与用户需求。统一过程可以创建自我管理的团队,鼓励跨职能协作,整合业务、软件和运作团队,从而激发开发成员的最佳表现。通过反复迭代,经过反馈、改变、消除风险和调整计划,可以有效证实项目目标的价值。统一过程还可以提高资源的重用率,并通过持续关注产品质量,保证项目质量的可靠。

CATALOG
  1. 1. 简述瀑布模型、增量模型、螺旋模型(含原型方法),并分析优缺点
  2. 2. 简述统一过程三大特点,与面向对象的方法有什么关系?
  3. 3. 简述统一过程四个阶段的划分准则是什么?每个阶段关键的里程碑是什么?
  4. 4. 软件企业为什么能按固定节奏生产、固定周期发布软件产品?它给企业项目管理带来哪些好处?