Xungerrrr's Blog

软件项目过程模型与规划

系统分析与设计 Homework 3

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

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

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

瀑布模型

优点

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

缺点

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

增量模型

优点

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

缺点

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

螺旋模型(含原型方法)

优点

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

缺点

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

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

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

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

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

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

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

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

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

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

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