软件配置管理在高校科研管理系统开发中的应用

时间:2022-07-08 02:48:05

软件配置管理在高校科研管理系统开发中的应用

摘要:阐述了配置管理在软件项目开发中的重要性,对配置管理工具的选择进行了分析。论述了高校科研管理系统开发过程中,Visual Source Safe在设计和测试等阶段的使用。

关键词:配置管理;科研管理;VSS

中图分类号:TP311文献标识码:A文章编号:1009-3044(2009)26-7566-02

Application of Configuration Management in Developing Management System for Scientific Research at College

LI Ai-dong

(Zhenjiang College, Zhenjiang 212003, China)

Abstract: Expounds the importance of the software configuration management in the project, the choice of SCM tools are analyzed. Discusses the use of Visual Source Safe in the design stage and test phase to the development of scientific research management system.

Key words: configuration management; scientific research management; VSS

高校科研管理信息系统对提升校科研管理水平和工作效率,促进高校科研管理工作的开展,更好地为高校科技创新服务有极其重要的作用。它能为科研管理人员提供学校全面、实时、准确地科研信息。

开发高校科研管理信息系统必然会经历软件需求分析、系统设计、编码实现、集成测试、部署、交付、维护和支持的过程。高校的开发资助经费有限,开发周期较短,凡是参加过软件开发的人都清楚,现在的软件项目完全由一个人来完成是难以想象的,通常是有一个研发小组来共同分析、设计、编码和维护,并有专门的测试小组对已完成编码调试的软件进行全面的测试。因此为了提高开发效率和软件质量,节约开发成本,必须采用团队协作开发方式。

在软件开发这个庞大而复杂的过程中,团队每个人将生成各种各样不同的数据,包括文档、源程序、可执行代码,而且软件的修改是不可避免的,小到对某个源文件中的某个变量的定义改动,大到重新设计程序模块甚至可能是整个需求分析变动。如何使其有序、高效地存放、查找和利用就成为了一个突出的问题。而最早的开发人员尝试过的手工解决办法,显然已无法应对这一问题。软件配置管理能很好解决这个问题。

软件配置管理是CMMI可重复级的一个关键过程域,其目的是在整个项目的软件生命周期中,保持软件产品的完整性和可追踪性,这包含了对改变的控制和所有能影响到改变的软件因素的管理,软件配置管理的重要性已被大多数软件及相关企业所认识,是软件项目管理中最有效的工具之一,而配置管理工具的使用是实施配置管理的重要

部分。

1 配置管理工具选择

配置管理工具有很多种,它们适用于不同环境。要所以在选择工具,既要考虑工具时,既要考虑工具本身的特点,又要考虑开发项目的特点。

ClearCase、StarTeam等配置工具软件功能完善,安全性好,可以支持复杂的管理,但成本较高,相关人员需要培训,属于收费软件,比较适合大型的团队开发和建立组织级的配置管理体系。CVS是开发源代码的配置管理工具,其源代码和安装文件都可以免费下载。适合中小型项目开发,缺点是没有生产厂家为其提供技术的支持。如发现问题,通常只能靠自己查找网上的资料进行解决。

鉴于高校科研管理信息系统属于小型软件项目,而且人员、经费、时间都有限,经过比较分析,决定选择Visual Source Safe(简称VSS)作为配置管理工具。首先VSS具备了配置管理所需的基本功能,对于团队开发,VSS提供share(共享)、branch(分支)和合并(merge)的功能。提供文件的版本跟踪功能,对于build和基线的管理,VSS的打标签的功能可以提供支持。在安全性能上,可对文件夹设置不可读,可读,可读/写,可完全控制等四级权限。其次VSS操作使用简单;全部操作都可以通过GUI完成,如Check In/Check Out操作、Get Latest等基本操作;Label、Share、Branch、Merge等高级操作; VSS备份/恢复非常简单;只需要通过拷贝――覆盖就能完成;还有很重要一点,是 VSS对硬件配置要求不高,普通一台P4 PC服务器就能作为配置服务器。

当然最主要的关键是它能解决高校科研管理信息系统开发过程中面临的以下几个问题:

1) 随时将程序恢复到以前某一时间点;

2) 实现程序修改的有效管理;

3) 将开发环境与测试环境、运行环境进行有效的隔离;

4) 评估软件开发人员编写的程序质量,控制软件开发的进度;

5) 管理开发文档。

2 配置管理的应用

配置管理贯穿软件开发全过程,下面以开发高校科研管理信息系统为例介绍对其的应用。

2.1 项目准备阶段

首先需要建立一个SourceSafe Database的数据库,存放所有被VSS管理的文件。将VSS集成到开发环境(Microsoft Access、 Visual Basic、 Visual C++等)中,建立新的项目,项目是用户存储在VSS数据库中的所有文件(file)的集合,它支持文件合并、历史和版本控制。

然后明确与配置管理相关的角色及其相关活动。由于人手有限,在开发过程中,每个人可能身兼数职,如他可能既是软件开发人员,又是配置管理员。但一项任务中同一时刻只能由一个角色来执行。定义软件配置库,配置管理的存储库分为开发库、受控库、产品库。最后制定项目计划以及进度,明确开发工具以及确定需要的控件,定义和标识配置项,配置项可以包括代码、文档、操作系统、支撑软件等等。

2.2 需求分析阶段

需求分析主要包括信息收集、分析和评价、文档编写、评审等一系列步骤,

需求分析的结果是系统开发的基础,关系到开发的成败和软件产品的质量,必须高度重视。对于小型软件项目,编写需求文档和提供解决方案的往往是同一部门,更要注重对用户需求的理解。

项目负责人根据需求分析前期成果提交软件的详细数据流图,数据字典和简明算法描述到VSS服务器;开发人员了解全局需求后,就自己负责部分,提出自己的理解,提交新的版本供项目负责人修改,交互几次,直至两者看法一致,确保需求完整、准确、清晰、具体,至此,正式需求文档形成,以此为基线,并提交到VSS服务器,任何改变将属于需求变更。牢固树立产品需求文档的建立是项目开发过程中进行控制的最首要环节,对达成一致的需求文档的严格变更控制有助于对整个项目的控制。

2.3 设计和编码阶段

软件开发人员有个通病,就是喜欢将想法直接付诸到代码上,而不愿意花时间去编写文档,这是很大隐患。所以文档管理很重要,设计文档包括整个项目的框架设计文档,各个模块的详细设计文档,以及各种接口的设置要求。

权限的分配要合理,在高校科研管理信息系统开发过程中,采用管理员创建权限,项目所有文件组内成员都有读的权限,写的权限只针对自己负责开发的部分。

VSS数据库文件建立在服务器上,开发组的成员不能对该数据库中的文件进行直接的修改,而是由该版本管理器将该项目的源程序或是子项目的源程序拷贝到各个成员自己的工作目录下进行调试和修改,在一般情况下,确保在任何时刻都只有一个成员对某个特定的文件进行修改,这样可以防止文件被其他成员的修改意外更新。当然,VSS管理员可以改变此缺省设置以允许对单个文件同时有多个Checkout,并且仍禁止对他人的修改进行覆盖。修改完后的项目文件作Checkin提交给VSS,VSS再将它从用户的工作目录拷回到VSS的数据库中,其他人又可以对此文件进行编辑了,这样很好解决了协同编码的问题。在用户作Checkout时,VSS将会自动管理他的工作目录,诸如创建必要的子目录。而且工作目录可以随时创建或修改,进行综合更新。

当某个成员向VSS中添加文件时,该文件将会被备份到数据库中,以便所有的成员都能共享该文件。而且每个成员对所有的项目文件所作的修改都将被记录到数据库中,从而使得修改的恢复和撤销在任何时刻,任何位置都成为可能。小组的成员可能得到该项目的最新版本,对它进行修改,并保存一个新的版本。

2.4 测试阶段

软件测试是软件开发过程的重要组成部分,是用来确认一个程序的品质或性能是否符合开发之前所提出的一些要求。总的目标是:确保软件的质量。 软件测试的相关文档,测试代码、自动化测试程序代码均需要作为配置项,纳入到配置管理库中。

由于配置管理覆盖整个软件开发的生命周期,因此测试用例的主要来源,如需求相关文档、概要设计、详细设计等资料都能在配置库中获得,测试人员可以通过阅读这些文档来细化测试用例,找出测试的重点,分解出若干小的“功能点”,编写相应的测试用例。

需求和设计的变更势必引起测试用例的变更,用例跟踪的问题由于VSS的引入,而得到解决,从配置库能得到最新的资料和信息,当需求和设计发生变化时,只需要跟踪“功能点”是否变化,是否增加了新的功能点。

3 结论

用VSS来组织管理项目,使得项目组间的沟通与合作更简易而且直观。由此可见,配置管理的引入是非常有必要的,它直接解决了开发团队所面临的一些难以处理的问题,缩短了开发周期,不仅对软件的版本进行了控制,还能够协调多个开发人员的工作,并且实现了资源重用,规范了软件开发过程,使软件产品更加可靠。在软件项目管理过程中,配置管理的合理运用极大的提高了项目组的工作效率,减少了工作差错,降低项目风险,同时使整个软件项目管理水平得到了有效提高。

参考文献:

[1] 王珍英.配置管理在软件项目管理中的应用[J].计算机系统应用,2008(6):101-104.

[2] 贾宗宣,龚晓峰.基于CVS的软件项目管理的研究[J].微计算机信息,2006,22(2-3):222-224.

[3] 侍作先,高杰.软件配置管理中的数据分析应用[J].江苏科技信息,2008(2):47-48.

[4] Bon J.解析配置管理[J].章斌,译.中国计算机用户,2009(2):45-47.

[5] 尼尔・怀特.管理软件开发项目――通向成功的最佳实践[M].2版.北京:电子工业出版社,2002.

上一篇:洲际专业信息网络开发与应用 下一篇:多线程在串口通信中的应用