软件项目管理_C2软件开发过程管理_第1页
软件项目管理_C2软件开发过程管理_第2页
软件项目管理_C2软件开发过程管理_第3页
软件项目管理_C2软件开发过程管理_第4页
软件项目管理_C2软件开发过程管理_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 第第 2 2 章章软件开发过程管理软件开发过程管理2问题问题n如果让你来组织一个软件项目的开发,你认如果让你来组织一个软件项目的开发,你认为首先你所关注的问题是什么?为首先你所关注的问题是什么?3案例角色和人物案例角色和人物小王:软件项目负责人小王:软件项目负责人老王:公司技术老总老王:公司技术老总开发小组开发小组:小李、老赵、小田、小谢小李、老赵、小田、小谢4n由于时间紧迫,小王需要马上展开软件项目的开由于时间紧迫,小王需要马上展开软件项目的开发工作,但是它现在面临一系列头痛的问题发工作,但是它现在面临一系列头痛的问题 软件项目的开发要做哪些方面的工作软件项目的开发要做哪些方面的工作 这些

2、工作应该按照什么样的次序开展进行?这些工作完这些工作应该按照什么样的次序开展进行?这些工作完成后将产生什么样的结果?按照什么样的规范来书写这成后将产生什么样的结果?按照什么样的规范来书写这些内容些内容 如何让员工知道要做哪些工作如何让员工知道要做哪些工作 尽管他学过软件工程,但在小王的头脑中没有一个清晰、尽管他学过软件工程,但在小王的头脑中没有一个清晰、系统的认识系统的认识 根据以往的经验,他认为需要去制订一个清晰、详细、根据以往的经验,他认为需要去制订一个清晰、详细、完整的软件开发过程完整的软件开发过程5n小王向老王寻求帮助,老王告诉小王公司以前从小王向老王寻求帮助,老王告诉小王公司以前从来

3、没有这些方面的记录,各个项目组都从零开始来没有这些方面的记录,各个项目组都从零开始制定自己的软件开发过程,但都没有形成文档制定自己的软件开发过程,但都没有形成文档n经过慎重考虑,小王向老王建议:经过慎重考虑,小王向老王建议: 项目组需要定义软件开发过程项目组需要定义软件开发过程 公司需要一个良定义、文档化的软件开发过程,以便于公司需要一个良定义、文档化的软件开发过程,以便于支持不同项目组的开发工作支持不同项目组的开发工作n老王同意小王的建议,并要求他制定和文档化一老王同意小王的建议,并要求他制定和文档化一个针对公司特点、并且能满足大部分软件项目需个针对公司特点、并且能满足大部分软件项目需求的软

4、件开发过程求的软件开发过程6n于是,小王只好找了一大堆的资料,带着许于是,小王只好找了一大堆的资料,带着许多疑问和困惑,考虑和制订项目开发的过程多疑问和困惑,考虑和制订项目开发的过程和活动。和活动。 什么是软件开发过程?什么是软件开发过程? 如何清晰、准确、规范地对它加以定义?如何清晰、准确、规范地对它加以定义? 如何根据公司的特点,制定软件开发过程?如何根据公司的特点,制定软件开发过程? 如何不断地改进软件开发过程?如何不断地改进软件开发过程? 如何根据项目的特点剪裁过程如何根据项目的特点剪裁过程 等等等等71.软件生命周期软件生命周期2.软件过程软件过程3.软件开发过程软件开发过程4.软件

5、开发过程模型软件开发过程模型5.软件开发过程存在的问题软件开发过程存在的问题6.软件开发过程管理软件开发过程管理8n软件生命周期软件生命周期 从设计软件产品开始到软件产品不能再使用为止的时间周期。n可分为以下子阶段可分为以下子阶段 1.需求阶段 2.设计阶段 3.实现阶段 4.测试阶段 5.安装和验收阶段 6.运行和维护阶段 7.引退阶段n包含的主要活动包含的主要活动 1.可行性分析 2.开发计划 3.需求分析 4.概要设计 5.详细设计 6.代码编写 7.软件测试与维护软件生命周期的提出是为了更好地管理软件开发的步骤和方法,软件生命周期的提出是为了更好地管理软件开发的步骤和方法,以及软件的维

6、护和升级。以及软件的维护和升级。91.软件生命周期软件生命周期2.软件过程软件过程3.软件开发过程软件开发过程4.软件开发过程模型软件开发过程模型5.软件开发过程存在的问题软件开发过程存在的问题6.软件开发过程管理软件开发过程管理10n针对一个给定目的地一系列操作步骤(IEEE-STD-610)n每个过程都有明确的目的以及具体的操作步骤,操作步骤说明了有哪些操作以及按照什么样的方式来执行操作11n什么是软件过程?什么是软件过程?软件过程是指软件生命周期中的一系列相关过程,是将用户需求转化为可执行系统的演化过程所进行的软件工程的全部活动,是用于生产软件产品的工具、方法和实践的集合。n软件过程的组

7、成软件过程的组成工程过程:软件系统或产品的定义、设计、实现以及维护过程。支持过程:起辅助作用的过程。管理过程:提供指导、跟踪和监控的过程。组织过程:用于建立组织商业目标和定义组织内部培训、开发活动和资 源使用等规则的过程。客户-供应商过程:直接影响到客户、对开发的支持、向客户交付软件以 及软件正确操作与使用的过程。121.软件生命周期软件生命周期2.软件过程软件过程3.软件开发过程软件开发过程4.软件开发过程模型软件开发过程模型5.软件开发过程存在的问题软件开发过程存在的问题6.软件开发过程管理软件开发过程管理13软件开发过程是以生命周期各阶段的活动划分为基础,将用户需求转化为软件系统活动集合

8、的过程。什么是软件开发过程?什么是软件开发过程?1.可行性研究2.需求分析3.软件设计4.编码实现5.软件测试软件开发过程可分为以下子过程软件开发过程可分为以下子过程141.软件生命周期软件生命周期2.软件过程软件过程3.软件开发过程软件开发过程4.软件开发过程模型软件开发过程模型5.软件开发过程存在的问题软件开发过程存在的问题6.软件开发过程管理软件开发过程管理15n什么是软件开发过程模型?软件开发模型是软件开发全过程、软件开发活动以及它们之间关系的的结构框架指导软件开发,以及软件开发过程的定义n常用的软件开发过程模型瀑布模型原型模型增量模型迭代模型螺旋模型16需求分析需求分析软件设计软件设

9、计编码编码测试测试软件定义软件定义l适合场所需求易于完善定义的软件可行性研究可行性研究软件设计软件设计编码编码测试测试需求分析需求分析运行与维护运行与维护变化的需求变化的需求l 特点:分阶段阶段间有因果关系评审允许反馈17V模型n特点将软件实现和验证有机结合n适合场所传统信息系统应用的开发需求分析概要设计详细设计软件编码验收测试系统测试集成测试单元测试18 初初步步需需求求分分析析 快快速速设设计计 建建造造原原型型 用用户户评评估估原原型型(新新需需求求) 开开发发产产品品 开开始始 结结束束 l特点有效适应用户需求的变化不知循环多少次,进度难以控制l适合场所需求动态变化、难以确定的软件系统

10、2022-4-2519螺旋模型螺旋模型n特点以风险为导向n应用场所开发风险较大的软件项目20增量模型增量模型交付产品交付产品需求分析需求分析概要设计概要设计软件定义软件定义系统测试系统测试编码编码集成测试集成测试详细设计详细设计编码编码集成测试集成测试详细设计详细设计增量增量1增量增量nl特点并行开发管理复杂RAD模型模型业务建模业务建模过程建模过程建模数据建模数据建模测试交付测试交付应用生成应用生成业务建模业务建模过程建模过程建模数据建模数据建模测试交付测试交付应用生成应用生成业务建模业务建模过程建模过程建模数据建模数据建模测试交付测试交付应用生成应用生成60-90天小组#1小组#2小组#3

11、l特点极短的开发周期软件包软件包模型模型l特点开发周期短开发费用低需求分析和软件包标识结构定义和软件包选择技术修改和系统维护系统集成和测试原型系统交付细化需求、高级结构用户需求选择的软件包需求技术突破新需求新产品231.软件生命周期软件生命周期2.软件过程软件过程3.软件开发过程软件开发过程4.软件开发过程模型软件开发过程模型5.软件开发过程存在的问题软件开发过程存在的问题6.软件开发过程管理软件开发过程管理n管理方面管理方面 1.忽视软件过程管理 2.计划过程粗略,执行控制不力 3.缺乏需求基准 4.缺乏成本控制体系和过程 5.质量保证过程薄弱24n技术方面技术方面 1.需求分析 2.软件设

12、计 3.代码编写 4.测试251.软件生命周期软件生命周期2.软件过程软件过程3.软件开发过程软件开发过程4.软件开发过程模型软件开发过程模型5.软件开发过程存在的问题软件开发过程存在的问题6.软件开发过程管理软件开发过程管理n管理方面管理方面 1.加强对技术过程的管理控制 2.完备的计划过程,严格的执行控制 3.建立需求基准和项目范围基准 4.基于WBS的成本控制体系,基于进度的成本控制过程 5.质量保证过程贯穿项目始终26n技术方面技术方面 1.需求分析阶段 2.软件设计阶段 3.编写阶段 4.测试阶段27软件开发过程定义注意事项软件开发过程定义注意事项(1/5)n经验1组织制定的软件开发

13、过程应该由一个可理解的活动集组成,可以从该活动集中选择合适的子集作为新项目的过程组织内的软件开发过程应该被定义为一个标准组织内定义的软件开发过程应该具有一定的通用性和一般性,既可满足组织内新项目的需要,也可满足组织内所经历的非传统项目的需要28软件开发过程定义注意事项软件开发过程定义注意事项(2/5)n经验2软件开发过程不应包含一些无效或者无用的任务或者活动,软件开发过程中的任何活动和任务都是为了促进软件项目的开发和管理,确保软件项目在进度、成本的限制范围内,得到满足用户要求的高质量软件产品软件开发过程不应复杂和教条软件开发过程不应捆绑一些无意义的规则,如必须采用某种方法和技术29软件开发过程

14、定义注意事项软件开发过程定义注意事项(3/5)n经验3软件开发过程应该不断地得到改善和提高软件开发过程有局限性和问题需要对软件开发过程经常性地进行检查,发现问题和不足允许过程的使用者对过程提出改善意见,发表见解30软件开发过程定义注意事项软件开发过程定义注意事项(4/5)n经验4借助于其他组织的经验和成果,以及国际化标准来制定软件开发过程借助于其他组织的经验和成果有助于少走弯路,尽快制定高质量的软件开发过程借助于国际标准有助于规范化软件开发过程,通过国际标准的认证,如ISO9001, CMM遵循国际标准是有必要的,应该提倡,它能帮助提升管理水平、形象和竞争力切忌走过场31软件开发过程定义注意事项软件开发过程定义注意事项(5/

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论