廖莎莎
(巢湖学院,安徽 巢湖 238000)
探究CRM域版本控制与SCM智能终端的实现过程
廖莎莎
(巢湖学院,安徽 巢湖 238000)
结合成熟的SVN版本管理工具同SCM软件配置管理理论,从CRM域版本管理的工作需要角度出发,叙述了SCM过程中的变更控制和版本控制。使用开源软件SUBVERSION和APACHE搭建支持WEB访问的版本管理工具系统,提出了基于智能终端安全访问,有效地使变更处于便捷、科学、有效的受控状态。
SCM软件配置管理;SVN版本控制系统;版本管理能力;智能终端
1.1 概念
软件配置管理英文简称SCM。在1993年出版的Steve McConnell的《Code Complete》中,SCM被定义为“配置管理能够系统地处理变更,从而使得软件系统可以随时保持其完整性。配置管理又可称为‘变更控制’,可以用来评估提出的变更请求,跟踪变更,并保存系统在不同时间的状态。 ”[1]
1.2 实施目的及功能
SCM是通过技术或行政手段对软件产品及其开发过程和生命周期进行控制、规范的一系列措施。它能有效管理软件的开发过程,对软件系统的多重版本进行系统管理,全面记载系统开发的历史过程,包括谁做了修改,修改原因以及修改内容,并对过程中危害软件质量、影响开发周期的缺陷和变化进行追踪管理[2]。
SCM活动设计一个能够融合于现有的PM项目管理过程,通过以这一SCM过程为框架从而再造组织的软件生命历程。
SCM不仅要承担控制变更的责任,还要标志单个的SCI和软件各种版本,审查软件配置和报告配置上的变更等五大任务,即SCM的标志、变更控制、版本控制、配置审核和配置状态报告[3]。其中变更控制和版本控制是最基本的两大任务。
2.1 变更控制
软件产品的不可见性和易于掌握的特性,使得软件的构建人员经常面临着无休止的变更。
基本原则:遵循ITSM系统需求的变更控制手续;整体考虑变更请求来进行需求评估;告知相关干系人变更的成本;为确保系统过程的稳定性从而组织大量的变更状况出现。
2.2 版本控制
版本控制是利用工具来管理在软件开发过程中所建立不同版本的配置对象,从而确保任何时候都能提取正确的版本和版本的组合。版本控制系统是保存文件多个版本的一种机制。
图1 SCM配置管理与PM项目管理实现关系
图2 版本变更控制内容图
为保证版本管理过程开发者在版本变更后及时的写入内容,同时获取最新版本内容,并准确的同步和定义基线,基线应该是先下已确定的、可付诸实施的、具备有正确状态可执行的版本。
使用SUBVERSION和APACHE搭建支持WEB访问的版本管理工具。SVN服务器采用SUBVERSION-1.6.1和HTTPD-2.2.14成熟开源软件。配置APACHE支持SVN,修改HTTPD. CONF文件尾部,增加SVN访问配置,配置权限管理的配置,采用MD5给用户加密。第一步:建立核心仓库 RESPOSITORY;第二步:设置权限:SVNSERVER中的名字和密码;第三步:启动SVNSERVE服务器。涉及到日常使用的软件是WINDOWS下客户端TortoiseSVN工具和IE浏览器。
4.1 J2ME与Web服务客户端访问Web服务的模式
通过J2ME与Web服务技术集成的方式,J2SE和J2EE提供了大量的类库支持网络应用的开发,相关类包含在java.net中,同时通过框架的接口Connection来进行网络通信。
APACHE搭建WEB访问,由于Web服务是基于XML,可以借助J2ME Web Services来实现直接或间接处理XML的功能,用户可远程访问基于SOAP/XML的Web服务。J2ME Web服务客户端应用程序步骤:①WSDL XML描述远程服务的文档的生成相应存根;②在自己代码中创建存根实例;③实例化之后,利用存根调用web服务提供的方法。
4.2 安全认证
利用数字认证技术实现相关数据和身份的加密,常见的方法RSA算法和MD5加密算法,其中MDS算法可以简要的描述为:MD5以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组串联后将生成一个128位散列值。
数字认证体制主要是为了解决互联网的信任问题,首先,假设有用户群中某个用户A和CA服务器B,A是发送方,B是接收方,那么,主要的问题是B如何信任A的问题,也就是说,B如何确认A的身份,可采用做法如下:
图3 数字认证过程
①A使用Md5 Hash算法,对A将要发送的明文信息进行处理,生成长度为16bytes的字符串,作为A要发送明文信息的摘要1。
②A再使用自己的私钥,对摘要1进行加密,因为只有A知道自己的私钥,其他人在有限的网络传送时间内是无法破解的,这个加密的摘要就标志了A的身份,作为A的数字签名。
③然后A再将要发送的原始信息和数字签名打包,放到一个对象里面,发送给B用户。
④B收到A的明文后,首先也使用相同的Md5 Hash算法对信息进行摘要提取,产生摘要1。
⑤而B用户有个经过公证处公证的A的对外开放的密钥,也就是公钥,对A的签名进行解密验证,产生新的摘要2。
⑥最后需要做的是比对摘要1和摘要2,如果摘要1和摘要2雷同,则认为数据确实是由A发送的,如果摘要之间存在差异,则B会拒绝A的读写请求,并通知A当前存在安全隐患。
软件版本管理能力=团队成员技能+使用工具+项目规模+管控过程。SCM在智能终端管理上可以有效地提升效率,随时随地安全接入使版本变更处于受控状态,降低版本实施风险,保证版本基线尽可能处于稳定状态。
[1]高显俊.数字校园IT基础设施配置管理系统的设计与实现[D].北京:北京林业大学,2006:45.
[2]钟东红.UNIX平台下软件开发安全配置管理的系统实现[D].成都:电子科技大学,2011.
[3]褚卉.试论软件配置管理的五大任务[J].科技情报开发与经济,2009,(8):109-111.
THE REALIZATION PROCESS OF CRM DOMAIN VERSION CONTROL AND SCM INTELLIGENT TERMINAL
LIAO Sha-sha
(Chaohu College,Chaohu Anhui 238000)
Through the combination of SVN version management tools and the SCM software configuration management theory,starting from the CRM domain version management work,this paper states the change control and version control in the SCM process.Version management tool system is built to support WEB access using the open source software SUBVERSION and APACHE,and the intelligent terminal security access model is put forward,keeping the change in the effective and convenient,scientific,effective control.
SCM software configuration management;the SVN version control system;version management ability;intelligent terminal
陈 侃
TP315
A
1672-2868(2015)03-0016-04
2015-03-20
廖莎莎(1983-),女,安徽祁门人。巢湖学院,实验师,硕士。研究方向:信息安全。