Part I

  • 简述瀑布模型、增量模型、螺旋模型(含原型方法)的优缺点。

    • 瀑布模型(Waterfall Model, Winston Royce 1970)

      优点:

      1. 降低软件开发的复杂程度,提高软件开发过程的透明性,提高

        软件开发过程的可管理性

      2. 推迟软件实现,强调在软件实现前必须进行分析和设计工作

      3. 以项目的阶段评审和文档控制为手段有效地对整个开发过程进

        行指导,保证了阶段之间的正确衔接,能够及时发现并纠正开 发过程中存在的缺陷,使产品达到预期的质量要求

      缺点:

      1. 强调过程活动的线性顺序

      2. 缺乏灵活性,特别是无法解决软件需求不明确或不准确的问题

      3. 风险控制能力较弱

      4. 瀑布模型中的软件活动是文档驱动的,当阶段之间规定过多的

        文档时,会极大地增加系统的工作量

      5. 管理人员如果仅仅以文档的完成情况来评估项目完成进度,往

        往会产生错误的结论

    • 增量模型(Iterative and Incremental Model, Mills 1980)

      优点:

      1. 增强客户对系统的信心
      2. 降低系统失败风险
      3. 提高系统可靠性
      4. 提高系统的稳定性和可维护性

      缺点:

      1. 增量粒度难以选择
      2. 确定所有的基本业务服务比较困难
    • 螺旋模型(Spiral Model, Boehm 1988)

      优点:

      1. 引入了明确的风险管理
      2. 有助于增进软件人员和用户对系统服务需求的理解,减少两者之间的误解
      3. 易于确定系统的性能,确认各项主要系统服务的可应用性,确认系统设计的可行性,确认系统作为产品的结果
      4. 软件原型版本有的可以原封不动地成为产品,有的略加修改就可以成为最终系统的一个组成部分,有利于最终系统的建成。

      缺点:

      1. 螺旋模型强调风险分析,但说服外部客户接受和相信分析

        结果并做出相关反应并不容易,因此螺旋模型往往比较适 合内部的大规模软件开发。

      2. 风险分析需要相当的成本耗费,因此螺旋模型只适合于投

        资较大的规模软件项目。

      3. 失误的风险分析可能带来更大的风险。

  • 简述 UP 的三大特点,其中哪些内容体现了用户驱动的开发,哪些内容体现风险驱动的开发?

    • UP的三大特点:用例驱动、以架构为中心、迭代和增量

    • 体现用户驱动开发的内容:开发团队要将来源于需求的用例用于代码和测试,能构造用户最关心的可视化特性

    • 体现风险驱动开发的内容:以架构为中心的迭代开发

  • UP 四个阶段的划分准则是什么?关键的里程碑是什么?

 1. 初始阶段:初始阶段的目标是为系统建立商业案例并确定项目的边界。初始阶段结束时是第一个重要的里程碑:生命周期目标(Lifecycle Objective) 里程碑。生命周期目标里程碑评价项目基本的生存能力。

  1. 细化阶段:细化阶段的目标是分析问题领域,建立健全的体系结构基础,编制项目计划,淘汰项目中最高风险的元素。细化阶段结束时第二个重要的里程碑:生命周期结构(Lifecycle Architecture)里程碑。生命周期结构里程碑为系统的结构建立了管理基准并使项目小组能够在构建阶段中进行衡量。

  2. 构造阶段:在构建阶段,所有剩余的构件和应用程序功能被开发并集成为产品,所有的功能被详细测试。构建阶段结束时是第三个重要的里程碑:初始功能(Initial Operational)里程碑。初始功能里程碑决定了产品是否可以在测试环境中进行部署。此刻,要确定软件、环境、用户是否可以开始系统的运作。

  3. 交付阶段:交付阶段的重点是确保软件对最终用户是可用的。在交付阶段的终点是第四个里程碑:产品发布(Product Release)里程碑。此时,要确定目标是否实现,是否应该开始另一个开发周期。在一些情况下这个里程碑可能与下一个周期的初始阶段的结束重合。

  • IT 项目管理中,“工期、质量、范围/内容” 三个元素中,在合同固定条件下,为什么说“范围/内容”是项目团队是易于控制的?

    ​ 原因如下:IT项目中,工期是由客户与团队早已在合同中协商好的,不能随意更改。质量是在合同中客户对团队定下一定要求的,也不能随意更改。为了更好地完成项目,在合适地条件下, 团队应适当改变范围/内容,以更好地适应需求变更,这一方面是易于团队控制的。

  • 为什么说,UP 为企业按固定节奏生产、固定周期发布软件产品提供了依据?

    ​ UP的软件生命周期从时间上分为四个阶段,每个阶段包括一个主要的里程碑。阶段是两个主要里程碑的分隔,在各个阶段结束时,执行评估阶段目标是否满足以决定是否进入下一个阶段。因此UP为企业按固定节奏生产提供了依据。


Part II

项目管理使用

  • 使用截图工具(png格式输出),展现你团队的任务 Kanban,请注意以下要求
    • 每个人的任务是明确的。即一周后可以看到具体成果
    • 每个人的任务是1-2项。
    • 至少包含一个团队活动任务