zoukankan      html  css  js  c++  java
  • 软件配置管理

    在软件开发过程中变更是不可避免的,而变更时由于没有进行变更控制,可能加剧了项目中的混乱,为了协调软件开发使得混乱减到最小,使用配置管理技术,使变更所产生的错误达到最小并最有效的提高生产率。

    软件配置管理(Software Configure Management,SCM)用于整个软件工程过程。其主要目标是标识变更;控制变更;确保变更正确的实现;报告有关变更。SCM是一组管理整个软件生存周期中各阶段变更的活动。

    1、基线

    基线是软件生存周期中各开发阶段的一个特定点,它的作用是使各开发阶段的工作划分更加明确,使本来连续的工作在这些点上断开,以便于检查与肯定阶段成果。因此,基线可以作为一个检查点,在开发过程中,当采用的基线发生错误时可以知道所处的位置,返回到最近和最恰当的基线上。

    2、软件配置项

    软件配置项(Software Configure Item,SCI)是软件工程中产生的信息项,它是配置管理的基本单位,对于已经成为基线的SCI,虽然可以修改,但必须按照一个特殊的、正式的过程进行评估,确认每一处修改。

    以下的SCI是SCM的对象,并可形成基线。

    1)系统规格说明书。

    2)软件项目实施计划。

    3)软件需求规格说明书。

    4)设计规格说明书(数据设计、体系结构设计、模块设计、接口设计、对象描述(使用面向对象技术才用))。

    5)源代码清单。

    6)测试计划和过程、测试用例和测试结果记录。

    7)操作和安装手册。

    8)可执行程序(可执行程序模块、连接模块)。

    9)数据库描述(模式和文件结果、初始内容)。

    10)用户手册。

    11)维护文档(软件问题报告、维护请求、工程变更次序)。

    12)软件工程标准。

    13)项目开发小结。

    此外,许多软件工程组织把配置控制之下的软件工具,即编辑程序、编译程序、其他CASE(Computer Aided Software Engineering,计算机辅助的软件工程)工具的特定版本都作为软件配置的一部分列入其中。

    3、版本控制

    软件配置实际上是一个动态的概念,它一方面随着软件生存周期向前推进,SCI的数量在不断增多,一些文档经过转换生成另一些文档,并产生一些信息;另一方面又随时会有新的变更出现,形成新的版本。

    可以采用如下的演变图来表达系统的不同版本,在图中各个节点是一个完全的软件版本。软件的每一个版本都是SCI(源代码、文档、数据)的一个汇集,而且各个版本都可能由不同的变种组成。

    4、变更控制

    软件工程过程中某一阶段的变更均要引起软件配置的变更,这种变更必须严格的加以控制和管理,保持修改信息,并把精确、清晰的信息传递到软件工程过程的下一步骤。

    对于一个大型软件来说,不加控制的变更很快就会引起混乱。因此,变更控制是一项最重要的软件配置任务。为了有效的实现变更控制,需借助于配置数据库和基线的概念。

    配置数据库可以分为以下三类:

    1)开发库。专供开发人员使用,其中的信息可能做频繁修改,对其控制相当宽松。

    2)受控库。在生存期某一阶段工作结束时发布的阶段产品,这些是与软件开发工作相关的计算机可读信息和人工可读信息。软件配置管理正是对受控库中的各个软件项进行管理,受控库也称为软件配置库。

    3)产品库。在开发的软件产品完成系统测试后,作为最终产品存入产品库,等待交付用户或现场安装。

    以上内容来自于中级软件设计师学习教程。

  • 相关阅读:
    MOSS2007图片库的幻灯片视图在IE8标准渲染模式下的bug及其修正
    分享一个WM上绘制饼图、柱形图、折线图的控件类
    C# 中启动进程的三种方法
    SSCLI 包含了微软的CLI ,C#,JScript....的源码,学习.Net的不看怎么行
    (2)继承关系中的多态性编译时与运行时
    .NET.性能:装箱与拆箱、string stringBuilder、struct class、Add AddRangle等影响性能分析
    .NET.GC学习总结
    .NET.GC 浅谈.net托管程序中的资源释放问题 (转帖)
    (1)通过IL来看构造函数
    conda的使用
  • 原文地址:https://www.cnblogs.com/jasonboren/p/13096845.html
Copyright © 2011-2022 走看看