《管理信息系统》2版第2页2020/12/22第14章信息系统开发方法《管理信息系统》2版第3页2020/12/22学习目的理解信息系统开发的复杂性和基于系统工程的开发思想了解信息系统的开发原则及开发策略理解信息系统开发生命周期了解瀑布模式、渐增模式、原型模式、螺旋模式以及并行模式的基本特点掌握结构化方法、信息工程方法以及面向对象方法的本质及基本实现思路了解信息系统开发形式以及信息系统相关者的类型《管理信息系统》2版第4页2020/12/22本讲内容信息系统开发思想信息系统开发原则信息系统开发策略信息系统开发模式信息系统的开发方法系统开发的多种形式信息系统的相关者《管理信息系统》2版第5页2020/12/22信息系统开发思想信息系统开发的复杂性一方面,管理信息系统是一个社会系统,应用于管理领域,与一般的技术系统不同,它以企业管理环境为背景,和企业组织结构、管理体系、业务流程有着密切关系,容易受环境的影响。另一方面,管理信息系统又是一个技术系统。信息技术的发展,为系统开发提供技术支持,但也使得开发工作变得更为复杂。信息系统支持环境(即硬件、软件和通讯技术)在不断变化,系统开发技术必须适应支持环境的变化,加大了开发的技术难度。另外,管理信息系统涉及到的事务繁琐、牵涉面广,因此用户的需求很难弄清。同时,开发过程中,人员多、周期长,而多人合作又会引起协调上的困难,这也是造成系统开发复杂性的原因。《管理信息系统》2版第6页2020/12/22信息系统开发思想信息系统开发的复杂性“IT黑洞”、“生产率悖论”70年代初的软件危机软件工程现象:开发进度难以预测、开发成本难以控制、用户对产品功能难以满足、软件产品质量无法保证、软件产品难以维护、软件缺少适当的文档资料。原因:系统规模越来越大,复杂度也越来越高,用户需求不明确,缺乏正确的理论指导。解决途径:产生软件工程:研究软件生产的客观规律性,建立与系统化软件生产有关的概念、原则、方法、技术和工具,指导和支持软件系统的生产活动,以期达到降低软件生产成本、改进软件产品质量、提高软件生产率水平的目标。工程化、标准化、科学化、工具化、重用性《管理信息系统》2版第7页2020/12/22信息系统开发思想复杂性怎么办???系统工程思想:化腐朽为神奇!!!《管理信息系统》2版第8页2020/12/22信息系统开发思想系统工程思想及应用系统工程是一门用于大规模复杂系统设计的学问,是组织管理系统的规划、设计、制造、试验和使用的科学方法。它的思想是以系统概念为基础的思想,表现为由粗到细、由表及里、由上到下、由整体到局部,逐步求精的分析。系统工程方法一般步骤:调研确定目标确定功能考虑方案(多个)选择一个方案实施维护和评价。《管理信息系统》2版第9页2020/12/22信息系统开发思想系统工程思想及应用开发过程的一般规律为什么?干什么?怎么干?动手干!系统规划需求调查和系统分析系统设计系统实施与运行维护准备阶段开发阶段一般规律信息系统开发信息系统开发生命周期《管理信息系统》2版第10页2020/12/22信息系统开发思想系统工程思想及应用系统开发的生命周期系统规划阶段•弄清这一工作的目的是什么?•系统规划首先提出系统开发要求,确定系统目标,并给定资源条件和约束条件,然后制订系统开发计划。系统分析阶段•弄清目标对象是什么?•系统分析是一个有目的、有步骤的探索、研究和判断的过程,系统分析员使用科学的分析工具和方法,对系统的目标、功能、环境、费用、效益等进行充分的调查和分析,最后获得最佳的系统方案。《管理信息系统》2版第11页2020/12/22信息系统开发思想系统工程思想及应用系统开发的生命周期系统设计阶段•根据需求调查和系统分析的结果,进行概略设计,提出不同的新系统方案,同时对新系统方案进行比较,并由此确定新系统的最佳方案,最后进行系统详细设计。系统实施与运行•进行系统的实施、调试、维护、评价和运行等工作。《管理信息系统》2版第12页2020/12/22本讲内容信息系统开发思想信息系统开发原则信息系统开发策略信息系统开发模式信息系统的开发方法系统开发的多种形式信息系统的相关者《管理信息系统》2版第13页2020/12/22信息系统开发原则领导参加的原则(一把手原则)信息系统的开发是一项庞大的系统工程,涉及到组织日常管理工作的各个方面,所以领导出面组织力量,协调各方面的关系是开发成功的首要条件。优化与创新的原则信息系统的开发不能简单模拟旧的管理模式和业务流程,必须根据实际情况和科学管理的要求,加以优化和创新。充分利用信息资源的原则数据尽可能共享,减少系统的输入输出,对已有的数据作进一步的分析处理,深层次加工信息。《管理信息系统》2版第14页2020/12/22信息系统开发原则实用和实效的原则从系统规划开始直到系统实施,所有方案都必须是实用的、及时的、有效的。规范化原则按照标准化、工程化的方法和技术进行系统开发。同时要求用户单位基础管理科学化,即管理工作程序化、业务流程标准化、报表文件标准化、数据资料完整化。适应性原则充分考虑到组织结构、管理模式、业务流程等可能发生的变化,使系统具有一定的柔性,能够在一定范围内适应环境的变化。《管理信息系统》2版第15页2020/12/22本讲内容信息系统开发思想信息系统开发原则信息系统开发策略信息系统开发模式信息系统的开发方法系统开发的多种形式信息系统的相关者《管理信息系统》2版第16页2020/12/22信息系统开发策略“自顶而下”的开发策略“自底向上”的开发策略综合策略《管理信息系统》2版第17页2020/12/22信息系统开发策略“自顶而下”的开发策略在系统分析与设计时,从组织的高层管理着手,考虑系统的整体目标,以及资源与约束,再确定需要哪些功能去保证目标的完成,划分相应子系统,并进行子系统的业务分析和设计。执行步骤是:分析系统整体目标、环境、资源和约束条件;确定各项主要业务处理功能和决策能力,从而得到各个子系统的分工、协调和接口;确定每一种功能(子系统)所需要的输入、输出、数据存贮;对各子系统的功能模块和数据进行进一步分析与分解;根据需要与可能,确定优先开发的子系统。《管理信息系统》2版第18页2020/12/22信息系统开发策略“自底向上”的策略从组织的各个基层业务子系统的日常业务处理入手,进行系统分析与设计。这种应用子系统容易被识别、理解、开发和调整,有关的数据流和数据存贮也容易确定。当下层子系统分析完成后,再进行上一层系统的分析与设计,将不同的功能和数据综合起来考虑。为了支持系统的总目标,满足管理层和决策层的需要,除增添新的功能和数据外,还要考虑一定的经济管理模型。《管理信息系统》2版第19页2020/12/22信息系统开发策略综合策略为了充分发挥上述两种策略的优点,人们往往将它们综合起来应用。“自顶而下”的策略适用于一个组织的总体方案的设计,“自底向上”的策略又适用于具体业务信息系统总体设计。在用“自顶而下”原则确定了一个信息系统的总体方案之后,再采用“自底向上”的策略,在总体方案指导下,对一个个业务子系统进行具体功能和数据的分析和分解,并逐层归纳到决策层。这样,通过全面分析、协调和调整之后,能得到一个比较理想的,耗费人力、物力、时间较少的,用户满意的新系统。《管理信息系统》2版第20页2020/12/22本讲内容信息系统开发思想信息系统开发原则信息系统开发策略信息系统开发模式信息系统的开发方法系统开发的多种形式信息系统的相关者《管理信息系统》2版第21页2020/12/22信息系统开发模式系统开发模式系统开发生命周期的各种变体称为系统开发模式,它们是开发活动一系列的步骤及执行过程。当系统开发按照系统化、逻辑化的步骤进行时,有利于标准、规范与政策的推行和建立,开发的过程将更为有效、更能确保质量,也更容易管理。信息系统开发模式的类型编码与修改模式、阶段模式、瀑布模式、渐增模式、原型模式、螺旋模式、并行模式。《管理信息系统》2版第22页2020/12/22信息系统开发模式瀑布模式将系统开发的过程分成几个阶段,每个阶段清楚定义要做哪些工作及交付哪些文件,各阶段循环执行且仅循环一次。在阶段划分上,具有一定的弹性,没有明确规定开发过程应分成几个阶段。当问题较小或较简单时,阶段可能少至三个,如分析、设计、实施;若问题较大或较复杂时,阶段可能被细分成更多个阶段。《管理信息系统》2版第23页2020/12/22信息系统开发模式瀑布模式可行性分析需求分析系统分析初步设计详细设计编程与单元测试集成测试安装与系统测试培训运行与维护《管理信息系统》2版第24页2020/12/22信息系统开发模式瀑布模式阶段1阶段n用户用户最终系统明确的、完整的需求《管理信息系统》2版第25页2020/12/22信息系统开发模式渐增模式瀑布模式要求在系统开发的各个阶段均需同时考虑所有需求,且系统开发需在一个周期完成。在某些情况下,这种要求难以实现。Mills于1971年提出渐增模式:把需求分成“几”个部分(Increments),然后按照渐增开发计划,将每个“部分需求”的开发视为一个周期,每个开发周期依次或平行开发。每个周期的阶段清楚定义要做哪些工作和交付哪些文档,每个阶段循序进行且仅循环一次。是瀑布模式的扩展,它强调需求的可分性,每一部分可依据瀑布模式开发。也就是说,渐增模式首先进行需求分析以完全掌握需求,然后再进行渐增开发规划。《管理信息系统》2版第26页2020/12/22信息系统开发模式渐增模式需求分析渐增开发规划其他开发阶段-----其他开发阶段其他开发阶段周期1周期2周期n系统用户渐增系统1渐增系统2渐增系统n新开发部分重用部分未完成部分-----《管理信息系统》2版第27页2020/12/22信息系统开发模式原型模式瀑布模式与渐增模式均假设在项目开始时,用户需求能被清楚完整地描述。但在许多情况下,这种假设不切实际,因为用户经常无法把需求清楚完整地表达,有时虽能够清楚地表达,但开发人员可能没有足够的经验与知识完全了解用户的需求,也可能一时无法找出问题的解决方法。原型模式首先针对用户需求比较清楚的部分或开发人员能够掌握的部分,按照分析、设计、实施等步骤快速开发原型。开发过程中,强调以原型作为用户与开发人员沟通的工具,双方通过原型的操作与反馈,以弄清、修改及扩充需求,并以此来修改与扩充原型。上述步骤反复进行,直到系统符合双方约定为止。《管理信息系统》2版第28页2020/12/22信息系统开发模式原型模式需求获取/分析原型开发运行及检查原型及需求是否完全符合双方约定结束否是双方开发人员双方双方《管理信息系统》2版第29页2020/12/22信息系统开发模式原型模式基本步骤快速分析,弄清用户的基本信息需求构造原型,开发初步原型系统用户和开发人员使用并评价原型修改和完善原型系统《管理信息系统》2版第30页2020/12/22信息系统开发模式原型模式的特点符合人们认识事物的客观规律将模拟手段引入系统分析的初期阶段强调用户的全程参与提倡使用工具开发《管理信息系统》2版第31页2020/12/2213.4信息系统开发模式原型模式的适用范围对于大型复杂系统,很难直接用屏幕简单地模拟,必须经过严密的系统分析进行结构划分,因此原型模式不适合大型系统的开发。对于运算复杂、逻辑性强的程序模块,原型模式很难构造出模型来供用户评价。因为这类问题本身就没有那么多的交互方式,也不是三言两语就可以把问题说得清楚。对于基础管理不善的单位,不宜用原型法。首先,业务流程不清,信息处理过程混乱,构造原型有一定的困难;其次,基础管理不健全,没有科学合理的方法可依,系统开发容易走上机械地模仿手工系统的操作方式上。因强调以“原型演进”代替完整的分析与设计,故系统文档较不