一种软件开发方法及系统与流程

文档序号:11406873阅读:204来源:国知局
一种软件开发方法及系统与流程

本发明涉及计算机技术领域,特别涉及一种软件开发方法及系统。



背景技术:

随着计算机技术的发展,可以实现各种功能的软件被开发出来,数量也越来越多。在开发软件时,采用的通常方法为:首先,编写高质量的软件代码;其次,编写完整的单元测试;再次,对所述软件代码进行审查;再次,对审查后的软件代码进行白盒测试,也就是逻辑驱动测试;最后,对软件代码进行黑盒测试,也就是测试软件代码可以实现的功能。完成后,就实现了软件代码的开发工作,就可以运行软件代码,实现其功能。

但是,采用上述方式进行软件开发过程,在实施各个步骤时都存在缺陷,具体地说:编写高质量的软件代码需要有经验的程序员完成,程序员水平参差不齐,只能通过严格的代码编写规范来约束代码风格和常见语言错误,全靠人工实现,无法保证软件代码的质量一定符合要求;在对所述软件代码进行审查时,通常需要组织多个有经验的开发人员同时对软件代码的一个功能单元进行审查和讨论,人工审查需要事先了解审查单一的功能并且具备相应的经验,花费时间长,执行过程中常常流于形式,在时间紧迫的软件开发周期内,不乏因为缺少对代码的审查造成软件发布后异常的情况,造成的损失难以估算;在进行白盒测试时需要有熟悉软件代码的高水平的测试人员完成,而大多数开发团队并没有能完成相关工作的合适人员;在进行黑盒测试时,必须以场景测试为核心,验证软件功能的可用性,无法完全覆盖代码逻辑,无可避免地在某些特殊情境下代码执行异常。

综上,采用上述方式进行软件开发,需要大量的高水平且了解软件代码的各个功能单元的人员手工安按照整个测试流程才能完成,不容易实现,花费的时间及成本很高。

更进一步地,虽然软件代码质量需要有严格的规范来约束,尽量不使用不正当的写法不造成难以排查的漏洞(bug),但是,仍然避免不了软件代码出现bug,需要在软件发布后,对软件代码进行修复。在对发布的软件进行功能增强或修复过程中,对发布的软件代码进行修改,有时软件代码的改动会对软件运行造成意想不到的异常情况,牵一发而动全身,可能由于软件代码的修改对软件的运行造成问题。这时,仍然需要对修改后的软件代码进行审查、白盒测试及黑盒测试等过程,不容易实现,花费大量的时间及人工成本。



技术实现要素:

有鉴于此,本发明实施例提供一种软件开发方法,该方法能够使得软件开发过程简单且易于实现。

本发明实施例还提供一种软件开发系统,该系统能够使得软件开发过程简单且易于实现。

根据上述目的,本发明是这样实现的:

一种软件开发方法,包括:设置软件开发系统,该方法还包括:

所述软件开发系统对接收的软件代码进行编译;

所述软件开发系统对编译后的软件代码审查,得到审查文档;

所述软件开发系统对编译后的软件代码进行逻辑测试及功能测试,得到测试文档;

所述软件开发系统将审查文档及测试文档发送。

一种软件开发系统,所述系统包括:编译单元、审查单元、测试单元及报告反馈单元,其中,

编译单元,用于对接收的软件代码进行编译;

审查单元,用于对编译后的软件代码审查,得到审查文档;

测试单元,用于对编译后的软件代码进行逻辑测试及功能测试,得到测试文档;

报告反馈单元,用于将审查文档及测试文档发送。

由上述方案可以看出,本发明实施例设置软件开发系统,该系统可以对软件代码的修改内容进行增量编译后,自动对软件代码审查,自动化执行软件代码逻辑测试及功能测试,最后将编译、软件代码审查及测试过程中的结果整理为文档,发送出去供相关人员参考。由于本发明设置的软件开发系统能够自动完成软件开发的各个流程,所以过程简单且易于实现,缩短了软件开发的时间及降低成本。

附图说明

图1为本发明实施例提供的软件开发方法流程图;

图2为本发明实施例提供的软件开发方法具体例子流程图;

图3为本发明实施例提供的软件开发系统结构示意图。

具体实施方式

为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明作进一步详细说明。

本发明实施例为了使得软件开发过程简单且易于实现,设置软件开发系统,该系统可以对软件代码的修改内容进行增量编译后,自动对软件代码审查,自动化执行软件代码逻辑测试及功能测试,最后将编译、软件代码审查及测试过程中的结果整理为文档,发送出去供相关人员参考。这样,就可以自动完成软件开发的各个流程,所以过程简单且易于实现,缩短了软件开发的时间及降低成本。

图1为本发明实施例提供的软件开发方法流程图,设置软件开发系统,其具体步骤为:

步骤101、所述软件开发系统对接收的软件代码进行编译;

在该步骤中,软件代码可以是全新的,也可以是增量的,这里可以不限制,如果是软件代码是增量的,可以进行增量编译;

步骤102、所述软件开发系统对编译后的软件代码审查,得到审查文档;

步骤103、所述软件开发系统对编译后的软件代码进行逻辑测试及功能测试,得到测试文档;

步骤104、所述软件开发系统将审查文档及测试文档发送。

在该方法中,在步骤101中,还包括:根据接收的软件代码进行测试程序的编译;

在步骤103中,所述进行逻辑测试是根据测试程序对软件代码进行测试。

在该方法中,还包括:所述软件开发系统将通过测试的软件代码并入对应的软件代码分支,并发送并入报告。在这个情况下,通过测试的软件代码为对应的软件代码的增量代码。

在该方法中,在步骤101中,还包括:如果编译失败,则建立编译报告并发送,所述发送可以是发送错误邮件或即时消息。

在该方法中的步骤102,还包括:如果审核失败,则建立审核失败并发送,所述发送可以是发送错误邮件或即时消息。

在该方法中的步骤103,还包括:进行逻辑测试及功能测试失败,则记录失败报告及提交代码的提交人,发送给提交代码的提交人,发送方式采用发送错误邮件或即时消息方式。

本发明实施例设置的软件开发系统设置了软件代码测试的各个阶段流程,当运行时,测试人员根据所述系统的指示,依次进入编译阶段、审查阶段、逻辑测试阶段及功能测试阶段,并在每个阶段按照运行的所述系统进行相应操作并得到相关的报告,从而无需测试人员需要对软件代码开发的全局进行把控,操作简单且易于实现。

举一个具体例子说明,图2为本发明实施例提供的软件开发方法具体例子流程图,其具体步骤为:

步骤201、测试人员提交软件代码到所述软件开发系统中;

步骤202、所述软件开发系统检测到软件代码要变更,建立任务,对软件代码中的变更部分进行增量编译,同时编译得到测试程序;

在本步骤中,具体地,步骤202a,如果编译失败,则确定软件代码提交人员,通过所设置的报告反馈功能发送错误邮件或即时消息;

步骤202b,如果编译成功,则继续后续步骤的执行;

步骤203、所述软件开发系统对编译后的软件代码进行静态审查,排除软件代码中的不良语法造成的隐患;

在本步骤中,具体地,步骤203a,如果审查失败,则确定软件代码提交人员,通过所设置的报告反馈功能发送错误邮件或即时消息;

步骤203b,如果审查成功,继续后续步骤的执行;

步骤204、所述软件开发系统触发测试任务,根据编译的测试程序对软件代码进行测试,并记录得到测试程序的执行结果;

在本步骤中,具体地,步骤204a,如果测试失败,则确定软件代码的最后一次提交的测试人员,记录测试失败结果,通过所设置的报告反馈功能发送错误邮件或即时消息,提醒开发人员及时修改完善;

步骤204b,如果测试成功,则继续后续步骤的执行;

步骤205、所述软件开发系统进行全功能的回归测试,并记录得到全功能的回归测试结果;

在本步骤中,具体地,步骤205a、如果测试失败,则记录测试失败的测试用例及失败结果,通过所设置的报告反馈功能发送错误邮件或即时消息;

步骤205b,全功能回归测试通过,继续执行后续步骤;

步骤206、所述软件开发系统将完成测试的软件代码并入迭代的软件代码分之,并通过所设置的报告反馈功能发送错误邮件或即时消息。

图3为本发明实施例提供的软件开发系统结构示意图,该系统包括:编译单元、审查单元、测试单元及报告反馈单元,其中,

编译单元,用于对接收的软件代码进行编译;

审查单元,用于对编译后的软件代码审查,得到审查文档;

测试单元,用于对编译后的软件代码进行逻辑测试及功能测试,得到测试文档;

报告反馈单元,用于将审查文档及测试文档发送。

在该结构中,编译单元,还用于根据接收的软件代码进行测试程序的编译后,发送给测试单元;

测试单元,还用于根据测试程序对软件代码进行测试。

在该系统中,所述系统还包括并入单元,用于将通过测试的软件代码并入对应的软件代码分支;

所述报告反馈单元,还用于发送并入报告。

采用本发明实施例提供的系统及方法,由于是所设置的软件开发系统规范化整个软件代码的开发,使得软件代码在提交到系统后,自动执行编译、代码审查及功能测试,提高软件开发效率。采用本发明实施例提供的系统及方法,减少了测试人员工作,只需要维护各软件开发系统的各个测试阶段,也就是测试用例即可。采用本发明实施例提供的系统及方法,减少了软件代码中误写错误和简单语法错误,提高了代码质量。采用本发明实施例提供的系统及方法,减少软件代码开发人员的功能测试花费时间,使得软件代码开发人员集中精力解决主要问题。采用本发明实施例提供的系统及方法提高软件代码质量来保证软件质量,减少了测试成本及极大程度降低软件发售后由于质量问题造成的损失。

以上举较佳实施例,对本发明的目的、技术方案和优点进行了进一步详细说明,所应理解的是,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1