0.3.2 办公自动化系统的开发方法

1.办公自动化系统的开发方法

办公自动化系统的开发有以下几种常用方法。

(1)结构化系统开发方法。结构化系统开发方法(Structured System Analysis And Design,SSA&D)又称结构化生命周期法,是系统分析员、软件工程师、程序员以及最终用户按照用户至上的原则,自顶向下分析与设计和自底向上逐步实施的建立计算机信息系统的一个过程,是组织、管理和控制信息系统开发过程的一种基本框架。

(2)原型法。运用结构化系统开发生命周期法的前提条件是要求用户在项目开始初期就非常明确地陈述其需求,需求陈述出现错误,对信息系统开发的影响尤为严重,因此,这种方法不允许失败。事实上这种要求又难以做到。人们设想,有一种方法,能够迅速发现需求错误。当图形用户界面(Graphic User Interface,GUI)出现后,自20世纪80年代中期以来,原型法逐步被接受,并成为一种流行的信息系统开发方法。

原型法(Prototyping Method)是在系统开发初期,凭借系统开发人员对用户需求的了解和系统主要功能的要求,在强有力的软件环境支持下,迅速构造出系统的初始原型,然后与用户一起不断对原型进行修改、完善,直到满足用户需求。信息系统原型,就是一个可以实际运行、可以反复修改、可以不断完善的信息系统。

(3)面向对象方法。以前的开发方法,只是单纯地反映管理功能的结构状况,或者只是侧重反映事物的信息特征和信息流程,只能被动满足实际问题需要的做法。面向对象的方法把数据和过程包装成为对象,以对象为基础对系统进行分析与设计,为认识事物提供了一种全新的思路和办法,是一种综合性的开发方法。

(4)CASE工具。计算机辅助软件工程方法是一种自动化的系统开发环境,它能够全面支持除系统调查外的所有开发步骤,使得原来由手工完成的开发过程,转变为一自动化工具和支撑环境支持的自动化开发过程。采用CASE工具进行系统开发,还必须结合某种具体的开发方法,如结构化系统开发方法等。

2.结构化系统开发方法简介

下面重点介绍结构化系统开发方法。

(1)基本思想。如图0-3所示,结构化系统开发方法由管理策略和开发策略两个部分组成:

图0-3 结构化系统开发方法组成

管理策略部分强调系统开发的规划、进程安排、评估、监控和反馈。

开发策略部分包括:

① 任务分解结构(Work Breakdown Structure,WBS)。包括系统规划、系统分析、系统设计、系统实施和系统支持。

② WBS优先级结构。即系统开发所遵循的基本模式,如瀑布模型(Waterfall)、阶梯模型(Stair step)、螺旋模型(Spiral)、迭代模型(Iterative)等。

③ 开发经验。计算机信息系统的开发是一个实践性非常强的过程,因此,开发经验是非常宝贵的一种系统开发资源,如何充分地利用开发人员丰富的开发经验也应该是系统开发生命周期研究的内容之一。

④ 开发标准。系统开发标准通常包括活动、职责、文档、质量检验四个方面的标准。

(2)开发过程。

① 系统规划阶段。该阶段的范围是整个业务系统,目的是从整个业务的角度出发确定系统的优先级。

② 系统分析阶段。主要活动包括可行性分析和需求分析。其范围是列入开发计划的单个信息系统开发项目。目的是分析业务上存在的问题,定义业务需求。

③ 系统设计阶段。系统设计的目的是设计一个以计算机及网络为基础的技术解决方案以满足用户的业务需求。总体设计的主要任务是构造软件的总体结构;详细设计包括人机界面设计、数据库设计、程序设计。

④ 系统实施阶段。系统实施的目的是组装信息系统技术部件,并最终使信息系统投入运行。如用户手册等。包括的活动有编程、测试、用户培训、新旧系统之间的切换等。

⑤ 系统运行与维护阶段。目的是对系统进行维护,使之能正常地运作。

(3)用户的积极参与。用户积极参与信息系统开发的全过程,是信息系统开发能否成功的一个关键的、绝对必要的因素。

严格按划分的阶段和活动进行系统开发。如图0-4所示,运用系统处理方法,将系统开发的全过程采取“分而治之(Divide and conquer)”的策略,将整个系统的开发过程分为一系列“阶段(Phases)”,然后再将阶段分为一系列的“活动(Activities)”,将活动划分为更小的、更易于管理和控制的“作业(Ta sk)”。

图0-4 划分的阶段和活动

设立检查点(Check point)。在系统开发的每一个阶段均设立检查点,来评估所开发系统的可行性,避免由于系统开发的失败造成更大的损失。

文档的标准化。文档的标准化是进行良好通信的基础,是提高软件可重用性的有效手段。

(4)优、缺点。

① 优点:

阶段的顺序性和依赖性。前一个阶段的完成是后一个阶段工作的前提和依据,而后一阶段的完成往往又使前一阶段的成果在实现过程中具体了一个层次。

从抽象到具体,逐步求精。从时间的进程来看,整个系统的开发过程是一个从抽象到具体的逐层实现的过程,每一阶段的工作,都体现出自顶向下、逐步求精的结构化技术特点。

逻辑设计与物理设计分开,即首先进行系统分析,然后进行系统设计,从而大大提高了系统的正确性、可靠性和可维护性。

质量保证措施完备。每一个阶段的工作任务完成情况要进行审查,对于出现的错误或问题,及时加以解决,不允许转入下一工作阶段,也就是对本阶段工作成果进行评定,使错误较难传递到下一阶段。错误纠正得越早,所造成的损失就越少。

② 缺点:

它是一种预先定义需求的方法,基本前提是必须能够在早期就冻结用户的需求,只适应于可在早期阶段就完全确定用户需求的项目。然而在实际中要做到这一点往往是不现实的,用户很难准确地陈述其需求。

未能很好地解决系统分析到系统设计之间的过渡,即如何从物理模型如实反映出逻辑模型的要求,通俗地说,就是如何从纸上谈兵到真枪实弹地作战的转变过程。

该方法文档的编写工作量极大,随着开发工作的进行,这些文档需要及时更新。

(5)适用范围。该方法适用于一些组织相对稳定、业务处理过程规范、需求明确且在一定时期内不会发生大的变化的大型复杂系统的开发。