来源:名易软件定义关键任务中的工程方法规范 3.4第三步:定义关键任务中的工程方法规范在企业明确了关键任务和总体的项目路线图之后,下一步就需要明确项目路线图中各个步骤所采用的专业工程方法,在生产制造中就是指生产工艺,在建筑工程中就是指建筑工程施工规范,在软件开发中就是指软件工程方法,等等。项目路线图中各个步骤可能差异很大,例如一个订单加工的流程,可能包括不同的工序,每个工序的加工方法可能都不相同,它们的工程方法也都是不同的,所以就可能需要针对项目路线图中不同的步骤,明确各自的工程方法规范。这样,一个关键任务的整个处理流程中,就可能会包含多种不同工程方法。企业需要对这些用到的工程规范,都要做出详细的定义。这些规范反映的是产品本身生产过程的专业方法,但不是特指某次生产过程的具体组织,无论是什么样的具体产品订单要求,无论是哪个企业组织生产,无论具体生产过程如何组织,该产品的生产工艺、工程方法规范都是基本相同的。这种具体行业中、针对具体产品种类的生产工艺,决定了实际生产过程的项目管理过程。项目管理中所定义的管理过程,必须符合生产工艺的要求。在工程方法规范中,与项目管理密切相关的,主要是工艺过程和工艺标准。工艺过程指的是步骤,一个机械零件是如何通过铸、车、磨、镀等工序一步一步加工出来的,一个软件是如何通过需求分析、设计、编程、测试等过程逐步开发出来的,市场营销和销售过程,是如何通过AIDA(Attention,Interest,Decision,Action)的过程逐步实现的,图书如何经过编辑、审查、排版、校对、印刷、发行等环节出版的,每一种不同的产品,都会有具体的专业过程的要求,即使是服务类的过程,也必定有其专业要求。特别是当这种产品要进行批量生产,或者服务内容要长期重复提供时,定义这样的工艺过程就显得尤为重要,它是每一件产品都必须遵守的生产过程。工艺过程的优劣,直接就决定了实际生产过程的效率和效果,也对生产过程组织提出了基本的目标要求,决定着具体项目过程的组织方法。工艺标准则是指在整个工艺过程中,每个工艺步骤需要达到的质量标准,例如车工要保证达到工件尺寸精度的要求,软件编程要满足低于一定错误率的测试要求,服务中要达到服务水平协议(SLA)所规定的水平,这种标准,直接决定了产品质量的要求,在具体的生产过程中,直接决定了具体项目过程中的的主要内容,对项目质量管理提出了明确的要求,从而直接影响整个项目的组织方法。在加工制造等生产有形产品的企业中,对生产工艺、工程规范是比较容易理解的,而在服务型企业中,往往对工程规范不容易理解,将服务过程视同项目过程。但实际上,在服务型企业中这种过程规范也是存在的,其形式往往是标准服务流程及相关的制度规定,有的则在项目模版中体现。产品与项目的关系,在PMBOK中有所提及,但没有展开,毕竟产品管理不是项目管理的主要内容。但是从的角度来说,是产品生产的需求决定了项目管理的需求,产品的专业工程规范决定了项目中的基本阶段划分,产品的原料和加工要求决定了项目的资源需求,产品生产中所需要的专业技能决定了项目基本的人力资源需求,等等。项目管理本质上是面向目标的,那么项目最终的产品(交付物),就是项目目标的重要体现,有关产品本身的各种要求,都必定会反映到项目管理的过程当中,对项目的范围、时间、资源、质量等许多管理领域内容,都会产生直接的影响。每个行业中每类产品,都会有基本的工艺规范的要求,每个企业当中都会有更适合自身实际条件的更具体的工艺过程要求,这种工程规范的要求,不仅会体现在企业的生产线设计上,还体现在企业各方面的规章制度上,体现在企业内的各种工作流程中。因此,作为企业管理者,要能够区分工程规范中的过程要求,和企业项目管理中的过程要求,前者是目标和内容,后者是过程和形式,两者之间必须相互配合,取得平衡,才能形成完整的对生产过程的管理。总之,项目的工作范围和交付物、对应工艺操作要求的项目任务、项目任务间的依赖关系、项目任务的工期、项目中质量管理要求、项目基本资源需求等,在这些项目管理的内容当中,在相当大的程度上,都取决于工程过程规范的基本要求。另一方面,工程类过程所体现的生产工艺的要求,往往是通过实际的项目过程实现的,所以在许多企业的项目管理规范中,都会包含本企业的产品生产过程规范,例如在采用瀑布式软件工程模型的软件开发项目中,通常都会有需求分析、设计、编码、测试等项目阶段,这些阶段实际是为了满足工程过程规范而存在的。项目中的这些阶段,从项目管理角度则更强调的是具体实现中的过程组织。也就是说,工程过程规范,必须通过项目过程来实现。正是由于工程过程规范和项目过程这种必然的依存关系,工程类过程规范和具体项目中的阶段划分,往往有很多是重叠的,名称、顺序、资源要求等都可能是基本相同的,所以有时会将两类过程视为同一的。这样是很危险的。目前,一些正在改进中的企业,由于缺乏对项目管理的全面的认识,特别是一些项目特征非常明显的企业,将专业工程过程和实际项目过程的管理混淆起来,片面的强调项目管理,忽视了更为基本的基于产品生产过程规范的管理,甚至忽略对产品生命周期的管理,使得很好的过程却不能得到满意的产品。这是特别需要注意避免的。当出现这种情况时,就需要重点关注工程规范的定义和执行情况,这未必是项目过程管理当中的问题。举例某软件开发企业采用瀑布式软件工程模型,结合企业的实际环境,定义了一个软件的开发过程,需要经过可行性分析、需求分析、总体设计、详细设计、系统实现、测试、试运行等步骤,这一开发过程实际就是该企业开发软件产品的基本工艺。这样,该企业的软件开发项目中,通常也包括这些项目阶段,体现在项目计划中。该企业按照这样一个基本过程的要求,对每个步骤都进行了细化,主要工作成果都以文档、程序、数据等方式表现。例如在需求分析过程中,对于需求分析所应包含的分析内容、步骤、方法、表现形式,就作出了更为具体的规定,形成了需求分析文档的标准模版,也就是需求分析这一工艺步骤的工艺标准。各项目组的需求分析人员,基于这样一个基本的过程规范要求,结合具体的产品要求的特点,按照规范标准的要求,计划和执行需求分析的任务。在该企业的软件工程规范中,对于每个工程步骤都提出了资源要求,特别是对人员知识、能力的要求。这种普遍要求也是属于工程过程规范的,至少在软件工程中是需要的,在不同工序中规定了对系统分析员、高级程序员、程序员、测试工程师、版本管理员、质量保证员等角色的能力要求。在实际项目中,就需要根据这种要求来组织具体的资源,找到能够胜任工作的具体人员。工程规范中对资源的要求,是具体项目资源管理的重要前提。与此同时,在项目过程中定义了裁剪方法,可以根据项目的具体情况选择部分工程过程,而不是必须经历完整的开发过程。例如有的项目是基于已有的系统进行系统性能优化,那么就不需要重新经历业务需求分析的过程,直接进入优化方案的设计过程。通过项目管理过程与项目中对应生产工艺的工程过程的分离,就使得项目管理具有了很大的灵活性,可以灵活的选择和组合所需的工程过程。该企业为了适应技术发展的需要,还采用了快速原型方法。这种工程方法与瀑布式方法的过程差异很大。因此,在企业的项目管理制度中规定,制定项目计划时的第一项任务,就要对所采用的工程方法作出选择,根据所选择的工程方法选择相应的项目模版类型,在此基础上再进一步制定具体的项目计划。无论采用哪一种工程方法,项目经理都被允许根据实际项目的具体需求对工程过程作裁减,工程过程的裁减,直接就反映成项目范围的变化,从而影响整个项目计划的制定。从上面的例子还可以看出,在一个企业内,对于同一类型的产品,还可以根据具体的需要采用不同的工程方法,就软件开发来说,除了瀑布式模型,还可以使用增量模型、迭代模型等,针对一个全新的自己能主导的产品开发需求,可以采用瀑布式模型,对那些基于已有产品的升级,可以采用增量模型,对于需求不清晰的开发任务,可以采用迭代模型逐步达到目标。总之,企业中的工程方法的定义和取舍,完全取决于企业核心业务的发展战略的需要,必须满足于产品本身特点的要求。
信息发布:广州名易软件有限公司 http://www.myidp.net
|