技术开发 频道

应用版本控制软件管理软件开发

    三. 具体实施

    介绍完版本控制软件的功能后,下面将详细描述版本控制软件的具体实施方法。目前常用的版本控制软件主要有:

    *Sybase ObjectCycle
    *Microsoft Visual SourceSafe

    常用的开发工具有:

    *Microsoft Visual Basic
    *Microsoft Developer Studio (C++, J++,Interdev etc.)
    *Sybase PowerBuilder
    *Sybase Optima ++ (WATCOM C++)
    *Insprise Dephi

    为叙述方便,我们假定开发的基本环境是采用ObjectCycle 2.0作为版本控制工具,PowerBuilder 6.0作为软件开发工具,如果采用别的软件,方法大同小异。

    在开始之前,我们想对PowerBuilder的开发做一个简要说明。PowerBuilder的程序是放在库中,库以pbl作为文件的后缀名;PowerBuilder的入口程序称为“应用”(Application);要运行程序,需要首先在“应用”的“库搜索路径”(Library Search Path)中添加所有系统需要用到的库;如果一个对象在两个以上的库中存在,系统将引用“库搜索路径”中在前面的库中的对象。

    1. 建立用户

    首先在ObjectCycle中建立用户,并将用户分为管理员和程序员两种角色,管理员可以对其他用户进行管理,可以冻结和解冻程序。一般为每一位开发人员在ObjectCycle建立一个相应的用户。

    如果软件开发人员比较多,可以在版本控制软件中建立多个文件夹(Folder),将一个开发人员所编写的所有程序全部放到对应的文件夹,这样便于查找程序的编写者。如果项目模块比较多,还可以分模块建立文件夹。

    2. 建立开发环境

    (1) 首先建立一个局域网,将其中一台电脑作为版本控制服务器,安装版本控制软件服务器部分的程序,所有的源程序也安装在服务器上,并将存放源程序的目录共享出来。

    (2) 开发人员的电脑只需安装版本控制软件的客户端部分和PowerBuilder。安装好程序以后,每位开发人员运行PowerBuilder,将服务器上共享目录中的库文件添加到应用的“库搜索路径”中。

    (3) 在PowerBuilder中建立自己的工作库,将工作库放在“应用”的“库搜索路径”中的最前面。这样做的原因是:每位开发人员只是将自己工作库放在在“应用”的“库搜索路径”的最前面,测试人员的“库搜索路径”包括与他配对的开发人员相应的工作库,这样就实现了每位开发人员都有自己独立的开发环境,未修改好的程序不做Chink in就不会影响其他人员使用已测试过的系统,测试人员也就有了一个独立的基本稳定的测试环境。

    3. 将程序登记入库

    每位开发人员运行PowerBuilder,在库管理功能中选择版本控制软件为ObjectCycle;用管理员提供的用户名及口令连接ObjectCycle Server;定义用户可用的文件夹;将自己编写的程序登记(Register)到ObjectCycle中。

    所有程序登记完成后,由管理员将所有程序冻结。

    4. 修改程序

    如果要修改程序,必须由用户提交需求书,程序员提交程序设计说明书,管理员才将程序解冻。程序员将程序Chink-out到自己的工作库,修改程序,测试正确后,提交测试请求。测试人员进行测试,如果测试不符合要求,提交程序员继续修改;如果测试成功,程序员填写修改解释,然后Chink-in程序,管理员将程序重新冻结,完成程序的修改。让测试人员测试无误后才Chink-in程序,可避免错误的程序影响其他人员使用和测试应用系统。

    在PowerBuilder中,Chink-out为互斥的,如果一个开发人员Chink-out一个文件,那么只有到该程序被Chink-in时,其他开发人员才可以Chink-out该文件,保证了程序的一致性。

    在PowerBuilder中,开发人员可以方便地查看以前修改程序所填写的解释,可以根据需要将程序恢复到以前的某个版本,放弃当前版本。

    5. 新版本的生成

    项目进行到一定阶段,可以在PowerBuilder中建立一个新的版本,新版本的目录名程序名都可以选择新的名字,可以保留或放弃以前的修改记录。

    四.结束语

    总之,在一个项目小组开发环境中,版本控制软件的采用是非常必要的,它就好象建立了一部软件开发的编年史,不仅仅对软件的版本进行了控制,还能够协调多个开发人员的工作,对整个软件的开发过程进行有效的管理,大大提高了软件开发的效率,收到事半功倍的效果。

0
相关文章