在实际的项目质量管理中,质量管理总是围绕着质量保证(Quality?Assurance)过程和质量控制(Quality?Control)过程两方面。这两个过程相互作用,在实际应用中还可能会发生交叉。正如引言所述,关于软件的质量,很难下一个非常明确的定义。本文主要针对软件工程中的质量管理来进行讨论。
1、做软件“大餐”的工序
软件质量保证(Software?Quality?Assurance,以下简称SQA)的目的是验证在软件开发过程中是否遵循了合适的过程和标准。软件质量保证过程一般包含以下几项活动:
首先是建立SQA组;其次是选择和确定SQA活动,即选择SQA组所要进行的质量保证活动,这些SQA活动将作为SQA计划的输入;然后是制定和维护SQA计划,这个计划明确了SQA活动与整个软件开发生命周期中各个阶段的关系;还有执行SQA计划、对相关人员进行培训、选择与整个软件工程环境相适应的质量保证工具;最后是不断完善质量保证过程活动中存在的不足,改进项目的质量保证过程。
独立的SQA组是衡量软件开发活动优劣与否的尺度之一。SQA组的这一独立性,使其享有一项关键权利――“越级上报”。当SQA组发现产品质量出现危机时,它有权向项目组的上级机构直接报告这一危机。这无疑对项目组起到相当的“威慑”作用,也可以看成是促使项目组重视软件开发质量的一种激励。这一形式使许多问题在组内得以解决,提高了软件开发的质量和效率。
怎样做好软件项目的质量管理工作
在实际的项目质量管理中,质量管理总是围绕着质量保证(Quality?Assurance)过程和质量控制(Quality?Control)过程两方面。这两个过程相互作用,在实际应用中还可能会发生交叉。正如引言所述,关于软件的质量,很难下一个非常明确的定义。本文主要针对软件工程中的质量管理来进行讨论。
1、做软件“大餐”的工序
软件质量保证(Software?Quality?Assurance,以下简称SQA)的目的是验证在软件开发过程中是否遵循了合适的过程和标准。软件质量保证过程一般包含以下几项活动:
首先是建立SQA组;其次是选择和确定SQA活动,即选择SQA组所要进行的质量保证活动,这些SQA活动将作为SQA计划的输入;然后是制定和维护SQA计划,这个计划明确了SQA活动与整个软件开发生命周期中各个阶段的关系;还有执行SQA计划、对相关人员进行培训、选择与整个软件工程环境相适应的质量保证工具;最后是不断完善质量保证过程活动中存在的不足,改进项目的质量保证过程。
独立的SQA组是衡量软件开发活动优劣与否的尺度之一。SQA组的这一独立性,使其享有一项关键权利――“越级上报”。当SQA组发现产品质量出现危机时,它有权向项目组的上级机构直接报告这一危机。这无疑对项目组起到相当的“威慑”作用,也可以看成是促使项目组重视软件开发质量的一种激励。这一形式使许多问题在组内得以解决,提高了软件开发的质量和效率。
如何做好软件工程质量管理?[1]
3)参与技术和管理评审 参与技术和管理评审的目的是为了保证此类评审满足项目要求,便于监督问题的解决。 4)做SQA报告 SQA活动的一个重要内容就是报告对软件产品或软件过程评估的结果,并提出改进建议。SQA应将其评估的结果文档化。 5)做SQA度量 SQA度量是记录花费在SQA活动上时间、人力等数据。通过大量数据的积累、分析,可以使企业领导对质量管理的重要性有定量的认识,利于质量管理活动的进一步开展。 需要说明的是,并不是每个项目的质量保证过程都必须包含上述这些活动或仅限于这些活动,要根据项目的具体情况来定。 SQA计划中必须明确定义在软件开发的各个阶段是如何进行质量保证活动的。它通常包含以下内容:质量目标;定义每个开发阶段的开始和结束边界;详细策划要进行的质量保证活动;明确质量活动的职责;SQA组的职责和权限;SQA组的资源需求,包括人员、工具和设施;定义由SQA组执行的评估;定义由SQA组负责组织的评审;SQA组进行评审和检查时所参见的项目标准和过程;需由SQA组产生的文档。 选择合适的SQA工具并不是试图通过选择SQA工具来保证软件产品的质量,而是用以支持SQA的活动。选定SQA工具时,首先需要明确质量保证目标。根据目标制定选择SQA工具的需求并文档化,包括对平台、操作系统以及SQA工具与软件工程平台接口的要求等。 如何使白壁“无瑕” 按工序去做也不一定能得到一盘完美的“大餐”,因为火侯等因素实在很难掌握。万一掌握不好怎么办?软件质量控制主要就是发现和消除软件产品的缺陷。对于高质量的软件来讲,最终产品应该尽可能达到零缺陷。而软件开发是一个以人为中心的活动,所以出现缺陷是不可避免的。因此,要想交付一个高质量的软件,消除缺陷的活动就变得很重要。缺陷消除是通过“评审”和“测试”这类质量控制活动来实现的。 缺陷在软件开发的任何阶段都可能会被引入。项目质量管理过程包含了许多可以识别缺陷、消除缺陷的过程。“识别缺陷”和“消除缺陷”本来是两个不同的过程,但在这里为了简便统一用“消除”来代表它们。潜在的缺陷越大,用来消除它所花的费用越高。因此成熟的软件开发过程在每一个可能会引入潜在缺陷的阶段完成之后都会开展质量控制活动。这些为了消除缺陷的活动包括:需求评审、设计评审、代码走查、单元测试、集成测试、系统测试以及验收测试等。 质量控制的任务就是策划可行的质量管理活动,然后正确地执行和控制这些活动以保证绝大多数的缺陷可以在开发过程中被发现。 [1] [2] [3]
急。。。如何做好项目的质量、技术管理
质量管理方面:首先在项目启动时做好项目质量规划,确定了项目过程中对质量的具体要求、实施过程质量要求,项目处理过程中的流程质量要求等等;然后在项目实施过程中依据质量规划对各项项目工作的质量进行监控与管理,如设置质量“阀门”(标准),达到指定的质量标准后才能进入下一环节等等;最后在项目验收前对项目质量进行全面测试或检查,确保质量达到客户对项目质量的要求。
技术管理方面:由于每个行业存在差异性,技术管理似乎不太存在一个统一标准,但可以考虑以下内容:1、选择符合客户和公司双方要求的技术,并达成内外部一致,如软件行业的技术平台、数据库平台、内部架构要求等等,需要获得双方的认可;2、在技术平台内,选择符合内部人员能力范围的一些具体技术框架,如Java技术平台上的SSH体系等等,以确保项目实施人员能够应用这些技术进行项目工作;3、对于一些项目中使用到的但项目组人员尚未熟悉的技术框架,需要在公司内部对这些技术框架进行研究,确保这些框架能够完全满足项目需要并获得应用这些框架的经验、技术等等;4、做好对项目实施人员的技术储备,通过培训、训练等等方式提升项目实施人员的技术能力(这需要在平时进行,在项目实施过程中很难实施此项工作,但需要在项目中注意执行此项工作)。
上述即个人对质量管理和技术管理的一些看法,欢迎交流。
如何做好软件项目的团队管理
决定项目成败的不仅仅是范围、成本、进度的计划多么完美,而是团队是否能高效的工作。说到项目管理,很多人都会记得范围管理、成本管理、进度管理,这些都是衡量项目成败的要素,重视对这些要素的管理,无可厚非,但却忘了一个根本的问题,那就是:所有的这些目标都将是团队来完成的。计划做的再好,没有人去实现,或者没有忠诚的成员去实现,那岂不是空谈。
或许跟其他的项目不同,软件项目彻底是"以人才为核心"的项目,项目的主要成本来自于人力成本、项目的进度完全由成员决定,因此,在软件项目中,对团队的管理不仅仅是对进度的保障,更是对项目质量、项目成本的保障。团队管理才是软件项目管理中的重中之重。
然而,软件项目中的项目经理往往缺少团队管理的意识,这可能跟他们的发展历程有关。软件行业中,很多项目经理都是从程序员做起来的,我们都知道,程序员的职业发展规划路径都是"程序员--高级程序员--项目经理"。而串起这条职业路径的线,就是技术,这就导致了只要技术高,五六年自然都发展成为项目经理了。而软件的技术高手在沟通方面都普遍存在很大的问题,他们不善于跟团队成员交流、不善于人际关系、不善于鼓励与倾听,他们都喜欢独立的研究技术问题,在大家的记忆里,很多电影里,软件高手就是那种一个人可以破jie国家安全密码的人,他们往往不可能是整个团队的管理者。
速达项目管理软件如何做好质量管理?
质量管理活动基本包括质量保证和质量控制两类。质量保证是在项目过程中实施的有计划、有系统的活动,确保项目满足相关的标准,典型的例子是评审和审计。质量控制指采取适当的方法监控项目结果,确保结果符合质量标准,还包括跟踪缺陷的排除情况,典型的例子就是测试,量管理主要通过“文档”控制“过程”。质量管理需要一定代价,要平衡与进度和成本的关系。质量保证是确保最终产品质量的一系列活动;质量控制是确保最终产品满足要求一系列活动
如何做好一个项目的管理?
一个项目的成功百分百归功于这个项目团队,而失败则百分百责任于项目经理人一人,可能失败的责任归于一人用之过大,但其实不然,如:1、项目的失败可能来源于一些外在的因素,这就表示项目经理人对项目的风险评估不够彻底;2、项目中因团队关键人员被调或流动,导致项目延期或无法进行所带来的损失,这就表明人力资源储备有限,更重要的是项目经理人是否有考虑过项目进行中团队某位或很多人员流动该怎样让项目能如期完成;3、项目大部分功能完成后需要客户的初验,这时就需要很多功能上的完善与增加,这可能无法避免但有些更荒唐的是客户看了之后可能对您说:“这和我想要的是两码事”这个时候您只能有权利做一件事,那就是尽情的晕吧!因为有些项目经理人根本就没有和客户说过一句话甚至更惨,没见过一次面,项目的初定和需求直接来源于业务人员,我们的大部分客户都不知道怎样把现实中的实物用程序的方式来展示去实现,所以项目经理人最起码也要用喝一个下午茶的工夫去告诉我们的客户:“您的这个想法我们需要进一步细化,我们将会通过****样的方式帮您实现,您看可以吗?”必须让他回答。
以上总结于项目成败的三点:1、项目经理人对项目的风险评估是否彻底;2、项目经理人是否在团队人员缺失的情况下,能极力挽回项目进度,并能按期完成任务;3、项目经理人是否和客户有更为深入的交谈,项目经理人必须考虑是否真正为客户解决了实际问题。
做好一个项目经理人(先从自己做起):
第一:项目前的资源整合;尽量为项目开发提供一个好的环境,一个舒适的工作空间和项目预计所需要的工作工具(尽量提供最好的),就像一个开发人员有一台好的机器,你想想他有多带劲!还有就是召集这个项目需要切实用到的一切人力资源;
第二:能力测试;针对软件行业流动性很大的特点,并不排除您的项目团队中有陌生的面孔,也有可能是其他项目团队的派调过来的人手,或是其他合作公司的开发人员,这时您可能需要能力测试这一环节,测试并不是对团员能力的质疑,而是测试该把某个队员放在某个位置,或扮演项目开发中的什么角色比较合适。这种测试有很多方法,可以是做一些游戏或让你的团队一起去完成一个与项目无关的事情,来观察团队每个人员的特性与习性,然后就是针对项目中的每个技术环节做一个特定的测试,目的是为更好的跳过技术陷阱,测试的方法可以自订,但对于团队人员不能让他们感受到这是种测试,这样你就可以让每个团队人员在自己的适合的岗位上发挥自己最大的潜力!
对于每个人所在的行业都会认为自己现阶段所处的这个行业需要学习的太多,要创新的却更多,就像现代社会的网络、电脑、软件,和这些有关的我们统称为“IT人士”,他们需要更快的学习创新速度因为这个行业新成代谢太快,而我也是其中一员,但在这些行业里有共同的一句话:“做好每件事之前先考虑做好一个人”,一个软件项目经理人也不例外。
一个项目的成功百分百归功于这个项目团队,而失败则百分百责任于项目经理人一人,可能失败的责任归于一人用之过大,但其实不然,如:1、项目的失败可能来源于一些外在的因素,这就表示项目经理人对项目的风险评估不够彻底;2、项目中因团队关键人员被调或流动,导致项目延期或无法进行所带来的损失,这就表明人力资源储备有限,更重要的是项目经理人是否有考虑过项目进行中团队某位或很多人员流动该怎样让项目能如期完成;3、项目大部分功能完成后需要客户的初验,这时就需要很多功能上的完善与增加,这可能无法避免但有些更荒唐的是客户看了之后可能对您说:“这和我想要的是两码事”这个时候您只能有权利做一件事,那就是尽情的晕吧!因为有些项目经理人根本就没有和客户说过一句话甚至更惨,没见过一次面,项目的初定和需求直接来源于业务人员,我们的大部分客户都不知道怎样把现实中的实物用程序的方式来展示去实现,所以项目经理人最起码也要用喝一个下午茶的工夫去告诉我们的客户:“您的这个想法我们需要进一步细化,我们将会通过****样的方式帮您实现,您看可以吗?”必须让他回答。
以上总结于项目成败的三点:1、项目经理人对项目的风险评估是否彻底;2、项目经理人是否在团队人员缺失的情况下,能极力挽回项目进度,并能按期完成任务;3、项目经理人是否和客户有更为深入的交谈,项目经理人必须考虑是否真正为客户解决了实际问题。
做好一个项目经理人(先从自己做起):
第一:项目前的资源整合;尽量为项目开发提供一个好的环境,一个舒适的工作空间和项目预计所需要的工作工具(尽量提供最好的),就像一个开发人员有一台好的机器,你想想他有多带劲!还有就是召集这个项目需要切实用到的一切人力资源;
第二:能力测试;针对软件行业流动性很大的特点,并不排除您的项目团队中有陌生的面孔,也有可能是其他项目团队的派调过来的人手,或是其他合作公司的开发人员,这时您可能需要能力测试这一环节,测试并不是对团员能力的质疑,而是测试该把某个队员放在某个位置,或扮演项目开发中的什么角色比较合适。
软件项目管理跟软件质量管理有什么区别?
软件质量管理是软件项目管理中的一部分,软件项目管理共包括九大领域,质量管理是其中之一。这九大领域是:整体管理、范围管理、进度管理、人力资源管理、质量管理、成本管理、沟通管理、风险管理和采购管理。
转载请注明出处51数据库 » 如何做好软件项目质量管理 怎样做好软件项目的质量管理工作
听说名字长的都长的非常非常的叼是么