软件工程方法学的三种模型
2016-09-10 08:45:23 0 举报
AI智能生成
软件测试的三种模型
作者其他创作
大纲/内容
瀑布模型
历史发展
1970年温斯顿·罗伊斯(Winston Royce)
步骤
构思
分析
设计
开发
测试
优点
为项目提供了按阶段划分的检查点
当前一阶段完成后,您只需要去关注后续阶段。
可在迭代模型中应用瀑布模型。
它提供了一个模板,这个模板使得分析、设计、编码、测试和支持的方法可以在该模板下有一个共同的指导。
缺点
各个阶段的划分完全固定,阶段之间产生大量的文档,极大地增加了工作量。
由于开发模型是线性的,用户只有等到整个过程的末期才能见到开发成果,从而增加了开发风险。
通过过多的强制完成日期和里程碑来跟踪各个项目阶段。
瀑布模型的突出缺点是不适应用户需求的变化。
淘汰的原因
各个阶段的划分完全固定,阶段之间产生大量的文档,极大地增加了工作量。
由于开发模型是线性的,用户只有等到整个过程的末期才能见到开发成果,从而增加了开发的风险。
早期的错误可能要等到开发后期的测试阶段才能发现,进而带来严重的后果。
统一过程
简介
RUP(Rational Unified Process,统一软件开发过程,统一软件过程)是一个面向对象且基于网络的程序开发方法论。
六大经验
迭代式开发
管理需求
体系结构
可视化建模
验证软件质量
控制软件变更
开发过程
横轴
定义
通过时间组织,是过程展开的生命周期特征,体现开发过程的动态结构
术语
周期(Cycle)
阶段(Phase)
迭代 (Iteration)
里程碑(Milestone)
纵轴
定义
以内容来组织为自然的逻辑活动,体现开发过程的静态结构
术语
活动 (Activity)
产物(Artifact)
工作者(Worker)
工作流(Workflow)
RUP裁剪过程
确定本项目需要哪些工作流。RUP的9个核心工作流并不总是需要的,可以取舍。
确定每个工作流需要哪些制品。
确定4个阶段之间如何演进。确定阶段间演进要以风险控制为原则,决定每个阶段要那些工作流,每个工作流执行到什么程度,制品有那些,每个制品完成到什么程度。
确定每个阶段内的迭代计划。规划RUP的4个阶段中每次迭代开发的内容。
规划工作流内部结构。工作流涉及角色、活动及制品,他的复杂程度与项目规模即角色多少有关。最后规划工作流的内部结构,通常用活动图的形式给出。
各个阶段
初始阶段
细化阶段
构造阶段
交付阶段
核心工作流
商业建模(Business Modeling)
需求(Requirements)
分析和设计(Analysis & Design)
实现(Implementation)
测试(Test)
部署(Deployment)
配置和变更管理(Configuration & Change Management)
项目管理(Project Management)
环境(Environment)
十大要素
开发前景
达成计划
标识和减小风险
分配和跟踪任务
检查商业理由
设计组件构架
对产品进行增量式的构建和测试
验证和评价结果
管理和控制变化
提供用户支持
敏捷过程
作用
可以标准化你的工作,提高软件的可重用性和Team间的协作;
我们所采用的这种机制本身是不断提高的,我们可以跟上潮流,使自己不断接收新的、最好的软件开发经验;
有效的软件过程可以改善我们对软件的维护:
有效地定义如何管理需求变更,在未来的版本中恰当分配变更部分,使之平滑过渡;
首先在具体操作和相关支持中定义如何平滑地改造软件,并且这种具体操作和支持是可实施的;不可实施的软件过程将很快被束之高阁;
理解软件开发的基本原则,可以帮我们做出明智的决定;
成熟等级
初始级
可重复级
定义级
定量管理级
优化级
配置管理
偏差(Deviation)
同业复审(Peer Review)
风险管理(Risk Management)
软件工程过程组(Software Engineering Process Group)
软件生命周期(Software Life Cycle)
软件需求(Software Requirement)
0 条评论
下一页