欢迎来到天天文库
浏览记录
ID:23273140
大小:57.50 KB
页数:7页
时间:2018-11-06
《基于软件开发过程的软件缺陷管理研究》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、基于软件开发过程的软件缺陷管理研究在众多软件质量指标中,软件缺陷是最为直观和最为重要的指标。因此,通过对软件缺陷的评估来进行软件质量控制是一种很好的方法。对缺陷分布情况进行仔细分析,建立一套缺陷管理系统是十分必要的,文中主要阐述了缺陷管理流程以及如何使用测试工具建立缺陷管理系统。关键词:软件测试;缺陷管理 1引言 软件企业对软件质量的重视程度越来越高,软件测试在软件研发中的地位越来越重要。软件测试可以发现软件中存在的缺陷,通过改正这些缺陷以提高软件的可靠性。 软件缺陷会存在于软件产品的整个生命周期中,测试是发现
2、缺陷的主要手段,也是它的主要目的。测试活动和开发活动一样,是项目质量保证不可或缺的重要部分。因此,对于测试活动的主要产物:缺陷,我们需要建立一个完善的缺陷管理流程,来对缺陷进行报告、查询、分类、跟踪、处理和验证等。软件测试的主要目的在于发现软件存在的缺陷,为了不影响测试效果,需要及时正确的处理测试中发现的错误,保证软件符合需求设计的目标。在实际的软件测试过程中,建立一套完备的软件缺陷跟踪管理系统是十分必要的,建立这样一个系统,我们首先需要清楚每个不同bug的严重性以及它们的优先级分类,其次是每个bug需要经过的测试管
3、理流程。 2 软件中缺陷出现的原因 2.1 设计修改 在软件开发过程中用户需求的改变导致设计方案的更改,每次改动都为缺陷的出现提供了一次机会。在软件的后期修改维护中由于客户要求、时间限制等原因未审核修改的设计方案或未对缺陷做准确的分析,程序员在修改过程中可能出现只修改问题所在的地方,而没有对问题进行发散思维,而导致新问题的出现。 2.2 测试遗漏 在软件测试过程中测试用例设计的好坏、测试人员水平的高低,测试工具使用的熟练程度,以及对所测试软件的理解深度都影响着测试设计的完善程度。而测试用例设计的不全面,或测
4、试方案的不周密,以及测试人员执行时产生的偏差都可能导致缺陷不能及时发现。 2.3 缺陷的概率特性 部分缺陷的出现具有概率性和偶然性,需要在反常的数量,频率,或者资源的方式下执行才能表现出来。 2.4 缺陷的潜伏性及阶段性 部分缺陷的触发条件不容易满足而呈潜伏状态。在嵌入式系统中多进程多任务中的问题、系统容错性的问题、内存的问题所表现出的潜伏性更加复杂多变,而导致发现缺陷需要很长的周期或特定的测试环境。 2.5 缺陷的周期性和隐蔽性 由于一些缺陷的存在导致软件中部分代码未被执行,而存在于未被执行的代码中的缺陷
5、呈现隐蔽状态。通过周期性的缺陷的修复及再测试才会发现这些隐蔽的缺陷。 3缺陷管理流程 一般的缺陷管理流程如图1所示。测试人员提交新的Bug入库,错误状态为New。高级测试人员验证错误,如果确认是错误,分配给相应的开发人员,设置状态为Open。如果不是错误,则拒绝,设置为Declined状态。开发人员查询状态为Open的Bug,如果不是错误,则置状态为Declined;如果是Bug则修复并置状态为Fixed。不能解决的Bug,要留下文字说明及保持Bug为Open状态。对于不能解决和延期解决的Bug,不能由开发人员自
6、己决定,一般要通过某种会议(评审会)通过才能认可。测试人员查询状态为Fixed的Bug,然后验证Bug是否已解决,如解决置Bug的状态为Closed,如没有解决置状态为Reopen。 软件缺陷流程管理的要点是为了保证错误的准确性,需要有丰富测试经验的测试人员验证发现的错误是否是真正的错误,书写的测试步骤是否准确,可以重复。每次对错误的处理都要保留处理信息,包括处理姓名,时间,处理方法,处理意见,Bug状态。拒绝或延期错误不能由程序员单方面决定,应该由项目经理,测试经理和设计经理共同决定。错误修复后必须由报告错误的测
7、试人员验证后,确认已经修复,才能关闭错误。加强测试人员与程序员的交流,对于某些不能重复的错误,可以请测试人员补充详细的测试步骤和方法,以及必要的测试用例。图1软件缺陷管理流程 4使用测试工具建立缺陷管理系统 一个缺陷跟踪系统,需要实现几部分的功能: 1)缺陷的上报,当问题被发现后,可以通过系统进行提交、保留,方便跟踪。 2)缺陷录入系统后,项目经理应该可以通过缺陷跟踪系统进行浏览,定期获得最新的缺陷问题报告。 3)项目经理将缺陷问题报告通过缺陷跟踪系统转交给程序员,程序员可以通过缺陷跟踪系统知道自己负责的修
8、正的缺陷问题报告。 4)缺陷问题的修正处理,当程序员修复问题后,可以通过跟踪系统,通知项目经理问题已修复。 5)对于无法根据缺陷报告重现的问题,也可以通过跟踪系统,向项目经理及测试人员要求更多更详细的信息,并将缺陷问题返回至项目经理重新处理。 6)问题暂缓及申诉过程处理,对于缺陷报告提到的问题,如在当前版本无法实现或者缺陷与需求有冲突的时
此文档下载收益归作者所有