1、第3章 管理信息系统的一般开发方法,3.1 管理信息系统的战略规划3.2 管理信息系统的开发方法3.3 管理信息系统的开发工具(CASE)3.4 各种开发方法的比较,2,3.1 管理信息系统的战略规划,3.1.1 管理信息系统战略规划的作用与内容3.1.2 管理信息系统战略规划的组织与步骤3.1.3 业务系统规划法,3,3.1.1 管理信息系统战略规划的作用与内容,一、管理信息系统战略规划的作用(1)制定管理信息系统战略规划可以合理分配和利用信息资源,以最大可能的节约管理信息系统的投资。(2)通过制定战略规划找出组织所存在的问题,从而更准确地确定为实现企业目标的管理信息系统必须完成的任务,使得
2、管理信息系统的应用带来更大的经济效益。(3)制定管理信息系统的战略规划还可以指导管理信息系统的开发,用管理信息系统的战略规划作为今后鉴定、验收系统开发工作的标准。,4,3.1.1 管理信息系统战略规划的作用与内容(续),二、管理信息系统战略计划的内容确定管理信息系统的目标、环境和系统总体结构组织现状业务流程现状对影响管理信息系统规划的信息技术分析,5,3.1.2 管理信息系统战略规划的组织与步骤,一、管理信息系统战略规划的组织成立战略规划领导小组对有关人员进行培训安排管理信息系统战略规划的进度,6,3.1.2 管理信息系统战略规划的组织与步骤(续),二、制定管理信息系统战略规划的具体步骤明确管
3、理信息系统战略规划的时间及具体的方法收集与战略规划的有关信息对管理信息系统的开发、实施进行战略分析明确战略目的定义管理信息系统开发的约束条件选择管理系统的开发方案安排管理信息系统的实施进度形成战略规划的文档,7,3.1.3 业务系统规划法,管理信息系统的规划方法有助于管理者计划和组织包括数据处理系统和新信息技术在内的各种信息资源。目前,应用范围比较广泛的有两种规划方法:业务系统规划法和关键成功因素法。业务系统规划法(Business System Planning,BSP)可以帮助组织建立一个既支持短期信息需求,又支持长期信息需求的管理信息系统规划。这种方法为管理者提供了一种正式的、客观的方法
4、,以确定支持业务需求的管理信息系统的优先权。,8,3.1.3 业务系统规划法(续),一、业务系统规划法的作用可以定义目标系统的总体结构,明确系统中子系统的组成和开发子系统的顺序。对目标系统中的数据进行统一规划、管理和控制,确定各子系统之间的数据关系,保证数据的一致性。用业务系统规划法制定管理信息系统战略规划,能够使信息系统有强壮的环境适应性。,9,3.1.3 业务系统规划法(续),二、业务系统规划法的工作步骤准备研究定义组织的业务过程和管理过程业务过程重组定义数据定义管理信息系统的总体结构完成业务系统规划的研究报告,提出建议书和开发计划。,10,3.1.3 业务系统规划法(续),三、U/C矩阵
5、的应用企业系统规划法的主要目标之一就是辨别支持业务处理过程的数据处理,它将过程和数据两者作为定义企业管理信息系统总体结构的基础。U/C矩阵是以图表的形式描述了组织的数据类处理过程的关联关系,这个矩阵使得组织的管理部门能够确立哪些数据类支持多重业务处理过程。这种对共享数据的识别为开发支持多重应用的数据结构建立了基础。,11,3.1.4 企业流程重组,一、企业流程重组的概念企业流程重组就是对企业业务过程进行根本的再思考和彻底的再设计,以求企业当代关键的性能指标获得巨大的提高,如成本、质量、服务和速度。企业流程重组主要体现在两方面:一方面是充分发挥信息技术的作用,利用信息技术改变企业的业务过程,简化
6、其业务过程。另一方面就是变革组织结构达到精简组织、提高效率。,12,3.1.4 企业流程重组(续),二、企业流程重组的步骤与方法企业的组织更趋扁平化,工作方式也将改变。企业将更多的采用更大的团队工作方式。可以大大提高团队之间的相互了解和互相协调。企业在统一目标情况下将更主动、更积极的面向顾客。达到管理规范化,职能综合化和组织扁平化。,13,3.2 管理信息系统的开发方法,3.2.1 管理信息系统的开发原则3.2.2 管理信息系统开发前的准备工作3.2.3 管理信息系统开发方法概述,14,3.2 管理信息系统的开发方法,管理信息系统的开发方法分为:结构化系统开发方法原型方法面向对象开发方法CAS
7、E开发方法,15,3.2.1 管理信息系统的开发原则,管理信息系统的开发原则:实用性原则系统性原则符合软件规范的原则逐步完善的原则,16,3.2.2 管理信息系统开发前的准备工作,一、管理信息系统开发应具备的条件领导高度重视,亲自参与对管理信息系统的实际需求和迫切性业务人员的积极配合企业实现科学管理是企业建立管理信息系统的重要前提和保证有必须的投资保证和能提供维护费用。人员知识结构应满足企业管理信息系统建设的需要。企业管理信息系统主要的信息来源和主要的处理对象是数据,17,3.2.2 管理信息系统开发前的准备工作(续),二、管理信息系统的开发策略一般来说,有以下几种可以考虑的开发策略:接收式开
8、发策略直接式的开发策略迭代式的开发策略,18,3.2.2 管理信息系统开发前的准备工作(续),接收式开发策略接收式开发策略就是根据用户需求和现有状况直接设计、编程过渡到新系统。适用范围经过调查分析,认为用户对信息需求是正确的、完全的和固定的,现有的信息处理过程和方式也都比较科学的企业,也适用于系统规模不大,信息和处理过程结构化程度高,用户和开发者又都很有经验的场合。,19,3.2.2 管理信息系统开发前的准备工作(续),直接式的开发策略直接式的开发策略是指经过调查分析后,确定了用户需求和处理过程,且今后不会有太大的变化,则管理信息系统的开发工作就可以按照某一种开发方法的工作流程开发,直到最后完
9、成开发任务。这种开发策略对开发者和用户的要求很高,要求在系统开发之前就完全调查清楚实际事务的状况和需求。,20,3.2.2 管理信息系统开发前的准备工作(续),迭代式的开发策略迭代式的开发策略是指被开发的系统具有一定的复杂性和难度,一时难以确定,需要进行反复分析,反复设计,随时反馈信息,发现问题,修正开发过程。这种开发策略对用户和系统开发者的要求很低,但开发时花费较大,耗时也长。,21,3.2.2 管理信息系统开发前的准备工作(续),实验式的开发策略实验式的开发策略是指当用户需求的不确定性太高时,一时无法制定具体的开发计划,只能用反复试验的方式来做。这种开发策略一般需要较高级的软件支撑环境,仅
10、适用于小型项目,对于大型项目在使用上有一定的局限性。,22,3.2.2 管理信息系统开发前的准备工作(续),三、管理信息系统的开发方式管理信息系统的开发方式主要有:自行开发委托开发合作开发利用软件包开发,23,3.2.2 管理信息系统开发前的准备工作(续),三、管理信息系统的开发方式自行开发方式自行开发方式是指用户依靠本单位的力量独立完成管理信息系统开发的各项任务。优点:开发费用少,开发出的管理信息系统,更能满足本单位的需求,能更方便地维护和扩展,有利于企业培养自己的系统开发人员。不足:由于开发人员专业性不强,系统开发水平不高,有时会造成系统开发周期长。,24,3.2.2 管理信息系统开发前的
11、准备工作(续),委托开发方式委托开发方式适用于管理信息系统的用户单位缺少管理信息系统的开发经验,开发队伍的力量较弱,但资金比较充裕,这种方式一般由用户单位委托有开发经验的专业机构或专业开发人员,按照用户的需要来承担管理信息系统开发的任务。优点:省时、省事、开发周期短缺点:开发费用较高,系统维护需要开发单位的长期支持。,25,3.2.2 管理信息系统开发前的准备工作(续),合作开发方式合作开发方式是指由用户单位和有丰富开发经验的机构或专业开发人员共同完成管理信息系统的开发任务,双方共享开发成果。适用于单位有一定的管理信息系统分析、设计及软件开发人员,但独立开发系统的能力还较弱优点:相对于委托开发
12、方式来说,更能节约资金,可以通过管理信息系统的开发培养、增强用户单位的技术力量,便于管理信息系统的维护工作。缺点:开发单位和用户不太容易沟通。所以在采用合作开发方式开发管理信息系统时,需要开发单位、用户双方及时达成共识,形成协调一致。,26,3.2.2 管理信息系统开发前的准备工作(续),购买通用性商品软件优点:能缩短软件开发时间,节省开发费用,系统功能稳定,可以得到较好的维护。缺点:商品化软件的功能专用性比较差,难以满足用户的特殊要求。适用情况:用户的需求功能是通用软件中的主要通用功能,这样,用户选择的余地也就比较大,二次开发的成本也不会太高。用户单位缺少管理信息系统的开发人员,购买商品软件
13、省时又省事。,27,3.2.3 管理信息系统开发方法概述,一、结构化系统开发方法结构化系统开发方法的思想用系统思想和工程化的方法按照抽象、模块化、信息的一致性、完整性和确定性等原则,按照用户至上的原则,自顶往下地对系统进行分析与设计。在开发过程中,将整个管理信息系统的开发过程划分出若干个相对独立的阶段,即系统规划、系统分析、系统设计、系统实施和系统维护等。在系统分析与设计时要从整体全局考虑,自顶往下地工作,而在系统实施阶段,则是遵照自底向上地逐步实施(即从最基础的模块编程),然后按照系统设计的软件结构,将模块一个个拼接在一起进行调试,自底向上,逐渐地构成一个完整的系统。,28,3.2.3 管理
14、信息系统开发方法概述(续),系统开发的生命周期在用结构化系统开发方法开发一个管理信息系统时,将开发的全部过程划分为五个阶段,这个过程也就是系统开发的生命周期,所以结构化系统开发方法又称为结构化生命周期法。结构化生命周期法主要阶段:系统规划阶段系统分析阶段系统设计阶段系统实施阶段系统运行与维护阶段,29,结构化生命周期法主要阶段,一、系统规划阶段在系统规则阶段,根据用户提出系统开发需求,进行初步调查,确定系统需要解决的问题,建立系统开发目标和总体结构,安排系统开发各阶段的实施进度,然后根据这些对系统进行可行性分析和研究,写出可行性分析报告。,30,结构化生命周期法主要阶段,二、系统分析阶段经过对
15、系统的初步规划进行 可行性分析和研究后,一旦确定开发该系统。系统开发过程中的第一个阶段就是系统分析阶段。系统分析阶段是在系统规划中提出的目标基础上,对系统进行详细的调查和系统化分析,建立系统的逻辑模型。这一阶段的主要工作是:详细调查原系统单位的业务流程和数据流程,并在用户配合下,必要时对原业务流程进行调整甚至重组,再对数据流程进行完善和修改。最后确定目标系统的数据流程图,写出系统分析报告作为下一开发阶段的工作基础。,31,结构化生命周期法主要阶段,三、系统设计阶段系统设计阶段的主要任务是在系统分析提出的逻辑模型的基础上设计系统的物理模型。具体的工作有设计系统的总体软件结构和详细设计。详细设计包
16、括:代码设计、数据库设计、输入输出设计、模块结构设计、模块功能描述。,32,结构化生命周期法主要阶段,四、系统实施阶段系统实施阶段的主要任务是:计算机硬件、软件的配置,计算机网络环境的安装。完成程序设计及调试,用户单位人员培训、准备输入数据、新旧系统转换、新系统的试运行,最终实现管理信息系统。,33,结构化生命周期法主要阶段,五、系统运行与维护阶段当前面几个阶段的工作结束后,管理信息系统正式开始系统的运行,以后的工作主要是进行系统的日常管理、系统维护和系统评价三方面的工作。在对系统进行评价时,如果系统运行正常,运行结果则应送管理部门,指导企业生产经营活动,为决策者提供分析、预测的数据;如果出现
17、问题,则应该对系统进行修改、完善、维护;当系统运行长时间后(或系统的运行环境已发生了根本性变化),用户将会提出开发新系统的要求,这标志着此系统生命周期结束,一个新系统的诞生。,34,3.2.3 管理信息系统开发方法概述(续),结构化系统开发方法的评价结构化系统开发方法是一种系统化方法。这种方法的最大特点就是强调系统开发过程的整体性和全局性,一方面强调在整体优化的前提下来考虑具体系统的分析与设计问题,也就是自顶往下的方法;另一方面将系统开发的各个阶段严格区分,强调按部就班地严格对系统进行分析与设计。每一阶段的工作都须及时总结,发现问题及时地反馈和纠正。尽管随着计算机技术的发展,系统开发方法也发生
18、了变化,但目前开发大型系统还是采用结构化系统开发方法。缺点:致使系统开发周期过长,要求系统开发者在调查过程中充分掌握用户需求、管理状况以及预见可能发生的变化,在进行系统分析时有一定的困难。,35,3.2.3 管理信息系统开发方法概述(续),二、原型方法原型法将系统需求调查、系统分析和系统设计三者融为一体,在获得用户的基本需求之后,首先建立一个能够满足用户需求的原型,让用户看到目标系统的一个概貌,以便判断哪些功能是符合要求的,哪些方面还需要改进,即尽快实现一个系统的雏形,当然,这个“尽快”需要借助软件开发工具。随着用户对系统理解程度的加深,再不断地将这些需求进一步补充,细化和修改,反复进行循环,
19、直到用户满意为止。,36,3.2.3 管理信息系统开发方法概述(续),原型法开发的基本思想系统开发者在初步了解用户需求的基础上,构成、设计和开发一个初始模型,这个模型就称为原型。这个原型是一个可以实现的系统应用模型。用户与系统开发人员在原型的基础上共同研究、改进和完善方案,系统开发人员根据这个对原型进行修改后得到一个新的原型,再征求用户意见,反复多次直到得到满意的原型为止。,37,3.2.3 管理信息系统开发方法概述(续),原型法的开发过程原型法开发一个管理信息系统的开发过程分为四个阶段:明确用户基本需求。开发初始化原型系统。对原型进行评价。对原型系统进行修正和改进。,38,3.2.3 管理信
20、息系统开发方法概述(续),原型法的评价特点:系统开发周期短,增强了系统开发过程中的用户参与程度,降低了系统开发中的风险和系统开发成本,最后能够产生正确的系统需求描述。但它的原型系统的开发必须借助软件开发工具。最大不足:开发过程中管理困难,只适用于管理规范较小的小型系统,不适于直接用于开发大型、复杂的系统。,39,3.2.3 管理信息系统开发方法概述(续),三、面向对象的方法面向对象的方法是一种按照人们对现实世界习惯的认识论和思维方式来研究和模拟客观世界的方法学。它将现实世界中的一切事物都看成是“对象”,将客观世界看成是由许多不同种类的对象构成的,每一个对象都有自己的内部状态和运行规律,不同对象
21、之间的相互联系和相互作用就构成了完整的客观世界。,40,3.2.3 管理信息系统开发方法概述(续),三、面向对象的方法面向对象方法既不是自顶向下的方法,也不是自底向上方法,但它兼有这两方面的一些特点。在自底向上方面,面向对象方法鼓励人们从问题的基本、简单的方面入手,用对象为实体来考虑如何描述需解决的问题。然后对其进行抽象并确定类,得到具有解决一般性问题的方法;在自顶向下方面,面向对象方法也要求人们面向目标,再考虑如何建立一些基本对象去达到这一目标。,41,3.2.3 管理信息系统开发方法概述(续),面向对象方法的系统开发过程需求分析。搞清楚系统的初步目标,对系统将要面临的具体管理问题以及协助用
22、户对系统开发的需求进行调查研究。面向对象分析(OOA)。在复杂的问题域中抽象地识别出对象以及其行为、结构、数据和操作等。面向对象设计(OOD)。对系统在分析阶段的结果做进一步的抽象、归类和整理,并最终以范式的形式确定下来。面向对象程序设计(OOP)。用面向对象的程序设计语言将上一阶段整理的范式直接映射为应用程序。,42,3.2.3 管理信息系统开发方法概述(续),面向对象系统开发方法的评价面向对象的分析方法能够更加贴切地模拟现实世界的事物对象。允许自底向上对系统进行分析。开发周期短,相对开发费用少,开发过程容易控制。可以全面地确定处理的可重用性,从而减少系统的编程时间。持图形化用户界面的实现。
23、“封装”特性,使得系统具有很好的修改性和可靠性。有许多支持面向对象的系统开发工具,可以支持实现管理信息系统的快速开发。,43,3.3 管理信息系统的开发工具(CASE),3.3.1 软件开发工具3.3.2 CASE工具的概念3.3.3 CASE工具的组成3.3.4 CASE工具的功能3.3.5 CASE工具开发方法的评价,44,3.3.1 软件开发工具,软件开发工具,是指可用来帮助和支持软件开发过程中某些阶段的工作,如需求分析、设计、编码测试、系统运行维护及模拟移植或管理的计算机程序或软件,它能在软件开发各个阶段帮助开发者控制开发中的复杂性,提高工作质量和效率。,45,3.3.1 软件开发工具
24、(续),一般来说,按软件工具所完成的功能,可将其划分为以下九种:事务系统规划工具将企业的策略性信息需求模型化,提供一个可导出特定信息系统的“元模型”。利用这个“元模型”可以生成专用事务信息系统模型。项目管理工具它可以用于帮助管理信息系统的管理人员有效地估算软件项目所需的工作量、成本和研制周期等,定义功能分解结构,并制订可行的项目开发计划。支持工具它用于支持软件工程的全过程(包括软件工程的各个阶段)。,46,3.3.1 软件开发工具(续),分析和设计工具它用于建立所开发系统的模型,该模型包括数据的描述、数据内容、控制流、控制规格说明、进程表示等。编程工具它支持使用编程语言的程序设计工作,如编辑器
25、、编译器、调试器、第四代程序设计工具和面向对象的程序设计工具等都属于这种工具。测试与分析工具它支持软件开发过程中的测试活动。,47,3.3.1 软件开发工具(续),原型工具它用于支持某一领域的原型构造,现在的原型工具不仅能描述系统的特征和功能,而且还可以生成可执行的代码,演示系统的动态行为和功能。维护工具它用于协助系统维护活动的完成。框架工具它用于支持数据库管理、配置管理和计算机辅助软件工程工具集成的软件工具。,48,3.3.2 CASE工具的概念,计算机辅助软件工程(Computer Aided Software Engineering,CASE)的定义是:在软件工程活动中,软件工程师和管理
26、人员按照软件工程的方法和原则,借助计算机及其软件工具,开发、维护、管理软件产品的过程,称为计算机辅助软件工程。,49,3.3.3 CASE工具的组成,在计算机辅助软件工程环境中,按照其集成程度的高低,它的集成形式有四种形式:数据交换公共工具访问公共数据管理全集成,50,一、数据交换,数据交换是计算机辅助软件工程中文件级的集成方式。缺点是格式转换耗费的时间长,不能适应大型、多工具集成的软件开发。,51,二、公共工具访问,公共工具访问方式是指各个CASE工具被封装在统一的界面框架之下,采用统一的用户界面和操作方式。这些工具之间的数据交换采用点到点的格式转换方式,也需要格式转换程序作为中介进行访问。
27、,52,三、公共数据管理,公共数据管理方式是指不同CASE工具产生的数据存放在同一个逻辑数据库中(即软件工程信息库)。公共数据管理能够比较好地实现集成和表示集成,是工具间集成的高级形式。,53,四、全集成,全集成方式综合了公共工具访问和公共数据管理方式的所有特征,将所有各自独立的软件工具集成在一起。,54,3.3.4 CASE工具的功能,CASE工具所具有的功能是:能提供描述软件状况及其开发过程的概念模式,协助开发人员认识软件工作环境与需求,对软件开发的过程进行管理。能提供存储和管理有关信息的机制与手段能够帮助用户编制、生成和修理各种软件文档能够帮助开发者编写源程序代码对软件的相关历史信息进行
28、跨生命周期的管理,55,3.3.5 CASE工具开发方法的评价,CASE软件开发工具是一种自动化或半自动化的方法,它能够全面支持除系统需求调查外的每一个开发阶段,CASE开发工具只是一种开发环境,而不是一种开发方法。采用CASE开发工具进行管理信息系统的开发,必须结合一种具体的开发方法特点:支持系统开发的全过程,解决了从客观事物到软件系统的映射问题。提高软件质量和软件的重用性。帮助加快软件开发速度。简化软件开发的管理和维护。自动生成软件开发过程中的各种文档资料。,56,3.4 各种开发方法的比较,结构化开发方法。这是一种能真正、全面地支持整个管理信息系统开发过程,尤其是适用于大型、复杂的管理信
29、息系统的开发。原型方法。 它是一种基于软件开发工具的快速模拟方法。它通过模拟以及对模拟后的原型反复讨论和修改最终建立系统。但它仅适用于小型系统或系统的局部开发过程。面向对象方法。这是一种围绕对象来进行系统分析和系统设计,然后用面向对象的工具建立系统的方法。这种方法不支持系统分析以前的开发阶段。这种方法可以普遍适用于各类管理信息的开发。,57,3.4 各种开发方法的比较(续),总结:目前在管理信息系统开发过程中占主导地位的还是结构化系统开发方法,在多数情况下,尤其在开发一个大型、复杂的管理信息系统过程中,是各种方法混合使用的。在进行系统调查、系统需求分析和管理业务功能分析时一般采用结构化系统开发方法,其他两种方法都只能在系统分析、系统设计和系统实施阶段,作为局部开发的补充。在具体的管理系统开发过程中,各种开发方法不是独立的。,