浅谈在软件项目管理中的问题分析方法

时间:2022-10-16 01:21:47

浅谈在软件项目管理中的问题分析方法

论文关键词:项目管理 问题分析

论文摘要:在实践开发过程中,由于人们对问题的看法不同,即使应用同样的管理方法,有的能取得显著的成绩,有的却可能导致项目的失败。因此,在项目管理过程中对问题进行分析有助于提高项目管理人员的管理水平和实践能力,进而产生良好的结果。

1.引言

有效的项目管理集中于三个p上:人员(people )、问题(problem)、和过程(process)。这里的问题是指在进行项目计划之前,应该首先明确该项目的目的和范围,考虑可选的解决方案,定义技术和管理的约束,否则就很难做出准确的成本估算、有效的风险评估、适当的项目任务划分或给出意义明确的项目进度、项目管理计划等,这些都必须是由项目管理提供的。

在项目管理过程中,即使上述内容都明确了,对于出现的每一个问题也并不是都能得到顺利、及时地解决的,需要在反馈信息的基础上反复进行分析。管理人员在获得项目开发过程中翰出的中间结果或最后阶段的结果后,都可能改变最初的设想,或收集更多的信息以修正原来的结果。例如,项目经理在弄清解决方案的后果以前,往往难以有把握地提出某项目标;在获得某些信息后有可能加强管理力度,增加管理约束条件,修改原有的管理计划等。此外,在项目管理过程中的要重视管理人员和项目发起者之间的沟通和对话。各个管理环节和管理阶段都需要项目发起者的建议和判断。而且,不断对话意味着项目发起者考虑了问题的各个方面,感到亲自参与了项目管理过程,使管理过程获得支持,从而不至于因阻力太大而失败。在实践中,项目管理人员往往将问题简单化,他们习惯于对项目中所有需要解决的问题进行精确定义,划定其各自的边界并直截了当地让某些因素严格按管理计划要求发生变化或保持不变。因此,项目管理所面临的是一个由事态、组织、人员等多方因素组成的复杂的问题集合,对问题进行分析就显得尤为重要。

2.问题分析的具体内容

在项目管理过程中,往往有两种起不同作用的人员:一种是提出问题者,即项目发起者,他对项目管理的结果进行评估;另一种是解决问题者,即项目管理人员,他对项目管理过程负贵。相应地,我们可以将项目管理分成两部分活动,一是分析问题内容,着重从项目发起者的角度弄清该项目需要解决的问题集合;一是解决问题,着重从专业角度提出和分析各种问题的解决途径。当然,两者相互联系,问题的内容蕴涵着对解决问题所需资源的要求,而拥有资源又影响到问题内容的边界。

在分析向题阶段,我们应对项目中的某项具体问题和具体解决问题的活动做出详尽的说明:规定问题的边界和约束,划分系统和环境,说明解决问题的对策和资源,并解释问题内容和解决问题两部分活动之间的相互匹配关系。此外,在项目管理的实践中,还需要区分决策者、提出问题者、委托人和系统分析人员。决策者,能够采取行动去调配资源以改变项目的内容;提出问题者,是对某种态势感到不安,领悟到现状和目标不适应的人;委托人,接受决策者的旨意,委托他人从事某项系统分析工作;系统分析人员,是专业人员,应处于不涉及自身利益、没有偏见的位置。

具体地说,我们把分析问题阶段的工作内容概括为5个部分:

1.分析问题的性质和条件

这里包括两部分内容:分析问题性质和分析问题条件。分析问题性质主要是弄清各种相关联问题形成的问题集合和它们的来龙去脉,即问题的结构、过程和态势。为此,项目管理人员必须广泛地和决策者、与利益有关的人员进行对话和沟通。可以采用提问单的方式来获得必要的信息,比如下列问题:你认为存在什么问题?为什么这是个问题?如何出现的,什么原因引起的?解决这个问题的重要性何在?可能解决的方式有哪些?谁能采取解决问题的行动?这类行动会带来什么影响?等等。通过各种方式的沟通,项目管理人员才可能对问题的结构、过程和态势获得一个详细、准确的总体印象。

分析问题条件主要是弄清解决问题所需的资源。为此,项目管理人员在管理过程中必须知道:涉及哪些资源分配问题?由谁实施分配?分配者的职权、作用如何?资源使用的监督、控制系统如何?等等。

对问题的性质和条件进行分析,目的在于检验问题的性质和条件是否匹配,使工作任务和所需资源相当。如果力不能及或绰绰有余都可从两方面作适当调整,直至大体平衡,从而为实现最优化管理打下良好的基础。

2.善于在里程碑处进行小结

应该将整个项目管理过程划分为几个里程碑阶段。每到一个里程碑处,应及时对前段工作进行小结,并对后续工作进行计划调整。这项工作的主要内容包括:识别阶段工作的重要性;可能采取行动的组织和个人;利益相关的组织和个人;目标、评价指标、约束条件的初步描述等。通过在里程碑处的小结,项目管理人员可以看出在下一步管理过程中需要解决问题的大体方向和领域,以便给予较大的关注,而对于一些管理效果明显的领域,则可不必投人较大的精力。

3.制订管理目标

在项目管理过程中,要实施有效的管理方式,关键在于尽早明确管理目标。但由于项目开发的特殊性,我们很难从项目发起者那里获得准确的描述来判断管理应达到的目标。管理体制上的隔阂,管理者个人的偏好,项目发起者的知识水平,都可能引起项目管理者在目标制订上的偏差。

我们认为,管理目标是分层次的,包括高层目标和低层目标。例如,改善组织的软件开发能力,提高过程能力成熟度,是高层目标;在具体项目的某一阶段节约成本、加快进度,是低层目标。一般说来,越是高层目标越能为更多的人所接受,使用时期长、范围广。低层次目标应服从高层次目标。但是低层次目标比较明确具体,便于分析、管理。所以,管理人员需要全面分析管理目标结构,选择适当的层次目标。目标太笼统,管理难度大;太具体又容易以偏概全。此外,同一层次的项目管理目标往往不止一个,如在某具体项目的编写代码阶段,既要提高开发进度,又要保证程序质,在资源既定情况下,这两者是彼此冲突的。就是说,如有两个以上的目标,除非一个目标隶属于另一个,否则这些目标之间总是彼此矛盾的。在这种情况下,项目管理人员需要对各个目标排出优先次序,首先保证最优先目标的实现,然后尽可能在不损害第一项目标的前提下实现第二项目标,以最大化实现项目的整体目标。

4.确定管理效果评价指标

为了衡量项目管理的效果,管理人员需要确定一组评价指标。一项合理的评价指标能准确的反映管理的效果,但并不是说任何指标都是合理的。例如,采用代码行数作为衡量开发人员努力程度的指标就是不合适的,因为个人的编程风格、所采用的编程语言等,都会影响到这个指标的准确性。

在评价过程中,还需要根据项目实际情况,排出所有指标的优先次序。当存在难以直接量化的目标时,可以采用其他易定量化的代用指标。在有多个指标的情况下,必须将其组合成单一的指标。我们不能简单的将各种性质截然不同的评价指标硬凑成单一的评价指标,这是不可取的。我们常用的方法是,对每个指标进行权重分析,然后综合得出一个效用值函数。值得指出,这种效用函数在很大程度上是项目管理人员本人对各种指标相对重要性程度的判断结果,具有很大的主观性。因此,项目管理人员应在系统分析人员的指导下,按照系统分析的方法,科学地分配权重。确定评价指标不只是为了获得管理效果的结论,重要的是它所带来的信息,使项目管理人员易于把握管理中的薄弱环节,找到解决的办法。

5识别管理过程中的约束

约束是对项目管理在实践中的限制。只有不直接或间接违反约束的管理方法,在实践中才是可行的。它可能是资源的限制、组织体制的束缚、法规政策的界限等等。项目管理人员在项目实践中面临着各类约束条件,如任意选定或全面照顾,都势必造成整个项目的管理混乱。例如,在某个软件的开发中,严格按照某一技术上的约束去设计,可能需要花费大量的人力、物力,而如果采用其他的方式来解决,并不需要如此巨大的投人。因此,项目管理人员要权衡利弊,从项目的整体角度考虑问题,必要的时候应放弃此约束条件。

当然,在分析问题阶段不可能一次就把所有的约束都弄清楚,这是一个在管理过程中逐步积累、修正的过程。在项目实施的任何阶段,发现管理的约束,都应该及时加以补充。

3.相应的解决方案

提出解决方案可以通过多种渠道。决策者或问题提出人的意见和设想是渠道之一。项目管理人员在调查研究过程中可以收集到各种意见。另外,系统分析人员也可以提出若干管理措施。然而,任何一种管理措施的提出和形成都有赖于项目管理人员的分析和概括能力、想象力、创造力以及对项目实践的深刻了解。在一个具体的项目管理过程中,人员的知识水平参差不齐,开发环境各不相同,客户需求多种多样,这些都无法采用某种固定的管理模式,而需要项目管理人员去探索和概括。

在研究解决方案的过程中,应尽可能地考虑各种因素,每个机会和建议都不要放过。最初难以理解的想法,仔细研究后却可能有理。某项措施可能因为违背了现有政策法规、不符合人们的习惯或超出了人们所能承受的能力而被视为不现实.但并不意味着不值得考虑。如果当作一种潜在的管理措施去分析研究,得出的结论将更有说服力,也许某些有影响的决策者认识到这种措施在其它方面的优点和吸引力,可能改变原来的规定、政策而使看来不现实的措施成为合理的办法。值得注意的是组织和个人行为对解决方案的影响。项目涉及的各个部门总是期望采取对自己有利的管理方式,而回避那些明知对项目整体有利而对己不利的措施。有许多因素会限制提出好的解决方案的思路。由于偏见,当项目管理人员提出某种解决方案时,这些人可能会毫无根据地认为他们无法按照这种方案去服从管理。而另一方面,该方案也可能得到积极的支持,认为这是一种最佳的解决方案。

我们认为,项目管理人员必须获得决策者的支持,否则将由于上层阻力而导致项目的失败。但是,如果只是投其所好,片面地追求满足决策者的意图,也不能发挥其自身的作用,同样会招致失败的风险。优秀的项目管理人员应切实履行其工作职责,按照项目的总目标和约束条件,根据实践经验和科学理论的指导,对解决方案进行严格的筛选,明显不符合项目整体利益的管理方式要删除,或对其内容进行修改。总的说来,一个好的解决方案应满足以下特点:

1.适应性:由于项目管理是一个不确定性的过程,解决方案应能满足各种情形下对项目提供指导的需求,在项目实施的各个阶段,它应该都是有效的。

2.可操作性:首先应取得决策者的支持,其次该方案的实施应便于操作,如果为了按照该方案进行管理而需投人大的人力、物力就本末倒置了。

3.延续性:项目开发的一个很大的特点,就是采用模块化设计,人员流动大。因此,解决方案也应具有很强的延续性,在项目成员发生变更、管理体制起变化时,应不受干扰地继续指导项目的正常活动。

4.可靠性:要求解决方案的实施过程中不出现失误,或者出现失误也能尽快恢复正常,而不至于造成很大的损失。这需要建立管理监督机构和信息反馈渠道。在解决方案的提出过程中,项目管理人员自始至终要注意发掘新的更好的方案,既要谨慎从事又要有勇气提出创造性的建议。一个好的解决方案是进行项目管理的基础,对于项目的成败,这是很关键的。

4.结论

项目管理过程,是一个复杂的系统工程。一个优秀的项目管理人员应注重实践中的分析问题能力,结合理论知识,形成一套行之有效的管理方法,从而更好的为项目管理工程服务。在项目管理贯穿始终的软件开发的过程中,项目管理是值得我们长期总结与探索的。

上一篇:计算机网络故障管理智能化研究 下一篇:在线CD销售系统的开发及其应用(二)