系统分析与设计作业(三)
课程名称 | 系统分析与设计 | 任课老师 | 潘茂林老师 |
---|---|---|---|
学号 | 16340015 | 专业(方向) | 软件工程(计应) |
姓名 | 陈彬彬 | 944131226@qq.com | |
开始日期 | 2019/04/22 | 完成日期 | 2019/04/23 |
1.简述瀑布模型、增量模型、螺旋模型(含原型方法),并分析优缺点
从项目特点
、风险特征
、人力资源利用
角度思考 :
-
瀑布模型:瀑布模型是一个项目开发架构,开发过程是通过设计一系列阶段顺序展开的,从系统需求分析开始直到产品发布和维护,每个阶段都会产生循环反馈,项目开发进程从一个阶段“流动”到下一个阶段,所以被称作瀑布模型。
优点:
- 可以对每个阶段的结果进行分析,看到他们的结果,问题容易溯源。
- 有更多的文档和审核步骤,可以更加有力的把控整个给开发的各个阶段
缺点:
- 过于强调过程的顺序,不够灵活,无法解决软件需求不明确的问题,风险控制能力比较的弱。
- 过多的文档和审查,耗费人力资源,浪费时间进行重复性审核操作
-
增量模型:增量模型是把待开发的软件系统模块化,将每个模块作为一个增量组件,从而分批次地分析、设计、编码和测试这些增量组件。运用增量模型的软件开发过程是递增式的过程,首先要对系统最核心或最清晰的需求进行分析、设计、实现、测试并集成到系统中,再按优先级逐步实现后续需求。
优点:
- 在分批次提交的过程中提高用户对系统的信心
- 有利于把控风险,解决部分软件需求不明确的问题
- 提高系统可靠性,降低系统失败的风险
缺点:
- 最初的软件基础设计要求高,对人力资源的质量需求会很高
- 增量粒度难以评估
-
螺旋模型(含原型方法):螺旋模型是一种演化软件开发过程模型,它兼顾了快速原型的迭代的特征以及瀑布模型的系统化与严格监控,最大的特点是引入了明确的风险管理机制,尤其适用于大规模复杂的系统。
优点:
- 引入了风险分析,使得软件在无法排除重大风险时能够停止,减少损失
- 风险管理是该模型的内置特性之一,与其他模型相比,它更具吸引力 ,在迭代阶段构造原型使得螺旋模型可以减少风险
- 随着项目的推进和螺旋式循环的完成,项目在进度、成本等方面的估算变得越来越现实
缺点:
- 建设周期长,可能在途中技术,需求发生很大的变化,可能难以控制
- 这种模式的成本通常很高。如果遵循此开发过程,则很难满足预算和进度要求
2. 简述统一过程三大特点,与面向对象的方法有什么关系?
统一过程的三大特点为:
- 软件开发是一个迭代和增量的过程
- 软件开发是由Use Case用例驱动的
- 软件开发是以架构设计为中心的
统一软件开发过程,是一个面向对象且基于网络的程序开发方法论。而面向对象软件过程同样是把开发中面向过程的方面和其他开发的组件整合在一个统一的框架中。而面向对象的方法则属于这些方法论框架当中处理部分对象的方法。
3.简述统一过程四个阶段的划分准则是什么?每个阶段关键的里程碑是什么?
划分标准:
软件生命周期在时间维度上被分解为4个顺序的阶段,每个阶段结束于一个主要的里程碑,并在阶段结尾执行一次评估以确定这个阶段的目标是否已经满足。
关键里程碑:
-
初始阶段
生命周期目标里程碑。生命周期目标里程碑评价项目基本的生存能力,包括一些重要的文档,如:项目构想、原始用例模型、原始业务风险评估、原始业务案例等。
-
精化阶段
生命周期体系结构里程碑。为系统的结构建立了管理基准并使项目小组能够在构建阶段中进行衡量。,包括风险分析文档、软件体系结构基线、项目计划、可执行的进化原型、初始版本的用户手册等。
-
构建阶段
初始运行能力里程碑。决定了产品是否可以在测试环境中进行部署,包括可以运行的软件产品、用户手册等。
-
产品交付阶段
产品发布里程碑。确定最终目标是否实现,是否应该开始产品下一个版本的另一个开发周期。在一些情况下这个里程碑可能与下一个周期的初始阶段相重合。
4.软件企业为什么能按固定节奏生产、固定周期发布软件产品?它给企业项目管理带来哪些好处?
原因:
因为软件企业使用统一过程,而统一过程也是一个迭代、增量过程,被分解为四个顺序的阶段:初始阶段、精化阶段、构建阶段和产品交付阶段,可以对于业务和用力进行设计、实现和细化,使企业能有一个固定的节奏来生产,有效地控制软件生产发布的节奏。
好处:
- 每个迭代产品在增量,有利于产品的及时交付使用并获得用户客户的反馈
- 固定的迭代周期,有利于量化团队和个人的生产率
- 降低了产品无法按照既定进度进入市场的风险,提高了风险控制能力