论软件项目质量管理2.doc_第1页
论软件项目质量管理2.doc_第2页
论软件项目质量管理2.doc_第3页
论软件项目质量管理2.doc_第4页
论软件项目质量管理2.doc_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

论软件项目的质量管理论软件项目的质量管理摘要:本文讨论了在智能企业管理信息系统开发项目中如何实施质量管理解决各种问题的过程。2004年10月本人作为该项目的质量经理以及该一个子项目的项目经理参与了该系统的开发。该系统包括十大业务系统和三大应用平台,每个业务系统是一个独立的子项目。系统采用B/S、WebService架构,使用J2EE作为开发语言,采用Oracle数据库。产品需求来自于产品的2.0版本,专家以及客户,工期限定为2.5年3年,交付物包括软件系统和全部开发文档及全部项目文档。该系统采用该项目产品线长,功能多,模块间关系复杂,需求的来源复杂,周期长,参与人员多,可预见的风险非常多。本文论述了本人从项目启动阶段如何实施质量规划、质量保证、质量控制,如何控制质量成本来保证项目在预算内交付并达到质量目标。在软件项目的质量管理中需要对“人”的质量进行控制和管理。正文: ISO9000:2008版标准关于质量管理是这样定义的“质量管理是在质量方面指挥和控制组织的协调活动”。项目质量管理指的是围绕项目质量所进行的指挥、协调和控制等活动,它具有复杂性、动态性、不可逆性和系统性。软件项目质量管理则在项目质量管理的特点上还有考虑软件系统本身的特点。2004年10月,公司的智能企业管理信息系统3.0正式立项,该系统是公司最重要的一个软件产品,目标是应用于资产密集型企业,但第一个阶段主要应用在发电厂,该产品以实现发电企业管控一体化的管理为目标,整个系统由十大业务系统三大应用平台构成。十大业务系统包括:厂级监控系统、企业资产管理系统、优化检修管理系统、安全生产运行系统、燃料管理系统、工程项目管理系统、全面预算管理系统、辅助决策管理系统、协同办公管理系统和网络资源管理系统;三大应用平台包括:业务设计平台、工作流平台和报表平台。该产品为发电企业的业务追溯、资金监管、信息抽取、绩效考核、辅助决策提供了有力的管理工具,可切实保障实现效益最大化的管控目标。各个业务系统均可以看作是一个独立的软件系统,同时各个业务系统之间关系又非常复杂,数据互相引用。系统采用B/S、WebService架构,使用J2EE作为开发语言,采用Oracle数据库。产品需求来自于产品的2.0版本,专家以及客户。全部业务完成的工期限定为2.5年3年。产品的交付物包括通过验收的软件系统、全部的设计资料以及项目管理过程资料。整体项目任命了一位总的产品线经理,同时为各个业务系统任命了项目经理,本人在该项目中作为工程项目管理系统的项目经理和整个项目的质量经理开展工作,作为整个项目的质量经理负责整个项目的质量管理的规划与实施。该项目产品线长,功能多,模块间关系复杂,需求的来源复杂,周期长,参与人员多,同时对于最终产品的质量要求比较高,因此可预见的风险就非常多,同时还存在很多不可预测的风险。为了能够按时的、在预算内且产品达到质量要求的完成项目,我和产品线经理从开始就非常重视项目的质量管理和项目过程的管理,在项目启动时就做了充分准备:按照该系统的特点,首先选择了整个项目要遵循的过程并对过程的产出进行了初步定义;其次约定在针对总的项目计划和每个子项目的计划时均编写质量保证计划;第三设立了质量保证小组、测试小组和配置管理小组实施质量控制和质量保证;第四约定了项目紧急、意外情况的处理机制;第五将需求、设计和开发作为核心过程进行关注;第六在项目的各个阶段按照其对质量影响的不同程度进行相应程度的落实。果然,在后续的工作中我们遇到各个子项目之间进度不统一,互相之间有紧前关系,需求的选择与平衡,需要评审的文档非常多,项目人员进出等一系列的问题,但是由于我们提前有所考虑,并科学的采用了软件项目质量管理的技术,最终还是按时向公司交付了合格的产品,顺利通过了产品验收。软件项目的质量管理是一个在软件项目生命周期内需要持续使用质量计划、质量控制、质量保证和改进措施的过程。在整个项目的生命周期过程中,我针对该产品的特点,采取的主要质量策略为:一、在科学的质量管理理论指导下,按照质量管理流程实施管理;二、重视开发过程中“人”的质量管理;三、重视质量管理与其它项目管理过程的关系;四、在其它一些提高项目质量的方面开展一些工作。一、在科学的质量管理理论指导下,按照质量管理流程实施管理。1、质量规划。在项目启动阶段进行质量规划。 “质量出自计划和设计,而非出自检查”,良好的项目质量管理计划有助于争取的指导项目管理行为。质量管理计划最重要的是识别每一个项目相关的质量标准,把满足项目质量标准的活动或过程规划到项目的产品和管理项目的过程中去。质量管理计划描述了项目管理团队咋样建立质量策略,描述质量体现即组织结构、职责、程序、工作过程以及建立质量管理所需要的资源。1)制订质量管理计划及质量检查单等我以项目章程、项目管理计划、项目范围说明书作为依据,参考了历史项目经验,查阅了公司软件开发相关流程、规范和制度,在质量规划时开展了如下工作: 选择了迭代的生命周期模型作为该项目的总的生命周期模型,子项目则选择瀑布模型作为该项目的生命周期模型。主要是考虑到各个子项目之间进度难以一致,但又关系密切,而早期的需求也容易变化的情况。 对软件开发过程和项目管理过程进行“裁剪”,选择和合适的开发过程并根据产品规模及需求易变、复杂、来源多的特点对需求管理、设计评审、单元测试、质量保证等几个环节进行了进一步细化,提出了更具体的要求。 明确了将能力成熟度模型CMMI作为公司的质量策略。考虑软件自身的特点和将要面对的客户的要求考虑的。 在公司的质量方针“科技领先、优质高效、客户至上、遵信守约”和公司在软件产品方面的质量目标“产品发布:BUG 修复率不低于98%”的基础上,进一步明确了本项目的质量目标,定义了各个阶段的验收标准。 针对选用的各个过程、标准以及规范,采用流程图、因果图等分析方法对项目进行了整体分析,明确了监控的关键点,并据此制订了详细的质量检查单。 为保证过程的顺利进行以及持续改进,对过程的改进进行了定义。2)根据该项目开发的特点,选择了CVS作为源码的配置管理工具,VSS作为文档的配置管理工具,并制定发布了配置管理工具的使用规范(含使用手册)。每个人每天开发的源码每天在指定时间必须上传,第二天开发必须先下载。所有的项目管理文档、开发过程文档(需求、设计、编码、测试用例等)、质量管理文档(质量管理计划、检查单、纠正措施等按照规范存储在VSS中。3)为对任务安排、进度管理以及各种角色的人员共享信息,组织团队首先开发了项目组公用的工作平台,包括任务的安排、跟踪以及反馈等功能、进度报告、项目成员工作报告提交和反馈以及各角色必须掌握的知识等功能。4)针对每个子项目,在项目计划时,制定质量保证计划。质量保证计划的主要内容包括:质量管理计划和质量检查单部分内容: 质量管理计划:2流程剪裁计划序号偏差内容原因详细描述备注3.质量目标序号度量质量目标说明产品公司基线目标下限上限目标下限上限出厂bug总数量60/模块40/模块80/模块出厂时bug修复率98%95%100%重大问题遗留情况3/模块0/模块5/模块序号度量优先级质量目标说明过程公司基线目标下限上限目标下限上限本月计划执行偏差15%10%18%总计划执行偏差17%12%20%序号度量优先级质量目标说明业务公司基线目标下限上限目标下限上限需求覆盖率二次开发规模 7、质量保证和质量控制活动(例如)活动责任人说明需求说明书评审产品经理由项目经理组织对需求说明书的评审,通过评审的才能将需求提交给设计人员。业务系统提交验收测试项目经理项目经理组织、设计人员测试工程师参与业务系统提交的验收测试,bug修复率满足质量目标时才允许提交。质量检查表(1) 需求分析需求是否完整?是否考虑对其它业务系统的影响?需求是否有所遗漏?是否超出了项目范围?需求的描述是否达成了一致?等等 2、执行质量保证 制定一项质量计划确保一个项目的质量是一回事,确保实际交付高质量的产品和服务则是另一回事,质量保证贯穿于整个项目生命周期。质量保证是一项管理职能,包括所有有计划的系统的为保证项目能够满足相关的质量标准而建立的活动。质量保证是一种管理评审,重在合规性检查。质量保证为持续改进过程提供保证。具体的在项目的各个阶段,组织开展了如下质量保证工作1)项目初期,设立了专门的团队执行质量保证工作,具体包括配置管理小组、测试小组和质量保证小组。2)有序的执行质量保证依据在质量规划时输出的质量管理计划、质量度量标准、过程改进计划、工作绩效信息以及变更请求和质量控制测量结果,有步骤的执行质量保证,在执行过程中,对一些关键过程特别重视。针对需求管理可能存在的问题,设立了需求评审小组,专门对需求产生的问题和纠纷进行评审,协调,并对需求的变更进行控制。通过这些方法,有效的保证了需求尽可能少的变更。在每个子项目的重要阶段,进行质量审计,以保证满足下一个阶段的进入准则以及获取经验教训,提高本子项目后续阶段和其它子项目的质量。审计内容包括:项目本阶段的活动是否符合公司政策、确定的规范,过程的产出是否符合目标计划以及可能原因等。遵循过程改进计划的步骤,对项目的过程进行分析,从组织角度识别需要改进的地方。在分析过程中采用了作业成本分析和流程分析法。在执行质量保证时,对项目可能产出请求的变更、建议的纠正措施(通过过程分析和审计得到)。根据质量保证结果的改变更新了质量管理计划,进而更新了项目管理计划,这些计划的更新均走正常的变更流程,经申请、批准后执行,所有这些过程文档均进入配置管理系统。3、严格质量控制质量控制就是采取有效措施,监督项目的具体实施结果,判断它们是否否合有关的项目质量标准,并确定消除产生不良结果原因的途径。质量控制是确保项目质量得以完满实现的过程,质量控制贯穿于项目执行的全过程。项目质量控制是一个系统过程,应从项目的全过程入手,全面、总和的进行控制,主要从以下两个方面进行了控制: 产品的控制,软件产品的控制主要通过测试来实现,代码走查和单元测试重点在代码级进行检查,而集成测试则是在各个业务系统的功能模块间进行测试,系统测试是将各业务子系统集成在一起进行测试。每一个层次的测试都提前设计测试用例,制订测试计划并对测试过程和结果进行记录,测试完成后提交测试报告,包括对缺陷的各种角度的分析。过程的质量控制,过程控制通过项目审计进行,将管理过程的作业与成功时间的标准进行比较所做的详细检查,对于软件开发项目,主要就是开发过程的质量控制。控制的手段包括对各个阶段的过程文件进行检查,对工作成果进行积极的评审等。在具体的执行该项目的质量控制时,我们对质量管理计划、质量保证计划中设置的检查点,测试人员按照作业程序进行测试检查,这些检查的结果必须得到项目经理的确认。质量控制过程最常用的方法包括:检查、控制图和帕累托图。软件项目中,大多数的问题和缺陷产生与相对有限的原因,满足80、20定律。按照这种方法,可以通过对缺陷的分析,找出具体的核心的原因,以便将最重要的资源花着最重要的事情上。二、 重视开发过程中“人”的质量。高质量的软件产品,必须依靠热心于质量,以提高质量产品为荣的专业人士开发。因此控制开发过程中“人”的质量非常重要。加强了对开发人员的管理、教育和培训。这些人员均为高级知识分子,主要采用Y理论来对其进行激励。对这些人员开展质量、技术、业务等各个方面的教育和培训。三、 重视质量管理与其它项目管理过程的关系项目质量管理是项目管理的重要组成部分,与其它过程共同为项目目标的实现做贡献。质量管理计划是项目计划的一部分。项目质量成本是项目成本的一部分,项目质量成本需要列入预算。质量管理过程各种工作成果的变更控制服从项目整体管理。项目质量管理的质量保证、管理评审为项目风险识别和监控增加输入。处理好这些关系,才能够使质量管理工作有效进行。四、在其它一些提高项目质量的方面开展一些工作除了使用好的质量规划、质量保证、质量控制这些有效工具外,我们这个项目的成功还得益于以下几个方面: 公司领导的重视和给予的积极的支持,在项目遇到困难时给予积极的帮助,在资源方面尽量满足等。 有一个良好的工作环境,在正常的工作环境外,建立了活动室,可以打乒乓球、跑步,也可以喝喝咖啡,在沙发上聊聊。同时还提供水果和各种饮品。晚间如果加班,则有宵夜。阶段性的还可以组织一些外部的娱乐活动。 良好的团队氛围。在公司大环境的影响下,项目团队成员之间友好、和谐,积极的解决问题,让大家在一个信任、开放的氛围中工作。 适宜的培训。对项目团队成员提供了业务、制度、流程等各个方面多种层次的培训,以满足工作的需要,人的质量决定了产品的质量。 规范的软件开发和项目管理过程。公司确定采用CMMI的质量策略后,就请了专业的团队帮助梳理了原有的开发和项目管理过程,定义出更加规范适宜的软件开发和项目管理过程。这极大的提高了整个项目的水平。【结束语】 软件项目质量管理

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论