• 系统分析与设计方法概论

    2004-11-19

    版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
    http://yinjilong.blogbus.com/logs/504433.html

     

    系统分析与设计方法概论

    研发中心 赵骥

    1.前言

      电子政务、企业信息系统等大型信息系统通常十分复杂,如何对它进行分析设计,用规范化的符号语言将所要开发的系统完整准确地表达出来,是需要解决的一个问题。工程化软件开发的根本出发点是希望做软件象造汽车、盖大楼那样能够规模化生产,要做到这一点,就必须对于所要开发的系统有工程化的描述,因此,产生了信息系统的各种分析设计方法与设计工具。虽然软件工程化生产还有很长的路要走,但系统分析设计事关软件系统开发的成败,成功项目的经验与失败项目的教训都集中地反映出系统分析设计的重要性,在分析设计方面加大投入力度往往能起到事半功倍的效果,也会避免项目走弯路。本文将对信息系统的设计方法做一简要介绍。

    2.信息系统设计中的关键问题

      在进行需求调研与分析之后,自然就要考虑采用什么样体系结构,什么样的功能模块来满足客户业务处理模式,这正是系统设计的任务。一般而言,一个信息系统需要表达出系统的体系结构、系统功能模型、系统过程模型、系统信息模型、系统接口设计等关键问题。

      系统体系结构:体系结构就是用图形或其他工具综合描述系统的组成,从而为系统的开发过程提供一个可扩展的系统基础。

      系统功能模型:表达系统的功能结构,反映出系统将为用户能提供那些服务以及这些服务间的逻辑关系。

      系统过程模型:表达系统中业务处理的流程,各个任务之间的关系以及任务所对应的角色。

      系统信息模型:为实现系统中功能,必须设计相应的信息实体,表达系统中所有信息对象的属性。属性分基本属性和细目属性,作为设计数据库表结构的基础,以保证每条记录唯一性的主键,定义描述实体间约束关系的外键。

      系统接口:分为外部接口、内部接口和用户接口,需要表达要开发的系统与其他的信息系统、系统内部各子系统之间的信息接口和信息传递过程,以及系统与用户的界面。

    3.系统设计方法介绍

      对传统的四大工程建筑工程、机械工程、化学工程和电气工程来说,工程师一般都必须对所用的各种工程符号了如指掌,利用这些工程符号将所要设计的产品表达出来。这些符号的本质是方法学,是符合特定行业的设计体系。对于信息系统来说也是这样(虽然信息系统有一定的特殊性,目前的信息系统生产恰恰象传统工程实施福特式生产前的生产模式)。目前也有很多关于信息系统的设计体系,有代表性的有 IDEF 方法、 UML 方法、 ARIS 方法等。

    3.1 IDEF方法

      IDEF(ICAM Defination)方法是在美国空军 ICAM 项目建立的,为多种国际组织所承认的标准。最初开发 3 种方法 : 功能建模 (IDEF0) 、信息建模 (IDEF1) 、动态建模 (IDEF2) ,后来,随着信息系统的相继开发,又开发出了下列 IDEF 族方法:数据建模( IDEF1X )、过程描述获取方法( IDEF3 )、面向对象的设计( OO 设计)方法( IDEF4 )、实体描述获取方法( IDEF5 )、设计理论获取方法( IDEF6 )、人-系统交互设计方法( IDEF8 )、业务约束发现方法( IDEF9 )、网络设计方法( IDEF14 )等。

      在信息系统设计中,实际用得较多的有 IDEF0 和 IDEF3 。

    3.1.1 IDEF0—系统功能分析方法

      IDEF0 的图形只有两个元素:方框与箭头,其中,方框代表活动,而箭头代表接口。有四种类型的接口,分布在方框的四个边,它们分别是输入、输出、控制和机制。


      IDEF0 是一个 IDEF0 模型包含一系列相互关联的框图,它从上层活动框图进行分解,组织成层次化的结构。通过对所描述的系统进行层次化分解,可以实现框图内的数据抽象。通过逐步分解,将一个复杂的系统分解成一些简单系统的集合。在分解过程中,粗略的概念被逐步细化,同时保证前后关系的一致性,对外部相关的输入输出信息即不增加也不减少。细化过程直到不能再分解或可以直接实现为止。

      IDEF0 的设计过程一般为:

      1) 画出顶层图:对 A-O 图分解成 3 - 6 个主要部分得到 A0 图。 A0 图的几个主要部分可以由几个分系统所组成,每个分系统及对应着从 A-O 分解的各部分。为了描述系统的所有活动,必须确定每个方框的输入、控制、输出、机制。

      2) 建立分解图:每个方框分解成几个主要部分以形成一张新图。并用同样方法可得到一系列图形。这些图形与上一级图形形成了父子图关系,并使父图得到细化,从而使最终的分解图是一些能够直接实现的简单活动。

      3) 建立词汇表:每张图都应附有相应的文字说明,建立词汇表,以帮助读者理解图形的主要思想。

      IDEF0 建模方法如图 1 所示。

    3.1.2 IDEF3—过程描述方法

      一般来说,过程模型需要描述:

      1)事务总体处理流程;

      2)过程中各个任务(处理节点);

      3)事务处理节点相互关系和过程间的协作;

      4)完成每个过程 /任务的角色。

      IDEF3 提供了一种机制,用于收集和记录过程中的各个要素, IDEF3 的基本单元为行为单元( UOB )和连接单元( Junction ),行为单元用于描述每一个任务场景,可以表达一个事件、一个决定、一个动作、一个过程等,行为单元也可逐级分解,体现主流程与各子流程间的层级关系。连接单元将各个 UOB 串起来,描述过程的流逻辑,一个过程流可以通过连接分成几个通路,也可多个通路汇集成一个通路,连接的类型可以分为“与”、“或”、“异或”,也有同步与异步之分。在每一个场景中也可以表达出该场景相关的角色。图 2 是一个 IDEF3 的例图:

      IDEF 方法可用建模工具 BPWIN 来进行分析设计。

    3.2 UML

      统一建模语言( UML Unified Modeling Language)是目前软件业普遍采用的设计方法, UML 建模语言出现于 70 年代中期, UML 是一种定义良好、易于表达、功能强大且普遍适用的建模语言。它溶入了软件工程领域的新思想、新方法和新技术。它的作用域不限于支持面向对象的分析与设计,还支持从需求分析开始的软件开发的全过程。

      UML 通过用例图、顺序图、对象图、活动图、状态图、协作图、部署图表达软件系统的各个本质特征, UML 能够把模型与实际应用紧密地联系起来。通过模型与代码之间的映射,可以直接为不同的程序开发环境生成系统结构的框架,通过建立模型和代码间的映射,可以确保代码改进时模型也随之更新了,而且通过模型与代码间的自动连接,并确保良好的设计实施。

      以 UML 为基础的设计工具 Rational Rose 也为大家所熟知。鉴于有关 UML 的介绍资料非常多,本文不再详细介绍。

    3.3 ARIS

      ARIS (德文的缩写语 英文意思为Architecture of Integrated Information System 集成化信息系统架构)方法是由德国萨尔大学企业管理研究所所长及 IDS-Scheer 公司总裁 Wilhelm Scheer 教授所 1992 年提出。是一个在西欧非常有影响的信息系统设计方法,其设计理念是希望提出一个集成化框架,将描述业务流程的关键要素纳入到模型之中。 ARIS 方法以业务流程分析为核心,通过组织视图、数据视图、控制视图、功能视图来描述系统的生命周期模型,用 ARIS 方法,可将一个复杂系统逐步分解,通过需求定义、设计规划、实现描述三个层次,降低系统复杂度,完整表达系统。

      ARIS IDS 公司另提出一套 ARIS-House of Business Engineering ( ARIS-HoBE )理论框架,也开发出了一套设计工具,结合不同的信息项目通过过程设计( Process Design )、过程管理( Process Management )、过程工作流( Process Workflow )及过程应用( Process Application )等四个阶段来完成系统描述。

    4.系统设计方法分析

      系统设计的根本在于如何将所要开发的系统完整、精确、无歧义地表达出来,便于与客户、与开发人员的沟通交流,避免因沟通问题而产生对系统的理解不一致。系统分析员是程序员和客户的桥梁,系统分析员的思维是否严密,是否严谨,十分重要,这一点是系统分析设计的基础。

      各种系统设计方法各有特点, UML 建模方法在软件公司被经常采用,通过 UML 提供给程序员提供用例图,类图,时序图,协作图等,使程序员可以很方便地进行开发。但使用 UML 描述系统,很容易陷入细节之中,往往难以表达出系统的整体结构,缺乏系统“全貌”描述,给人以系统组成关系凌乱的印象,对于大型信息系统尤其如此。而 IDEF 方法正好与此相反,它可以很清晰地表达出大型信息系统的层次结构,各个子系统(模块)间的关系,通过 A0 、 A1 、 …An 图逐层分解,完整地表达出系统各个层面,但是 IDEF 方法对于指导程序开发,针对性不强,在设计与开发之间存在一个“鸿沟”。 ARIS 方法是后期引起注意的设计方法,在西欧很有影响力,国内采用的不多, ARIS 作为一种为用户提供从系统建模到应用系统设计的全程辅助的工具,具有非常广阔的应用前景。

    (完)


    历史上的今天:

    IDEF0介绍 2004-11-19
    高清晰地图 2004-11-19

    随机文章:

    本周目标 2004-11-22
    下午 2004-11-18
    安排 2004-11-16

    收藏到:Del.icio.us