本文主要是介绍系分作业2,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1、简答题
简述瀑布模型、增量模型、螺旋模型(含原型方法)的优缺点。
瀑布模型
优点:
1)为项目提供了按阶段划分的检 查点。
2)当前一阶段完成后,您只需要去关注后续阶段。
3)可在迭代模型中应用瀑布模型。增量迭代应用于瀑布模型。迭代1解决最大的问题。每次迭代产生一个可运行的版本,同时增加更多的功能。每次迭代必须经过质量和集成测试。
4)它提供了一个模板,这个模板使得分析、设计、编码、测试和支持的方法可以在该模板下有一个共同的指导。
缺点:
1)各个阶段的划分完全固定,阶段之间产生大量的文档,极大地增加了工作量。
2)由于开发模型是线性的,用户只有等到整个过程的末期才能见到开发成果,从而增加了开发风险。
3)通过过多的强制完成日期和里程碑来跟踪各个项目阶段。
4)不适应用户需求的变化。
增量模型
优点:
整个项目的资金不会被提前消耗,因为首先开发和交付了主要功能和高风险功能。
每个增量交付一个可操作的产品。
每次增量交付过程中获取的经验,有利于后面的改进,客户也有机会对建立好的模型作出反应。
采用连续增量的方式,可把用户经验融入到细化的产品,这比完全重新开发要便宜得多。
“分而治之”的策略,使问题分解成可管理的小部分,避免开发团队由于长时间的需求任务而感到泪丧。
通过同一个团队的工作来交付每个增量,保持所有团队处于工作状态,减少了员工的工作量,工作分布曲线通过项目中的时间阶段被拉平。
便于根据市场作出反应。
降低了失败和更改需求的风险。
更易于控制用户需求,因为每次开发的时间很短。
由于不是一步跳到未来,所以用户能逐步适应新技术。
切实的项目进展,有利于进度控制。
风险分布到几个更小的增量中,而不是集中于一个大型开发中。
由于用户能够从早期的增量中了解系统,所以更加理解后面增量中的需求。
缺点:
要求待开发的软件系统可以被模块化。
螺旋模型
优点:
1)设计上的灵活性,可以在项目的各个阶段进行变更
2)以小的分段来构建大型系统,使成本计算变得简单容易。
3)客户始终参与每个阶段的开发,保证了项目不偏离正确方向以及项目的可控性。
4)随着项目推进,客户始终掌握项目的最新信息 , 从而他或她能够和管理层有效地交互。
5)客户认可这种公司内部的开发方式带来的良好的沟通和高质量的产品。
缺点:
- 很难让用户确信这种演化方法的结果是可以控制的。
- 建设周期长,而软件技术发展比较快,所以经常出现软件开发完毕后,和当前的技术水平有了较大的差距,无法满足当前用户需求。
简述 UP 的三大特点,其中哪些内容体现了用户驱动的开发,哪些内容体现风险驱动的开发?
三大特点:
- 用例和风险驱动: UP 一般由UML方法和工具支持。用例是捕获需求的方法,因此,也可以说UP是用例(需求)驱动的。UP的另一个驱动就是风险,因为如果你不主动预测和防范风险,风险就会主动攻击你。UP需要对软件开发中的风险进行分析、预测并关注软件的构造。
- 以体系结构为核心:UP方法实际上就是开发和演进一个健壮的系统体系结构,体系结构描述了系统的整体框架:如何把系统划分成组件以及这些组件如何进行交互和部署在硬件上。组件使重用成为可能,系统可以由组件组成。基于独立的、可替换的、模块化组件的体系结构有助于管理复杂性,提高重用率。
- 迭代和增量:整个开发工作被组织为一系列的短小的、固定长度(如3周)的小项目,被称为一系列的迭代。每一次迭代都包括了需求分析、设计、实现与测试。 每次迭代都选择目前对风险影响最大的用例进行,以分解和降低风险。
用户驱动开发:
用例(需求)驱动。
风险驱动开发
每次迭代都选择目前对风险影响最大的用例进行,以分解和降低风险。
UP 四个阶段的划分准则是什么?关键的里程碑是什么?
- 先启阶段(inception):该阶段的主要目的是建立项目的范围和版本,确定项目目标的可行性和稳定性,结交结果包括需求和用例。【生命周期目标 (Lifecycle Objective) 里程碑】
- 精化阶段(elaboration):该阶段的目的是对问题域进行分析,建立系统需求和架构,确定实现的可行性和稳定性,提交结果包括系统架构,问题领域、修改后的需求及项目开发计划等相关文档。【生命周期体系结构 (Lifecycle Architecture) 里程碑】
- 构建阶段(construction):增量式开发可以交付给用户的软件产品【初始运行能力 (Initial Operational Capability) 里程碑】
- 提交阶段(transition):目的是将软件产品交付给用户【产品发布 (Product Release) 里程碑】
IT 项目管理中,“工期、质量、范围/内容” 三个元素中,在合同固定条件下,为什么说“范围/内容”是项目团队是易于控制的?
对于范围/内容,指为了实现项目目标必须完成的所有工作。 工作范围根据项目目标分解得到,它指出了“完成哪些工作就可以达到项目的目标”,或者说 “完成哪些工作项目就可以结束了”。后一点非常重要,如果没有工作范围的定义,项目就可能永远做不完。要严格控制工作范围的变化,一旦失控就会出现“出力 不讨好”的尴尬局面:一方面做了许多与实现目标无关的额外工作,另一方面却因额外工作影响了原定目标的实现,造成商业和声誉的双重损失。
为什么说UP 为企业按固定节奏生产、固定周期发布软件产品提供了依据?
UP是基于构件(Component-based)的,即所构造的软件系统是由软件构件通过明确定义的接口相互链接所建造起来的。组件使重用成为可能,系统可以由组件组成。基于独立的、可替换的、模块化组件的体系结构有助于管理复杂性,提高重用率。
2、项目管理使用
Tower看板截图:
这篇关于系分作业2的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!