质量管理:项目管理的质量保证计划

文章作者 100test 发表时间 2007:11:28 14:05:40
来源 100Test.Com百考试题网


项目管理的保证

项目管理的主要目标是保证项目在规定时间内高质量的完成项目。项目管理包括了项目组开发各阶段的人员结构的配置,质量控制的实施方略,内部文档和产品文档的组织编写等各项工作。

开发项目按照规范化软件的生产方式进行生产,在生产流程上采用ISO9000的标准进行。项目开发参与的角色有项目经理,项目负责人,领域专家,系统分析员,程序员,测试组,技术支持部,质量监督组,文档组。下面就各个角色一一说明其主要职责。

项目经理

主要负责该项目开发商在开发和维护的过程中同客户的商务接洽和开发配合方面的事物,包括:项目合同的签定;提交开发计划给客户; 组织客户与分析人员进行需求确定; 组织客户阶段性验收; 协调客户提供测试环境; 监督项目进度与质量; 提供开发人员所需的各种人力物力资源; 负责项目开发过程中客户、开发项目组、质量监督部,文档组等相关部门的联络与沟通。

 项目的开发采用项目负责人责任制。项目的开发由项目负责人全权负责,负责的范围包括: 项目开发计划的制定; 开发方法的确定; 技术规范的编制; 项目各阶段的人员配给与人员之间的配合; 各阶段文档的生成和版本编号。

 领域专家

主要责任是协同系统分析员认清领域边界,确定领域内容。领域专家可以由客户抽调技术骨干担任,也可以由开发商聘请担任。领域专家在开发过程中主要参与的阶段是系统需求分析,在明确了系统将来要完成的主要任务之后,领域专家的职责转向系统用户界面的确定上。开发出的系统能被客户接受的两个重要指标一个是系统正确性,即系统是否正确的完成了用户希望它完成的任务;第二就是系统操作的便捷性。便捷主要受到使用系统的客户的操作习惯的制约。领域专家往往是多年从事该项工作的人员,他们的使用习惯会对系统的易用性非常有帮助。领域专家参与的开发阶段受到开发方式的影响。

系统分析员

系统分析员是系统开发方法的贯彻者和系统实现的指导者。分析人员主要参与开发阶段的需求分析和系统设计两个阶段(这两个阶段并不是截然分开的,由开发方式的不同,可能会贯穿整个开发工期)。

首先系统分析员和领域专家一起对领域进行分析,确定领域边界和领域内容。在完成这项任务后,系统分析员应当提交《系统需求报告》。《系统需求报告》由领域专家确认之后交给质量监督组进行复审,复审完毕由文档组进行文档规范化,进行存档和版本编号,与此同时,规范化的《系统需求报告》由项目经理转交给客户进行复审(项目经理对《系统需求报告》的内容格式等有审查的义务)。

客户复审完毕之后通过项目负责人转交给系统分析员进行更新修正,并对版本进行升级。之后再经质量监督组和文档组等环节进行流转,直到该报告无须进行再流转为止。 接下来系统分析员的一项主要任务是对领域进行分析和映射,构造系统构架,即进行体系结构的设计。

参与的系统分析员在不止一个时,首先由分析员委员会进行体系结构设计,当体系结构基本确定之后,定义分组和分组之间的接口,特别对将来需要密切接口的部分要进行详细定义,包括彼此间的"通讯协议",时间及方式等等。完成该项工作后必须产生《体系结构设计说明》。《体系结构设计说明》生成后由项目负责人提交给质量监督组进行复审,复审通过之后,由文档组进行格式化和版本编号并存档。《体系结构设计说明》的完整流转过程在开发商内部,客户并不介入。

程序员

为了有效的利用领域专家的资源,在体系结构设计的同时,可以由系统分析员的指导之下,由程序员进行界面原形的开发。界面原形由领域专家进行评审。评审通过后由客户进行复审。界面原形跳过质量监督由文档组进行格式化和存档。质量监督有了解和监督界面原形变化的责任。 程序员参与系统详细设计,主要负责系统的实现工作,并对测试组提供相应的测试资源。由于详细设计的详细程度不易把握,有程序员参与的情况下,系统分析人员与程序员的交流会有助于系统开发进度。在项目代码生产的后期,程序员要进行相应的白盒测试。之后,可执行体提交到测试组进行测试。《系统详细设计说明》由分析员和程序员共同完成。通过项目负责人转交质量监督组进行复审,复审通过后,由文档组进行格式化和版本编号,并存档。

 测试组

主要进行软件的测试工作。上面提到程序员在交给测试人员之前是进行过一定的白盒测试的。测试人员根据详细设计的文档对软件要实现的功能进行一一测试,保证软件的执行体正确的实现设计要求,在此也只证明了软件正确的反映了设计思想,但是否真正反映了用户的需求仍需要进一步的测试。在正确性测试完成之后,需要测试的是软件的性能,软件的性能在本项目中占有重要的地位,性能要求有可能改变软件的设计,为避免造成软件的后期返工,测试在性能上需要较大的侧重。

同样,测试在不同的阶段需要不同的"输入"与"输出"。在正确性测试阶段,不需要太详细的测试计划和测试策略的设计。而在性能测试时,需要分析人员提出测试策略和测试用例,质量监督组同样会提出他们认为必要的测试策略和测试用例,后者提出的测试策略和测试用例被认为是对前者的抽样调查。无论是前者还是后者提出的测试策略和测试用例,都由测试组组织实施。

质量监督组

保证软件透明开发的主要环节。在项目开发的过程中几乎所有的部门都与质量监督组有关。质量监督组对项目经理提供项目进度与项目真正开发时的差异报告,提出差异原因和改进方法。在项目进度被延滞或质量监督组认为某阶段开发质量有问题时,提请项目经理、项目负责人等必要的相关人员举行质量会议。解决当前存在的和潜在的问题。质量监督是建立在文档的复审基础之上,因而文档版本的控制,特别是软件配置管理,直接影响软件质量监督的影响力和力度。文档组则是保证软件质量监督的得以实施的重要保证。

质量监督组的监督范围包括: 系统分析人员是否正确的反映了用户的需求; 软件执行体是否正确的实现了分析人员的设计思想; 测试人员是否进行了较为彻底的和全面的测试; 文档组是否对文档的规范化进行的比较彻底,版本控制是否有效;

文档组

是保证项目开发完毕的同时,内部文档和外部文档都同时完成。内部文档的及时产生和规范,是保证项目开发各小组能够更好的接口和沟通的重要前提,从另一个方面讲,也是保证工程不被某个关键路径所阻塞而延滞的前提。如上所述,文档组还是保证质量监督组得以发挥作用的基础。

文档组的主要职责包括: 完善各个部门发送需要存档和进行版本控制的文档; 对文档进行单向出入的控制; 对所有存档的文档进行版本控制; 书写文档规范,并传达到开发组中; 书写部分外部文档。

 技术支持部

技术支持部的存在是保证软件在用户使用的过程中,为用户提供最及时的技术服务,也为项目开发人员抽身进行新版本软件开发保证。技术支持部的人员能够作到对软件的使用人员进行软件的安装、配置、正确使用进行培训。能够解决由于软件的不当使用产生的各种问题。技术支持部的人员也有对软件系统分析监督的作用。技术支持人员是软件开发过程中的虚拟用户,也就是说在软件未正式提交用户之前,技术支持人员充当用户的角色。

合作伙伴提供的保证

软件的开发我们选用微软公司的Windows平台和Visual Studio为主要开发工具。 我公司是微软(Microsoft)在中国最大的技术方案提供商,在软件开发方面能够直接从微软公司获得最快最全面的技术支持。另一方面,公司能最快速的获得微软最新的企业解决方案的培训和咨询。同时我公司还是微软出版社中国唯一总代理,公司拥有微软最全面的书面资讯。

项目进度的保证

项目进度是项目进行是否顺利的最直观表现。显然在项目开始之前,项目开发计划是必须的。如果项目开发计划的制定的是完全合理的,那项目进度也就真正表达了项目与最终的交付使用之间的距离,然而要制定完全合理的项目开发计划几乎不太可能。可见要保证项目进度,首先要保证项目开发计划尽可能合理。

 项目计划的合理程度与项目计划制定者从事类似规模和类似业务的项目的经验有直接关系,通过经验往往能够预见潜在的阻碍,从而制定较为合理的项目开发计划。本公司已经开发过铁道部的结算系统,开发中的子项目多达六个,历时十五个月,目前多数项目已经开发完毕,有些系统已经投入运营五个月,项目金额数千万元。在这样的项目中,从管理者到开发人员到测试人员都积累了较为丰富的经验,特别是项目开发计划的制定,和项目进度的控制。

项目计划以里程碑为界限,将整个开发周期划分为若干阶段。根据里程碑的完成情况,适当的调整每一个较小的阶段的任务量和完成的任务时间,这种方式非常有利于整个项目计划的动态调整。也利于项目质量的监督。

里程碑就是对项目在开发过程中完成的较大成果的定义,比如需求分析完毕、代码生产完毕、正确性测试完毕,都被定义为一个里程碑,每一个里程碑都需要对完成的界定方式进行定义。比如需求分析完毕为一里程碑,这一里程碑完成的定义是:《系统需求说明》必须经过客户的确认,并在文档组进行了相应的归档工作。当然把完成需求分析作为里程碑不一定恰当,因为系统开发往往伴随着需求的不断变化和新需求的不断产生。 如此又引出新的问题,即如何定义恰当的里程碑,如何界定里程碑的完成。 里程碑将项目分成若干个较小的段,通过保证每一个段的顺利完成,来保证整个项目顺利完成,同时通过每个段的完成质量,可以测度整个项目质量。同时里程碑保证各个阶段的产品的依赖关系尽可能的小,并以完备的文档作为里程碑完成的重要标志之一。在里程碑和完备文档的控制之下,项目已完成的阶段是受到保护的,在任何时间,人员变动,甚至是开发商的变动,都不至于造成特别重大的损失,通过完备的文档,原有的成果能够被延续进行开发。

项目开发方法对项目质量的保证

项目的开发方法对项目的质量和按时完成也有较大的影响。

面向对象的开发方法有利于对问题领域的深入理解,也有利于将问题空间向解空间映射从而得到更加理想和完整的系统模型。同时面向对象的开发方法和实现方法也有利于系统错误被局限在较小的范围内,不会出现骨牌效应。面向对象的开发方法也有不利的方面。开发人员对它的熟悉程度不如传统的结构化的开发方法。对面向对象中新出现的名词需要重新在开发队伍中进行定义,以便在开发的过程中彼此交流时表达的更加准确,从而减少开发队伍之间的通讯量。通讯量的降低意味着效率的提高,减少了占用开发时间讨论一个彼此立场根本一致的"问题"的时间。软件构架定义了该领域中特定对象必然发生关系的发生方式,这种发生方式以构架中抽象类之间定义的关系被固化在构件中,开发人员在开发应用系统时不必再为定义这种相互作用方式而书写代码,这为将来系统的维护奠定了坚实的基础,也为将来新版本软件的透明升级并保持兼容性和正确性提供了有利保证。通过面向对象的继承特性,可以在不伤害原有系统的情况下,任意替换功能模块,从而以效率更高的模块代替原有模块,从另一角度讲,也实现了软件模块的配置功能。要实现真正的软件模块的即插即用,还需要利用面向对象的另一优势--组件。

面向对象使得面向对象的类或对象可以以与语言无关的二进制方式被存储和调用。这就是COM技术。显然软件构架实现的基础是COM组件。由于COM是二进制的方式被存储,因而它可以被任何语言编写的软件所调用。组件与系统分离,只是在发生系统调用时才被调入内存执行,这就保证了系统更高层次的即插即用。

相关文章


秘书考试写作:办公室工作要在创新上求突破
秘书考试技巧心得:员工行为礼仪规范文本
电子商务综合辅导:油价逼近80美元物流面临暴风雨
电子商务综合辅导:首个注册供应链管理师班下月在沪开
质量管理:项目管理的质量保证计划
注册会计师英语加试实用资料大全二(会计英语6)
注册会计师英语加试实用资料大全二(会计英语5)
注册会计师英语加试实用资料大全二(会计英语3)
2007年关于成都市政府政务中心市财政局服务窗口集中办理事项
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛