⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 200603081443505.html

📁 软件工程的红包书
💻 HTML
📖 第 1 页 / 共 4 页
字号:
<P><FONT face=Verdana>&nbsp;&nbsp;&nbsp;&nbsp;<STRONG>&nbsp; 系统集成员(System Integration Officer,SIO):</STRONG><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 系统集成员负责生成和管理项目的内部和外部发布版本,其具体职责为以下几项:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 集成修改;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 构建系统;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 完成对版本的日常维护;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 建立外部发布版本。</FONT></P>
<P><FONT face=Verdana><STRONG>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 开发人员(Developer,DEV):</STRONG></FONT></P>
<P><FONT face=Verdana>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 开发人员的职责就是根据组织内确定的软件配置管理计划和相关规定,按照软件配置管理工具的使用模型来完成开发任务。</FONT></P>
<P><FONT face=Verdana><STRONG>六.软件配置管理过程描述</STRONG></FONT></P>
<P><FONT face=Verdana>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 一个软件研发项目一般可以划分为三个阶段:计划阶段、开发阶段和维护阶段。然而从软件配置管理的角度来看,后两个阶段所涉及的活动是一致,所以就把它们合二为一,成为“项目开发和维护”阶段。</FONT></P>
<P><FONT face=Verdana><STRONG>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 项目计划阶段:</STRONG></FONT></P>
<P><FONT face=Verdana>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 一个项目设立之初PM首先需要制定整个项目的计划,它是项目研发工作的基础。在有了总体研发计划之后,软件配置管理的活动就可以展开了,因为如果不在项目开始之初制定软件配置管理计划,那么软件配置管理的许多关键活动就无法及时有效的进行,而它的直接后果就是造成了项目开发状况的混乱并注定软件配置管理活动成为一种“救火”的行为。所以及时制定一份软件配置管理计划在一定程度上是项目成功的重要保证。</FONT></P>
<P><FONT face=Verdana>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 在软件配置管理计划的制定过程中,它的主要流程应该是这样的:</FONT></P>
<P><FONT face=Verdana>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CCB根据项目的开发计划确定各个里程碑和开发策略;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CMO根据CCB的规划,制定详细的配置管理计划,交CCB审核;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CCB通过配置管理计划后交项目经理批准,发布实施。</FONT></P>
<P><FONT face=Verdana><STRONG>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 项目开发维护阶段:</STRONG></FONT></P>
<P><FONT face=Verdana>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 这一阶段时项目研发的主要阶段。在这一阶段中,软件配置管理活动主要分为三个层面:(1)主要由CMO完成的管理和维护工作;(2)由SIO和DEV具体执行软件配置管理策略;(3)变更流程。这三个层面是彼此之间既独立又互相联系的有机的整体。</FONT></P>
<P><FONT face=Verdana>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 在这个软件配置管理过程中,它的核心流程应该是这样的:(1)CCB设定研发活动的初始基线;(2)CMO根据软件配置管理规划设立配置库和工作空间,为执行软件配置管理就阿做好准备;(3)开发人员按照统一的软件配置管理策略,根据获得的授权的资源进行项目的研发工作;(4)SIO按照项目的进度集成组内开发人员的工作成果,并构建系统,推进版本的演进;(5)CCB根据项目的进展情况,审核各种<a href="javascript:if(confirm('http://www.itisedu.com/phrase/200604161514015.html  \n\nThis file was not retrieved by Teleport Pro, because it was unavailable, or its retrieval was aborted, or the project was stopped too soon.  \n\nDo you want to open it from the server?'))window.location='http://www.itisedu.com/phrase/200604161514015.html'" tppabs="http://www.itisedu.com/phrase/200604161514015.html" target="_new">变更请求</a>,并适时的划定新的基线,保证开发和维护工作有序的进行。</FONT></P>
<P><FONT face=Verdana>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 这个流程就是如此循环往复,直到项目的结束。当然,在上述的核心过程之外,还涉及其他一些相关的活动和操作流程,下面按不同的角色分工予以列出:</FONT></P>
<P><FONT face=Verdana>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 各开发人员按照项目经理发布的开发策略或模型进行工作;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SIO负责将各分项目的工作成果归并至集成分支,供测试或发布;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SIO可向CCB提出设立基线的要求,经批准后由CMO执行;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CMO定期向项目经理和CCB提交审计报告,并在CCB例会中报告项目在软件过程中可能存在的问题和改进方案;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 在基线生效后,一切对基线和基线之前的开发成果的变更必须经CCB的批准;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CCB定期举行例会,根据成员所掌握的情况、CMO的报告和开发人员的请求,对配置管理计划作出修改,并向项目经理负责。</FONT></P>
<P><FONT face=Verdana>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 综上所述,配置管理的<a href="200603110944215.html" tppabs="http://www.itisedu.com/phrase/200603110944215.html" target="_new">工作流</a>程如图1所示:</FONT></P>
<P><FONT face=Verdana></FONT></P>
<P align=center><FONT face=Verdana><IMG src="2006327212530759.gif" tppabs="http://www.itisedu.com/manage/Upload/image/2006327212530759.gif" border=0></FONT></P>
<P><FONT face=Verdana><STRONG>七. 软件配置管理的关键活动</STRONG> </FONT></P>
<P><FONT face=Verdana><STRONG>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1.配置项(Software Configuration Item,SCI)识别</STRONG></FONT></P>
<P><FONT face=Verdana>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Pressman对于SCI给出了一个比较简单的定义:“软件过程的输出信息可以分为三个主要类别:(1)<a href="200602281649395.html" tppabs="http://www.itisedu.com/phrase/200602281649395.html" target="_new">计算机程序</a>(源代码和可执行<a href="200604232224305.html" tppabs="http://www.itisedu.com/phrase/200604232224305.html" target="_new">程序</a>),(2)描述<a href="200603021438435.html" tppabs="http://www.itisedu.com/phrase/200603021438435.html" target="_new">计算机</a>程序的文档(针对技术开发者和用户),以及(3)数据(包含在程序内部或外部)。这些项包含了所有在软件过程中产生的信息,总称为软件配置项。”</FONT></P>
<P><FONT face=Verdana>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 由此可见,配置项的识别是配置管理活动的基础,也是制定配置管理计划的重要内容。</FONT></P>
<P><FONT face=Verdana>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 软件配置项分类软件的开发过程是一个不断变化着的过程,为了在不严重阻碍合理变化的情况下来控制变化,软件配置管理引入了“基线(Base Line)”这一概念。IEEE对基线的定义是这样的:“已经正式通过<a href="200604161505135.html" tppabs="http://www.itisedu.com/phrase/200604161505135.html" target="_new">复审</a>核批准的某规约或产品,它因此可作为进一步开发的基础,并且只能通过正式的变化控制过程改变。”</FONT></P>
<P><FONT face=Verdana>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 所以,根据这个定义,我们在软件的开发流程中把所有需加以控制的配置项分为基线配置项和非基线配置项两类,例如:基线配置项可能包括所有的设计文档和源程序等;非基线配置项可能包括项目的各类计划和报告等。 </FONT></P>
<P><FONT face=Verdana>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 配置项的标识和控制</FONT></P>
<P><FONT face=Verdana>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 所有配置项都都应按照相关规定统一编号,按照相应的模板生成,并在文档中的规定章节(部分)记录<a href="200603090845215.html" tppabs="http://www.itisedu.com/phrase/200603090845215.html" target="_new">对象</a>的标识信息。在引入软件配置管理工具进行管理后,这些配置项都应以一定的目录结构保存在配置库中。<BR>所有配置项的操作权限应由CMO严格管理,基本原则是:基线配置项向软件开发人员开放读取得权限;非基线配置项向PM、CCB及相关人员开放。</FONT></P>
<P><FONT face=Verdana><STRONG>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2.工作空间管理</STRONG></FONT></P>
<P><FONT face=Verdana>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 在引入了软件配置管理工具之后,所有开发人员都会被要求把工作成果存放到由软件配置管理工具所管理的配置库中去,或是直接工作在软件配置管理工具提供的环境之下。所以为了让每个开发人员和各个开发<a href="200603082251135.html" tppabs="http://www.itisedu.com/phrase/200603082251135.html" target="_new">团队</a>能更好的分工合作,同时又互不干扰,对工作空间的管理和维护也成为了软件配置管理的一个重要的活动。</FONT></P>
<P><FONT face=Verdana>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 一般来说,比较理想的情况是把整个配置库视为一个统一的工作空间,然后再根据需要把它划分为个人(私有)、团队(集成)和全组(公共)这三类工作空间(分支),从而更好的支持将来可能出现的并行开发的<a href="200603101518295.html" tppabs="http://www.itisedu.com/phrase/200603101518295.html" target="_new">需求</a>。</FONT></P>
<P><FONT face=Verdana>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 每个开发人员按照任务的要求,在不同的开发阶段,工作在不同的工作空间上,例如:对于私有开发空间而言,开发人员根据任务分工获得对相应配置项的操作许可之后,他即在自己的私有开发分支上工作,他的所有工作成果体现为在该配置项的私有分支上的版本的推进,除该开发人员外,其他人员均无权操作该私有空间中的元素;而集成分支对应的是开发团队的公共空间,该开发团队拥有对该集成分支的读写权限,而其他成员只有只读权限,它的管理工作由SIO负责;至于公共工作空间,则是用于统一存放各个开发团队的阶段性工作成果,它提供全组统一的标准版本,并作为整个组织的<a href="javascript:if(confirm('http://www.itisedu.com/phrase/200604230833005.html  \n\nThis file was not retrieved by Teleport Pro, because it was unavailable, or its retrieval was aborted, or the project was stopped too soon.  \n\nDo you want to open it from the server?'))window.location='http://www.itisedu.com/phrase/200604230833005.html'" tppabs="http://www.itisedu.com/phrase/200604230833005.html" target="_new">Knowledge Base</a>。</FONT></P>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -