信息管理系统开发方法的比较(上)(陈春鸿)

2003-4-1 10:43:51【作者】 畅享网 【进入论坛】
本文关键字 理论探讨
广告

摘要:本章主要在对管理信息系统的开发过程作简要介绍的同时,叙述了三种常用的开发方法,即:结构化法、原型法和面向对象法。

信息管理系统开发方法的比较(上)

陈春鸿

本章主要在对管理信息系统的开发过程作简要介绍的同时,叙述了三种常用的开发方法,即:结构化法、原型法和面向对象法。在此基础上,将这三种方法通过两种途径进行比较,提出了它们的统一性问题。一是,通过比较这三种开发方法的开发过程,论述它们的统一性;二是,从开发广度和开发深度进行比较,论述它们的统一性,同时提出了这三种开发方法的开发过程模型,及完善程度函数H(t)。

关键词:管理信息系统 开发过程 开发方法 统一性

随着科学技术的不断进步,市场经济的发展和我国经济改革的需要,急需在现有的基础上,进一步总结经验,研究当前存在的问题,从整体上形成一个由单项向综合,由分散向集中,由局部向全局,由管理型向决策支持型过渡,建立企业级资源共享网络化数据库管理信息系统模型, 从模拟现行管理体制到推动现行管理体制的改革,实现我国各行业、企业的管理信息现代化。因此,大力开展管理信息系统开发方法的研究,开发适用于我国现代化建设急需的、经济的、标准化的管理信息系统是非常必要和迫切的。

一、信息管理系统开发的一般过程

管理信息系统的开发是一项系统性相当强的工作,其开发过程涉及人、财、物等资源的合理组织、调度和使用,涉及到组织管理工作的改进及工作模式的变迁。对于做任何一个项目,都有一个从问题的提出、论证到问题的分析、方案的设计,直到方案的实施和评价等过程,管理信息系统的开发也有其一般过程。如图1所示。

图1: 系统开发的一般过程

从图1中可以看出,系统开发是一个动态的概念。系统开发的上一步骤的输出作为下一步骤的输入,同时此输出又作为前面步骤的动态反馈。系统就是在这种运动过程中进行动态调整,不断提高、完善。

二、 信息管理系统常用开发方法分类

在系统开发的早期,由于缺乏系统开发思想,没能形成工程的概念,以至于60年代出现了所谓“软件危机”,也促使了一门新科学——“软件工程”的诞生。管理信息系统工作者对信息系统的开发提出了许多开发方法,其中常用的有结构化法(Structured Development),原型法(Prototyping Development),面向对象法(Object_Oriented Development)三种。

1.结构化法

结构化法体现了自顶向下、结构化、生命周期思想的系统开发方法,主要包括:

1) 结构化分析设计技术(structured analysis design technique);

2) 约当(E. Yourdon)结构化系统开发方法;

3) 企业系统规划法(BSP);

4) 詹姆斯.马丁(James Martin) 提出的战略数据规划法;

5) 我国专家提出的映射模型设计法(RMDM)和信息系统设计工程综合分析法(IDEA);

6) 杰克逊提出的JSP(Jackson structured program)和JSD(Jackson system development);

7) 哈兰.米尔斯(Harlan D. Mills)提出的系统开发的黑箱(black box)理论及其相应的分析设计方法等。

结构化法是基于系统的思想,系统工程的方法,以用户至上为原则,采用结构化、模块化等手段对信息系统进行分析、设计和实施。在实际开发过程中,对应于系统开发的一般过程(见图1),主要应用的结构化设计方法有结构化分析(Structured Analysis),结构化设计(Structured Design),结构化编程(Structured Program)。

结构化分析(SA),是一种面向数据流的分析方法,采用结构化分析解决问题主要通过“分解”和“抽象”两种方式。在这一阶段采用了诸如数据流程图(DFD)、数据字典(DD)、处理逻辑表达(PL)、数据存储规范化(NF)及数据立即存取图(DIAD)等工具或理论。通过SA过程就能得到一个系统的抽象的逻辑模型。

结构化设计(SD)是对SA阶段提出的逻辑模型进行计划性的设计。通过SD工作过程,尽可能提高系统的运行效率、可变性、可控性和工作质量。SD的工作主要包括代码设计、文件/数据库设计、I/O设计、模块功能设计和处理过程设计。SD提供了一整套设计工具、设计原则和设计策略,采用影射思想由DFD图得到SC图。这样就得到了一个可实施的系统的逻辑模型。

结构化程序设计(SP)是采用一些基本的控制结构(IF…ELSE…ENDIF、DO WHILE…ENDDO、DO CASE…CASE…ENDDO等)工具,采用自顶向下地扩展、模块化、逐步求精原则从事程序代码设计,以得到一个现实的物理模型。

2.原型法

原型法基于新一代的系统开发工具和快速开发方法, 主要包括:


1) 原型方法及其分支(如瀑布型和快速型方法);

2) 计算机辅助软件工程(CASE方法);

3) 为建立专用的信息系统开发生成工具的环境,用于定义和生成实际系统的方法。

原型法与传统的生命周期法LC相比摈弃了一步步周密细致地调查、分析、整理文档、再进行逻辑设计、物理设计等繁琐过程而快速构造系统的物理原型。但是,并不能说开发人员用原型法就没有一个分析、设计、实施的过程。实际上开发人员在运用原型法时有意识或无意识地对系统进行了一个分析、设计、比较的过程,才能快速构造一个原型系统,这个原型系统蕴含着开发人员分析、设计、比较的思路,只不过开发人员直接用物理模型表达了对系统的理解,而省却了结构化法中的大量的文档资料。

3.面向对象法

面向对象法(OO)是近年来发展起来的一种系统开发方法, 它与原型方法的设计与实现有一定的共同之处。 不同的是,面向对象法是一种从系统调查分析之后就开始面向对象进行分析的开发方法。它强调系统设计之前的系统分析,强调以系统中的数据或信息为主线,全面、系统、详尽地描述系统的信息,建立系统的信息模型,指导系统的设计。面向对象法按系统开发的一般过程(见图3-1)分为面向对象分析(OOA)、面向对象设计(OOD)、面向对象编程(OOP)。

OOA试图利用对象(Object)概念,来描述系统做什么;OOD则试图描述怎么做。在OOA和OOD中主要采用了类图/模板(Class_Chart/Template)、对象图(Object_Chart)、对象状态图(Object_Status_Chart)三种工具。OOP利用类(Class)、对象(Object)、数据封装( Data Encapsulation )等概念及面向对象语言的继承性、多态性等特性进行程序的编制和调试。

三、信息管理系统开发过程的统一性问题

从对结构化法、原型法和面向对象法的简单描述可以看出:如果将这三种方法分别对应于系统的开发(不同的开发方法对系统开发的适宜程度不同,由于篇幅有限,不加深探)的一般过程,我们可以看出它们都有一个分析、设计、实施的过程。如表1:

结构化法、原型法、面向对象法开发过程的比较 (表1)

方法

过程

结构化法

原型法

面向对象法

分析

SA

PA

OOA

设计

SD

PD

OOD

实施

SP

PP

OOP

工具

DFD、DD、PL、NF、DIAD、SC、结构化语言等

4GLs、快速生成器、CASE软件等

Class_Chart/

Template、Object_Chart、Object_Status_

Chart,面向对象语言等


:利用原型法开发系统,开发人员实际上也有一个有意识或无意识的分析、设计、实施过程。

从表一可以看出,这三种常用开发方法在一定意义上具有开发过程的统一性。开发人员不论运用哪种方法于实践,只要明白它们具有的一般共性和各自的特性,就能把握系统的开发,工作起来就应心得手了。

未完待续

浏览:信息管理系统开发方法的比较(下)

本文由作者向AMT提供
作者联系方式:
cchc9@sohu.net

如果您希望与本文章的作者或其所在机构,进一步交流,请联系:畅享网 姜小姐
jill.jiang@amt.com.cn | 021-51096826-112 | 在线联系
ITSM-适境而为[原创]ITIL软着陆需要合适的ITS..

ITIL要实现“软着陆”,ITSM工具必不可少。现有ITSM工具大到Remedy、MRO,小到国内各种自主系统。

企业信息化杂谈[原创]空降CIO的变与不变

CIO需要尽快适应新公司的权力分配体系。在两家公司可能职位名称是一样的,但是对这个职位的责权利可能是很大的不同。

CIO职场,强者生存?

在2008年,我们将继续看到CIO向商业运营方向发展。与此同时,我们也会看到商业管理人员将与技术管理人员一起竞争CIO岗位。 IT领导者的就职机会虽有不少,但其难度将会大幅提高。2……

防震减灾,IT当关

今天,任何的防震救灾体系,都离不开IT技术。地震观测台是数字化的,震害防御需要对以往的地震信息进行数据分析,应急救援要需要现代多样化的通讯技术。如果说,在许多行业,信息技术还只是一……