0%

开发管理(二)配置管理与文档管理

随着软件规模和复杂性的增大,许多大型开发项目往往都会延迟和超出预算,软件开发 不得不直面越来越多的问题,表现为开发的环境日益复杂,代码共享日益困难,需跨越的平 台增多;软件的重用性需要提高;软件的维护越来越困难。

软件配置管理(Software Configuration Management,SCM),其主要作用是通过结构化的、有序化的、产品 化的管理软件工程的方法来维护产品的历史,鉴别和定位产品独有的版本,并在产品的开发 和发布阶段控制变化;通过有序管理和减少重复性工作,配置管理保证了生产的质量和效率; 它涵盖了软件生命周期的所有领域并影响所有数据和过程。

一、软件配置管理的概念

SCM 是指在软件系统中确定和定义构件(源代码、可执行程序、文档等),在整个生命周期中控制发布和变更,记录和报告构件的状态 和变更请求,并定义完整的、正确的系统构件的过程。

在 IEEE 标准 729-1983 中,软件配置管理包括以下几个方面功能:

配置标识

产品的结构、产品的构件及其类型,为其分配唯一的标识符,并以某种形式提供对它们的存取。

版本控制

过建立产品基线,控制软件产品的发布和在整个软件生命周期中对软件产品的 修改。例如,它将解决哪些修改会在该产品的最新版本中实现的问题。

状态统计

记录并报告构件和修改请求的状态,并收集关于产品构件的重要统计信息。例如, 它将解决修改这个错误会影响多少个文件的问题。

审计和审查

确认产品的完整性并维护构件间的一致性,即确保产品是一个严格定义的构件 集合。例如,它将解决目前发布的产品所用的文件的版本是否正确的问题。

生产

对产品的生产进行优化管理。它将解决最新发布的产品应由哪些版本的文件和工具来 生成的问题。

过程管理

确保软件组织的规程、方针和软件周期得以正确贯彻执行。它将解决要交付给用 户的产品是否经过测试和质量检查的问题。

小组协作

控制开发统一产品的多个开发人员之间的协作。例如,它将解决是否所有本地程 序员所做的修改都已被加入新版本的产品中的问题。

而在另外一个标准 ISO9000.3 中,对软件配置管理系统做了如下要求:

唯一地标识每个软件项的版本;
标识共同构成一个完整产品的特定版本的每一软件项的版本;
控制由两个或多个独立工作的人员同时对一个给定软件项的更新;
按要求在一个或多个位置对复杂产品的更新进行协调;
标识并跟踪所有的措施和更改;
这些措施和更改是在从开始直到放行期间,由于更改请求或问题引起的。

版本管理应完成以下主要任务:

建立项目;
重构任何修订版的某一项或某一文件;
利用加锁技术防止覆盖;
当增加一个修订版时要求输入变更描述;
提供比较任意两个修订版的使用工具;
采用增量存储方式;
提供对修订版历史和锁定状态的报告功能;
提供归并功能;
允许在任何时候重构任何版本;
权限的设置;
晋升模型的建立;
提供各种报告。

二、软件配置管理的解决方案

常用的软件配置管理工具,主要有如下产品:Rational ClearCase,Merant PVCS, Microsoft VSS,CVS。

三、软件文档管理

1.软件文档的作用

(1)管理依据。
(2)任务之间联系的凭证。
(3)质量保证。
(4)培训与参考。
(5)软件维护支持。
(6)历史档案。
(7)销售可能。

2.文档的归类

软件文档大致可分为 3 类:开发文档;管理文档;产品文档。

(1)开发文档。

软件需求、软件设计、软件测试、保证软件质量的一类文档

(2)产品文档。

关于软件产品的使用、维护、增强、转换和传输的信息。

(3)管理文档。

项目开发计划、测试计划;
开发过程的每个阶段的进度和进度变更的记录;
软件变更情况的记录;
相对于开发的判定记录;
开发人员职责定义;
测试报告、开发进度月报;
项目开发总结等。

内部文档包括项目开发计划、需求分析、架构设计说明、详细设计说明、构件索引、构件成分说明、构件接口及调用说明、构件索引、构件接口及调用说明、类索引、类属性及方法说明、测试报告、测试 统计报告、质量监督报告、源代码、文档分类版本索引和软件安装打包文件等。

外部文档主要包括软件安装手册、软件操作手册、在线帮助、系统性能指标报告和系统操作索引等。

3.文档编制计划

文档计划一般包括以下几方面内容:
列出应编制文档的目录;
提示编制文档应参考的标准;
指定文档管理员;
提供编制文档所需要的条件,落实文档编写人员、所需经费及编制工具等;
明确保证文档质量的方法,为了确保文档内容的正确性、合理性,应采取一定的措施,如评审、鉴定等;
绘制进度表,以图表形式列出在软件生存期各阶段应产生的文档、编制人员、编制日期、完成日期、评审日期等。
要编制哪几种文档,详细程度如何;
各文档的编制负责人和进度要求;
审查/批准负责人和时间进度安排;
在开发时期内各文档的维护、修改和管理的负责人,以及批准手续。

4.对文档质量的要求

好的软件文档要求具备如下特征:

(1)针对性。

文档编制前应分清读者对象。对不同的类型、不同层次的读者,决定如何满足适应他们的需要。
管理文档主要面向管理人员。
用户文档主要面向用户。

(2)精确性。

文档的行文应当十分确切,不能出现多义性的描述。同一课题几个文档 的内容应当是协调一致、没有矛盾的。

(3)清晰性。

文档编写应力求简明,如有可能,配以适当的图表,以增强其清晰性。

(4)完整性。

任何一个文档都应当是完整的、独立的,它应自成体系。

(5)灵活性。

各个不同软件项目,其规模和复杂程度有着许多实际差别,不能相同看 待。应根据具体的软件开发项目,决定编制的文档种类。