软件开发的系统和方法

文档序号:6597428阅读:157来源:国知局
专利名称:软件开发的系统和方法
技术领域
本发明涉及计算机软件开发技术领域,尤其涉及一种软件开发的系统和方法。
背景技术
任何一种软件产品的开发大都不是一个人可以完成的,往往需要多人协同开发。 在软件开发过程中,需要不断地对代码进行修改和调试。在实现本发明的过程中,发明人发现,现有的开发软件的流程将编写代码和测试 代码的过程分开,并属于不同的系统,使得开发人员和测试人员的工作不能在团队中共享。 并且,程序代码经过多次的修改调试后,问题的记录和管理也比较困难。由于软件开发流程 没有统一的管理,以使得软件开发的进程缓慢。

发明内容
本发明的实施例提供一种软件开发的系统和方法,能够提高软件开发进程。为达到上述目的,本发明的实施例采用如下技术方案一种软件开发的系统,包括创建模块,置于客户端,用于创建程序代码;版本管理模块,置于服务器端,用于保存由所述创建模块创建的程序代码;提交模块,置于客户端,用于将由所述创建模块创建的程序代码传送至所述版本 管理模块中;测试模块,置于客户端,用于从所述版本管理模块中获取程序代码进行测试;缺陷管理模块,置于服务器端,用于保存由所述测试模块获取的所述程序代码缺 陷。一种软件开发的方法,包括由所述创建模块创建程序代码;提交模块将所述程序代码传送至置于服务器端的 版本管理模块中,由所述版本管理模块保存所述程序代码;测试模块从所述版本管理模块 中获取程序代码进行测试;由缺陷管理模块保存由所述测试模块获取的程序代码缺陷。本发明实施例提供的软件开发的系统和方法,通过将程序代码的创建、测试、修改 等工作集成在一个系统中,使得开发人员和测试人员的工作能够在团队中共享;并且,代码 缺陷也由专门的模块来管理,使得修改的代码缺陷能清楚地记录。解决了现有技术中由于 没有统一的开发流程管理,而造成的软件开发进程缓慢的问题。本发明的实施例提供的软 件开发的系统和方法,能够提高软件开发进程。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明 的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例提供的软件开发的系统结构示意图;图2为本发明实施例提供的软件开发的方法流程图。
具体实施例方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例 中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是 本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员 在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。为了解决现有技术中由于软件开发流程没有统一的管理,而造成的软件开发进程 缓慢的问题,本发明实施例提供一种软件开发的系统和方法。如图1所示,本发明实施例提供的软件开发的系统,包括创建模块,置于客户端,用于创建程序代码。在本实施例中,采用企业级工作平台 MyEclipse (MyEclipse Enterprise Workbench, MyEclipse)来编写代石马。MyEclipse 是对 Java集成开发环境EclipseIDE的扩展,利用它可大大提高工作效率。复查模块,置于客户端,用于对由所述创建模块创建的程序代码进行代码质量审 核,并创建质量审核文件。在本实施例中,开发人员编写出代码后,采用Jupiter软件来审 核代码,以纠正代码在格式等方面不规范的问题。创建的质量审核文件以扩展标记语言XML 的形式存储,并且,该质量审核文件中的问题与具体的代码之间有对应关系,例如,在实际 使用的过程中,可以通过点击质量审核文件中具体的问题跳转到该问题所对应的代码段, 还可以通过点击有质量问题的代码段跳转到具体的问题描述。并且,该质量审核文件中的 问题列表还支持各种查询方式,例如,可以根据所述问题的责任人查询,也可以根据所述问 题所处的状态查询。提交模块,置于客户端,用于将由所述创建模块创建的程序代码传送至所述版本 管理模块中。在本实施例中,通过Subclipse软件提交代码到服务器,实现在客户端就可以 对服务器上的代码进行管理的功能。开发人员可以在MyEclipse中边写代码边提交。版本管理模块,置于服务器端,用于保存由所述创建模块创建的程序代码。在本实 施例中,所述版本管理模块为版本管理软件Subversion,简称SNV。SVN接收由Subclipse 传送来的代码,并保存。测试模块,置于客户端,用于从所述版本管理模块中获取程序代码进行测试;缺陷管理模块,置于服务器端,用于保存由所述测试模块获取的所述程序代码缺 陷。在本实施例中,所述缺陷管理模块为BugFree软件,该BugFree软件和所述版本管理 软件Subversion可以安装在同一台服务器上,也可以安装在不同的服务器上。BugFree 和Subversion可以通过对具体文件的参数配置,实现两个软件的结合使用,即实现 BugFree与Subversion同步更新修改后的程序代码的功能。所述修改后的程序代码由所 述MyEclipse创建,并由所述Subclipse传送到Subversion中。此外,该缺陷管理模块还 用于创建所述更新程序代码的日志,将更新代码的动作记录下来。具体的过程如下当开 发人员在BugFree中发现代码缺陷时,在MyEclipse中修改代码,并由Subclipse传送到 Subversion中。例如,假设修改的代码为branch/BugFree2. 0_demo/Bug. php,该代码的缺陷Bug号为123,则在提交代码时,在提交注释中写明svn ci-m ‘fix bug#123’,表明修改 了 bugl23。修改后的新代码提交到Subversion中,同时,查看BugFree中Bug号为123的 Bug,会发现其多了一行类似以下格式的注释Changeset[510]by Franc,2009-11-10 090909+0800 (Tues. IlSep 2009)U branch/BugFree2. 0_demo/Bug. php[diff]其中,[510]表示提交后的版本号;Franc表示提交人;2009-11-10 09:09:09+0800 (Tues. IlSep 2009)是提交时间;U branch/BugFree2. 0_demo/Bug. php 是 修改的文件列表,若一次提交有多个修改的文件,则分行显示;[diff]表示该版本与前一 版本的差异比较链接。下面对实现BugFree和Subversion软件结合的具体方法进行详细描述首先下载压缩文件BugFreeforSVN. tar. gz,其中包含两个文件svn_ci. php和 post-commit,其中,post-commit是执行文件,它通过调用svn_ci. php来实现BugFree禾口 Subversion功能的结合。将所述post-commit文件放置在Subversion的hooks目录下, 将svn_ci. php放置在Subversion的任意一个指定目录下;其次,修改所述svn_ci. php和 post-commit文件中的配置参数修改 svn_ci. php define ( ‘API_NEWLINE,,chr (0 X 03)) ;//API 行分隔符,默认不用修改define ( ‘API_DEVIDER,,chr (0 X 04)) ;//API 列分隔符,默认不用修改define ( ‘API_KEY,,‘Y0UR_KEY,) ;//API 加密 KEYdefine ( ‘API,,“http://127. 0· 0. 1/bugfree/api. php,,) ;//BugFree 的 API 地址define ( ‘USER_NAME,,‘admin,) ;// 用于向 BugFree 提交 SVN 信息的用户名define( ‘USER_PASSW0RD,,‘el0adc3949ba59abbe56e057f20f883e,);//用 户加密后的密码define ( iVIEffVC', ‘http://bugfree.svn.sourceforge.net/viewvc/ bugfree/,) ;//ViewVC查看代码的根地址{Impost-commit:PHP_EXE = /phppath/php,#php 可执行文件的路径CHECK_IN_PHP =,/somwhere/svn_ci. php,#svn_ci. php 的路径SVN_L00K_EXE =,/svnpath/svnlook' #svnlook 可执行文件的路径将上述参数配置好后,就可以实现BugFree与Subversion的同步更新了。本发明实施例提供的软件开发的系统,通过将程序代码的创建、测试、修改等工作集成在一个系统中,使得开发人员和测试人员的工作能够在团队中共享;并且,代码缺陷也 由专门的模块来管理,使得修改的代码缺陷能清楚地记录。解决了现有技术中由于没有统 一的开发流程管理,而造成的软件开发进程缓慢的问题。本发明的实施例提供的软件开发 的系统,能够提高软件开发进程。
如图2所示,本发明实施例还提供一种软件开发的方法,包括步骤201,由所述创建模块创建程序代码;步骤202,由复查模块对所述程序代码进行代码质量审核,并创建质量审核文件;步骤203,提交模块将复查后的程序代码传送至置于服务器端的版本管理模块中, 由所述版本管理模块保存所述程序代码;步骤204,测试模块从所述版本管理模块中获取程序代码进行测试;步骤205,由缺陷管理模块保存由所述测试模块获取的程序代码缺陷。进一步地,所述方法还包括由开发人员从所述缺陷管理模块中获取具有缺陷的代码进行修改;将修改后的程 序代码传送至所述版本管理模块中;所述缺陷管理模块同步更新所述修改后的程序代码, 并创建所述更新程序代码的日志。实现以上方法的各个模块之间的关系可以参见图1所示的系统结构图,此处不再赘述。本发明实施例提供的软件开发的方法,通过在一个统一的系统中完成程序代码的创建、测试、修改等工作,使得开发人员和测试人员的工作能够在团队中共享;并且,还能进 行代码缺陷管理,使得修改的代码缺陷能清楚地记录。解决了现有技术中由于没有统一的 开发流程管理,而造成的软件开发进程缓慢的问题。本发明的实施例提供的软件开发的方 法,能够提高软件开发进程。本发明提供的技术方案可以应用在java开发的技术领域中。以上所述,仅为本发明的具体实施方式
,但本发明的保护范围并不局限于此,任何 熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵 盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
权利要求
一种软件开发的系统,其特征在于,包括创建模块,置于客户端,用于创建程序代码;版本管理模块,置于服务器端,用于保存由所述创建模块创建的程序代码;提交模块,置于客户端,用于将由所述创建模块创建的程序代码传送至所述版本管理模块中;测试模块,置于客户端,用于从所述版本管理模块中获取程序代码进行测试;缺陷管理模块,置于服务器端,用于保存由所述测试模块获取的所述程序代码缺陷。
2.根据权利要求1所述的软件开发的系统,其特征在于,所述系统应用于java开发领域。
3.根据权利要求1所述的软件开发的系统,其特征在于,所述系统还包括复查模块,置于客户端,用于对由所述创建模块创建的程序代码进行代码质量审核,并 创建质量审核文件。
4.根据权利要求1或3所述的软件开发的系统,其特征在于,所述版本管理模块和所述 缺陷管理模块置于同一台服务器上,或者分别置于不同服务器上。
5.根据权利要求1或3所述的软件开发的系统,其特征在于,所述缺陷管理模块还与所述版本管理模块相连,用于与所述版本管理模块同步更新修 改后的程序代码;所述修改后的程序代码由所述创建模块创建,由所述提交模块传送至所 述版本管理模块中。
6.根据权利要求5所述的软件开发的系统,其特征在于,所述缺陷管理模块还用于创 建所述更新程序代码的日志。
7.一种软件开发的方法,其特征在于,包括 由所述创建模块创建程序代码;提交模块将所述程序代码传送至置于服务器端的版本管理模块中,由所述版本管理模 块保存所述程序代码;测试模块从所述版本管理模块中获取程序代码进行测试; 由缺陷管理模块保存由所述测试模块获取的程序代码缺陷。
8.根据权利要求7所述的软件开发的方法,其特征在于,所述由所述创建模块创建程 序代码之后,还包括由复查模块对所述程序代码进行代码质量审核,并创建质量审核文件。
9.根据权利要求7或8所述的软件开发的方法,其特征在于,所述方法还包括 修改由所述测试模块获取的程序代码缺陷;将所述修改后的程序代码传送至所述版本管理模块中; 缺陷管理模块同步更新所述修改后的程序代码。
10.根据权利要求9所述的软件开发的方法,其特征在于,所述方法还包括在缺陷管 理模块同步更新所述修改后的程序代码之后,创建所述更新程序代码的日志。
全文摘要
本发明实施例公开一种软件开发的系统和方法,涉及计算机软件开发技术领域。以解决现有技术中由于软件开发流程没有统一的管理,造成的软件开发进程缓慢的问题。本发明提供的技术方案包括创建模块,置于客户端,用于创建程序代码;版本管理模块,置于服务器端,用于保存由所述创建模块创建的程序代码;提交模块,置于客户端,用于将由所述创建模块创建的程序代码传送至所述版本管理模块中;测试模块,置于客户端,用于从所述版本管理模块中获取程序代码进行测试;缺陷管理模块,置于服务器端,用于保存由所述测试模块获取的所述程序代码缺陷。本发明提供的技术方案可以应用在java开发的技术领域中。
文档编号G06F9/44GK101814026SQ201010033880
公开日2010年8月25日 申请日期2010年1月11日 优先权日2010年1月11日
发明者奉昊, 宋三英 申请人:北京世纪高通科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1