软件项目配置管理的目标有哪些
1. 软件开发的项目中,什么叫配置管理
配置管理(Configuration
Management,CM)是通过技术或行政手段对软件产品及其开发过程和生命周期进行控制、规范的一系列措施。配置管理的目标是记录软件产品的演化过程,确保软件开发者在软件生命周期中各个阶段都能得到精确的产品配置。
2. 配置管理的作用是什么 包括那几部分功能
配置管理(Configuration Management,CM)是通过技术或行政手段对软件产品及其开发过程和生命周期进行控制、规范的一系列措施。配置管理的目标是记录软件产品的演化过程,确保软件开发者在软件生命周期中各个阶段都能得到精确的产品配置。
配置管理的实施包括两部分:工具和规范。
在软件开发过程自动化的今天,没有工具的支持而实施配置完整的配置管理是不能想象的。因此选择一个符合公司或项目的工具至关重要。在配置管理系统中,我们可归纳出四种模型。当前商业工具一般采用其中一种或几种模型。
我们通过对商业模型的理解可以帮助我们了解某种工具是否适合我们公司或项目。
CICO模型
CICO模型主要关注的是单个文件的版本控制。图显示了一个支持CICO模型的CM系统的工作过程。用户利用库和文件系统来进行工作。文件被版本化并存储到库中,新版本的产生是由库工具控制的。然而, 文件在库中不是可以直接存取的,用户必须去检出(即Check Out)一个文件的版本到工作空间中以便读取它的内容。更改后的文件可以被检入库中(即Check in),产生文件的一个新版本。
此模型的代表工具是SCCS和CVS。
组织模型
组织模型由CICO模型自然导出,建立于构件版本图的基础之上,同时依赖于存储库和工作空间的概念,可以通过对构件加锁进行并发控制。组织模型的重点是在CM系统支撑下加强了对创建配置、对有关的历史信息的管理和使用他们作为工作环境的支持。
组织模型中的配置由系统模型和版本选择规则组成。系统模型列出了组成系统的所有的构件。版本选择规则指出了组成配置的每一个构件选择版本。选择规则用于系统模型,选择构件版本,即绑定一构件到某一版本。这个模型的操作方式是:开发员根据模型的构件定义整个系统,并在每一步骤中给每个构件选择合适的版本。版本操作的工作方式如图所示。
CM支持主要关心的是维护系统和其构件的版本历史,并选择符合一致性配置的构件版本。只有在所选构件的版本与所选其它构件版本一致时才认为一个配置版本。
此模型的代表工具是CCC。
3. 软件配置管理的过程
你好,配置管理(Configuration Management,CM)是通过技术或行政手段对软件产品及其开发过程和生命周期进行控制、规范的一系列措施。配置管理的目标是记录软件产品的演化过程,确保软件开发者在软件生命周期中各个阶段都能得到精确的产品配置。
配置管理过程是对处于不断演化、完善过程中的软件产品的管理过程。其最终目标是实现软件产品的完整性、一致性、可控性,使产品极大程度地与用户需求相吻合。它通过控制、记录、追踪对软件的修改和每个修改生成的软件组成部件来实现对软件产品的管理功能。
早在七十年代初期加利福利亚大学的Leon Presser教授就撰写了一篇论文,提出控制变更和配置的概念,之后在1975年,他成立了一家名为SoftTool的公司,开发了自己的配置管理工具:CCC,这也是最早的配置管理工具之一。之后,随着软件开发规模的逐渐增大,越来越多的公司和团队意识到了软件配置管理的重要性,而相应的软件配置管理工具也如雨后春笋一般,纷纷涌现,比较有代表性的有:Marc Rochkind的SCCS(Source Code Control System)和Walter Tichy的RCS(Revision Control System),这两种工具对日后的配置管理工具的发展做出了重大的贡献,目前绝大多数广泛使用的配置管理工具基本上都是基于这两者的设计思想和体系架构。
一、配置管理在软件开发过程和项目管理过程中的作用
随着软件系统的日益复杂化和用户需求、软件更新的频繁化,配置管理逐渐成为软件生命周期中的重要控制过程,在软件开发过程中扮演着越来越来重要的角色。一个好的配置管理过程能覆盖软件开发和维护的各个方面,同时对软件开过程的宏观管理,即项目管理,也有重要的支持作用。良好的配置管理能使软件开发过程有更好的可预测性,使软件系统具有可重复性,使用户和主管部门用软件质量和开发小组有更强的信心。
软件配置管理的最终目标是管理软件产品。由于软件产品是在用户不断变化的需求驱动下不断变化,为了保证对产品有效地进行控制和追踪,配置管理过程不能仅仅对静态的、成形的产品进行管理,而必须对动态的、成长的产品进行管理。由此可见,配置管理同软件开发过程紧密相关。配置管理必须紧扣软件开发过程的各个环节:管理用户所提出的需求,监控其实施,确保用户需求最终落实到产品的各个版本中去,并在产品发行和用户支持等方面提供帮助,响应用户新的需求,推动新的开发周期。通过配置管理过程的控制,用户对软件产品的需求如同普通产品的订单一样,遵循一个严格的流程,经过一条受控的生产流水线,最后形成产品,发售给相应用户。从另一个角度看,在产品开发的不同阶段通常有不同的任务,由不同的角色担当,各个角色职责明确,泾渭分明,但同时又前后衔接,相互协调。
好的配置管理过程有助于规范各个角色的行为,同时又为角色之间的任务传递提供无缝的接合,使整个开发团队象一个交响乐队一样和谐而又错杂地行进。正因为配置管理过程直接连接产品开发过程、开发人员和最终产品,这些都是项目主管人员所关注的重点,因此配置管理系统在软件项目管理中也起着重要。配置管理过程演化出的控制、报告功能可帮助项目经理更好地了解项目的进度、开发人员的负荷、工作效率和产品质量状况、交付日期等信息。同时配置管理过程所规范的工作流程和明确的分工有利于管理者应付开发人员流动的困境,使新的成员可以快速实现任务交接,尽量减少因人员流动而造成的损失。
世嘉游戏机的名字:
MEGA DRIVE(MD),
Sega Saturn(SS),
DreamCast(DC),
GAME GEAR(GG). 1664希望对你有帮助!
4. 软件配置管理规范都包括哪些内容
软件配置管理是贯穿软件开发过程始终的一项工作。对于一个软件项目来说,软件配置管理规范至少包括以下的内容:
(1)配置项及其命名规则。
(2)配置库文件目录结构。
(3)角色和权限定义。
(4)配置项变更流程。
(5)配置项发布。
(6)基线定义和基线变更。
项目中的基线有两个方面:一是作为里程碑的基线;另一个是模块的阶段性成果基线(对工作产品而言),一般来说都要避免变更基线。对这两种不同的基线,其影响的范围不同,确立和变更方式也不一样。
项目的基线变更控制委员会由客户代表、产品经理、项目经理和技术经理组成,对发布的里程碑类基线的变更必须由变更控制委员会确认并由QA进行变更记录,所有被变更影响的配置项都需要重新同步后再次发布;而对于仅仅作为工作状态保留的基线,一般只需要建立基线的小组确认更改并在QA进行记录即可。
5. 软件配置管理的目的
1、软件配置管理(Software Configuration Management,SCM)是一种标识、组织和控制修改的技术。软件配置管理应用于整个软件工程过程。在软件建立时变更是不可避免的,而变更加剧了项目中软件开发者之间的混乱。SCM活动的目标就是为了标识变更、控制变更、确保变更正确实现并向其他有关人员报告变更。从某种角度讲,SCM是一种标识、组织和控制修改的技术,目的是使错误降为最小并最有效地提高生产效率。
2、软件配置管理(Software Configuration Management),又称软件形态管理、或软件建构管理,简称软件形管(SCM)。界定软件的组成项目,对每个项目的变更进行管控(版本控制),并维护不同项目之间的版本关联,以使软件在开发过程中任一时间的内容都可以被追溯,包括某几个具有重要意义的数个组合。
软件配置管理,贯穿于整个软件生命周期,它为软件研发提供了一套管理办法和活动原则。软件配置管理无论是对于软件企业管理人员还是研发人员都有着重要的意义。软件配置管理可以提炼为三个方面的内容:
VersionControl-版本控制
ChangeControl-变更控制
ProcessSupport-过程支持
关键活动包括:配置项、工作空间管理、版本控制、变更控制、状态报告、配置审计等。
6. 什么是项目管理的目标
先从目标来看,项目管理的目标可是说是将项目需求种的所有要求都完成。这是最基本的目标,不过如果仅仅是着眼于这个目标,那么项目经理和工头又有什么差别?而且实践证明,如果这样来管理项目,那么十有八九项目最终是要失败的。原因?软件项目从来不像想象的简单,一板一眼的按流程完成合同中规定的要求就可以交付项目的情况,通常是可遇而不可求的。所以不能把项目管理的目标仅仅放在实现合同规定的项目需求上。
敏捷方法论提出的观点是,要为客户创造价值,以提高客户的竞争力为出发点,这比仅仅完成合同更进了一步。客户是整个软件项目的发起者,从这一个角度来讲,甚至可以认为客户所说得一切都是对的!时刻牢记这一点,通常能够是项目的进行保持在一个更接近正确路线的状态。客户需要什么?客户遇到这个问题会怎么办?客户觉得这个功能重不重要?客户在这个功能点上会不会提出变化?常常问问自己这些问题,通常能够保证项目不会做成想当然的样子。如果自己回答不了这个问题,那么赶快拿起身边的电话吧(当然不是让你订购什么)。理想的情况当然是客户就坐在你的身边,这也是敏捷地观点:把客户作为团队的成员。
我觉得很多人在作项目的时候喜欢和客户对立起来,原因也很容易理解,辛辛苦苦写出来的东西被客户一句:我需要的东西不是这样的,就推翻了。然后需求全变了,以前做得都没有用了,工期又进在眼前,老板在催,开始加班,带着一股怨念,拖着疲惫的身心,之能写出垃圾代码。于是,项目失败也就不远了。回过头来看,似乎噩梦似乎是从客户变更需求开始的。需求变更变成了程序员挥之不去的梦魇。如果客户能够一开始就给出一个明确的需求,世界该是多么美好。
从另一个角度来说,项目的需求从来就没有变过,客户的想法也非常的明确,只是或许你从来没有考虑过。商业用户的需求基本上都一样:通过引入先进的软件,提高效率,降低成本,赚取更多利润。只要你能为他实现这一点,那么你怎么做,他不关心,ajax或者flex对他来说毫无意义,甚至只要最终的收益比投入成本高,比原计划花更多的钱和等更长的时间,他也乐意──当然,让他相信你。
当然,不同的客户的需求不一样,但有一定可以肯定,客户做这个项目的目的不是为了否定你的努力,更不是折腾你玩。所以,我们需要从新,认真地考虑项目的目标,考虑客户在项目中的地位,像揣摩领导心思一样虔诚的去做需求分析。
7. 软件项目管理的内容有那些
《软件项目管理的内容》
软件项目管理的内容主要包括如下几个方面:人员的组织与管理,软件度量,软件项目计划,风险管理,软件质量保证,软件过程能力评估,软件配置管理等。
这几个方面都是贯穿、交织于整个软件开发过程中的,其中人员的组织与管理把注意力集中在项目组人员的构成、优化;软件度量把关注用量化的方法评测软件开发中的费用、生产率、进度和产品质量等要素是否符合期望值,包括过程度量和产品度量两个方面;软件项目计划主要包括工作量、成本、开发时间的估计,并根据估计值制定和调整项目组的工作;风险管理预测未来可能出现的各种危害到软件产品质量的潜在因素并由此采取措施进行预防;质量保证是保证产品和服务充分满足消费者要求的质量而进行的有计划,有组织的活动;软件过程能力评估是对软件开发能力的高低进行衡量;软件配置管理针对开发过程中人员、工具的配置、使用提出管理策略。因为大家对人力资源管理和软件过程能力比较有兴趣,下面就详细的对这两方面展开讨论。
从软件工程的角度讲,软件开发主要分为六个阶段:需求分析阶段、概要设计阶段、详细设计阶段、编码阶段、测试阶段、安装及维护阶段。不论是作坊式开发,还是团队协作开发,这六个阶段都是不可缺少的。根据公司实际情况,公司在进行软件项目管理时,重点将软件配置管理、项目跟踪和控制管理、软件风险管理及项目策划活动管理四方面内容导入软件开发的整个阶段。在20世纪80年代初,着名软件工程专家B.W.Boehm总结出了软件开发时需遵循的七条基本原则,同样,在进行软件项目管理时,也应该遵循这七条原则。它们是:
1、用分阶段的生命周期计划严格管理;
2、坚持进行阶段评审;
3、实行严格的产品控制;
4、采用现代程序设计技术;
5、 结果应能够清楚地审查;
6、开发小组地人员应该少而精;
7、承认不断改进软件工程实践的必要性。
8. 计算机软件配置项是什么
1、软件配置项(SCI):软件生存周期各个阶段活动的产物经审批后即可称之为软件配置项。
2、软件配置项包括:
(1)与合同、过程、计划和产品有关的文档和资料;
(2)源代码、目标代码和可执行代码;
(3)相关产品,包括软件工具、库内的可重用软件、外购软件及顾客提供的软件等。
3、软件配置项是作为配置项识别活动的产出物,CMMI中要求有文档化的配置项识别准则,根据准则来进行配置项识别,列出配置项列表,给与配置项唯一的编号、名称等,并标明配置项的一些重要属性,如:它的存储位置、它的负责人、对应源码语言、受控级别等。
(8)软件项目配置管理的目标有哪些扩展阅读:
1、软件配置相关
Babich曾经这样说过:“协调软件开发使得混乱达到最小的技术叫配置管理。配置管理是一种标识、组织和控制修改的技术,目的是使错误达到最小并最有效地提高生长率。
软件配置管理,叫SCM,它应用于整个软件工程过程。因为变更在任何时刻都可能发生,因此SCM活动的目标就是为了:
(1)标识变更;
(2)控制变更;
(3)确保变更正确地实现;
(4)向其他有关的人员报告变更。