管理信息系统开发方法
管理信息系统开发方法
物流管理信息系统的开发方法
目前常用的系统开发方法有 1)生命周期法 2)原型法 3)面向对象的开发方 法 4)计算机辅助设计法
1 生命周期法
开发管理信息系统有三种策略: 1)D“自下而上”的开发策略 “自下而上”的开发策略是从现行系统的业务状况出发,先 实现一个个具体的功能,逐步地由低级到高级建立MIS。“自下而上”方法 首先从研制各项数据处理应用开始,然后根据需要逐步增加有 关
“自下而上”的开发策略的优点是可以避免大规模系统可 能出现
运行不协调的危险,但缺点是不能像想象那样完全周密, 由于缺乏从整个系统出发考虑问题,随着系统的进展,往往要 作许多重大修改,甚至重新规划、设计。 2)D“自上而下”的开发策略 “自上而下”的开发策略强调从整体上协调和规划,由全面 到局部,由长远到近期,从探索合理的信息流出发来设计信息 系统。由于这种开发策略要求很强的逻辑性,因而难度较大。 “自上而下”的开发策略是一种更重要的策略,是信息系统 的发展走向集成和成熟的要求。整体性是系统的基本特性,虽 然一个系统由许多子系统构成,但它们又是一个不可分割的整 体。 通常,“自下而上”的策略用于小型系统的设计,适用于 对开发工作缺乏经验的情况。 3)综合性开发策略 由于自上而下的方法适宜于系统的总体规划,自下而上的 方法适宜于系统分析、系统设计阶段。所以实际使用时,将两 种方法综合起来,发挥各自的优点,采用自上而下的方法进行 总体规划,将企业的管理目标转化为对信息系统的近期和长远 目标,新系统的设计和实现则采用自下而上的方法。 结构化系统开发是目前应用得最普遍的一种开发方法。 1)基本思想 用系统的思想和系统工程的方法,按照用户至上的原则, 结
构化,模块化,自顶向下对系统进行分析与设计。 先将整个信息系统开发过程划分为若干个相对独立的阶段 (系统规划、系统分析、系统设计、系统实施等)。 在前三个阶段坚持自顶向下地对系统进行结构化划分:在 系统调查和理顺管理业务时,应从最顶层的管理业务入手,逐 步深入至最基层;在系统分析,提出目标系统方案和系统设计 时,应从宏观整体考虑入手,先考虑系统整体的优化,然后再 考虑局部的优化问题。 在系统实施阶段,则坚持自底向上地逐步实施,即组织人 员从最基层的模块做起(编程),然后按照系统设计的结构, 将模块一个个拼接到一起进行调试,自底向上、逐步地构成整 个系统。 2)开发过程 用结构化系统开发方法开发一个系统,将整个开发过程划分为首尾相 连的六个阶段,即一个生命周期(Life Cycle)。生命周期法采用结构化的思 想、系统工程的观点和工程化的方法进行管理信息系统的开发。生命周期开 发方法首先将整个系统的开发过程分为项目定义、系统研究、设计阶段与编 程阶段、安装阶段与运行/维护阶段六个相对独立的开发阶段。其次,在系 统规划、系统分析、系统设计各阶段,按照自顶向下的原则,从最顶层的管 理业务开始,直到最底层业务,以模块化的方法进行结构分解。 项目定义阶段:决定组织是否存在问题,以及问题是否 可以利用建设新系统或改造原有系统的方法加以解决。 3)生命周期法的主要原则 (1)用户参与原则 (2)工作阶段严格区分原则 (3)自顶而下的原则 (3)系统开发过程工程化,工作成果文档化、标准化原 则 4)特点 自顶向下整体地进行分析与设计和自底向上逐步实施的系 统开发过程:在系统规划、分析与设计时,从整体全局考 虑,自顶向下地工作;在系统实施阶段则根据设计的要求, 先编制一个个具体的功能模块,然后自底向下逐步实现整 个系统。 用户至上是影响成败的关键因素,整个开发过程中, 要面向用
户,充分了解用户的需求与愿望。 符合实际,客观性和科学化,即强调在设计系统之前, 深入实际,详细地调查研究,努力弄清实际业务处理过程 的每一个细节,然后分析研究,制定出科学合理的目标系 统设计方案。 严格区分工作阶段,把整个开发过程划分为若干工作阶段,每一个阶段 有明确的任务和目标,预期达到的工作成效,以便计划和控制进度,协调各 方面的工作。前一阶段的工作成果是后一阶段的工作依据。 充分预料可能发生的变化:环境变化、内部处理模式变化、用户需求发 生变化。 开发过程工程化,要求开发过程的每一步都要按工程标准规范化,工作 文体或文档资料标准化。 5)优缺点 强调了开发过程的整体性和全局性,在整体优化的前提下考虑具体的分 析设计问题。
严格区分工作阶段,每一阶段及时总结、发现,总是及时反馈和纠正, 避免造成浪费和混乱。 开发周期长,不能充分了解用户的需求和可能发生的变化。 仅在开始几个阶段与用户沟通多。 6)适用范围 适用于:大型系统、复杂系统。由于相当耗费资源, 不灵活、限制变化, 开发周期长,不适用于面向决策的应用和不适于小型系统开发。 2 原型法 20世纪80年代初人们提出了一种新的软件设计方法,即 原型法(Prototyping)。原型法的基本思想是:当人们要 解决不甚了解的问题时,可以先为该问题建立一个实验模型, 并根据模型的运行情况来研究有关特性以及存在的问题。原 型是一个可以实际运行、反复修改,可以不断完善的系统。 原型法将仿真的手段引入系统分析的初始阶段,首先根据系 统分析人员对用户要求的理解,利用先进的开发工具,模拟 出一个系统原型,然后就这个模型展开讨论,征求用户意见, 与用户进行沟通,在使用中不断修改完善原型,逐步求精, 直到用户满意为止。 1)基本思想 在管理信息系统开发的开始阶段,凭借系统开发员对用 户需求的初步理解,迅速构建出一个满足用户需求的初始系 统原型,然后与用户反复协商修改,最终形成MIS系统。在 这个根据用户需求迅速构造的一个低成本的用于演示及评价 的试验系统(原型)基础上,由用户对原型进行评价,在用户 评价的基础上对原型进行修改或重构直至满意。 2)开发过程 确定系统的基本要求和功能; 构造初始原型; 运行、评价、修改原型; 确定原型后处理。 3)开发方法 方法一:直接开发可用系统。利用开发可用的原型, 利用原型逐步向实际应用系统靠拢,直到用户满意为止 特点:原型将构成未来可运行的系统。开发周 期相对较短。用户需求(系统定义)不规范。原型中存在一 定的隐患。无法划分系统的开发与维护阶段。
方法二:利用原型确定系统的定义。利用开发的原型 不断补充和确认用户需求,然后从可用的原型出发重新建 立实际的系统 系统部分可重用。开发周期较前一种方法长。可以用来明 确和规范用户需求。系统中将不存在因为多次修改而产生 的隐患。用户需求可能变化。 4)特点 原型法的特点主要有以下几方面: (1)原型法体现了从特殊到一般的认识规律,更容易为人们 所普遍掌握和接受。 (2)便于开发人员与用户之间相互交流,用户能较好地参与 系统的开发。 (3)原型法充分利用最新的软件开发工具,提高了开发效率, 缩短了开发周期,减少了开发费用。 (4)采用原型法开发系统灵活,便于修改与扩充。 将模拟的手段引入系统分析的初始阶段,沟通了人们(用 户和开发人员)的思想,缩短了用户和系统分析人员之间的距 离,解决了结构化方法中最难于解决的一环。强调用户参与、 描
述、运行、沟通。所有问题的讨论都是围绕某一个确定的原 型进行,彼此之间不存在误解和答非所问的可能性,为准确认 识问题创造了条件;通过原型,能够启发人们对原来想不起来 或不易准确描述的问题有一个比较确切的描述;能够及早地暴 露出系统实现后存在的问题,促使人们在系统实现之前就加以 解决。充分利用最新的软件工具,摆脱了传统的方法,使系统 开发的时间、费用、大大地减少,效率、技术等方面都大大地 提高。 强调软件工具支持。 5)优缺点 从原理到流程十分简单,最终总可以获得一个满意的 MIS――无高深理论和技术
(方法本身)。 用户与开发者思想易于沟通。 使用软件工具效率高,摆脱了传统方法。 要求管理基础工作完整、准确,一般只适用于小型系 统。 6)应用范围 适合于:适用于解决有不确定因素的问题,适用于对 用户界面要求高的系统,适用于决策支持方面的应用。 不适合于:不适用于拥有大量计算或控制功能的系统, 不适用于大型或复杂的系统,容易掩盖需求、分析、设计 等方面的问题,结果不确定――随原型构造评价过程而定, 整体考虑较少。
3 面向对象的开发方法 1)面向对象方法是近十年来发展起来的基于问题对象的 一种自底向上的系统开发方法。面向对象的思想首先出现 在程序设计的语言中,产生了面向对象的程序设计方法 (Object-Oriented Programming, OOP)。面向对象 技术已经成为近20年来计算机技术界和工业界研究的一大 热点,特别是进入20世纪80年代后期,面向对象的设计方 法已经大大地超出了程序设计语言的范围,它对软件工程、 信息系统、工业设计与制造等领域都带来了深远的影响。 2)方法的组成 面向对象的(需求)分析OOA 面向对象的设计OOD 面向对象的程序OOP 3)OO的基本思想 (1)客观事物由对象组成 (2)对象由属性和方法组成 (3)对象之间的联系通过消息传递机制来实现
(4)对象具有继承性 (5)对象具有封装性 客观世界是由各种各样的对象组成的,每种对象都有 各自的内部状态和运动规律,不同对象之间的相互作用和 联系就构成了各种不同的系统。 在设计和实现一个客观系统时,在满足需求的条件下, 把系统设计成一些不可变的(相对固定)部分组成的最小 集合(最好的设计)。这些不可变部分就是所谓的对象。 以对象为主体的OO方法的进一步解释。 客观世界由各种“对象”(Object)组成。对象 (Object)是客观世界中的任何事物在计算机程序中的
抽 象表示。对象是面向对象程序设计的基本元素。对象是事 物状态和行为的数据抽象。 对象由属性和方法组成。属性(Attribute)反映了对 象的信息特征,如特点、值、状态等等。而方法(Method) 则是用来定义改变属性状态的各种操作。 对象之间的联系主要是通过传递消息(Message)来 实现的,而传递的方式是通过消息模式(Message Pattern)和方法所定义的操作过程来完成的。“消息”是 对象间通信的手段,一个对象向其他对象发出的带有参数 的信息,使接受信息的对象执行相应的操作,从而改变该 对象的状态。“方法”是封装在对象内部的操作程序,一 个对象发出消息,接收消息的对象激活相应的方法,便启 动了该对象的某个操作程序,这就是对象的操作。 对象可按其属性进行归类(Class)。类(Class)是 指将具有相同或相似结构、操作和约束规则的对象组成的 集合。类由类说明和类实现两部分组成。类有一定的结构, 类上可以有超类(Superclass),类下可以有子类 (Subclass)。对象或类之间的层次结构是靠继承关系 (Inheritance)维系的。 继承:父类可以派生出子类,子类自动继承父类的属 性和方法。 对象是一个被严格模块化了的实体,称之为封装 (Encapsulation)。这种封装了的对象满足软件工程的 一切要求,而且可以直接被面向对象的程序设计语言所接 受。 封装:封装(Encapsulation)又称为信息隐蔽。面 向对象开发方法中,对象是数据和操作的封装体。 多态:多态指相同的操作作用于多种不同类型的对象 却获得不同的结果。 4)开发过程 系统调查和需求分析:对系统将要面临的具体管理问 题以及用户对系统开发的需求进行调查研究,即先弄清要 干什么的问题。 分析问题的性质和求解问题:在繁杂的问题域中抽象 地识别出对象以及其行为、结构、属性、方法等。一般称 之为面向对象的分析,即OOA。 整理问题:对分析的结果作进一步的抽象、归类、整 理,并最终以范式的形式将他们确定下来。一般称之为面 向对象的设计,即OOD。 程序实现:用面向对象的程序设计语言将上一步整理 的范式直接映射(即直接用程序设计语言来取代)为应用 软件。一般称之为面向对象的程序,即OOP。 识别客观世界中的对象以及行为,分别独立设计出各 个对象的实体;分析对象之间的联系
和相互所传递的信息, 由此构成信息系统的模型;由信息系统模型转换成软件系 统的模型,对各个对象进行归并和整理,并确定它们之间 的联系;由软件系统模型转换成目标系统。
应用面向对象开发方法设计MIS的基本思路: (1)获取用户需求。 (2)用统一的建模工具构造对
象模型 。 (3)识别与问题有关的类及类之间的联系,识别与MIS 解决方案有关的类。 (4)对设计类及其联系进行调整,使之如实地表达事物 之间实际存在的各种关系。 5)面向对象开发方法的内容与思路 面向对象开发一般经历三个阶段:面向对象系统分析 (OOA),面向对象系统设计(OOD)和面向对象系统实现 (编程)。这与传统的生命周期法相似,但各阶段所解决的 问题和采用的描述方法却有极大区别。 图5.6表示的是面向对象系统开发模型,它表达了面 向对象开发的内容和过程。 上述面向对象开发模型体现了面向对象开发方法的基 本特征: (1)分析与设计是反复的,充分体现了原型开发的思想; (2)分析与设计的不断反复结果是对客观世界对象的模 型化,建立针对簇的规格说明; (3)运用库中己有对象,反复测试实现簇,并将新簇纳 入库中,这一过程体现了继承和重用; (4)强调分析阶段和设计阶段的合并。 面向对象开发方法各阶段的思路: (1)分析阶段 这一阶段主要采用面向对象技术进行需求分析。面向 对象分析运用以下主要原则: ①构造和分解相结合的原则。构造是指由基本对象组 装成复杂活动对象的过程;分解是对大粒度对象进行细化, 从而完成系统模型细化的过程。 ②抽象和具体结合的原则。抽象是指强调事务本质属 性而忽略非本质细节;具体则是对必要的细节加以刻画的 过程。OO方法中,抽象包括数据抽象和过程抽象:数据抽 象把一组数据及有关的操作封装起来,过程抽象则定义了 对象间的相互作用。 ③封装的原则。封装是指对象的各种独立外部特性与 内部实现相分离,从而减少了程序间的相互依赖,有助于 提高程序的可重用性。 ④继承的原则。继承是指直接获取父类己有的性质和 特征而不必再重复定义。这样,在系统开发中只须一次性 说明各对象的共有属性和服务,对子类的对象只须定义其 特有的属性和方法。继承的目的也是为了提高程序的可重 用性。 然后构造问题空间。面向对象方法构造问题空间时使 用了人们认识问题的常用方法,即:
①区分对象及其属性,例如区分一棵树和树的大小或 位置; ②区分整体对象及其组成部分,例如区分一棵树和树 枝,在面向对象方法中把这一构造过程称为构造分类结构;
③不同对象类的形成及区分,例如,所有树的类和所 有石头的类的形成和区分。在面向对象方法中把这一构造 过程称为组装结构。 (2)设计阶段 这一阶段主要利用面向对象技术进行概念设计。值得 注意的是面向对象的设计与面向对象的分析使用了相同的 方法,这就使得从分析到设计的转变非
常自然,甚至难以 区分。可以说,从OOA到OOD是一个积累型的扩充模型的 过程。 一般而言,在设计阶段就是将分析阶段的各层模型化 的“问题空间”逐层扩展,得到下个模型化的特定的“实 现空间”。有时还要在设计阶段考虑到硬件体系结构,软 件体系结构,并采用各种手段(如规范化)控制因扩充而引 起的数据冗余。
(3)实现(编码)阶段 这一阶段主要是将OOD中得到的模型利用程序设计实 现。具体操作包括:选择程序设计语言编程、调试、试运 行等等。前面两阶段得到的对象及其关系最终都必须由程 序语言、数据库等技术实现,但由于在设计阶段对此有所 侧重考虑,故系统实现不会受具体语言的制约,因而本阶 段占整个开发周期的比重较小。 建议应尽可能采用面向对象程序设计语言,一方面由 于面向对象技术日趋成熟,支持这种技术的语言已成为程 序设计语言的主流;另一方面,选用面向对象语言能够更 容易、安全和有效地利用面向对象机制,更好地实现OOD 阶段所选的模型。 6)特点 (1)采用全新的面向对象思想,使得系统的描述及信息 模型的表示与客观实体相对应,更符合人们认识事物的思 维习惯。 (2)系统开发的基础统一于对象之上,各个阶段工作过 渡平滑 。 (3)面向对象开发方法采用了继承、封装、多态和消息 传递机制,使软件的一致性、模块的独立性以及程序的共 享性和可重用性大大提高。 7)应用范围 在大型管理信息系统开发中,若
不经自顶向下的整体 划分,而是一开始就子弟向上地采用OO方法开发系统,会 造成系统结构不合理、各部分关系失调等等问题。OO方法 和结构化方法在系统开发中相互依存、不可替代。
4计算机辅助设计 的开发方法 CASE是一种自动化或半自动化的方法,能够全面支 持除系统调查外的每一个开发步骤。严格地讲,CASE只是 一种开发环境而不是一种开发方法。它是80年代末从计算 机辅助编程工具、第四代语言(4GL)及绘图工具发展而 来的。目前,CASE仍是一个发展中的概念,各种CASE软 件也较多,没有统一的模式和标准。采用CASE工具进行系 统开发,必须结合一种具体的开发方法,如结构化系统开 发方法、面向对象方法或原型化开发方法等,CASE方法只 是为具体的开发方法提供了支持每一过程的专门工具。因 而,CASE工具实际上把原先由手工完成的开发过程转变为 以自动化工具和支撑环境支持的自动化开发过程。 1)基本思想 CASE方法解决系统
开发问题的基本思想是:结合系统开发 的各种具体方法,在完成对目标系统的规划和详细调查后,如 果系统开发过程中的每一步都相对独立且一定程度上彼此形成 对应关系,则整个系统开发就可以应用专门的软件开发工具和 集成开发环境来实现。 2)特点
(1)CASE加速了开发过程,简化了软件开发的管理和维护, 解决了从客观对象到软件系统的映射问题,支持系统开发全过 程。 (2)作为一种辅助性的开发方法,其主要体现在帮助开发者 方便、快捷地产生出系统开发过程中各类图表、程序和说明性 文档,使开发人员从繁杂的分析设计图表和程序编写工作中解 放出来。 (3)CASE环境的使用,改变了系统开发中的思维方式、工 作流程和实现途径。 (4)CASE方法产生出统一的、标准化的文档资料,使软件 的各部分能重复使用。 现在,CASE中集成了多种工具,这些工具既可以单独使用, 也可以组合使用。 现将各种开发方法的进行简单比较如下: (1)生命周期法 生命周期法能全面支持整个系统开发过程,基于模块 化设计思想,采用“自顶向下,逐步求精”的技术对系统 进行划分。但在总体思路上比较保守,是以不变应万变来 适应环境的变化。 (2)原型法 原型法通过快速构造系统原型和对原型的不断修改、 完善建立系统,强调开发人员与用户的交流,从动态的角 度看待系统变化,采用以变应变的思路。 (3)CASE方法 CASE方法是一种除系统调查外全面支持系统开发过 程的方法,同时也是一种自动化的系统开发方法。 (4)面向对象法 面向对象法是一种围绕对象来进行系统分析和系统设 计,然后用面向对象的工具建立系统的方法。
因篇幅问题不能全部显示,请点此查看更多更全内容