- 1、本文档共39页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件开发生命周期讲述
软件开发生命周期
议 程
软件开发过程
软件开发生命周期模型
RUP/XP的初步理解
软件开发过程
业务建模
需求
分析
设计
构建
测试
部署
业务建模的目的
了解客户组织的结构及运转机制
了解客户组织中当前存在的问题并确定改进的可能性?
业务流程重组
确保客户、最终用户和开发人员就目标组织达成共识
导出支持目标组织所需的系统需求
需求
成果
组织结构视图 概述业务中的关键角色和职责以及他们的分组情况。
业务流程视图 包括业务的关键业务流程并对其进行概述,这些流程是业务存在的原因。?
什么是需求
需求是指系统必须符合的条件或具备的功能
功能性:系统无需考虑物理约束而必须能够执行的动作
非功能性
可用性
可靠性
性能
实施需求
接口需求
……
需求收集
客户访谈
问卷调查
……
成果:描述性的文档
系统分析
构架分析
用例分析
确定设计元素
确定设计机制
描述运行时构架
描述分布
目标:搞清楚做什么?
成果:需求规格说明书及相关分析文档
系统设计
用例设计
子系统设计
类设计
数据库设计
目标:解决的问题是该如何做?
成果:设计说明书及相关设计文档
构建(实现)
用具体的编程语言去实现设计思想,满足客户的需求
成果:代码及文档等等
测试
依据需求规格说明书验证是否满足客户的需求。
成果:测试报告
部署
在生产环境中实施系统,使之正常运转
成果:可以正常运转的系统
维护
维持正常运行
纠错
改进
CONCEPTION
INITIATION
ANALYSIS
DESIGN
CONSTRUCTION
软件开发生命周期模型
瀑布模型
原型模型
渐进模型
快速应用开发 (RAD) 模型
螺旋模型
瀑布模型
瀑布模型也称为线性顺序模型或典型的生命周期模型
在阶段中每个阶段都有开始点和结束点,且从一个阶段到下一个阶段都有明确的递交物
这种模型对于需求一开始就定义很明确和以后只有次要变动的情形来说,是理想的模型。
多数软件系统是动态的—随着用户的增多他们需要不断地变动。因此,这种模型可证明是低效的。
瀑布模型
原型模型
产品的第一版是试验性的
这种试验的主要目的是评估此产品的可行性和验证需求
这种产品的‘第一版’称为原型
抛弃此产品,在更为扎实的基础上开始真正的开发
原型法最适合用户不能精确地表述他或她的需求
原型模型
原型法和瀑布模型的结构化技术可以结合起来使用
在向软件工程师提供了足够的关于用户的确切需求反馈之前,使用原型法。
然后第二个版本按照瀑布模型开发
过程模型的结合
渐进模型
渐进模型把原型法和瀑布模型结合起来
其开发阶段是由可运行的软件产品的扩展增量组成的模型。
分析增量的需求
然后分别设计、编码、测试、集成每个增量,并提交给客户
然后第二个版本按照瀑布模型开发
快速应用开发模型是一个线性过程模型
使用基于构件的系统,如面向对象系统
在开发中通常同时涉及到不止一个开发组
每个组都独立地遵顺RAD过程
RAD 模型有以下五各阶段:
业务建模
数据建模
快速应用开发模型 (RAD)
过程建模
应用生成
测试和调整
组3
组1
组2
快速应用开发模型 (RAD)
对于开发时间很短的应用开发来说, RAD模型时合适的
用自动化工具来生成代码
也可用第四代工具或在RAD模型中使用面向对象语言,因为构件可被重用
RAD模型需要比其他模型更多的人力资源,不论开发者还是客户都需要介入到RAD中快速的跟踪活动
快速应用开发模型 (RAD)
螺线模型
螺线模型是加入了风险控制的渐进模型。
螺线模型是由分析、设计、实现和测试4个部分组成的迭代模型,每一个周期都是一次迭代过程。每迭代一次,系统就生成一个新版本,软件开发就前进一个层次。
螺线模型提供了大型软件设计的宏观过程,在早期就注意到软件重用、软件进化和快速原型
这个模型使管理转向强调风险评估和风险消除
对于十分复杂和风险很大的项目,此模型可以有效地实现
螺线模型
现代的软件开发过程理论
RUP(统一软件过程)
XP(极限编程过程)
微软的里程碑方式
印度和美国中小型软件企业的CMM
中国的软件作坊
软件生命周期(开发周期)
先启
主要目标:
建立项目的软件规模和边界条件,包括运作前景、验收标准以及希望产品中包括和不包括的内容
识别系统的关键用例
对比一些主要场景,展示备选构架
评估整个项目的总体成本和进度
评估潜在的风险(各种不可预测因素)
准备项目的支持环境
精化
主要目标
确保构架、需求和计划足够稳定,充分减少风险,从而能够有预见性地确定完成开发所需的成本和进度
处理在构架方面具有重要意义的所有项目风险
建立一个已确定基线的构架
制作产品质量构件的演进式原型
证明已建立基线的构架将在适当时间、以合理的成本支持系统需求
建立支持环境(创建开发案例、创建模板和指南、安
文档评论(0)