2.2 生命周期法的工作流程
生命周期法(Life Cycle)也称结构化系统开发方法(Structured System Development Methodologies)、结构化生命周期法,其依据是软件生命周期的概念,给信息系统的开发定义一个过程,对整个过程中的每个阶段都规定它的任务、工作流程、管理目标及要编制的文档等,下一阶段的工作在上一阶段文档的基础上进行,使开发易于管理和控制,形成一个可操作的规范。
生命周期法采用的是系统工程的思想和工程化的方法,遵循用户至上的原则,自顶向下地整体性分析与设计和自底向上逐步实施的系统开发过程。它先把信息系统的开发工作从初始到结束划分为若干阶段,再严格规定每个阶段的任务和工作步骤,同时提供便于理解和交流的开发工具方法。
学术界对于生命周期的阶段划分不尽一致,表2-1给出了几种比较典型的划分方法,其中最常用的就是生命周期的一般模式划分方法,即将生命周期划分为5个阶段。
表2-1 生命周期法的几种阶段的划分模式
2.2.1 信息系统规划
信息系统规划(ISP,Information System Planning)是信息系统实践中的重要问题之一。信息系统的建设往往投资大、耗时长,规划不好不仅对自身造成损失,由此引起企业运行不好的间接损失就更为巨大。
信息系统规划具有以下4个特点。
(1)信息系统规划是面向全局、长远的关键性的问题,具有较强的不确定性,结构化程度较低。
(2)信息系统规划是一个管理决策过程,高层管理者是工作的主体。
(3)信息系统规划要有概括性,宜粗不宜细。要为后续各阶段的工作提供指导,为系统的发展制定一个科学而又合理的目标和达到该目标的可行途径,而不是代替后续阶段工作。
(4)信息系统规划是企业总体规划的一部分,要具有较强的应变能力。现代企业面临市场化、国际化的环境,竞争性越来越强,企业要生存和发展,就要不断调整和改革,对信息系统的适应性要求也越来越高。
1.信息系统战略规划
信息系统的战略规划是企业战略规划的重要组成部分。现有的信息系统可以为企业制定或调整企业战略规划提供各种必要的信息支持。因此,信息系统的战略规划应当与企业战略规划有机地配合,与企业的发展战略保持一致。
1)信息系统战略规划内容
系统规划所涉及的内容非常广泛,从企业的总体目标到各职能部门的目标;从企业的政策和计划到企业信息部门的活动与发展等。一个信息系统的规划,既包括对系统目标、策略和约束条件的分析,也包括应用系统的性能指标、功能结构、信息系统的组织、人员、管理和运行的分析,还包括信息系统的效益分析和计划的实施等。
(1)信息系统的总目标、发展战略和总体结构。根据企业的战略目标和内外约束条件,确定信息系统的总目标和总体结构。信息系统的总目标规定信息系统的发展方向,发展战略提出衡量完成具体任务的标准,总体结构提供系统开发的框架。
(2)了解当前信息系统的状况。对企业现有信息系统的状况要充分了解和分析,包括硬件系统、软件系统、人员结构、开发项目的进展及应用系统的情况等。
(3)对影响计划的信息技术发展的预测。在规划中,要考虑信息技术发展对信息系统的影响,对环境的更新、软件的可用性、方法论的变化要进行预测。
(4)短期计划安排。短期计划一般指1~2年的具体工作安排,包括硬件设备的购置,项目开发,软件实施与维护的时间安排,人力、资金的需求计划等。
2)信息系统战略规划方法
自20 世纪60 年代起,随着信息系统在组织中越来越广泛的应用,许多学者开始了对信息系统战略规划方法的探索与研究,出现了很多用于信息系统战略规划的方法,主要有业务系统规划法(BSP,Business System Planning)、关键成功因素法(CSF,Critical Success Factors)、战略目标集转化法(SST,Strategy Set Transformation)、信息工程法(IE,Information Engineering)、战略系统规划法(SSP,Strategy System Planning)、价值链分析法(VCA,Value Chain Analysis)、战略一致性模型(SAM,Strategy Alignment Model)等。
2.可行性分析
“可行性”是指在当前环境下,企业建设信息系统是否有必要,是否具备必要的条件,值不值得,是必要性、可能性和有益性的结合。信息系统的建设是一项投资大、周期长、牵涉面广的复杂工程,在正式投入力量之前必须进行可行性分析,以保证各类资源的合理利用和项目的顺利进行。可行性分析从技术、经济、管理3个层面来评价和论证建设信息系统的必要性、可能性和有益性。
1)技术可行性
根据现有的技术基础、技术条件、技术资源和技术发展趋势来分析建设新系统的可行性。主要从软/硬件条件和人员条件两个方面来分析实现新系统的可能性。硬件包括计算机、输入/输出设备、网络通信设备等,软件包括操作系统、数据库管理系统、系统开发平台和网络软件等系统软件及用户专用的应用软件。对绝大多数企业来说,硬件和系统软件都是直接从市场采购,对硬件和系统软件的评价就是对市场提供的商品化的硬件和系统软件的功能、性能、价格、特点等进行评价,选择在可靠性、安全性、稳定性、兼容性、扩充性、性价比等方面适合用户要求的硬件设备和软件产品来构筑信息系统应用平台。应用软件方面,如果采用购买商品化专业软件方式,则需考查该类软件的功能、在同行业企业的应用等内容。信息系统的开发需要专业的技术人员,信息系统的运行与维护也需要一批不同知识结构的技术人员,从各类技术人员的数量、水平和来源等方面进行评价。
2)经济可行性
经济可行性是从经济的角度评价建设一个新的信息系统的可行性,要估算项目的成本和效益,分析项目经济上是否合理,一般采用成本效益分析方法来判断。估算建设新系统的总费用与可能取得的效益,然后进行比较与权衡。
总费用包括初始成本、日常运行与维护费用。
初始成本主要包括:
(1)各种软、硬件及辅助设备的购置、运输、安装和调试费用。
(2)机房及附属设施的建设或改造费用。
(3)系统应用软件的开发或购置费用。
(4)其他费用,如人员培训费用、外出调研费用等。
日常运行与维护费用包括:
(1)人员费用。
(2)易耗品支出。
(3)通信和动力费用。
(4)其他费用,如软件更新费用、意外故障处理费用等。
系统的经济效益包括直接经济效益和社会效益。直接经济效益为因使用新系统而增加的收入加上因此节省的支出,如节省多少人员、降低多少库存、提高资金周转效率等,这些效益可以用货币直接度量。但信息系统的效益大部分是难以用货币形式表示出来的社会效益,可以从以下5个方面来分析。
(1)提供了哪些以前不能提供的统计报表与分析报告。
(2)提供比以前准确、及时的信息。
(3)信息的质量方面有哪些提高。
(4)为领导决策提供了哪些支持。
(5)对企业与有工作联系的外部实体的关系有哪些改善。
3)管理可行性
管理可行性是指新信息系统能否在企业实现,在当前情况下能否很好地运行,即组织内外是否具备接受和使用新系统的条件。诸如企业现有的工作基础和已具备的条件,新系统的建立需要在组织机构、管理制度和管理流程上做哪些改革和调整,这些变动会受到哪些方面的阻力及能否克服,等等。
2.2.2 系统分析
系统分析是应用系统思想和方法,对已选定的对象与开发范围进行有目的、有步骤的实际调查和科学分析。系统分析的目的是弄清楚新系统要做什么,建立新系统的逻辑模型,它不涉及具体的物理实现。
1.系统分析的任务
系统分析阶段的基本任务包括以下内容。
1)分析用户需求
用户需求指的是用户希望新系统应具备的功能和特性。它主要包括功能要求、性能要求、可靠性要求、安全与保密要求、时间进度要求等。
2)详细调查
详细调查当前系统的组织结构、业务流程和数据处理流程,选用一定的工具和方法对它们进行描述。这是系统分析阶段最基本的任务。
3)建立新系统的逻辑模型
在前述工作的基础上提出新系统的逻辑模型。逻辑模型确定了新系统“做什么”这个关键性问题。逻辑模型用一组图表进行描述。
4)编写系统分析报告
系统分析报告也叫系统分析说明书。系统分析说明书通过审核以后,将成为下一步系统设计的依据和将来验收系统的依据。
在整个系统的开发中,系统分析人员起着十分重要的作用,可以说,系统分析人员的知识水平和工作能力决定了系统的成败。他们与组织的各类人员打交道,是用户和技术人员之间的桥梁和“翻译”。因此,系统分析人员不但应掌握坚实的信息系统知识,还必须具备必要的管理科学知识。系统分析人员还必须考虑系统的软/硬件平台、数据采集、安全性要求等方面。
2.系统分析工作的步骤
1)现行系统的调查与分析
对现行系统进行详细的业务调查,了解和分析各项需求,画出系统的业务流程图,然后对业务流程图进行分析,抽取出信息处理流程,画出数据流程图。
2)数据分析
对数据流程图中所设计的数据类进行分析与处理,建立系统的数据字典。
3)提出新系统逻辑结构
4)编写系统分析报告
2.2.3 系统设计
系统分析阶段要回答的中心问题是系统“做什么”,即明确系统的功能组成,这一阶段建立了系统的逻辑模型。系统设计阶段要回答的中心问题是“怎么做”,即如何实现系统分析报告确定的系统功能。在这个阶段,要在系统分析报告的基础上,根据实际的经济条件、技术条件和管理条件,确定系统的物理模型。
1.系统设计的任务
系统设计阶段的主要任务如下。
1)系统总体结构设计
进行系统总体结构模块化设计,给出系统的总体结构模块图。
2)代码设计
进行代码设计规则、编码设计和代码维护设计。
3)输入/输出设计
进行输入设计和输出设计。
4)数据存储设计
完成数据库设计和数据的安全保密设计等。
5)网络设计
完成设备配置、通信网络的选择、网络协议的选择和网络拓扑结构的设计等。
6)安全设计
完成系统安全措施的制定及安全技术的设计。
7)编写系统设计报告
2.系统设计工作的步骤
系统设计包括总体设计和详细设计两大步骤。首先进行总体设计,总体设计的工作步骤如下。
(1)划分系统功能模块。
(2)设计功能模块间的接口。
(3)画出系统总体结构模块图。
详细设计的工作步骤如下。
(1)编码设计。
(2)数据库设计。
(3)输入/输出设计。
(4)网络设计。
(5)模块处理过程设计。
(6)安全设计。
(7)编写系统设计报告。
2.2.4 系统实施
系统实施是信息系统开发的最后一个阶段。这一阶段要把物理模型转换为可实际运行的物理系统,交付用户使用。
系统设计报告是信息系统实施的依据和出发点,其中详细规定了系统的结构,规定了各功能模块的功能、处理流程、输入和输出,规定了数据库的物理结构等。
这个阶段的任务包括以下5个方面。
1)硬件系统的准备
硬件包括计算机主机、输入/输出设备、存储设备、辅助设备和网络设备等。根据系统设备选型方案进行新系统所需设备的购置、安装和调试。
2)软件系统的准备
软件包括系统软件、数据库管理系统及一些应用程序。系统软件和数据库管理软件一般直接从市场购买,采用不同的开发方式,应用程序的编写工作量有很大的差异。完全开发则需要相当多的人力、物力和时间,购买商品化应用软件开发量则相对很小。
3)网络实施
现代信息系统都是基于网络平台的。网络实施的主要任务有网络系统所需设备和管理软件的购置、网络布线、设备的安装及调试和人员培训等。
4)人员培训
人员培训工作实际上贯穿于整个开发过程,这一阶段的人员培训主要针对系统用户,使他们适应和逐步熟悉新系统的工作流程和操作方法。
5)数据准备
信息系统运行所必需的基础数据的整理和录入。这项工作的重要性往往被忽视,基础数据的完整性和正确性对新系统的正确运行和推广至关重要。
2.2.5 系统运行与维护
在系统实现并交付用户使用之后,就进入了系统的运行与维护阶段。系统运行指信息系统业务过程和应用程序逐日、持续的运行,直至系统生命周期结束,被新的信息系统所代替。与系统运行密切相关的是系统的维护,信息系统不同于其他产品,它在运行过程中有大量的维护工作,以保证系统的正常而可靠地运行,并能使系统不断得到改善和提高,充分发挥其作用。
维护的内容主要包括以下4个方面。
1)程序的维护
在系统运行过程中,一方面,用户必然会遇到测试中没有发现的程序错误,这时需要及时更正过来,另一方面,随着用户对系统的熟悉,用户会提出增加新的业务功能或修改已有功能的要求,维护人员要重新分析新的需求,做出相应的修改。
2)数据的维护
业务处理发生了变化,引起对数据结构和内容的变化,需要进行相应的修改。
3)设备的维护
对各类设备的日常维护与管理,出现故障时由专人进行修理。
4)系统恢复
用户的误操作、软/硬件系统的错误都可能引起系统的瘫痪和数据丢失。此时需要维护人员帮助用户恢复系统的文件和数据库。