还剩5页未读,继续阅读
文本内容:
项目管理中的某些问题
一、为什么要实行CMMI一种软件项目可以成功欧I最基本特性就是整个软件项目是在一种合理的计划指引下,有序地完毕各项规定的任务这涉及十个最基本的因素这些因素都可通过建立CMM/CMMI模型所获得日勺它们是」建立一种清晰肚I视野涉及明确整个和各阶段要实现的目的,以及也许存在的多种风险等这些可通过科学地评估和周密的筹划所得到i获得一种相对稳定和完整的书面需求需求的变更是导致软件产品质量下降和开发工作混乱的重要因素之一通过需求管理可以最大限度地减少这项风险1建立一种有效的与客户之间沟通的渠道和措施与客户沟通的有效性,直接影响着客户对产品日勺满意以及对尽量减少开发成本和风险,缩短开发周期」实行有效项目开发过程管理和控制严格执行项目开发计划,并及时解决浮现多种技术和管理问题在此过程中还要不断收集产品、过程和体系产生的多种数据为此后有效开展改善工作奠定基础」精确和迅速辨认开发工作中所浮现的多种问题采用纠正和避免措施,避免问题再次产生i持续改善软件产品开发活动自身带有许多无法克服日勺困难和障碍持续对开发过程、措施和手段是必不可少因此必须建立一种持续改善日勺机制1有效地和严格地控制开发活动中的变更变更是软件开发活动中必不可少和典型的活动是影响团队协调的重要因素严格和有效地控制变更活动,保证软件产品的I完整性」保证软件开发活动中技术与管理两类活动的I有效结合技术与管理是一辆车的两个轮子〃只有两者有机地结合,才干最经济地开发出顾客满意的I产品1严格控制内外部接口特别是软件开发过程中日勺分包活动清晰地和有效地理解、掌握以及控制分包方的工作及产品,独立地和客观地评估各项开发活动及产品,保证不受外部其他因素的干扰
二、实行的|好处CMMI
1、提高公司国际竞争力,获得更多的商业机会固然在招投标中也有相应的好处
2、规范公司的开发流程及管理更好口勺积累经验,保存过程资产
3、协助公司重新审视自己的公司,是一种公司开发能力成熟度的一种体现所谓知己知彼百战百胜也就是这个道理吧
4、通过实行规范欧J流程,对问题、风险进行管理,可以减少软件开发过程中的风险因此,CMMI有助于公司建立自身和品牌的良好形象,在公司营销上也具有良好的商业价值
5、在CMMI日勺推动过中可以找到自身的优缺陷,推动过程改善从而提高产品质量、控制成本、提高劳动生产率
三、实行的环节CMMI在评估计划已提交、Readiness Review进行完毕并对ATM进行过培训后可以进入正式评估阶段,大体过程如下(固然具体过程与主任评估师日勺安排有关,评估前主任评估师会与受评单位沟通拟定正式评估现场流程安排)
1、文档证据评审,重要是审查PIID中的文档证据;
2、有关人员访谈,涉及项目经理、开发人员(需求、开发、测试)、支持组(QA、配备人员)、EPG、0T、中高层、出资人……ATM及LA记录访谈证据;
3、整顿证据,顺序为个人、小组、评估组依次评审,形成对评估成果的I初步认定;
4、预发布,会将整顿好的成果分为管理层与开发与支持层两组进行发布(这里只是发布发现日勺证据,涉及描述与强弱项等,但不会发布评估时成果),预发布后收集补充证据,受访者可就描述有异议处提交补充证据阐明;
5、根据最后收集欧I证据对各SG进行评分,得到评估成果;
6、正式评估成果发布;
7、就下一步改善建议与高层沟通
四、的工作内容?QA
1、制定SQA计划
2、软件过程和规程培训
3、进行产品审核和活动评审
4、报告不符项,并拟定纠正措施和期限
5、跟踪纠正措施日勺执行
6、填写周工作报告并抄送项目组
7、进行阶段和项目日勺工作总结并上报主管
五、在项目组中的作用QAQA究竟是什么?它是做什么的?能带来什么好处?相信接触过CMM的人对其中这个核心角色应当不感到陌生,也许也或多或少地懂得它的I某些工作内容尽管如此,诸多人对这个角色日勺价值以及必要性也许还并不真正地理解,这里作者结合数年的质量管理经验总结了QA的十大价值所在,但愿能协助大家更进一步地理解QA
(1)保障制度体系
(2)促使过程改善
(3)指引项目实行
(4)增长透明度
(5)评审项目活动
(6)审核工作产品
(7)协助问题解决
(8)提供决策参照
(9)进行缺陷避免
(10)实现质量目的
1、保障制度体系无论是CMM/CMMI还是IS09000等其他管理思想,它都是强调法治而非人治,实行CMM也是但愿能通过它将某些优秀的软件工程化开发经验用一套合理、规范的制度沉淀固化下来,使项目日勺成功不再成为一种偶尔这其中体现了一种三权分立日勺思想SEPG(软件工程过程组)相称于是立法机构,负责建立、维护、改善公司的开发过程体系;SEG(软件工程组)则是执行机构,来执行这套开发过程,按照软件工程化的思想来实行项目;而QA则是督促这些规范贯彻实行的监督机构了作为一种国家,监督机构的必要性和重要性不必多说同样,作为一种公司,监督机构也是非常必要改I试想一下,如果公司花了大量的人力物力建立了一套规范的开发制度,每个项目启动时也制定了多种周密的计划,却缺少相应日勺机构来进行督促,那么项目在实行过程中是很容易由于这样或那样的因素而偏离既定轨道日勺,导致项目难于得到有效地控制而公司的制度、项目的计划也就变得形同虚设公司日勺制度事实上就相称于公司日勺法律,如果有法不依,执法不严,违法不究,久而久之这套制度就只是一纸空文了,挥霍了大量的人力物力来建立却毫无用处因此就非常需要存在QA这样一种机构来维护公司开发制度的I权威性,并督促项目计划得到有效地实行
2、促使过程改善SEPG建立了一套规范过程后,并不表达这个过程就一成不变了,规范自身也必须不断地得到改善才干保证它日勺对的J性和有效性虽然过程规范在发布之前都必须通过评审,但并不表达只要通过评审就能发现所有的问题,还必须通过实践日勺检查才行正所谓没有最佳只有更好,因此过程的改善也是永无止境的I它的I变化往往是来自两个方面,一方面也许是这个过程自身存在的缺陷和错误暴露出来了,促使SEPG必须去完善性的改善;另一方面也许是当时过程制定所依赖的状况发生了变化,既有的过程已不适应目前项目实行日勺需要,甚至还阻碍了项目的发展,这也会促使SEPG去进行适应性的改善但是改善的来源从哪来呢?表面上仿佛项目组可以向SEPG提出,SEPG自己也可以去发现但是实际状况往往是一方面项目构成员特别是成熟度等级较低公司的项目构成员缺少质量意识,只关注与自身有关的I开发工作,对过程改善工作缺少应有的结识,提不出问题或者有问题也不肯提出来而另一方面SEPG却又往往苦于不理解项目状况而找不到核心问题所在而QA的存在正好就可以解决这一矛盾,由于QA常常要参与过程改善工作,又常常参与项目的活动,既熟悉过程体系又熟悉项目状况,刚好起到充当SEPG和项目组之间桥梁日勺作用QA在项目实行过程中常常会发现诸多问题,有些问题有些是由于项目组自身执行得不够规范而产生日勺,而另某些问题则是由于过程自身存在着某些缺陷引起日勺,如可操作性不强或前后矛盾等而让项目组无法实行因此QA在工作当中,会将这些问题记录下来并反映给SEPG,以促使过程改善此外项目实行过程中值得借鉴的某些经验做法QA也反映给SEPG,以便SEPG在公司范畴内进行推广如果过程完善了,反过来也会更好增进项目工作日勺开展,这就是一种良性循环
3、指引项目实行QA对项目有督促的作用,但是仅仅督促是不够的,还需要予以项目组在过程实行上的指引虽然在项目过程实行之前会要接受相应的培训,但是工作日勺顺利开展并不是光靠几堂理论课就能解决问题时,诸多具体的做法需要在实践中才干真正理解应用,并且每个项目构成员接受培训的限度不同,对过程时理解也许存在某些偏差因此还需要QA人员在项目实行过程中给以解答和指引,将这些规范真正地贯彻下去QA对于项目组来说就象一把双刃剑,既有监督日勺一面也有指引的一面既能协助项目顺利的开展工作,也能使不规范不合格的项目暂停甚至关闭这其中项目经理的指引思想非常重要,如果项目经理是抱着积极合伙的态度,决心要真正按公司规范化过程来实行项目日勺话,那么QA将成为最有力的帮手和支持者如果项目经理抱着悲观对抗的态度,置公司管理制度不顾,欺上瞒下自行一套的话,则QA就是他们最大日勺障碍和绊脚石
4、增长透明度软件开发活动存在于人的大脑中,不象工业生产中在流水线上日勺工作状况令人一目了然正是由于这一特点使得软件项目难于控制而QA的存在则可以提高这种透明度、增长项目日勺可视性让高级经理和有关工作人员能从项目组以外日勺第三方得到一种独立日勺视角和渠道,能从多方面客观地理解项目欧I过程、产品、服务等状况,以便做出对时日勺判断,及时发现问题及时进行纠正,使项目尽量朝着良性日勺方向发展
5、评审项目活动评审项目活动是QA的核心工作之一,也是QA实行质量保证的一种重要手段,评审项目活动的目的是为了检查项目的活动与否符合公司制定的规范和项目既定的计划,及早发现也许存在日勺问题,并通报给有关人员以便及时纠正虽然质量保证的最后目的是但愿能保证质量,但质量是过程、人、技术三者的函数,除了过程外,还与人员、技术有关,而人员素质和技术水平日勺提高并不是依赖QA就能保证的,因此QA虽名为质量保证,事实上它直接保证的是决定质量好坏H勺一种重要因素一一过程过程不仅仅指活动,它还涉及了产品,产品是一系列活动后的产物,因此保证过程要先从活动开始入手,由于控制得越早,发现问题越早,所付出日勺代价就越小,当产品出来之后再去控制就已经晚了虽然单有好的过程不一定就会有产生好的质量,它还必须依赖人员和技术这两大因素,但是一种不好的过程肯定难产生好日勺质量,由于过程、人员、技术这个质量铁三角缺一不可因此QA需要评审项目的活动,从保证活动入手来保证过程进而保证最后的质量QA评审项目活动时应当做到独立、客观、公正,评审日勺时机和频率可按预定的检查点进行抽查需要指出日勺一点是QA评审项目活动和同行评审不同,同行评审是指同行评审人员从技术角度对产品进行评审,而QA评审项目活动则是从规范角度对活动进行评审,这两者有本质日勺区别
6、审核工作产品评审完项目的活动,那么QA接下来就需要审核活动的产物一一产品了,审核工作产品是QA的另一种核心工作项目组在开发过程中会产生大量日勺工作产品,如需求、设计、代码、顾客文档等同行评审、测试等手段可以从技术角度对产品质量进行把关而过程方面日勺质量,如符合性、规范性、一致性等则需要由QA来把关,产品的技术性与规范性不可或缺最后的产品质量是由单个的软件工作产品质量构成日勺,因此QA也必须从审核单个时软件工作产品开始来保证最后aJ产品质量审核产品也应当做到独立、客观、公正,它日勺重点在于产品规范性、符合性、一致性、完整性、可追溯性等方面对于同一工作产品,如果QA代表参与该产品的同行评审工作,则可以视状况不对该产品进行独立QA审核,以免反复工作、协助问题解决7QA无论是评审项目活动还是审核工作产品,都是为了发现问题并及早解决QA发现问题后会将问题记录在报告中并提交给项目经理确认然后还会协助项目经理一起找出问题日勺因素如果在项目一级问题能得到妥善解决则应尽量在项目内解决,如果项目组一级不能解决,则QA会上报给高级经理以谋求更高一级日勺支持QA问题日勺上报并不能当作是在向高级经理打小报告其出发点也是为了更好地协助项目解决问题,有问题要及时发现,发现了问题就要及时解决,越早越好,否则小问题发展成大问题很也许就会给项目和公司带来无可挽回的损失QA应客观地报告问题,报告用语应做到客观、公正、规范、严谨、精确、清晰并且跟踪这些问题直到它们被妥本地解决为止
8、提供决策参照在那些没有专职度量分析人员的软件公司中,QA还承当了数据采集、记录、分析的工作在项目一级,QA采集项目有关时数据并对其进行记录和分析从分析日勺成果项目经理可以看浮现阶段哪些方面做得还不够,哪些方面还存在着问题,哪些方面还需要改善,并为项目下一步日勺工作重点提供决策参照在组织层面,QA也会收集组织的过程数据,并将记录分析的成果反馈到高层领导,用数据说话,用事实说话,为高层的决策提供有力日勺参照和根据
9、进行缺陷避免从长远来看,公司要减少成本、提高质量就必须要进行缺陷避免消除产生缺陷和问题的主线因素并且避免将来此类缺陷和问题时再次发生,以优化项目及公司的规范过程缺陷避免并不是简朴对缺陷进行发现和纠正等到缺陷被发现时,事实上缺陷已经发生过了,对节省项目成本和控制进度来说作用并不是显得特别大,缺陷避免重在避免,防备于未然才真正有效一般的做法是规定在开发周期的每个阶段实行缺陷避免和因素分析,吸取其他项目或本项目前期的某些经验教训,并使因素分析和缺陷避免成为一种机制在项目过程实行当中,QA会指引并协助项目组积极地开展缺陷避免活动,采集问题和缺陷有关数据,并对缺陷和问题时类型进行分析,理解问题日勺趋势,拟定这些缺陷的本源和将带来H勺影响,并通过共同决策分析,得出所需要采用H勺措施并具体去实行
10、实现质量目时通过了一系列质量有关的活动后,最主线目的还是要通过这些活动来达到项目乃至组织日勺预期质量目日勺只有达到目啊了,一切时努力才没有白费,工作才显现了应有时价值项目启动时,QA会和项目经理一起结合公司的过程能力基线来制定项目的质量目的在项目实行过程中,QA会指引项目按阶段、里程碑等控制点对质量目的进行定量控制,定期将项目运营状况和质量目的进行比较,及时发现偏差,及时进行调节,以保证项目最后能达到质量目日勺如果项目的质量目的都达到了,那么公司日勺质量目的也就容易实现了,并提高了整个公司的能力基线通过总结,大家也许已经结识到QA在公司中是一种不可缺少日勺角色了但是从理论上来说,当公司的成熟度发展到很高等级,人人都具有很强的质量意识,人人都能自觉提维护质量体系,人人都充当起QA角色日勺时候,也许就不需要专职日勺QA了正如国家机器的功能会随着社会文明的高速发展变得弱化甚至是消灭的道理同样但是,就目前来说这还仅仅只是一种抱负的状态,正如国家机器在若干年之后都不会退出历史的舞台同样,作为公司机器日勺QA在相称长的时间内也应当还会继续存在并且随着我国软件业工程化思想的I普及,软件公司对QA的)需求也会相应地增大,QA这一新兴岗位也将越来越有发展前程。