1.信息系统项目文档及其管理 468
1.信息系统项目相关信息
1.信息系统相关信息(文档)是指某种数据媒体和其中所记录的数据。具有永久性。并可以由人或机器阅读,通常仅用于描述人工可读的东西。
2.软件文档的分类
- 开发文档描述开发过程本身
- 产品文档 描述开发过程的产物
- 管理文档记录项目管理的信息
文档的质量等级
1.最低程度文档 1级文档
2.内部文档 2级文档
3.工作文档 3级文档
4.正式文档 4级文档
2.信息系统项目文档管理的规则和方法
- 文档书写规范
- 图标编号规则
- 文档目录编写标准
- 文档管理制度
2.配置管理
为了系统的控制配置变更,在系统的整个生命周期中维持配置的完整性和可跟踪性,而识别系统在不同时间点上配置的学科。
6个主要活动
制订配置管理计划
配置标识
配置控制
配置状态报告
配置审计
发布管理和交付
1.配置管理的概念
1.为配置管理设计的硬件、软件或二者的集合,在配置管理过程中作为一个单个实体来对待。
基线配置项
非基线配置项
2.配置项的状态分为 “草稿” “正式” “修改”
草稿经过修改-通过评审-正式-修改-再次通过评审
3.配置项版本号 X.YZ
4.配置基线
- 基线为开发工作提供了一个定点和快照
- 新项目可以在基线提供的定点上建立。
- 当认为更新不稳定或不可信时,基线为团队提供一种取消变更的方法
- 可以利用基线重新建立基于某个特定发布版本的配置,以重现已报告的错误。
5.配置库
存放配置项并记录与配置项相关的所有信息,是配置管理的有力工具。
类型 :
- 开发库
- 受控库
- 产品库
配置库建库模式有两种:配置项类型建库和按任务建库
6.配置库权限设置
什么人可以看
什么人可以取
什么人可以改
什么人可以销毁
7.配置控制委员会 CCB
负责对配置变更做出评估、审批以及监督已批准变更的实施。
8.配置管理员 CMO
负责在整个项目生命周期中进行配置管理活动
2.配置管理的目标和方针
1.目标
- 确保软件配置管理计划得以制订,并经过相关人员的评审和确认
- 应该识别出要控制的项目产品有那些,并且制订相关控制策略,以确保这些项目产品被合理的人员获取
- 应制定控制策略,以确保项目产品在受控制范围内更改。
- 应采取适当的工具和方法,确保相关组别和个人能够及时了解到软件基准的状态和内容
2.方针
高级项目经理应确定软件配置管理过程文件得到制定m项目组成员应严格按照配置管理过程文件规定的要求执行,履行配置管理的职责应被明确分配。
3.日常配置管理活动
1.制定配置管理计划
如何开展项目配置管理工作的规划,是配置管理过程的基础,应该形成文件并在整个项目生命周期内处于受控状态。
- 配置管理活动 配置标识、配置控制、配置状态报告、配置审计、发布管理与交付
- 实施这些活动的规范和流程
- 实施这些活动的进度安排
- 负责实施这些活动的人员或组织,以及他们和其他组织的关系
2.配置标识
为了系统选择配置项并在技术文档中记录配置项的功能和物理特征。
- 识别需要受控的配置项
- 为每个配置项制定唯一性的标识号
- 定义每个配置项的重要特征
- 确定每个配置项的所有者及其责任
- 确定配置项进入配置管理的时间和条件
- 建立和控制基线
- 维护文档和组件的修订与产品版本之间的关系
3.配置控制
(1)变更申请
(2)变更评估
(3)通告评估结果
(4)变更实施
(5)变更验证与确认
(6)变更的发布
(7)基于配置库的变更控制
4.配置状态报告
有效的记录和报告管理配置所需要的信息。目的是及时、准确的给出配置项的当前状况。供相关人员了解,以加强配置管理工作。
5.配置审计
验证当前配置项的一致性和完整性
配置审核或配置评价
为了确保项目配置管理的有效性,体现了配置管理的最根本要求。
(1)功能配置审计 是审计配置项的一致性
(2)物理配置审计 是审计配置项的完整性
6.发布管理和交付
主要任务:有效控制软件产品和文档的发行和交付,在软件产品的生存期内妥善保存代码和文档的母拷贝。
1.存储
2.复制
3.打包
4.交付
5.重建
3.文档管理、配置管理工具
1.工具综述
1.付费软件配置管理工具
- Rational ClearCase
- Perforce
- CA CCC
- Havest Merant PVCS
- Microsoft VSS CVS
2.免费开源配置管理工具
- SVN
- GIT
- CVS
2.SVN
优点:
- 支持重命名
- 开发的时候不一定要锁定
- 多平台
- 更好的客户端支持
- 更好的与外围工具集成
- 方便
- 速度与稳定性看起来都不错
3.CC
C/S 和B/S两种架构的配置管理解决方案。
- 独有的存储库 VOB
- 可视化的文件版本树
- 并行开发
- 版本历史记录
- 自动的比较和版本间的合并
- 工作空间管理
4.GIT
- 更方便的Merge
- 更方便的管理
- 更健壮的系统
- 对网络的依赖性更低
- 更少的“仓库污染”
GIT与SVN的比较
- GIT 速度远远比SVN快
- SVN是集中式管理,GIT是分布式管理。分布式在本地有一个代码仓库,开发者可以在本地提交。而集中式在服务器才有一个代码仓库。
- SVN使用分支比较笨拙,GIT可以轻松拥有无限个分支
- SVN必须联网才能正常使用,GIT支持本地版本控制工作
- 旧版本的SVN会在每一个目录放一个.svn,GIT只会在根目录拥有一个.git