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

瀑布模型

虽然瀑布模型仍然存在很多的问题有待解决,但瀑布模型仍然是最基本的和最效的一种可供选择的软件开发生命周期模型.瀑布模型要求软件开发严格按照需求->分析->设计->编码->测试的阶段进行,每一个阶段都可以定义明确的产出物和验证准则.瀑布模型在每一个阶段完成后都可以组织相关的评审和验证,只有在评审通过后才能够进入到下一个阶段.

  1. 瀑布模型的优点:仍然是可以保证整个软件产品较高的质量,保证缺陷能够提前的被发现和解决.采用瀑布模型可以保证系统在整体上的充分把握,使系统具备良好的扩展性和可维护性.但对于前期需求不明确,而又很难短时间明确清楚的项目则很难很好的利用瀑布模型.
  2. 瀑布模型的缺点:对于中小型项目,需求设计和开发人员在项目开始后就完全投入项目,这种情况会导致人力资源闲置,开发效率低下。而对于大型项目,需求设计往往是需要多次修改的,因此瀑布模型的严格要求令开发做了多次回归,哦那狗样开发效率低下。

增量模型

.假设现在要开发A,B,C,D四个大的业务功能,每个功能都需要开发两周的时间.则对于增量方法而言可以将四个功能分为两次增量来完成,第一个增量完成A,B功能,第二次增量完成C,D功能

  1. 增量模型的优点:在每次迭代增量的过程中仍然要遵循需求->设计->开发的瀑布过程。因此就对风险的消除上,增量模型可以很好的控制前期的风险并解决。
  2. 增量模型的缺点:
    • 由于各个构件是逐渐并入已有的软件体系结构中的,所以加入构件必须不破坏已构造好的系统部分,这需要软件具备开放式的体系结构。
    • 在开发过程中,需求的变化是不可避免的。增量模型的灵活性可以使其适应这种变化的能力大大优于瀑布模型和快速原型模型,但也很容易退化为边做边改模型,从而是软件过程的控制失去整体性。

螺旋模型

 首先螺旋模型是遵从瀑布模型的.即需求->架构->设计->开发->测试的路线.螺旋模型最大的价值在于整个开发过程是迭代和风险驱动的.通过将瀑布模型的多个阶段转化到多个迭代过程中,以减少项目的风险。原型方法在软件用户没有信息系统的使用经验,软件系统分析员也没有过多的需求分析和挖掘经验的时候,需求分析和调研过程则更需要是一个启发式的过程。此时,原型法就是一种很好的启发式方法。能够快速挖掘用户需求并达成需求上的一致。

螺旋模型的每一次迭代都包含了以下六个步骤

  • 决定目标,替代方案和约束
  • 识别和解决项目的风险
  • 评估技术方案和替代解决方案
  • 开发本次迭代的交付物和验证迭代产出的正确性.
  • 计划下一次迭代
  • 提交下一次迭代的步骤和方案.
  1. 螺旋模型的优点:随着项目成本投入不断增加,风险逐渐减小.以帮我我们加强项目的管理和跟踪,在每次迭代结束后都需要对产出物进行评估和验证,当发现无法继续进行下去时可以及早的终止项目.
  2. 螺旋模型的缺点:强调风险分析,但要求许多客户接受和相信这种分析,并做出相关反应是不容易的,因此,这种模型往往适应于内部的大规模软件开发;如果执行风险分析将大大影响项目的利润,那么进行风险分析毫无意义,因此,螺旋模型只适合于大规模软件项目; 软件开发人员应该擅长寻找可能的风险,准确地分析风险,否则将会带来更大的风险。

image

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

  1. 用例和风险驱动.UP 一般由UML方法和工具支持。用例是捕获需求的方法,因此,也可以说UP是用例(需求)驱动的。UP的另一个驱动就是风险,因为如果你不主动预测和防范风险,风险就会主动攻击你。UP需要对软件开发中的风险进行分析、预测并关注软件的构造。该特征体现了风险驱动的开发
  2. 以体系结构为核心.UP方法实际上就是开发和演进一个健壮的系统体系结构,体系结构描述了系统的整体框架:如何把系统划分成组件以及这些组件如何进行交互和部署在硬件上。组件使重用成为可能,系统可以由组件组成。基于独立的、可替换的、模块化组件的体系结构有助于管理复杂性,提高重用率。RUP描述了如何设计一个有弹性的、能适应变化的、易于理解的、有助于重用的软件体系结构
  3. 迭代及增量.Up迭代表示我们把项目分成小的子项目(迭代),它提供系统的功能块或者增量,最终产生完整的功能系统。每一次迭代都经历一次完整的软件生命周期,每一次迭代都有需求、分析、设计、实施,并以一个可执行版本结束。该特征体现了用户驱动的开发。

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

  1. Inception成立
  2. Elaboration发展(milestone里程碑)
  3. Construction构建(release)
  4. Transition过渡发布(final production)

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

在IT项目管理中三要素是:成本、质量、时间。在合同固定的条件下,工期是确定的,软件质量是用户要求的,可波动的范围也很小。而范围/内容是在需求设计时确定下来,并在软件生命周期中不停地更新,因此范围/内容可以在每个阶段都可以控制的。

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

UP(unified process) 统一过程将软件生产划分成几个阶段,这有利于企业按固定节奏生产、固定周期发布软件产品。

2、项目管理使用

image image image

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