时间:2024-09-03
中国电子科技集团公司第二十八研究所 袁海林 陈 钧
大型信息系统是指以信息技术和通信技术为支撑,规模庞大,分布广阔,采用多级网络结构,跨越多个安全域,处理海量的,复杂且形式多样的数据,提供多种类型应用的大系统。
软件配置管理(Software Configuration Management,SCM)是一种标识、组织和控制修改的技术。软件配置管理应用于整个软件工程过程,是在贯穿整个软件生命周期中建立和维护项目产品的完整性。而软件版本管理是实现软件配置管理的基础和核心,对软件研制过程中的产生的各种资源,包括源码、软件构件、文档、数据等进行全方位跟踪管理。在大型信息系统研制过程中,实施有效规范的软件版本管理,直接影响系统产品的质量水平。
在信息系统中,软件产品及其研制过程的质量控制占据十分重要的地位。为确保软件产品的可靠姓和稳定性,市面上已出现较多成熟的软件版本管理工具,常见的主要有:CVS、SVN和Mercurial等。采用软件版本管理工具在一定程度上可以提高软件产品质量,但是,在大型和复杂的信息系统中,软件规模日益庞大,需求不断更新,导致软件版本频繁升级。因此,提高软件版本管理现代化水平,实行科学且安全的出入库管理,具有极其重要的意义[1][2]。
软件版本管控无序的主要原因如下:
(1)大系统项目软件承研单位多,软件版本和规范要求多元化,造成软件版本管控无序。多家单位共同承担时,项目策划不周全、要求不明确、管理水平参差不齐等因素会导致形成风格迥异的软件版本,难以管控,造成版本混乱。
(2)人为因素,出入库手续不齐备。在大系统软件研制过程中,开发人员较多,且水平各有高低。开发人员的业务水平将直接影响软件产品本身的质量,部分开发人员为了完成任务,避开正常的出入库手续,配置管理人员无法掌握最新的版本状态,造成版本混乱。
(3)没有明确的标准规范指导软件出入库工作。在大系统软件研制过程中,需求不断更新,软件缺陷亟待解决,在这两者并行过程中,若不遵循统一的标准规范执行,容易造成版本混乱。
因此,本文针对大型信息系统研制过程中软件版本控制进行了梳理,规范软件出入库流程,并制定出合理的度量考评方案,期望对软件版本管理进行有效控制[3]。
软件版本管理是对软件研制过程中的状态变更进行管控。在大系统研制及实施中,用户需求和软件缺陷是决定软件状态变更的主要因素,一方面,软件在用户体验上还存在提升空间;另一方面,软件自身还不稳定,存在各种缺陷,需要解决。此时,开发人员需要对研制软件进行修改升级重新提交版本。
组织人员编写软件版本管理规范,明确升级要求等,同时对开发人员进行集中宣贯,确保要求统一便于管理。
在软件研制过程中,明确项目负责人、开发人员、配置管理人员等各级人员的职责。项目负责人进行统筹管理,开发人员对研制的软件进行版本管理,配置管理人员对各家提交的软件进行版本管理。
软件入库是指将软件、文档、数据等软件资源提交配置管理人员形成软件配置管理库的过程。软件出库是指从软件配置管理库中输出软件、文档、数据等软件资源的过程。明确软件出入库所需条件和手续,规范软件出入库流程并严格执行。
(1)软件入库资料准备
软件研制单位人员接到入库通知后,做好软件入库资料准备工作,应确保资料安全无病毒。软件入库主要包括软件、数据、文档等。
(2)软件入库申请
软件研制单位人员做好软件入库准备工作后,填写入库申请表,经过审批后方可入库。
(3)软件状态检查
配置管理人员首先对入库内容进行病毒检查,确保资料安全无病毒,然后依据入库申请表,按系统和版本对入库软件、数据和文档进行分类管理,保证软件能够按照不同技术状态分类正确部署。
(4)软件入库管理
配置管理人员将状态检查无误的软件资料入信息系统软件配置库,入库后软件如需升级更新,需经过审批且按流程重新入库,避免频繁升级、无序升级和私自升级。
(5)软件出库申请
软件出库必须有“出库依据”,使用方应按要求填写出库申请单,明确定位出库内容并经过审批方可出库。
(6)软件出库管理
配置管理人员依据审批后的出库申请单,准确输出软件资料并交接给使用方。
信息系统软件入、出库过程详细过程如图1、图2所示。
图1 信息系统软件入库过程图
图2 信息系统软件出库过程图
为有效进行过程控制,持续过程改进,必须对过程数据进行测量和采集,并做出过程资产得以有效保存,在出入库管理过程中,较为有效的度量数据主要为软件出入库操作流程合格率。
软件出入库操作流程合格率是指按照软件出入库规范执行的数量与软件出入库的总数量之比,其计算公式为:
式中:
NS——为按照软件出入库规范执行的数量
NG——为软件出入库的总数量
为衡量当前过程能力,随机抽取了10个项目,对其软件出入库情况进行统计分析,得出的软件出入库操作流程合格率见表1。
表1 软件出入库操作流程合格率统计表
使用minitab软件分析得出,当前软件出入库操作流程合格率均值为75%。过程基本稳定。现设定目标出入库操作流程合格率为85%时可以看出,当前过程能力较差。
图3 当前过程能力分析图
为提高软件出入库操作流程合格率,改进小组通过头脑风暴法、因果图法、调查访谈法对可能存在的问题及改进可能性进行了分析研究。
经过分析,现有的出入库表格模板不适用、现有规范不完善、缺乏必要的监控机制是影响软件出入库操作流程合格率的主要原因。
改进小组针对上述问题重新设计了出入库表格模板,对出入库数据明确了采集时机和要求。
改进小组对改进措施实施后的软件出入库操作流程合格率进行抽样统计分析发现,不合格比例有明显下降,软件出入库操作流程合格率均值达到85.53%。
软件版本管理因其重要性,一直受到软件行业的重视,各种软件版本管理方法和工具在一定程度上帮助我们更好的理解这项工作,但在面对大型、纷繁复杂的信息系统时,如何拨开迷雾,切实规范出入库过程,保障软件版本受控,做好软件版本管理工作,仍需要我们投入更多的精力进行研究并认真执行。有效的软件版本管理,不仅大大提高软件开发效率,也进一步加强了软件的稳定性和问题的可追溯性。当然,本文无论是从方法设想还是具体实施细节上均不可能做到完美,需要后续继续进行研究论证。
[1]冯济舟.软件配置管理典型问题的研究与思考[J].北京:航天标准化,2013:44-46.
[2]力志,东一舟.数字化资源库的出入库策略研究[J].南京:南京广播电视大学,南京师范大学,2013:51-54.
[3]李志杰.版本控制技术在团队协同开发中的应用研究[J].广西:桂林电子科技大学,2012:168-170.
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!