1、简答题

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

  • 瀑布模型
    包括六个衔接阶段:制定计划、需求分析、软件设计、程序编写、软件测试、运行维护

    • 优点
      1)为项目提供按阶段划分的检查点
      2)当前一阶段完成后,只需要去关注后续阶段
      3)可在迭代模型中应用瀑布模型
      4)一切都有完整细致的说明,最后的测试对象很明确
    • 缺点
      1)开发过程不能逆转,无法回溯
      2)各阶段之间没有交叉,是分立的,极少有反馈
      3)非常强调产品的定义,但是客户往往很难清楚地给出所有的需求,不能很好适应需求变化
      4)软件的实际情况和测试结果仅能在项目后期看到,可能导致准备发布产品才发现一些早期的根本性问题
  • 增量模型
    将待开发的软件系统模块化和组件化,分批次开发。

    • 优点
      1)将待开发的软件系统模块化,可以分批次地提交软件产品,使用户可以及时了解软件项目的进展。
      2)以组件为单位进行开发降低了软件开发的风险。一个开发周期内的错误不会影响到整个软件系统。
      3)开发顺序灵活。开发人员可以对组件的实现顺序进行优先级排序,先完成需求稳定的核心组件。当组件的优先级发生变化时,还能及时地对实现顺序进行调整。
    • 缺点
      1)很容易退化为边做边改模型,从而是软件过程的控制失去整体性
      2)后续加入的组件必须不破坏已构造好的系统部分,这需要软件具备开放式的体系结构
      3)并行开发组件有可能遇到不能集成的风险
  • 螺旋模型
    确定目标和可选方案和限制条件→明确并化解风险→评估可选方案→当前阶段开发测试→对下一阶段进行计划与部署

    • 优点
      1)通过原型的创建,使软件开发在每个迭代的最初明确方向
      2)通过风险分析,最大程度地降低软件彻底失败造成损失的可能性
      3)在每个迭代阶段植入软件测试,使每个阶段的质量得到保证
      4)整体过程具备很高的灵活性,在开发过程的任何阶段自由应对变化
      5)每个迭代阶段累计开发成本,使支出状况容易掌握
      6)通过对用户反馈的采集,与用户沟通,以保证用户需求的最大实现
    • 缺点
      1)过分依赖风险分析经验与技术,一旦在风险分析过程中出现偏差将造成重大损失
      2)过于灵活的开发过程不利于已经签署合同的客户与开发者之间的协调
      3)过多的迭代次数会增加开发成本,延迟提交时间

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

  • 用例驱动:用例驱动意味着开发团队使用通过代码和测试收集需求的用例。这体现了用户驱动的开发。
  • 以构架为中心:构架刻画了系统的整体设计,去掉了细节部分,突出了系统的重要特性,提供系统的“蓝图”,提供发展的组织框架,通过关注系统的可修改性质量来发展系统,促进重用
  • 迭代和增量:以选定的构架为向导,用构件来实现设计前期已经标识并详细描述好的有关用例。迭代和进化的方法允许用不完整的,不完善的知识开始开发。这体现了风险驱动的开发。

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

  • 初始阶段
    • 大体上的构想、业务案例、项目的范围和模糊评估。
    • 初始阶段结束时是第一个重要的里程碑:生命周期目标(Lifecycle Objective)里程碑。生命周期目标里程碑评价项目基本的生存能力。
  • 细化阶段
    • 包括用户沟通和建模活动,重点是创建分析和设计模型,强调类的定义和体系结构的表示。
    • 细化阶段结束时第二个重要的里程碑:生命周期结构(Lifecycle Architecture)里程碑。生命周期结构里程碑为系统的结构建立了管理基准并使项目小组能够在构建阶段中进行衡量。此刻,要检验详细的系统目标和范围、结构的选择以及主要风险的解决方案。
  • 构造阶段
    • 将设计转化为实现,并进行集成和测试。
    • 构建阶段结束时是第三个重要的里程碑:初始功能(Initial Operational)里程碑。初始功能里程碑决定了产品是否可以在测试环境中进行部署。此刻,要确定软件、环境、用户是否可以开始系统的运作。此时的产品版本也常被称为“beta”版。
  • 交付阶段
    • 将产品发布给用户进行测试评价,并收集用户的意见,之后再次进行迭代修改产品使之完善。
    • 在交付阶段的终点是第四个里程碑:产品发布(Product Release)里程碑。此时,要确定目标是否实现,是否应该开始另一个开发周期。在一些情况下这个里程碑可能与下一个周期的初始阶段的结束重合。

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

因为在合同固定条件下,工期是规定好的,质量需要用户的参与来把关,范围/内容可根据软件开发过程中的实际情况稍加修改、完善。

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

首先UP对初始、细化、构造、交付四个阶段都是有规定时限、有节奏的;其次每个阶段可以进一步分解为迭代,一个迭代是一个完整的开发循环,产生一个可执行的产品版本,每次迭代都有一个固定的时间限制(例如四个星期),称为”时间盒”,每次迭代结束的时候都发布一个稳定的小版本,该版本是最终系统的子集。因此,UP为按固定节奏生产,固定周期发布产品提供了依据。

2、项目管理使用

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

相关文章: