1. 研究目的与意义
软件配置管理(SoftwareConfigurationManagement,SCM)是一种标识、组织和控制修改的技术。软件配置管理应用于整个软件工程过程。在软件建立时变更是不可避免的,而变更加剧了项目中软件开发者之间的混乱。SCM活动的目标就是为了标识变更、控制变更、确保变更正确实现并向其他有关人员报告变更。从某种角度讲,SCM是一种标识、组织和控制修改的技术,目的是使错误降为最小并最有效地提高生产效率。
对于配置库中的各个基线控制项,应该根据其基线的位置和状态来设置相应的访问权限。一般来说,对于基线版本之前的各个版本都应处于被锁定的状态,如需要对它们进行变更,则应按照变更控制的流程来进行操作。
版本控制是软件配置管理的核心功能,它可以保证在任何时刻恢复任何一个版本、版本控制还记录每个配置项的发展历史,这样就保证了版本之间的可追踪性,也为查找错误提供了帮助,版本控制也是支持并行开发的基石。本课题就软件配置管理的版本控制相关问题进行研究并给出一个解决方案
2. 课题关键问题和重难点
软件配置管理对于软件开发管理是相当重要,它的主要思想和具体内容在于版本控制。版本控制是软件配置管理的核心思想之一,是指对软件开发过程中各种程序代码、配置文件及说明文档等文件变更的管理。版本控制最主要的功能就是追踪文件的变更。核心和难点就是要将什么时候、什么人更改了文件的什么内容等信息忠实地记录下来。每一次文件的改变,文件的版本号都将增加。除了记录版本变更外,版本控制的另一个难点是并行开发。软件开发往往是多人协同作战,版本控制可以有效地解决版本的同步以及不同开发者之间的开发通讯问题,提高协同开发的效率。并行开发中最常见的不同版本软件的Bug修正问题,就可以通过版本控制中分支与合并的方法有效地解决。
所有置于配置库中的元素都应自动予以版本的标识,并保证版本命名的唯一性。版本在生成过程中,自动依照设定的使用模型自动分支、演进。除了系统自动记录的版本信息以外,为了配合软件开发流程的各个阶段,我们还需要定义、收集一些元数据(Metadata)来记录版本的辅助信息和规范开发流程,并为今后对软件过程的度量做好准备。
3. 国内外研究现状(文献综述)
软件版本控制管理系统调研报告
由于硬件设施的局限性,原来大家并没有采用版本控制,都是在各自的机器上进行单独的开发,然后再提交到技术总监,技术总监根据需要再给不同的人提供不同的源代码或者库进行下一步的开发。
那么这样产生什么问题?
4. 研究方案
做一个基于Web的软件配置版本控制管理系统,简单明了,便于操作。可以将主版本放到服务器端,程序员可以进行各自的开发,可以从服务器上传和下载代码,做到了并行开发。当发现错误时可以恢复历史版本,减少无意义的工作量,保证了版本之间的可追踪性,还方便查错,可以直观的看到版本的变化和错误的产生。
5. 工作计划
主要使用MyEclipse工具、Tomcat服务器进行开发,用到的语言为java语言。采用基于Servlet、JSP、HTML的Web编程,做一个网页版的软件控制版本控制管理系统。采用JQuery、Struts2、Hibernate、Spring等应用开发框架及MVC模式;运用Ajax、JavaScript、XML、CSS等技术;数据库采用MySQL数据库。
首先从网络和书籍中查阅资料深入理解软件配置版本控制。之后进行软件配置版本控制系统的设计,绘制出出所用到的参数和表,创建所需要的数据库,处理好相关的业务逻辑。之后进行系统的开发,用myeclipse搭建一个ssh2或者Spring Hibernate的框架,分出dao,service,model等层,层次逻辑分明,可能会采用工厂模式的设计模式。前端采用JSP CSS JQuery使页面更加美观和多样化。登陆用户等级,便于版本的控制。最后进行系统的测试以及BUG的修改,写出论文对软件配置版本控制进行详细的描述和论证。
具体工作计划:
以上是毕业论文开题报告,课题毕业论文、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。