软考论文_软件项目中的质量管理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
论软件项目中的质量管理
[作者] -[证书编号]
2022年4月26日
摘要:项目质量管理是是项目管理的重要组成部分,是一个项目的性能(功能)、成本、进度3项目指标实现的重要领域。质量管理主要就是监控项目的可交付产品和项目执行的过程,以确保它们符合相关的要求和标准,同时确保不合格项能够按照正确方法或者预先规定的方式处理,项目质量管理中树立质量第一、用户第一的思想,满足广义对产品质量的要求。为了保证软件产品在交付后能够按照用户的需求发挥正常功效,因此在项目实施过程中进行有效的质量管理很有必要,本文就作者的经历就软件项目中的质量管理做一些谈讨。
关键词:项目管理项目质量产品质量质量管理
软件是一个纯智力的特殊产品,描述软件质量的定义则比描述实际物品质量定义面临着更多的困难,所以保证软件质量比保证设备质量更具挑战性和不确定性。传统的观点认为软件产品的质量主要取决于软件产品的测试和确认,而忽视对软件开发过程的重视。但软件质量来自于正确的软件设计和正确的实现过程,而不是靠对软件产品的保证和测试。因此软件质量的保证依靠软件开发过程的有效控制。
1、软件项目质量概念及现状分析
“质量”这一概念在不同时期的定义各不相同【1】。从最初的“符合要求”、适于是用”到“零缺陷”、“满足客户要求”,人们对质量的认识也不断深入。“质量管理”在现代工业生产中的作用也越来越被人们重视。ISO 9000对质量的定义是“一组固有特性满足要求的成都”,这个定义指出:质量应满足客户要求;除了产品质量,体系或过程也有质量要求;质量是不断发展和开放的;质量的最终检验是通过客户和其他相关方面。ISO 9126的信息技术标准为软件质量评估定义了六个产品质量的特性,通过这六个特性可以有效判断软件产品的质量。
从当前信息化发展过程和软件质量管理之间的关系来看,企业信息化过程中的软件质量管理主要存在以下问题:
(1)缺乏软件质量意识,信息化建设中软件质量问题未被完全重视。无形
的软件产品较有形产品隐蔽,软件质量的检查要求一定的知识基础,对软件进行全面的检测、评估需要系统的方法和相关的标准以及评价体系,这样造成了软件质量意识的淡化。同时,在项目交付后,软件质量缺乏科学的量化指标。
(2)追求项目进度,从而忽视了软件质量和软件过程控制。较之国外长期的信息化的实施过程,我国信息化起步晚,底子薄,信息化过程积累的经验相对较少,尚未形成规范的标准和对应的体系,项目实施中不能形成有效的开发组织计划,文档控制和管理不规范,阶段性测试不深入等质量控制问题大量存在。
(3)软件技术处于发展过程,质量管理体系滞后。在开发过程中,对软件的发展高于软件质量的要求。软件开发是高智力的创造性活动,更强调过程的创新和合作。
(4)信息化全过程缺乏有效质量控制体系。信息化过程的流动模式是:需求、调研、选型、招标、开发、测试、上线、维护。该模式的一个环节的质量问题是通过软件生产企业对产品的负责而受到一定的控制,但是大多数质量控制活动仅限软件测试,未对信息化过程的各个阶段质量进行控制。
2、软件项目质量管理方法论
项目质量管理的主要方法包括:确定管理计划、定义合适的软件、确定软件需求、迭代开发、代码走样、软件评审、软件测试几个方面【2】:
1)确定软件管理计划
计算机软件是计算机得以运行的重要保证,它是计算机顺利运行的基础。在进行软件开发前。需要有一个软件质量保证计划,用于规划运行计算机软件的运行,设施的调适,并对可能出现的事情进行事先预防。软件质量管理的内容一般包括:计划实行目的;软件质量管理的相关理论分析和参考文献作保障;在软件质量管理时,组织的领导,以及组织实施任务的责任;软件质量管理的执行标准和约定,用以规范软件执行;计算机软件执行过程中,需要对软件进行详细的审计,以保证计算机软件的规范性;对于计算机软件的实施,要进行软件验证和确认评审,以确认软件能够有效的起效益,特别是对软件的各项功能进行调适,以确认其适应性;要正确运用各项工具、技术和方法,来规范计算机软件操作控制;要记录、收集计算机软件维护时的数据,收集第一手资料,为日后的做准备;要加强员工的风险管理培训意识,提高操作的可行性,保障计算机软件能够持续有
效的运行,提高组织效率
2)定义合适的软件过程
软件过程是一个为建造高质量软件所需完成的任务的框架,即形成软件产品的一系列步骤,包括中间产品、资源、角色及过程中采取的方法、工具等范畴。在以计算机网络为基础的现代社会信息化背景下过程管理作为现代企业管理的先进思想和有效工具,随着外部环境与组织模式的变化而变化。因此作为一个好的软件项目过程,必须针对企业和项目的实际情况,确定软件项目运作流程,定义软件功能及相关性能明确各阶段的进入条件和退出条件进行有效的过程控制与管理,在提高软件开发的效率和项目的成功率的基础上进一步保证所开发软件的质量。
3)确定软件需求
对于任何软件项目而言,需求是一个重要的环节,也是软件开发的基础。需求获取可能是软件开发中最困难、最关键、最易出错及最需要交流的方面。往往用户需求明确变更少的项目的成功率就高,因此,需求分析的成败直接决定后期软件产品的成败。但是,在现实软件开发过程中,用户的需求总会由于各种不同的原因而不断发生变化。这就给软件项目过程实施带来不确定因素,导致项目组在开发阶段不停的返工,进而造成代码质量低下,测试拖期等一系列问题。因此在项目实施过程中,为了保证软件开发的顺利进行和最后交付的产品质量,应该对项目需求变更进行管理。
(1)需求应尽量明确。在项目开发过程中要尽早明确用户需求,有些内容一时无法确定则应该暂缓该部分的开发,尽量降低因需求变更而带来的风险。
(2)对需求变更进行管理。当需求分析完成后项目就进入开发阶段,用户可能会因为市场或策略的变化而提出需求变更的要求。此时,若是合理变更则有利于项目实施,但有时所作的变更可能会影响项目整体的设计和开发,造成项目进度的延期。对于这一情况,项目组应该积极与用户沟通,制订需求变更说明书,在双方都认可的情况下方可实施。
4)迭代开发
通过转向迭代开发,改变客户和开发团队之间的交互模式,客户和开发团队都可以避免产生大量的分歧。在一个迭代开发的项目中,客户应该是构建应用团