当前位置:文档之家› 基于软件测试的缺陷管理系统的设计与实现毕业论文

基于软件测试的缺陷管理系统的设计与实现毕业论文

广州大学华软软件学院毕业论文(设计)课题名称基于软件测试的缺陷管理系统的设计与实现——基本业务管理与信息统计分析模块学院华软软件学院系别软件工程系专业班级软件开发2班学生姓名冯名诗学号0740112244指导教师林平荣日期2011年4月10日摘要:软件测试近些年来在国内的发展非常快速,它可作为企业软件项目开发中的软件质量和项目管理的监控技术,逐渐成为企业软件开发的成败直接挂钩的项目过程。

FGWBMS软件缺陷管理系统开发目的旨在建立一个以微软的 MVC2与MSSQL Server 2005为基础,符合CMMI对于软件缺陷管理功能,而且轻量、精致的软件缺陷管理系统(BMS)。

软件缺陷管理为本系统的主要应用目标,同时能够满足不同用户群(如项目经理、测试人员、开发人员)的流程控制,提供足够灵活的接口是实现上述需求的关键。

本论文主要介绍了基于B/S模式软件缺陷管理系统的MVC2三层模式与 Entity Framework(EF)混合开发架构的基本业务与信息统计分析模块的设计与实现,侧重点放在了讨论这个程序的需求分析、设计、实现及所用到的项目管理知识。

对维护人员提交的缺陷报告认真鉴定、筛选、分类,进入不同的处理流程,以获得真正的缺陷跟踪数据。

关键词:MVC2,软件缺陷,BMSAbstract:Software testing develops very fast in recent years domestically. It can be used as the monitoring technology of software quality and project management in the development of enterprise software project, and gradually becomes the project process tied to the success or failure of enterprise software development.The development aim of FGWBMS is to establish a lightweighted and delicated BMS based on Microsoft's MVC2 and MSSQL Server 2005 to which accords with the function request of CMMI.The main application target of the system is to manage the software defect as well as satisfy different user groups’ (such as the project manager, testers, developers) process control above which is achieved mainly by providing the interface flexible enough.This paper mainly introduced MVC2 three-layer model based on the BMS of B/S and the design and implementation of the mixed development framework ’s basic business information as well as statistical analysis which belongs to Entity Framework (EF). The paper emphasises not only on discussing the needs as well as the design of the program but implementing the knowledge of project management. To get the real defect tracking data, we must seriously identificate, screen, classificate the defect reports which is submitted by maintenance personnel and actualize different treatment process.Keywords: MVC2;Software Defect;BMS目录前言 (1)第1章系统分析 (3)1.1 系统设计目的 (3)1.2 功能简介 (3)1.3 系统需求 (3)1.3.1 功能需求 (4)1.3.2 性能需求 (9)1.4 用例分析 (10)1.4.1 主程序用例 (10)1.4.2 项目管理用例 (11)1.4.3 模块管理用例 (12)1.4.4 版本管理用例 (13)1.4.5 缺陷管理用例 (14)1.5 运行环境 (15)1.5.1 硬件环境 (15)1.5.2 软件环境 (15)第2章数据库设计 (16)2.1 数据库设计分析 (16)2.2 数据库字典 (16)2.2.1 T_Project (16)2.2.2 T_P_Version (17)2.2.3 T_P_Module (17)2.2.4 T_Defect (18)2.2.5 T_D_Properties (18)2.2.6 T_D_Log (19)2.3 E-R图 (20)第3章功能模块设计 (21)3.1 MVC模式分析 (21)3.2 E NTITY F RAMEWORK分析 (22)3.3 开发设计模型 (23)3.3.1 系统整体模式架构 (24)3.4 权限模块 (25)3.5 模块结构 (27)3.5.1 母板模块(Shared/ Site.Master) (27)3.5.2 业务模块(View目录下) (27)3.5.3 控制模块(controllers目录下) (30)3.6 核心模块设计 (32)第4章部分功能实现 (35)4.1 MVC2模式 (35)4.1.1 MVC2的强类型 (35)4.1.2 MVC2的代码组织 (36)第5章系统测试 (39)5.1 测试说明 (39)5.1.1 测试平台环境如下: (41)5.1.2 主要测试业务: (41)5.1.3 功能测试: (41)5.2 性能测试 (43)5.2.1 测试对象 (44)5.2.2 测试工具 (44)5.2.3 测试目的 (45)5.2.4 术语及缩写词 (45)5.2.5 计算公式 (46)5.2.6 测试模型 (47)5.2.7 测试过程简述 (47)5.2.8 测试结果 (48)设计总结 (49)致谢 (51)参考文献 (52)前言随着软件产业的发展,软件的质量已经越来越成为软件产品成功的关键性因素,质量保证的一个重要方法就是通过测试活动来尽早的发现问题。

软件测试的出现保证了软件在生产过程中的质量控制,在测试过程中所发现的质量问题就被称为“软件缺陷”。

软件中的缺陷(Defect或BUG)是软件开发过程中的“副产品”。

通常,缺陷会导致软件产品在某种程度上不能满足用户的需要。

每一个软件开发团队都必须知道如何妥善处理软件中的缺陷,这关系到软件生存、发展的质量根本。

在软件开发流程的每个阶段都必须引入软件测试技术,及早测试,杜绝错误的蔓延。

然而,测试工作的天性决定了测试人员可能是开发人员总想回避的角色。

在测试实践的早期,当测试人员查出某个缺陷,报告给开发人员时,多数情况下开发人员会象征性表示一下感谢,然后把测试报告撂在一边,继续忙手头的工作。

事后到底有没有修改,谁也不知道。

如果测试人员频繁给同一开发人员报错或不停地追问缺陷的修改情况,开发人员或许会逐渐丧失好脾气,出于维护技术权威或其他目的,他会狡辩:这不是错误,这是软件的一个特殊功能。

或者说:这不是什么大问题,现在开发进度紧,而且纠正起来也挺麻烦的,等有时间再说吧。

于是,不了了之,问题依旧存在。

为了规避这种情况的发生,软件企业必须引入软件缺陷跟踪管理机制。

测试人员不再需要直接与开发人员接触,甚至不需要知道开发者是谁,查出错误以后,直接报到缺陷跟踪管理系统就可以了(有些测试团队是有写入权限控制的),开发人员做不做修改以及什么时间之前必须完成修改是项目管理部门的事情(当然测试团队也可以提相关建议)。

引入缺陷跟踪管理机制一方面划清了各个角色的职责,避免了不必要争执,另一方面也有助于项目管理部门及时了解软件产品在生产过程中所处的质量状况,从而更好地控制产品的质量。

BMS是Bugs Manager System的缩写,中文意思是"缺陷管理系统",软件缺陷管理是在软件生命周期中为确保缺陷被跟踪和管理所进行的活动。

狭义地讲,BUG是写程序过程中造成的错误。

广义地讲,BUG是影响客户正常使用的任何问题。

就是说,BUG不仅仅是编程中出现的问题,还包括客户需求和功能规范等方面。

那么缺陷管理有什么优点?1.便于查找和跟踪。

对于大型本地化软件的测试,报告的错误总数可能成百上千个,如果在没有错误跟踪系统的情况下,要求查找某个错误,简直是搜索者的恶梦,其难度和效率可想而知。

这样就会导致某个缺陷被遗忘,质量得不到保证。

2.便于跟踪和监控错误的处理过程和方法。

可以方便地检查处理方法是否正确,可以确定处理者的姓名和处理时间,作为工作质量的统计和考核的参考。

3.便于集中管理,提高效率。

本地化服务商和软件供应商共享同一个错误跟踪系统数据库,各自负责处理己方需要处理的软件错误。

对于需要对方提供更多信息的错误,可以通过改变错误的当前信息(状态、处理者、处理建议等),使对方尽快处理。

4.安全性高。

通过权限设置,不同权限的用户能执行不同的操作,保证只有适当的人员才能执行正确的处理。

例如,测试工程师只能报告和验证错误,修复工程师能够修复错误。

5.保证处理顺序的正确性,根据当前错误的状态,决定当前错误的处理方法。

例如,如果是新报告的确认的错误,那么需要修复。

如果是已经修复的错误,需要测试者验证是否完全修复。

6.便于项目结束后的存档。

错误跟踪系统具有方便存储的特点,可以随时或在项目结束后存储,以备将来参考。

在国外,缺陷跟踪对于保证软件质量的重要作用目前已经被大多数软件组织所接受。

在上,几乎每一个比较受欢迎的开源项目,都有十分完备的Bug追踪记录。

目前比较著名的商业缺陷跟踪软件有Compuware公司的TrackRecord。

开源软件有Mozilla的Bugzilla。

相关主题