1、简答题
(1)简述瀑布模型、增量模型、螺旋模型(含原型方法)的优缺点。
瀑布模型
优点:
- 降低软件开发的复杂程度,提高软件开发过程的透明性,提高软件开发过程的可管理性
- 推迟软件实现,强调在软件实现前必须进行分析和设计工作
- 一项目的阶段评审和文档控制为手段有效地对整个开发过程进行指导,保证了阶段之间的正确衔接,能够及时发现并纠正开发过程中存在的缺陷,使产品达到预期的质量要求
缺点:
- 强调过程活动的线性顺序
- 缺乏灵活性,特别是无法理解软件需求不明确或不准确的问题
- 风险控制能力较弱
- 瀑布模型中的软件活动是文档驱动的,当阶段之间规定过多的文档时,会极大地增加系统的工作量
- 管理人员如果仅仅以文档的完成情况来评估项目完成进度,往往会产生错误的理论
增量模型
优点:
- 增强用户对系统的信心
- 降低系统失败风险
- 提高系统可靠性
- 提高系统的稳定性和可维护性
缺点:
- 增量粒度难以选择
- 确定所有的基本业务服务比较困难
螺旋模型(含原型方法)
优点
- 设计上的灵活性,可以在项目的各个阶段进行变更
- 以小的分段来构建大型系统,使成本计算变得简单容易
- 客户始终参与每个阶段的开发,保证了项目不偏离正确方向以及项目的可控性
- 随着项目推进,客户始终掌握项目的最新信息 , 从而能够和管理层有效地交互
- 客户认可这种公司内部的开发方式带来的良好的沟通和高质量的产品。
缺点
- 采用螺旋模型需要具有相当丰富的风险评估经验和专门知识,在风险较大的项目开发中,如果未能够及时标识风险,势必造成重大损失
- 过多的迭代次数会增加开发成本,延迟提交时间
- 建设周期长,而软件技术发展比较快,所以经常出现软件开发完毕后,和当前的技术水平有了较大的差距,无法满足当前用户需求
(2)简述UP的三大特点,其中哪些内容体现了用户驱动的开发,哪些内容体现风险驱动的开发?
- 迭代式的增量开发(用户驱动的开发)
- 将软件开发分为一系列小的迭代过程,在每个得带过程中逐步增加信息、进行细化
- 根据具体情况决定迭代的次数、每次迭代延续的时间以及迭代工作流
- 每次迭代都选择目前对风险影响最大的用例进行,以分解和降低风险
- 用例驱动(用户驱动的开发)
- 采用用例来捕获对目标系统的功能需求
- 采用用例来驱动软件的整个开发过程,保证需求的可跟踪性,确保系统所有功能均被实现
- 将用户关心的软件系统的业务功能实体功能模型和开发人员结合起来,提供一种贯穿整体软件生存周期的开发方式,使得软件开发的各个阶段的工作自然、一致地协调起来
- 以软件体系结构为中心(风险驱动的开发)
- 强调在开发过程的早期,识别出软件与软件的体系结构紧密相关的用例,并通过对这些用例的分析、设计、实现和测试,形成体系结构框架
- 在后续阶段中对已形成的体系结构框架进行不断细化,最终实现整体系统
(3)UP四个节点的划分准则是什么?关键的里程碑是什么?
每个阶段结束于一个主要的里程碑,并在阶段结尾执行一次评估以确定这个阶段的目标是否已经满足。如果评估结果令人满意的话,可以允许项目进入下一个阶段。
- 初始阶段
- 里程碑:生命周期目标里程碑,包括一些 重要的文档,如:项目构想 (Vision)、原始用例模型、原始业务 风险评估、一个或者多个原型、原始业务案例等。需要对这些 文档进行评审,以确定正确理解用例需求、项目风险评估合理、 阶段计划可行等。
- 精化阶段
- 里程碑:生命周期体系结构里程碑。包括风险分析文档、软件体系结构基线、项目计划、可执行的进 化原型、初始版本的用户手册等。通过评审确定软件体系结构 已经稳定、高风险的业务需求和技术机制已经解决、修订的项 目计划可行等。
- 构建阶段
- 里程碑:初始运行能力里程碑。 包括可以运行的软件产品、用户手册等,它决定了产品是否可 以在测试环境中进行部署。此刻,要确定软件、环境、用户是 否可以开始系统的运行。
- 产品化阶段/移交阶段
- 里程碑:产品发布里程碑。确定最终目标是否实现,是否应该开始产品下一个版本的另一个开发周期。在 一些情况下这个里程碑可能与下一个周期的初始阶段的相重合。
(4)IT项目管理中,“工期、质量、范围/内容”三个元素中,在合同固定条件下,为什么说“范围/内容”是项目团队是易于控制的?
工期、质量都是由客户决定的,已经在合同中固定下来,项目团队一般是不能控制的而范围/内容,是指交付具有规定特征和功能的产品或服务所必须完成的工作,它确定了完成的项目需要做些什么,不需要做些什么,这是团队项目易于控制的。
(5)为什么说,UP为企业按固定节奏生产、固定周期发布软件产品提供了依据?
- 短时间分区式是的迭代:2-6周,不鼓励时间推迟
- 小步骤工作,快速反馈和调整
- 每一次迭代都包括需求、设计、实施、部署和测试活动
- 在早期迭代中解决高风险和搞业务价值的问题,避免后期的时间拖延
- 不断地让用户参与迭代结果的评估,并及时获取反馈信息,以逐步阐明问题并引导项目进展
- 不断地验证质量,尽早、经常和实际地测试
由此,企业便能按照固定节奏生产,固定周期发布软件产品。
2、项目管理使用
- 使用截图工具(png格式输出),展现你团队的任务Kanban,请注意以下要求
- 每个人的任务是明确的,即一周后看到具体成果。
- 每个人的任务是1-2项;
- 至少包含一个团队活动任务。
前端团队任务Kanban:
后端团队任务Kanban:
每人每天完成任务及接下来目标记录Kanban: