论文摘要
经过20多年的稳步发展,国内软件行业已经形成了一定的产业规模,与此规模相伴随的是:一方面,大中型软件企业为了确保产品质量、规范开发管理,普遍期望向较高等级的软件成熟度模型(CMMI3级以上)提升;另一方面,国际软件离岸外包业务量逐年上升,外包企业在开发流程、交付期限等方面都越来越感受到来自发包方和同行竞争者的压力。上述这些因素使得软件质量保证(SQA)以及缺陷管理开始受到业界越来越多的关注和重视,缺陷管理水平的高低已经成为SQA实施效果的一个重要评价标准。目前许多国际知名软件开发商、大规模软件生产企业及大型外包企业都已经结合其自身相对完善和严格的缺陷管理流程建立了功能完备、同开发流程全程衔接、同开发工具紧密整合的缺陷管理系统;而另一方面,大量成长型企业尚不具备有组织的流程体系,他们需要易用、有效的缺陷管理工具。鉴于此,在开源技术的基础上设计了一套轻量级软件缺陷管理系统,该系统以缺陷记录为中心,建立了相对完善、权限清晰的缺陷跟踪处理流程,适应了中小企业的缺陷管理需求。为提高缺陷数据的使用效果,协助管理者监控缺陷进展,系统针对不同统计项提供了多项统计业务,从多个角度分析缺陷状态,统计结果采用多种文件格式展现,满足不同的报表需求。该系统的显著特点是开源组件、开源框架的充分使用:大到MVC框架、持久层框架、报表引擎,小到定时任务组件、数据库连接池组件、图形组件、列表记录展现组件等,85%以上的基础功能都来源于开源技术。这些技术是在长期激烈的市场竞争中突现出来的,已经获得开发人员的广泛认可,基本能够在产品质量和技术水准上提供相当程度的保障。采用开源技术,极大地缩短了软件开发过程中构建基础组件及应用框架所耗费的时间,可以将主要的开发资源用于系统业务实现。研究及设计这套缺陷管理系统的意义在于:一方面,研究了缺陷管理系统的主要流程和核心功能,分析了其中的关键技术,可以为更复杂的缺陷管理系统提供设计参考;另一方面,作为一个成功实践,系统充分展现了开源技术在企业级应用中的地位和作用,为开源技术在类似系统中的应用做出了有益的尝试。