软件开发规范化解决方案--软件配置管理.doc_第1页
软件开发规范化解决方案--软件配置管理.doc_第2页
软件开发规范化解决方案--软件配置管理.doc_第3页
软件开发规范化解决方案--软件配置管理.doc_第4页
软件开发规范化解决方案--软件配置管理.doc_第5页
全文预览已结束

下载本文档

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

文档简介

软件开发规范化解决方案-软件配置管理服务篇1 引言编程曾经是一种神秘的艺术,但这种时代随着IBM OS/360项目的失败而告终,软件开发进入了软件工程时代,软件形成了产业。对于软件开发组织,软件产品的质量可以说是赖以生存的要素之一。对于“软件”这种软的产品,它没有“原材料”的质量问题,所以唯一保证质量的途径就是加强管理,而软件配置管理是各种管理的基础。2 配置管理的重要性 缺乏配置管理造成的问题如果您是一位软件项目管理人员或是软件企业的领导,相信您一定曾经,或者正在被以下问题所困扰,如: 版本控制问题 o 文档、图表、源代码等等,经过多次修改后,发现有用的版本反而丢掉了 o 并行开发控制问题:情景1:程序员A和B共同修改同一个模块,两人都辛辛苦苦地改了好几天,最后都回存到服务器上。可是到使用的时候,发现有一个人的修改被冲掉了! o 一个软件往往由许多的模块组成,在不同的阶段(基础功能、新增功能),很可能为了不同的环境(如不同的操作系统)、不同的客户开发了特点各异的版本,这些版本之间有大量的共享模块,以及类似而又不同的模块。最后拼装某个版本时,张冠李戴了 o 有的模块没有经过测试,就直接进入了产品之中 变更控制问题 o 软件变化有多条途径进入产品,导致覆盖和丢失变化:情景2:用户1发现一个错误,交给程序员A去改,A修改之后直接改动了用户正在使用的版本;用户2想要增加一个功能,交给程序员B去做,B也如法炮制,结果导致A的改动被B覆盖而丢失 o 由于改动过大,消耗大量人力物力,导致项目严重超期、超支 o 项目经过了几次大改动,几乎记不起原来是什么样子了;更要命的是,这些改动原本是客户提出的,现在却不认帐了 配置审核问题 o 在整个应用的生命周期中迁移变化时没有正常的审核过程:比如在上述情景2中,对于客户变更请求的处理就缺少必要的审核过程 o 物理配置审核问题:比如发布出去的产品中,缺少文档,或者文档与应用不一致 项目管理问题 o 项目开始之后,每个人每天都在编程序,也不知道每个人进度怎么样 o 整个项目的开发可控性差,无法做到阶段可控 如果您还在为这些事情发愁,说明您的团队需要实施配置管理了。什么是软件配置管理?软件配置管理是一门应用技术、管理和监督相结合的学科,通过标识和文档来记录配置项的功能和物理特性,控制这些特性的变更,记录和报告变更的过程和状态,并验证它们与需求是否一致。软件配置管理系统主要分为版本控制,变更管理,状态统计和配置审核。版本控制主要是对变更配置项的软件行为及变更结果提供一个可跟踪的手段,便于软件开发工作以基线渐进的方式完成;变更管理主要是控制和协调不同责任的软件开发人员有效的交流;状态统计主要是在版本控制与过程管理的基础上,通过量化的数据和报表展现软件开发进度的状态;配置审核主要是以用户和开发团队均认可的衡量尺度(如:与用户签定的软件合同),通过功能审核及物理审核两种方式,对软件实施过程和软件功能的完整性、正确性进行检验审核。软件配置管理正是以这四种功能的具体实现来贯穿整个软件生存周期,对软件进行标识、控制与管理。软件配置管理作为软件开发过程的必要环节和软件开发管理的基础,支持和控制着整个软件生命周期,同时对软件开发过程的宏观管理,即项目管理,也有重要的支持作用。良好的配置管理能使软件开发过程有更好的可预测性,使软件系统具有可重复性,使用户和主管部门对软件质量和开发小组有更强的信心。若要有效的实施软件配置管理,必须要培养软件开发者的管理意识,结合开发组织的实际情况制订出相应的配置管理规范,由开发人员依据规范,通过专业化的配置管理工具来实现。3 实施配置管理过程中的几个要点根据SEI CMM1二级中的阐述,软件配置管理的目标是在项目的整个软件生命周期中建立和维护软件产品的完整性,它是软件过程和管理过程不可缺少的部分。配置管理在软件开发过程中的重要地位已不言而喻。许多软件企业已深深体会到这一工作的重要性,而在实施或正在准备实施。以往实践经验证明,在软件开发组织中实施或改进配置管理,仅仅依靠工具往往不能取得令人满意的效果,而需要软件开发组织指派拥有较高技术水平、管理水平的人员负责,尚须投入大量人力、物力、财力和时间来重点进行以下工作: 3.1研究标准配置管理最重要的是“管理”二字,管理是一种理念,是前人在经验教训之中总结出来的;同时,实施这种管理也需要实施的经验,否则很可能会走一些弯路。而相关标准正是这些理念与经验的体现。显然,实施配置管理首先要深入理解这些标准。深刻理解了这些标准,才能够领会先进的、被广泛接受的管理理念,并把这些理念体现于本团队的管理体系中。所以要有专人进行这方面的研究工作,这些人要有一定的开发和管理经验,而且对配置管理工作有兴趣。3.2制定计划在实施之前,要仔细的分析开发组织现有的管理状况,根据相关标准中的理念和实际情况确立好配置管理管理的目标,并找出其中的差距,制订详实的实施计划。按照IEEE Std 828-19982中的要求,计划中要包括以下一些内容:行政管理组织结构、配置管理组织结构、配置管理的人员及其责任分配、开发阶段的划分和基线的定义、对变更请求的处理过程等,这些内容都需要认真地研究后写入计划,作为实施配置管理的指导性文档3.3熟悉工具理论上说,实施配置管理没有工具的支持也可以,但是,计算机辅助软件工程发展到今天,已经有很多优秀的工具可以很好的支持配置管理的实施,大大减少工作量。事实上,有些工作没有工具的支持很难做到,比如:在一个稍大的团队中,只靠手工来频繁地保存配置项的版本,几乎是不可能的。再者,在SEI CMM中也强调选用工具的重要性。所以选择一种合适的工具是明智的。选择工具当然要对市场上的工具进行研究,了解清楚它们的特点,结合自己的实际情况和需求加以选择。最贵的不一定是最合适的。3.4制定实施过程对于配置管理的各种活动,在实施之前都要有一个详细的处理过程的分析和设计,保证整个过程是通顺的,不会在实施时造成项目进展的障碍。比如变更请求的处理:提交、审阅、批准、工作量的授权、上报等,要把处理过程中会遇到的各种情况都考虑到:所涉及到的人、要传递的信息、步骤等,并制定具体的、切实可行的过程。3.5培训相关人员包括以下几个方面的培训: 配置管理理念。管理思想不应该只停留在几个精英的头脑中,而应该深入每一个项目人员的意识,这样才能够让每一个人都能够积极主动地配合实施工作; 工具培训。配置管理工具中一般开发人员使用的部分都比较容易,但管理员部分一般较为复杂。而实施过程中一般都要有大量的工具初始配置以及运行维护工作,很难想象生疏的工具使用带来高效率。 实施过程培训。开发过程中,不同的人在不同的场景中会涉及到不同操作,操作应该按预先制订好的过程进行。实施过程的培训主要是让相关人员了解某种活动的完整处理过程,以及自己在整个过程中要做哪些操作、如何进行操作。 总之,要通过上述的一系列步骤才能保证所选工具确实满足需要,计划切实可行,从而达到实施或改进软件配置管理的预期目的。4 实施配置管理的效果软件组织如果真正认真的实施好配置管理将会有效地实现软件产品的完整性、一致性和可控性,使其最大程度的与用户的需求吻合;加快产品上市速度,降低维护成本,更好的保证软件质量;可为软件组织节省大量的人力和物力,有助于规范工作流程,明确角色分工,项目经理可以更好地掌握项目的进度,了解开发人员的负荷、工作效率和产品质量状况、交付日期等信息;管理者从此摆脱了开发人员流动的困境,新的成员可以更加快速的实现任务交接,减少因人员流动带来的损失。具体说来,可以为软件组织带来以下好处: 版本得到很好的控制 o 所有文档、代码的有用版本都被保留,不会出现版本丢失; ? 并行开发井然有序,甚至不同的人对同一个文件进行同时更新,也不会出现丢失信息; o 建立应用时模块的取用方便、快捷、准确,不会出现张冠李戴; o 所有的代码都必须经过一条受控的途径进入产品,产品中不会出现未经确认的代码 变更的处理更规范 o 所有的变更请求都要经过统一规范的处理过程,不会再有程序员直接处理用户请求、修改缺陷而没有任何记录的现象; o 所有的变更以及他的处理过程都会被记录,以便于统计、参考; o 既是发现不合理的变更,排除导致项目失败的变更; 可以保证产品的一致性和完整性 o 所有批准实施的变更都要经过规定的审核才会进入产品; o 保证发布的产品中应用程序与配套文档一致; 项目更易于管理 o 由于基线的划分,使得软件开发具有更好的阶段可控性; o 由于配置管理的状态统计功能,使得项目进

温馨提示

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

评论

0/150

提交评论