系统设计与分析第二次作业

1.简答题

  1. 简述瀑布模型、增量模型、螺旋模型(含原型方法)的优缺点。
    1. 瀑布模型
      • 优点
        • 为项目提供了按阶段划分的检查点。
        • 当前一阶段完成后,您只需要去关注后续阶段。
        • 可在迭代模型中应用瀑布模型。
        • 它提供了一个模板,这个模板使得分析、设计、编码、测试和支持的方法可以在该模板下有一个共同的指导。
      • 缺点
        • 各个阶段的划分完全固定,阶段之间产生大量的文档,极大地增加了工作量。
        • 由于开发模型是线性的,用户只有等到整个过程的末期才能见到开发成果,从而增加了开发风险。
        • 通过过多的强制完成日期和里程碑来跟踪各个项目阶段。
        • 瀑布模型的突出缺点是不适应用户需求的变化。
    2. 增量模型
      • 优点
        • 增强客户对系统的信心
        • 降低系统失败风险
        • 提高系统可靠性
        • 提高系统的稳定性和可维护性
      • 缺点
        • 增量粒度难以选择
        • 确定所有的基本业务服务比较困难
    3. 螺旋模型
      • 优点
        • 通过原型的创建,使软件开发在每个迭代的最初明确方向;
        • 通过风险分析,最大程度地降低软件彻底失败造成损失的可能性;
        • 在每个迭代阶段植入软件测试,使每个阶段的质量得到保证;
        • 整体过程具备很高的灵活性,在开发过程的任何阶段自由应对变化;
        • 每个迭代阶段累计开发成本,使支出状况容易掌握;
        • 通过对用户反馈的采集,与用户沟通,以保证用户需求的最大实现;
      • 缺点
        • 过分依赖风险分析经验与技术,一旦在风险分析过程中出现偏差将造成重大损失;
        • 过于灵活的开发过程不利于已经签署合同的客户与开发者之间的协调;
        • 由于只适用大型软件,过大的风险管理支出会影响客户的最终收益;
  2. 简述 UP 的三大特点,其中哪些内容体现了用户驱动的开发,哪些内容体现风险驱动的开发?
    1. 可拓展的(用户驱动的开发)
    2. 有效的(风险驱动的开发)
    3. 提高生产率(用户驱动的开发)
  3. UP 四个阶段的划分准则是什么?关键的里程碑是什么?
    1. 初始阶段(Inception)
      • 初始阶段的目标是为系统建立商业案例并确定项目的边界。为了达到该目的必须识别所有与系统交互的外部实体,在较高层次上定义交互的特性。
    2. 细化阶段(Elaboration)
      • 细化阶段的目标是分析问题领域,建立健全的体系结构基础,编制项目计划,淘汰项目中最高风险的元素。为了达到该目的,必须在理解整个系统的基础上,对体系结构作出决策,包括其范围、主要功能和诸如性能等非功能需求。
    3. 构造阶段(Construction)
      • 在构建阶段,所有剩余的构件和应用程序功能被开发并集成为产品,所有的功能被详细测试。
    4. 交付阶段(Transition)
      • 交付阶段的重点是确保软件对最终用户是可用的。交付阶段可以跨越几次迭代,包括为发布做准备的产品测试,基于用户反馈的少量的调整。
    5. 划分准则
      • 时间和 RUP 的核心工作流程
    6. 关键里程碑
      • 生命周期目标(Lifecycle Objective)里程碑,评价项目基本的生存能力。
      • 生命周期结构(LifecycleArchitecture)里程碑。生命周期结构里程碑为系统的结构建立了管理基准并使项目小组能够在构建阶段中进行衡量。此刻,要检验详细的系统目标和范围、结构的选择以及主要风险的解决方案。
      • 初始功能(Initial Operational)里程碑。初始功能里程碑决定了产品是否可以在测试环境中进行部署。此刻,要确定软件、环境、用户是否可以开始系统的运作。此时的产品版本也常被称为“beta”版。
      • 产品发布(Product Release)里程碑。此时,要确定目标是否实现,是否应该开始另一个开发周期。在一些情况下这个里程碑可能与下一个周期的初始阶段的结束重合。
  4. IT 项目管理中,“工期、质量、范围/内容” 三个元素中,在合同固定条件下,为什么说“范围/内容”是项目团队是易于控制的
    • 工期是在合同签订时固定的,质量是最终验收,客户使用时才最终体现出来。只有范围、内容是由项目团队控制的,由项目团队明确需求,解决问题的。
  5. 为什么说,UP 为企业按固定节奏生产、固定周期发布软件产品提供了依据?
    • UP是迭代过程,具有灵活性,在这种生命周期方法中,开发被组织成一系列固定的短期项目,每次迭代都产生经过测试,集成并可执行的局部系统。且UP将开发分割四个阶段,每个阶段里程碑明确,易于评估是否满足。每个迭代过程都有固定的时长和产品生成。进而为企业按固定节奏生产、固定周期发布软件产品提供了依据。

项目管理使用

kanban