版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第3章IT软件项目的生命周期2022/7/29第3章IT软件项目的生命周期第1页,共45页。3.1 IT软件项目生命周期的划分1.软件项目生命周期的概念 任何软件的开发都要经历一个“生命周期”,从软件的调研开始到淘汰的全过程,从项目批准到交付的过程。一般将项目分为以下4个阶段:识别需求、提出解决方案、执行项目、结束项目第3章IT软件项目的生命周期第2页,共45页。1.软件项目生命周期的概念对于典型的IT软件项目,项目的生命周期可以从不同的角度认识。从项目承担方看:项目是从接到合同正式开始的,到完成规定工作结束;从客户的角度看:项目是从确认有需求开始,到使用项目的成果实现商务目标结束。无论从哪个
2、角度分析,软件项目的生命周期都包括识别、设计、实施和评估4个阶段。典型软件项目开发的生命周期如图3.1所示。第3章IT软件项目的生命周期第3页,共45页。2.典型软件项目开发的生命周期图3.1 典型软件项目开发的生命周期初步需求子系统需求分析概念设计逻辑设计开发概念原型第一次开发风险分析开发结果评估识别设计实施评估系统配置、运行、产品成型系统需求分析物理设计第二次开发开发结果评估整体需求最终设计最终开发测试第3章IT软件项目的生命周期第4页,共45页。3.瀑布模型瀑布模型是美国Winston Royce向IEEE WESCON(Royce, Winston 1970)提交的一篇名为管理大规模软
3、件系统的开发(Managing the Development of Large Software Systems)的论文中首次提出的。这种方法是从一个阶段成瀑布流入下一个阶段,所以这个模型就称为“瀑布模型”。第3章IT软件项目的生命周期第5页,共45页。软件开发瀑布模型及不同阶段之间的交互图3.2 软件开发瀑布模型及不同阶段之间的交互需求分析与定义系统设计与软件设计系统实施与单元测试系统集成与系统测试系统运行与系统维护第3章IT软件项目的生命周期第6页,共45页。(1)纯瀑布模型软件概念需求分析初步设计编码和调试详细设计系统测试软件概念:用户提出对软件的开发与初步需求;详细设计:编码和调试:
4、选择合适的计算机语言,完成详细设计中的各个模块的编码并调试;初步设计:将用户需求分解成硬件与软件需求,并建立系统的整体结构模型;需求分析:开发者与用户交流,确定系统的目标、服务与约束;将初步设计的整体结构继续分解为可实施编码的小模块,并完成流程图;系统测试:测试系统的各部分是否满足需求。第3章IT软件项目的生命周期第7页,共45页。(2)改进的纯瀑布模型-生鱼片模型软件概念需求分析初步设计详细设计编码和调试系统测试主要缺点:因为阶段重叠,里程碑非常不明确,很难精确地进行过程跟踪;并行地执行活动可能导致无效的沟通、错误的想法以及低下的效率。 “生鱼片模型”,是将模型中的连续的各阶段相互有较大幅度
5、的重叠。例如,在需求分析完成之前可以进行初步设计和详细设计。 主要优点:在项目比较小且定义得很好时,可以有效地减少文档的产生。是比较有效的模型。 第3章IT软件项目的生命周期第8页,共45页。(2)改进的纯瀑布模型-具有子系统的瀑布模型软件概念需求分析初步设计详细设计子系统设计编码和调试详细设计子系统设计编码和调试详细设计子系统设计编码和调试系统测试初步设计中将系统分成几个逻辑上相对独立的子系统,每一个子系统都采用相对独立的方法进行设计,形成了具有子系统的 瀑布模型。图中,初步设计阶段将系统分成3个相对、独立的子系统,各子系统分别独立进行详细设计、编码和调试及子系统设计,最后统一进行系统测试。
6、第3章IT软件项目的生命周期第9页,共45页。Boehm给出的一些成本数据系统类型阶段成本(%)需求/设计实施测试控制系统卫星系统操作系统科学系统商务系统463433444420201726283446503028从表中我们能看出什么特点?第3章IT软件项目的生命周期第10页,共45页。4.原型模型原型(Prototype)法是在20世纪80年代初,在总结和归纳结构化分析与设计方法开发软件项目的基础上,改进结构化系统分析与设计的过于繁琐、开发周期长、见效慢等缺点,借助第4代程序开发语言而产生的一种项目开发方法。这种方法是借助先进的软件开发工具根据用户提出的软件需求定义,快速建立一个软件系统的“
7、原型”,向用户展示待开发软件的全部或部分功能,在征求用户对原型软件的意见后,反复进行修改、完善、提高和确认,最终实现项目的目标。第3章IT软件项目的生命周期第11页,共45页。(1)渐进原型模型图用户提出系统要求识别归纳用户需求快速建立开发原型修改模型重新设计或选择模型评价模型确定模型,完成并交付模型满意模型不满意模型不可行渐进原型模型是从软件开发系统概念开始,根据软件需求定义,快速建立一个软件系统“原型”的生命周期模型。第3章IT软件项目的生命周期第12页,共45页。(2)渐进原型模型的基本过程原型建立通常是软件从最显著的方面开始,向用户展示待开发系统的全部或者部分功能(通常是完成的部分);
8、然后根据用户对原型的反馈信息,反复进行修改、完善、提高和确认,直到开发者和用户都认为原型已经“足够好”;最终实现项目目标,完成结尾工作,交付作为最终产品的原型。 第3章IT软件项目的生命周期第13页,共45页。(3)渐进原型模型的特点直观、形象,更多地遵循了人们认识事物的规律,因而更容易被人们接受。采用模拟的手段,缩短了用户和系统分析、设计人员之间的距离。在整个系统开发过程中反馈是及时的,标准是统一的,可及时地暴露问题,确保系统实现的正确性。充分利用了新一代的软件工具,使得系统开发和运行的效率都大大提高。 第3章IT软件项目的生命周期第14页,共45页。(4)原型法的应用的软件支撑环境要有一个
9、方便灵活的关系数据系统。要有一套完整的程序生成软件。要有一个与数据库对应的、灵活方便的数据字典。有一个可以快速抽象或者能够容易提炼的原型。第3章IT软件项目的生命周期第15页,共45页。5.螺旋模型风险分析风险分析风险分析风险分析原型1原型2原型3可操作原型建模模拟评价软件需求需求确认操作概念需求计划开发计划软件产品设计设计确认与验证集成与测试计划详细设计编码单元测试集成测试验收测试实现确定下阶段目标、约束条件风险分析过程迭代开始开发、验证软件产品制定下阶段计划评审累计成本构造原型评价方案螺旋模型示意图第3章IT软件项目的生命周期第16页,共45页。(1)螺旋模型说明1988年Boehm提出“
10、基于风险”的螺旋模型螺旋模型主要由4个部分组成: 需求定义、风险分析、实现和评审螺旋模型是这4个部分组成的迭代模型,软件开发的过程每迭代一次,螺旋线就增加一周,系统产生一个新的版本,而软件开发的时间和成本又有新的投入。螺旋模型中的显著特点是在每个固定阶段对项目的风险进行评估。第3章IT软件项目的生命周期第17页,共45页。(2)螺旋模型的迭代每次迭代都包括以下六个步骤:(1)确定下一阶段的目标、方案的约束条件;(2)风险分析、评估及解决;(3)为该系统构造合适的原型;(4)评价方案;(5)开发、验证软件产品;(6)制定下一阶段计划,交付给下一步骤,开始新的迭代过程。第3章IT软件项目的生命周期
11、第18页,共45页。例1 质量螺旋模型(1)目标尽可能提高软件产品质量约束在三年内完成、没有大规模的投资、公司标准不会发生大的变化可选方案重用已经有的注册软件、引入正式的需求和合格证明、采用新的测试和检验工具风险提高质量可能会在很大程度上提高成本、新的方法可能会导致现有员工的流失风险解决办法详细调查、驾驭项目、对潜在重用组件的调查、对可得到的支持工具进行评价、对员工培训和激励进行研究第3章IT软件项目的生命周期第19页,共45页。例1 质量螺旋模型(2)目标尽可能提高软件产品质量后果对正规方法、经验的限制难以提高软件质量公司可得到的工具支持是有限的可得到能重用的组件,但几乎没有可重用的工具支持
12、计划更详细的调查重用方案开发支持工具原型探索组件合格计划行动投资将来12个月开发第3章IT软件项目的生命周期第20页,共45页。例2 软件产品螺旋模型(1)目标获得软件产品约束在一年内完成必须支持现在软件产品的类型总成本要低于¥1000 000可选方案购买现存的信息恢复软件购买数据库并且采用这种数据库的查询语言开发软件产品开发一个特殊目的的软件产品风险在约束条件内可能获得不了这些软件产品软件产品功能可能不合适第3章IT软件项目的生命周期第21页,共45页。例2 软件产品螺旋模型(2)目标获得软件产品风险解决办法用开发软件产品的原型来明确需求委托顾问调查现存信息恢复系统的情况放松时间限制后果信息
13、恢复系统灵活性(可移植性)差不能满足确认的需求采用DBMS开发的原型可能会提高整个系统特殊目的软件产品的开发成本可能会很高计划应用现有DBMS提高系统原型和用户接口,开发软件产品行动投资将来12个月开发第3章IT软件项目的生命周期第22页,共45页。6.编码修正模型使用编码修正模型,一般是从一个大致的想法开始工作,可能有一个正式的规范,也可能没有;然后结合使用一些无论如何都称不上规范的设计、编码、调试和测试方法,来完成产品开发。编码修正模型有两点好处:不需要什么成本。不需要在除了纯粹编码工作以外的项目规划、文档编制、质量保证、标准实施或任何其他活动中花费时间。它只需要极少的专业知识。第3章IT
14、软件项目的生命周期第23页,共45页。7.为项目选择最快速的生命周期(1)为项目选择最有效的生命周期模型,通常可以思考以下问题:(1)在项目开始的时候,开发者和用户对需求的理解是否充分?在项目进行过程中,对需求的理解有可能出现改变吗?(2)开发者对系统的整体框架的理解是否充分?是否有可能在项目进展过程中对系统框架进行重大改变?(3)可靠性需求有多大?(4)需要在项目中为未来的版本提前进行多少计划和设计?第3章IT软件项目的生命周期第24页,共45页。7.为项目选择最快速的生命周期(2)(5)项目要承受多大的风险?(6)是否被迫预先确定进度?(7)需要具备在进展过程中进行变更的能力吗?(8)需要
15、在项目整个进展过程中提供给用户可视的进展情况吗?(9)需要在项目整个进展过程中提供给管理者可视的进展情况吗?(10)需要多少经验和技巧来成功地使用这种生 命周期模型?第3章IT软件项目的生命周期第25页,共45页。3.2 IT软件项目生命周期中各阶段任务根据前面对IT软件项目各个主要模型生命周期的分析,可以将一般的软件项目开发过程详细划分为以下6个主要阶段:(如图3.6所示)项目开发准备阶段调查研究阶段项目分析阶段项目设计阶段项目实施阶段维护与评价阶段第3章IT软件项目的生命周期第26页,共45页。图3.6 软件项目的开发阶段供决策参考 提出可行性分析 修改意见项目咨询人员项目开发准备阶段调查
16、研究阶段项目分析阶段项目设计阶段项目实施阶段维护与评价阶段项目咨询人员项目专业管理人员项目专业管理人员软件设计人员软件设计人员操作人员 操作人员新的项目准备 第3章IT软件项目的生命周期第27页,共45页。1. 项目开发准备阶段当现行软件系统不满足业务需要时,公司领导层提出开发新软件系统的要求。公司管理咨询人员(或者负责信息化工作的人员)首先进行初步调查,确定是否进行立项,制定出新软件系统的开发计划。本阶段不属于项目的分析与设计,但确实是一个不可或缺的重要阶段,它往往对项目开发的成败起着至关重要的作用。如果项目开发采取外包的方式,本阶段还包括招标的过程。第3章IT软件项目的生命周期第28页,共
17、45页。2. 调查研究阶段本阶段需要采取各种各样的方式进行调查研究,搞清目前系统的界限、组织分工、业务流程、资源状况及薄弱环节,需要绘制现行项目的有关图表。在掌握充分资料的基础上,与用户或公司协商讨论,提出初步的系统目标和项目计划。针对用户的情况和要达到的目标进行新系统开发的可行性研究,并提交可行性研究报告。第3章IT软件项目的生命周期第29页,共45页。3. 项目分析阶段本阶段是新系统的逻辑设计阶段。管理人员和系统分析人员使用一系列的图表工具构造出独立于任何物理设计的系统逻辑模型,并与文字说明、图表、流程、规范等共同组成系统的逻辑说明书。本阶段需要对现行系统中不能适应新项目要求的部分进行处理
18、,必要时对企业的资产和业务流程及管理方式进行优化和重组。本阶段是新系统设计方案的优化过程。本阶段是各个阶段中的关键阶段。第3章IT软件项目的生命周期第30页,共45页。4. 项目设计阶段本阶段是新系统的物理设计阶段。根据新系统的逻辑模型进行物理模型的设计,具体地选择一个物理的计算机信息处理系统。要求具体地进行计算机过程和人工过程的各种详细设计,进行程序模块和处理过程(处理逻辑)的设计等。选择合理的硬件、软件,进行代码、输入界面、输出界面、文件、数据存储处理等。系统物理设计的关键是模块化。第3章IT软件项目的生命周期第31页,共45页。5. 项目实施阶段本阶段是新系统调试运行阶段。对操作人员进行
19、培训,编制系统设计文档、使用手册和有关说明书。程序员对程序进行集成和调试。进行各种文件和数据库的建立,需要大量人力投入到数据收集、整理和录入工作中。本阶段的工作是十分艰巨的。本阶段投入的人力、物力、财力最多,花费时间最长,工作量最大。第3章IT软件项目的生命周期第32页,共45页。6. 维护与评价阶段本阶段是新系统调试后到投入运行之间的修改、完善、验证的阶段。本阶段完成的工作主要有:系统的处理逻辑、程序、文件、数据等的修改。评价系统的优劣,主要是指系统的工作质量和经济效益。如:输出信息的准确性、系统的可靠性和运行质量、系统的开发费用、使用维护费用、经济效益、工作效率的提高和服务质量的改善等。第
20、3章IT软件项目的生命周期第33页,共45页。3.3 IT软件项目生命周期中的重要概念检查点:是指在规定的时间间隔内对项目进行的检查与复审工作,它是通过比较实际进展与计划进度之间的差异,并根据这个差异来进行调整的。里程碑:完成阶段性工作的标志,不同类型的项目里程碑不同。里程碑往往是一些重要活动的完工,或重要文档的交付,或阶段评审的通过。基线:指一个(或一组)配置项在项目生命周期的不同时间点上通过正式评审而进入正式受控的一种状态。基线是一些重要的里程碑,但相关交付产品要通过正式评审并作为后续工作的基准和出发点。第3章IT软件项目的生命周期第34页,共45页。3.4 IT软件项目管理里程碑在IT软
21、件项目的整个生命周期,通常有3种类型的检查点:主里程碑、小里程碑、状态评估里程碑是开发人员和其他项目管理人员必须经常达成和满足的目标,通常是以各阶段所完成的文档来体现,每个里程碑都是“二分性”的(“完成”和“没完成”两种状态)。对于IT软件项目来说,如果不能设置好的里程碑,并监控执行,项目就可能会失控,并使成本预算和进度都难以管理。第3章IT软件项目的生命周期第35页,共45页。1.主里程碑主里程碑是最重要的里程碑,它通常是指项目生命周期中的一些重要转折点,为项目提供战略目标。主里程碑可以看作是一个连续的过程,在这个过程中包括对不同因素的重新定义。主里程碑的设置是为了确保对需求的理解、对项目生
22、命周期的计划、对产品的形式、功能和质量等因素保持连贯性和可控制性。在IT软件项目的整个生命周期中,一般存在4个主里程碑,如下表所示。第3章IT软件项目的生命周期第36页,共45页。IT软件项目的主里程碑主里程碑所处阶段目 标下一阶段目标里程碑识别阶段末期向所有项目干系人提供一份如何开展项目的建议书,包括项目计划、成本和进度表以及期望的利润和效益等设计设计里程碑设计阶段末期向所有项目干系人提供一个经过论证的可执行的设计方案开发开发里程碑开发阶段末期评估软件的可读性和可用性,以便软件产品开始向客户/用户的转换测试产品版本里程碑评估阶段末期评价软件的完整性和软件对其所支持组织的转换第3章IT软件项目
23、的生命周期第37页,共45页。项目干系人所关注的问题重点对一般的IT软件项目而言,项目主要干系人有:客户:关心项目的可行性、对需求的理解、时间及成本的预算、风险的评估以及产品的质量特征等。使用者:关心系统使用权的连贯性及产品的质量特征等系统设计师:主要关心需求的变化,系统的完整性及连贯性,平衡并分析时间、风险、质量、成本之间的关系开发人员:关心是否有足够详细的需求说明和使用情况的描述,以及选择组件的结构、开发环境等。维护人员:关心新系统与现行系统的协同工作能力,良好的维护性能等。第3章IT软件项目的生命周期第38页,共45页。2.小里程碑小里程碑的形式和内容比较灵活,可以根据项目或组织的情况而变,主要为实现项目的目标提供战术方法。小里程碑需要通过项目的内容及周期长度来确定。设置小里程碑的主要目的是为了合理分配工作,细化管理的“粒度”。第3章IT软件项目的生命周期第39页,共45页。(1)使用小里程碑应遵循的原则在项目早期建立小里程碑。 让开发者建立自己的小里程碑。保持小里程碑的小型化特征。保持里程碑的二分性。制定一系列完整的里程碑。在短期计划(而不是长期计划)中应用小里程碑。第3章IT软件项目的生命周期第40页,共45页。(2)小里程碑与
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 主题商场装修合同
- 106合理利用机械能(原卷版)
- 建筑工程居间服务佣金协议
- 新鲜果蔬干线配送服务
- 城市环卫车辆租赁合同
- 区块链项目居间合同模板
- 健身房预制块配送协议
- 写字楼翻新拆除合同
- 历史建筑修缮贷款合同
- 保健品借款居间服务合同
- 质量事故处罚规定
- 固体废物资源化利用项目方案(范文)
- 新实用汉语课本第一册第五课课件
- 库房日常清洁卫生记录表
- 革兰氏阳性球菌、革兰氏阴性杆菌、革兰氏阳性杆菌鉴定程序流程图
- 河北省衡水市药品零售药店企业药房名单目录
- 中俄贸易中的知识产权保护探讨
- 《思想政治教育方法论》课件 2第七章课件 第七章《思想政治教育的基本途径与方法》
- 六年级上册数学课件-奥数之工程问题1人教版(共 22张ppt)
- 支气管镜精品课件
- 房屋建筑物构筑物检查表格
评论
0/150
提交评论