需求是整个软件项目关键的一个输入,据统计,不成功的项目中有37%的问题是由需求造成的。和传统的硬件生产企业相比较,软件的需求具有模糊性、不确定性、变化性和主观性的特点,在硬件生产企业中,产品的需求是明确的、有形的、客观的、可描述的、可检测的,而软件需求不具备此特征。需求文档作为客户和开发人员、开发人员之间进行交互的文档,它将系统的需求进行了“固化”,是需求的载体,其作用是至关重要的。笔者结合多年的企业管理信息系统的开发经验,总结了如下的需求描述的方法与经验,供各位同行参考。
  1 构成企业管理信息系统的5个基本要素
  对企业需求的描述可以从2个方面来进行描述,一个方面是对客户现行系统的描述,一个方面是对系统未来的设想。总的而言,无论是从那个方面来描述,构成企业信息系统主要包括5个基本要素:企业的组织结构、流程、数据、商务规则与功能(性能)。其中从用户的角度主要关注流程,是以流程为核心的,通过流程将其他几个要素贯穿起来,需求分析人员也应该从这个角度来和用户沟通;从开发者的角度主要关注企业的数据、商务规则与功能,以便于系统的实现;从实施者的角度主要关注企业的组织结构与功能,以便于系统的发布与实施。
  (1) 企业的组织模型
  即企业的组织结构关系,包括部门设置、岗位设置、岗位职责等。树型组织结构图是描述企业的组织模型的一种常用方法,它可用来搞清各部门之间的领导关系,每个部门内部的人员配备情况, 职责分工等情况,它是划分系统范围,进行系统网络规划的基础。在组织结构图中应将用户的组织结构逐层详细描述,每个部门的职责也应进行简单的描述。组织结构是用户企业业务流程与信息的载体,对分析人员理解企业的业务、确定系统范围具有很好的帮助。取得用户的组织结构图,是需求获取步骤中的基础工作之一。
  用户环境中的企业岗位或角色,和组织机构一样,也是分析人员理解企业业务的基础,也是分析人员提取对象的基础。
  对用户角色的识别常常遗漏的是计算机系统的系统管理人员,角色识别不全,对以后的功能识别会造成盲区。
  (2) 企业的流程模型
  即企业的业务流程,包含哪些流程、流程之间的关系、每个流程中包括哪些活动、每个活动涉及到的岗位。企业的作业流程首先要有一个总的业务流程图,将企业中各种业务之间的关系描述出来,然后对每种业务进行详细的描述,使业务流程与部门职责结合起来。详细业务流程图可以采用直式业务流程图形式。对企业而言需要定义关于业务流程图的描述标准,大家采用相同的图例来描述,便于管理。
  业务流程图的优点 :
  ■绘图的过程,实际上是作业流程条理化的过程
  ■表达形象直观,易于和用户交流,易于项目组内部交流调研的结果,需要得到用户的认同,这需要和用户交流调研的结果,交流的文档要通俗、易懂, 不能采用专业术语。
  ■可以作为培训实施人员与技术服务人员的文档
  业务流程图的缺点 :
  ■对高层管理人员的实际需求调查的不清楚.
  这一方面是由于用户没有接触过计算机, 对采用计算机后的管理会是什么样子?计算机能够完成当前手工操作的哪些内容?能够作哪些现在手工无法完成的工作等等没有清楚的概念,因此用户无法将这些问题反应出来. 另一方面说明分析人员没有经验,对原始材料挖掘不深,不能从用户 提供的材料中提炼处来用户的真正需求,不能找到当前管理中的问题。
  ■对各种业务之间的总体关系没有表达出来.
  采用直式业务流程图可以将企业的每一种业务的处理流程清楚地表达出来, 但是各业务之间的联系却没有表示出来,单看一种业务的流程图很清楚,但是却不能综合在一起,没有整体的概念,作为需求分析的文档,在这方面表达的不够完整。
  ■在不利用工具的情况下,画法烦琐。
  图形可以将流程描述的很清楚,但是还要附加以一些文字说明,如关于业务发生的频率、意外事故的处理、高峰期的业务频率等,不能在流程图中描述出的内容,需要用文字进行详细描述。