财务管理第三章_第1页
财务管理第三章_第2页
财务管理第三章_第3页
财务管理第三章_第4页
财务管理第三章_第5页
已阅读5页,还剩66页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、12 MIS开发方法开发方法【学习目的】【学习目的】 了解了解MIS开发方法的结构体系开发方法的结构体系 掌握各种开发方法的基本思想、开发过程、适用范围掌握各种开发方法的基本思想、开发过程、适用范围【课程内容】【课程内容】 结构化生命周期法结构化生命周期法 原型化方法原型化方法 面向对象方法面向对象方法 其他方法其他方法22 MIS开发方法开发方法2.0 MIS开发方法概述开发方法概述2.1 结构化生命周期法结构化生命周期法2.2 原型化方法原型化方法2.3 面向对象方法面向对象方法2.4 系统开发方法的选择系统开发方法的选择2 Methods of the MIS32.0 MIS开发方法概述

2、开发方法概述Windows 95的开发的开发1995年发布,年发布,3年开发期年开发期11 236 344行代码行代码9 234 455小时编码小时编码 49分钟分钟/行行2 333 345小时测试小时测试 12.5分钟分钟/行行10 000人参与,部分是人参与,部分是Microsoft员工,部分雇佣(外包)员工,部分雇佣(外包)发放了几千套拷贝,关键用户评价产品的完整性和工作的精发放了几千套拷贝,关键用户评价产品的完整性和工作的精确性(最终用户评审)确性(最终用户评审)与潜在的用户配合,开发屏幕格式与潜在的用户配合,开发屏幕格式/外观和结构(原型法)外观和结构(原型法)4梦断代码梦断代码Dr

3、eaming in Code“ 他养活他养活Chandler和和OSAF达六年之久,寄望于能做出令人激动的创新达六年之久,寄望于能做出令人激动的创新PIM套件。套件。六年后,六年后,Chandler仍无定形。仍无定形。(离开的)时候差(离开的)时候差不多了。不多了。”六年半时间,上百万美元,几十号顶尖高手,换来幻梦一六年半时间,上百万美元,几十号顶尖高手,换来幻梦一场,此时最郁闷的,当属米奇场,此时最郁闷的,当属米奇卡普尔。在卡普尔。在OSAF/Chandler行将就木的行将就木的今天,本书正可做它的墓志铭。今天,本书正可做它的墓志铭。”“ 这里躺着一个野心勃勃的开源项目。它曾立志超越这里躺着

4、一个野心勃勃的开源项目。它曾立志超越Outlook,最后却无,最后却无疾而终。慷慨的米奇疾而终。慷慨的米奇卡普尔带给它生命,又把命脉从它身上取走。许卡普尔带给它生命,又把命脉从它身上取走。许多程序员以心血养育它,惜乎全不见成效。它是温室中的花儿,有过多程序员以心血养育它,惜乎全不见成效。它是温室中的花儿,有过绚烂的梦想,还未绽放即已枯萎。那软件的花园中,还有多少会渐次绚烂的梦想,还未绽放即已枯萎。那软件的花园中,还有多少会渐次凋零呢?凋零呢?”Chandler软件的开发其实一直没有停止,虽然用了很长的时间,但是这软件的开发其实一直没有停止,虽然用了很长的时间,但是这一伟大的构想仍然没有停息,当

5、我知道这个的时候,突然觉得有股热一伟大的构想仍然没有停息,当我知道这个的时候,突然觉得有股热血用上心头,血用上心头,“keep your dream”,这句话不是一个口号,这句话不是一个口号,Chandler又一次向我们证明了这一点。又一次向我们证明了这一点。5IS的发展变化的发展变化 IT的应用从日常的例行工作,逐步转向经营管理的应用从日常的例行工作,逐步转向经营管理的决策过程。的决策过程。 从单项的应用转向综合的、集成的应用。从单项的应用转向综合的、集成的应用。 应用范围从企业内部扩大到企业之间,以至全社应用范围从企业内部扩大到企业之间,以至全社会。会。 从基本不改变管理业务流程,发展到与

6、管理和业从基本不改变管理业务流程,发展到与管理和业务流程的重组相结合。务流程的重组相结合。 越来越重视人员的培训与其他的社会条件与环境越来越重视人员的培训与其他的社会条件与环境的建设。的建设。Problems&Questions手工过程手工过程“直译直译”为为软件程序软件程序系统化地系统化地划分大型系统划分大型系统合理地协调数据合理地协调数据和利用信息资源和利用信息资源充分利用现有硬件充分利用现有硬件资源的处理能力资源的处理能力大型应用系统大型应用系统的协调开发的协调开发对实体组织对实体组织着手调查分析着手调查分析?图图:研究开发方法的原因研究开发方法的原因系统开发生命周期系统开发生命周期方方

7、 法法 学学技技 术术开发环境开发环境/工具工具中央数据库中央数据库图:开发方法结构体系图:开发方法结构体系面向过程方法面向过程方法面向数据方法面向数据方法面向对象方法面向对象方法结构化方法结构化方法原型法原型法 可视化技术可视化技术 CASE 软件复用技术等软件复用技术等 软件开发环境软件开发环境 CASE 程序支持环境程序支持环境8开发方法的演变开发方法的演变 1960-1970年代是结构化系统分析与设计时代:开发工作结年代是结构化系统分析与设计时代:开发工作结构化、标准化,将开发过程划分为需求分析、设计、实现、构化、标准化,将开发过程划分为需求分析、设计、实现、测试等几个生命周期阶段,经

8、历了瀑布模型、蛛网模型测试等几个生命周期阶段,经历了瀑布模型、蛛网模型(螺旋模型),强调(螺旋模型),强调“初期阶段初期阶段”的重要性等几个阶段。的重要性等几个阶段。 1980年代初是原型法年代初是原型法(Prototyping)时代,在时代,在4GL环境中开环境中开发,先抓住局部设计实现,然后不断修改,直到全面满足发,先抓住局部设计实现,然后不断修改,直到全面满足要求。要求。 1980年代末是年代末是CASE方法和方法和OO方法。方法。 1990年代是年代是C/S时代,或是基于时代,或是基于WEB的开发时代:这时客的开发时代:这时客户购买现成的软件包,甚至是整个系统,然后进行基于部户购买现成

9、的软件包,甚至是整个系统,然后进行基于部件的开发或进行系统集成。件的开发或进行系统集成。9系统开发的概念框架系统开发的概念框架 MIS开发涉及的知识面广、部门多,不仅涉及技术,而且开发涉及的知识面广、部门多,不仅涉及技术,而且涉及管理业务、组织和行为。涉及管理业务、组织和行为。 用户缺乏如何比较规范的运作的知识。用户缺乏如何比较规范的运作的知识。 MIS的开发存在着一些失败的教训。的开发存在着一些失败的教训。问题出在哪里?问题出在哪里?项目没有被很好地理解;计划不周,最终导致进度拖延。项目没有被很好地理解;计划不周,最终导致进度拖延。没有充分的文档资料。没有充分的文档资料。软件可靠性缺少度量的

10、标准,质量无法保证。软件可靠性缺少度量的标准,质量无法保证。软件难以维护,不易升级。软件难以维护,不易升级。10从大量案例中,我们应借鉴些什么?从大量案例中,我们应借鉴些什么?关键成功因素:确定了战略目标,找出了瓶颈问题。关键成功因素:确定了战略目标,找出了瓶颈问题。成功经验:成功经验: 最终用户和高层领导的参与。最终用户和高层领导的参与。 战略上重视。战略上重视。 充分认识充分认识IS开发的困难和风险。开发的困难和风险。 制订合理的开发目标、步骤。制订合理的开发目标、步骤。 充分认识到组织和管理模式可能发生的变化,使得系统具充分认识到组织和管理模式可能发生的变化,使得系统具有一定的适应环境变

11、化的能力。有一定的适应环境变化的能力。 重视咨询,外部监管。重视咨询,外部监管。 培养自己的系统分析和系统开发人员。培养自己的系统分析和系统开发人员。11MIS开发与集成不成功的原因开发与集成不成功的原因 对对MIS的认识有偏差。的认识有偏差。 缺乏总体规划。缺乏总体规划。 目标不合理。目标不合理。 没有一个完善的管理基础工作。没有一个完善的管理基础工作。 缺乏管理人员的重视。缺乏管理人员的重视。 系统开发方法落后。系统开发方法落后。 MIS过分迁就原手工系统的做法。过分迁就原手工系统的做法。 系统开发者的素质和水平。系统开发者的素质和水平。 对对MIS的开发的艰巨性缺乏充分的认识。的开发的艰

12、巨性缺乏充分的认识。 人才的培养与爱护。人才的培养与爱护。122 MIS开发方法开发方法2.0 MIS开发方法概述开发方法概述2.1 结构化生命周期法结构化生命周期法2.2 原型化方法原型化方法2.3 面向对象方法面向对象方法2.4 系统开发方法的选择系统开发方法的选择2 Methods of the MIS132.1 结构化生命周期法结构化生命周期法2.1.1 传统的开发方法(生命周期法)传统的开发方法(生命周期法)Analysis Design Implementation Maintenance & EvaluationOld MISInvestigationNew MISNew SLC

13、Newer SLC2 Methods of the MIS图图2-1 系统生命周期示意图系统生命周期示意图Investigation 142.1.1 传统的开发方法(生命周期法)(续)传统的开发方法(生命周期法)(续)传统开发方法的局限性:传统开发方法的局限性: 关注软硬件费用、功能而不重视用户需求。关注软硬件费用、功能而不重视用户需求。 急于闭门编程而不强调调查研究。急于闭门编程而不强调调查研究。2 Methods of the MIS152.1.2 结构化生命周期法结构化生命周期法图图2-2 结构化方法的组成结构化方法的组成2 Methods of the MIS系统分析系统分析系统设计系

14、统设计+顺序顺序选择选择循环循环结构化系统分析结构化系统分析结构化系统设计结构化系统设计结构化程序设计结构化程序设计 + + = 结构化方法结构化方法162.1.2 结构化生命周期法(续)结构化生命周期法(续)结构化方法结构化方法 + 生命周期法生命周期法= 结构化生命周期法结构化生命周期法= 结构化系统开发方法结构化系统开发方法= SSA&D(Structured System Analysis and Design)= SADT(Structured Analysis and Design Technology)结构化生命周期法是目前应用最广、最成熟的结构化生命周期法是目前应用最广、最成熟

15、的 MIS 开发方法。开发方法。方便起见,方便起见,“结构化生命周期法结构化生命周期法”在今后教学过程中简称在今后教学过程中简称“结构化方法结构化方法”或或 SSA&D。2 Methods of the MIS系统规划系统规划系统分析系统分析系统设计系统设计系统实施系统实施为什么做?为什么做?做什么?做什么?怎么做?怎么做?做做系统规划报告系统规划报告系统分析报告系统分析报告系统设计说明书系统设计说明书用户手册用户手册系统可行性分析报告系统可行性分析报告抽象程度18(1)SSA&D 的优势与改进的优势与改进SSA&D VS. 传统开发方法:传统开发方法: 提高编程效率,改进程序质量。提高编程效

16、率,改进程序质量。 采用模块结构,便于修改扩充。采用模块结构,便于修改扩充。2 Methods of the MIS19(2)SSA&D 的基本思想的基本思想SSA&D 的基本思想:的基本思想:在在系统分析系统分析与与系统设计系统设计阶段,阶段,用系统的思想、用系统的思想、系统工程的方法,按用户至上的原则,结构化、模系统工程的方法,按用户至上的原则,结构化、模块化、自顶向下地对信息系统进行分析与设计;块化、自顶向下地对信息系统进行分析与设计;在在系统实施系统实施阶段,自底向上逐步实施,然后按阶段,自底向上逐步实施,然后按照系统设计的结构,将模块一个个拼接到一起进行照系统设计的结构,将模块一个个

17、拼接到一起进行调试,自底向上、逐步地构成整个系统。调试,自底向上、逐步地构成整个系统。2 Methods of the MIS20(3)SSA&D 的基本原则的基本原则SSA&D 的基本原则:的基本原则: 面向用户面向用户 区分工作阶段区分工作阶段(Divide and Conquer) 自顶向下地分析、设计;自底向上地实施自顶向下地分析、设计;自底向上地实施 采用模块结构应对变化采用模块结构应对变化 工作成果规范化、标准化工作成果规范化、标准化2 Methods of the MIS21 区分工作阶段(区分工作阶段(Divide and Conquer)图图2-3 区分工作阶段、活动、作业区

18、分工作阶段、活动、作业系系统统开开发发过过程程A1A1A2A2A3A3AmAmActivitiesT1T1T2T2T3T3TkTkTasksCheck PointsPhasesP1P1P2P2P3P3PnPnBack2 Methods of the MIS22(4)SSA&D 的一般过程的一般过程 系统规划阶段系统规划阶段2 Methods of the MIS 系统分析阶段系统分析阶段 系统设计阶段系统设计阶段 系统实施阶段系统实施阶段 系统运行阶段系统运行阶段根据用户的系统开发根据用户的系统开发请求,初步请求,初步调查调查,明,明确确问题问题,然后进行,然后进行可可行性研究行性研究;同时;

19、同时划分划分模块模块、确定、确定优先顺序优先顺序。可行性研究报告可行性研究报告系统规划报告系统规划报告需求分析需求分析;分析;分析业务业务流程流程;分析数据与;分析数据与数数据流程据流程;分析功能与;分析功能与数据之间的关系;提数据之间的关系;提出出新系统逻辑模型新系统逻辑模型。系统分析报告系统分析报告系统结构设计;处理流系统结构设计;处理流程设计;代码设计;数程设计;代码设计;数据库据库/文件设计;文件设计;I/O设设计;网络设计。计;网络设计。系统设计说明书系统设计说明书设备购买和安装;编设备购买和安装;编程或二次开发;人员程或二次开发;人员培训;数据准备;系培训;数据准备;系统测试、调试

20、与转换。统测试、调试与转换。程序清单程序清单系统测试报告系统测试报告系统使用说明书系统使用说明书日常运行管理、评价、日常运行管理、评价、监理审计。修改、维监理审计。修改、维护、微调。护、微调。系统评价分析报告系统评价分析报告需要指明的是:需要指明的是:并非所有的步骤都是并非所有的步骤都是必须的。如需要与可必须的。如需要与可能,可跳过某些步骤能,可跳过某些步骤或有必要地反复,但或有必要地反复,但不可打乱或颠倒顺序。不可打乱或颠倒顺序。232.1.3 SSA&D 的优缺点与适用范围的优缺点与适用范围(1)SSA&D 的优点的优点 严格区分开发阶段严格区分开发阶段 整体性与全局性好整体性与全局性好2

21、 Methods of the MIS对每一阶段的任务完成情况对每一阶段的任务完成情况进行审查,对于出现的错误进行审查,对于出现的错误或问题及时加以解决,不允或问题及时加以解决,不允许转入下一阶段。错误纠正许转入下一阶段。错误纠正得越早,所造成的损失就越得越早,所造成的损失就越少。少。审查、审批、验收、审查、审批、验收、Check Points强调开发过程的整体性强调开发过程的整体性和全局性,自顶向下,逐步和全局性,自顶向下,逐步求精,在整体优化的前提下求精,在整体优化的前提下考虑具体的分析、设计问题。考虑具体的分析、设计问题。242.1.3 SSA&D 的优缺点与适用范围(续)的优缺点与适用

22、范围(续)(2)SSA&D 的缺点的缺点 预先定义用户需求预先定义用户需求 缺乏灵活性缺乏灵活性 开发阶段间存在鸿沟开发阶段间存在鸿沟 开发工具落后开发工具落后2 Methods of the MIS要求开发人员在调查中充要求开发人员在调查中充分掌握用户需求、管理状况并分掌握用户需求、管理状况并预见可能发生的变化,这不符预见可能发生的变化,这不符合人们认识事物的客观规律。合人们认识事物的客观规律。同时,用户也很难准确陈述其同时,用户也很难准确陈述其需求。需求。 修改系统分析和系统设计修改系统分析和系统设计的结果工作量相当大,实施起的结果工作量相当大,实施起来相当困难。因此就要求步步来相当困难。

23、因此就要求步步为营,尽量避免需要修改的情为营,尽量避免需要修改的情况发生。况发生。各阶段采用不同的、没有各阶段采用不同的、没有严格对应关系的模型作为开发严格对应关系的模型作为开发工具,形成阶段间的鸿沟。即工具,形成阶段间的鸿沟。即不能很好地解决从系统分析到不能很好地解决从系统分析到系统设计之间的过渡,比如如系统设计之间的过渡,比如如何使物理模型如实反映出逻辑何使物理模型如实反映出逻辑模型的要求。模型的要求。起点太低。所使用的工具起点太低。所使用的工具(主要是手工绘制各种各样的(主要是手工绘制各种各样的分析设计图表)落后,致使系分析设计图表)落后,致使系统开发周期过长而带来了一系统开发周期过长而

24、带来了一系列的问题。不能自动生成文档,列的问题。不能自动生成文档,文档整理工作量太大。文档整理工作量太大。25ProblemsVery resource intensive. 很耗资源。很耗资源。Inflexible and inhibits change. 不灵活,而且抑制变化。不灵活,而且抑制变化。Ill-suited to decision-oriented applications.不适合以决策为目的的应用。不适合以决策为目的的应用。26(3)SSA&D 的适用范围的适用范围SSA&D 适合用于开发适合用于开发能够预先定义需求、结构能够预先定义需求、结构化程度较高的大型系统和复杂系统化

25、程度较高的大型系统和复杂系统。该方法不适合。该方法不适合用于小型系统的开发。用于小型系统的开发。2 Methods of the MIS272 MIS开发方法开发方法2.0 MIS开发方法概述开发方法概述2.1 结构化生命周期法结构化生命周期法2.2 原型化方法原型化方法2.3 面向对象方法面向对象方法2.4 系统开发方法的选择系统开发方法的选择2 Methods of the MIS282.2 原型化方法原型化方法2.2.1 原型化方法概述原型化方法概述(1)原型化方法的产生)原型化方法的产生两类软件系统:两类软件系统: 预先指定的系统:需求比较预先指定的系统:需求比较稳定而且能够预先定义;

26、稳定而且能够预先定义; 用户驱动的系统:需求用户驱动的系统:需求模糊或随时间变化。模糊或随时间变化。2 Methods of the MISSSA&D 无法用于开发用户驱动类系统。无法用于开发用户驱动类系统。采用采用 SSA&D 开发开发 MIS,有时会跟不上用户需求的变化。,有时会跟不上用户需求的变化。为解决以上困难,原型化方法(为解决以上困难,原型化方法(Prototyping Method)于于1980年代诞生。年代诞生。29(2)原型化方法的基本思想)原型化方法的基本思想原型法就是根据用户提出的需求,由用户与开原型法就是根据用户提出的需求,由用户与开发者共同确定系统的基本要求和主要功能

27、,并在较发者共同确定系统的基本要求和主要功能,并在较短时间内建立一个实验性的、简单的小型系统,称短时间内建立一个实验性的、简单的小型系统,称做做“原型原型”,然后将原型交给用户使用。用户在使,然后将原型交给用户使用。用户在使用原型的过程中会产生新的需求,开发人员依据用用原型的过程中会产生新的需求,开发人员依据用户提出的评价意见对简易原型进行不断的修改、补户提出的评价意见对简易原型进行不断的修改、补充和完善。如此不断地反复修改(迭代),直至满充和完善。如此不断地反复修改(迭代),直至满足用户的需求。这就形成了一个相对稳定、较为理足用户的需求。这就形成了一个相对稳定、较为理想的想的MIS。2 Me

28、thods of the MIS30(2)原型化方法的基本思想(续)原型化方法的基本思想(续)原型法(原型法(Prototyping Method)是在系统开发)是在系统开发初期,凭借系统开发人员对用户需求的了解和系统初期,凭借系统开发人员对用户需求的了解和系统主要功能的要求,在强有力的软件环境支持下,迅主要功能的要求,在强有力的软件环境支持下,迅速构造出系统的初始原型,然后与用户一起不断对速构造出系统的初始原型,然后与用户一起不断对原型进行修改、完善(原型进行修改、完善(迭代迭代),直到满足用户需求。),直到满足用户需求。2 Methods of the MIS31相关链接:迭代相关链接:迭

29、代迭代就是用户对原型系统进行评价后,提出意迭代就是用户对原型系统进行评价后,提出意见,开发人员根据用户的意见进行见,开发人员根据用户的意见进行修改的反复过程修改的反复过程。迭代不是简单的反复,每一次迭代都意味着原迭代不是简单的反复,每一次迭代都意味着原型系统向着用户需求又前进了一步,迭代是系统开型系统向着用户需求又前进了一步,迭代是系统开发进展的动力。发进展的动力。迭代过程的结束,就是原型的完成。迭代过程的结束,就是原型的完成。 Back2 Methods of the MIS识别基本需求识别基本需求构造初始原型构造初始原型使用验证原型使用验证原型满意吗?满意吗?放弃吗?放弃吗?放弃原型放弃原

30、型可行性研究可行性研究生成文档交付系统生成文档交付系统修正修正/改进原型改进原型YYNN2.2.2原型化方法原型化方法的开发过程的开发过程系统结构、功能、系统结构、功能、I/O要求、数据库基本结要求、数据库基本结构、系统接口等构、系统接口等36周,不超过周,不超过2个月;个月;使用软件工具辅助实使用软件工具辅助实现。现。迭代迭代保存保存历史历史版本版本判定判定原型原型完成完成对系统开发的意义、对系统开发的意义、费用、时间作出初步费用、时间作出初步的估算,确定系统开的估算,确定系统开发的必要性和可行性。发的必要性和可行性。图图2-4 原型化方法的开发过程原型化方法的开发过程332.2.3 原型的

31、种类和构造方法原型的种类和构造方法(1)原型的种类)原型的种类 根据在系统开发过程中的作用,可分为:根据在系统开发过程中的作用,可分为:丢弃式原型(丢弃式原型(Throw-it-away Prototyping)用于描述和说明系统的需求;作为开发人员和用户之间用于描述和说明系统的需求;作为开发人员和用户之间的通信工具;不作为实际系统运行。的通信工具;不作为实际系统运行。进化式原型(进化式原型(Evolutionary Prototyping)用于满足用户不断变化的需求;在原型系统基础上不断用于满足用户不断变化的需求;在原型系统基础上不断迭代;作为实际系统运行。迭代;作为实际系统运行。2 Met

32、hods of the MIS34(1)原型的种类(续)原型的种类(续) 根据原型的应用目的和场合的不同根据原型的应用目的和场合的不同 ,可分为:可分为:研究型原型(研究型原型(Exploratory Prototyping)实验型原型(实验型原型(Experimental Prototyping)演进型原型(演进型原型(Evolutionary Prototyping)2 Methods of the MIS35(2)(进化式)原型的构造方法(开发方式)(进化式)原型的构造方法(开发方式) 递增式系统开发(递增式系统开发(Incremental Prototyping)递增式系统开发的原理:

33、递增式系统开发的原理:开始时系统有一个总体框架,各功能单元的结开始时系统有一个总体框架,各功能单元的结构和功能十分清楚;每一模块还未具体实现;以后构和功能十分清楚;每一模块还未具体实现;以后开发中逐步完善模块。开发中逐步完善模块。递增式系统开发过程:递增式系统开发过程:总体设计、功能模块的反复实现。总体设计、功能模块的反复实现。2 Methods of the MIS36 递增式系统开发(续)递增式系统开发(续)图图2-5 进化式原型的递增式系统开发过程进化式原型的递增式系统开发过程功能子单元功能子单元全部实现?全部实现?系统总体设计系统总体设计最终系统最终系统实现一个功能子单元实现一个功能子

34、单元YN2 Methods of the MIS系统是在原型系统是在原型的基础上逐步的基础上逐步扩展,横向发扩展,横向发展起来的。展起来的。37 进化式系统开发(进化式系统开发(Evolutionary Prototyping)进化式系统开发的原理:进化式系统开发的原理:把系统开发看成一种周期过把系统开发看成一种周期过程,从设计到实现再到评估反复程,从设计到实现再到评估反复进行;最终产品被看作一个版本进行;最终产品被看作一个版本序列。序列。2 Methods of the MIS满意吗?满意吗?系统设计系统设计最终系统最终系统进化(重新设计、实施)进化(重新设计、实施)YN系统实施系统实施多次

35、反复多次反复图图2-6 进化式原型的进化式系统开发过程进化式原型的进化式系统开发过程围绕基本需求围绕基本需求加强管理控制加强管理控制开发过程是系开发过程是系统不同版本的统不同版本的开发过程开发过程38相关链接:相关链接:软件版本常识和软件版本号命名规则软件版本常识和软件版本号命名规则.pdf39(3)现实的选择:原型化方法与)现实的选择:原型化方法与 SSA&D 的结合的结合采用丢弃式方法,将原型的开发过程作为采用丢弃式方法,将原型的开发过程作为SSA&D 的一个阶段,即需求定义阶段。的一个阶段,即需求定义阶段。研究型原型加强了研究型原型加强了 SSA&D 的需求定义和功能的需求定义和功能分析

36、阶段的分析。分析阶段的分析。2 Methods of the MIS满意吗?满意吗?可行性研究可行性研究N识别基本需求识别基本需求多次反复多次反复需求定义需求定义系统分析系统分析系统设计系统设计系统实施系统实施系统管理及维护系统管理及维护构造初始原型构造初始原型使用验证原型使用验证原型修改修改YSSA&D原型化方法原型化方法图图2-7 原型化方法与原型化方法与 SSA&D 的结合方式的结合方式412.2.4 原型化方法的优缺点与适用范围原型化方法的优缺点与适用范围(1)原型化方法的优点)原型化方法的优点 开发者在正式开发之前就可以得到用户的真正需求,开发者在正式开发之前就可以得到用户的真正需求

37、,而用户能在较短的时间内看到新系统的模样。而用户能在较短的时间内看到新系统的模样。 改进了用户和系统开发人员的交流方式,有效避免开改进了用户和系统开发人员的交流方式,有效避免开发者和用户的认识差异所产生的失败。发者和用户的认识差异所产生的失败。 开发的系统更加贴近实际,提高了用户的满意程度。开发的系统更加贴近实际,提高了用户的满意程度。 降低了系统开发风险,一定程度上减少了开发成本。降低了系统开发风险,一定程度上减少了开发成本。 采用自底向上的开发策略,更易被用户接受。采用自底向上的开发策略,更易被用户接受。2 Methods of the MIS42(2)原型化方法的缺点)原型化方法的缺点

38、由于原型法在实施进程中缺乏对由于原型法在实施进程中缺乏对 MIS 全面、系统的认全面、系统的认识。因此,它不适合用于开发大型或复杂的识。因此,它不适合用于开发大型或复杂的 MIS。 对用户的管理水平要求较高。原型化方法每次迭代都对用户的管理水平要求较高。原型化方法每次迭代都要花费人力、物力。如果用户合作不好,盲目纠错,就会拖要花费人力、物力。如果用户合作不好,盲目纠错,就会拖延开发进程,甚至偏离原型的目的。延开发进程,甚至偏离原型的目的。 测试和文档工作常被忽略,使系统运行后很难进行正测试和文档工作常被忽略,使系统运行后很难进行正常的维护。常的维护。 开发工具开发工具要求高。支持原型开发的软件

39、工具大致可分要求高。支持原型开发的软件工具大致可分为如下几类:原型化工具、为如下几类:原型化工具、CASE原型化工具、可用于原型开原型化工具、可用于原型开发的工具。发的工具。2 Methods of the MIS43相关链接:支持原型开发的软件工具相关链接:支持原型开发的软件工具原型化工具:原型化工具:指以建立原型为目的的工具。如面向应用的第指以建立原型为目的的工具。如面向应用的第四代语言(四代语言(4GL,代表性软件,代表性软件Delphi和和INFORMOX-4GL等。)、可执行规格说明(等。)、可执行规格说明(Executable Specification)语言、)语言、P.Zave

40、的的PAISLey语言、语言、R.Balzer的的Gist语言。语言。CASE原型化工具:原型化工具:将原型化工具和支持其他软件工程方法的将原型化工具和支持其他软件工程方法的CASE工具集成在一起工具集成在一起,使用图形用户界面(使用图形用户界面(GUI)技术和仿)技术和仿真模拟技术来快速生成原型。如日立公司的真模拟技术来快速生成原型。如日立公司的CASE工作台工作台SEWB3的原型化工具的原型化工具ONPROT。2 Methods of the MIS44相关链接:支持原型开发的软件工具(续)相关链接:支持原型开发的软件工具(续)可用于原型开发的工具:可用于原型开发的工具:还有一些工具也可用

41、来开发原型,还有一些工具也可用来开发原型,特别是界面原型。不过它们不是专门开发原型的工具,而且特别是界面原型。不过它们不是专门开发原型的工具,而且开发接口、功能级原型时多需编写一些程序,所以一般只用开发接口、功能级原型时多需编写一些程序,所以一般只用来开发进化式原型,不用来开发抛弃式原型。这种原型开发来开发进化式原型,不用来开发抛弃式原型。这种原型开发工具不如原型工具简单、迅速,但由于开发的原型可直接转工具不如原型工具简单、迅速,但由于开发的原型可直接转为产品的一部分,所以在产品开发上比抛弃式原型化工具优为产品的一部分,所以在产品开发上比抛弃式原型化工具优越。日立公司的越。日立公司的UIBT、

42、Microsoft的的VB、Power -Soft的的PowerBuilder等。等。2 Methods of the MISBack45(3)原型化方法的适用范围)原型化方法的适用范围原型法的适用于原型法的适用于用户需求不清用户需求不清,管理及业务处管理及业务处理不稳定理不稳定,需求常常变化需求常常变化,规模小,不太复杂规模小,不太复杂,而,而且不要求集中处理的系统。且不要求集中处理的系统。2 Methods of the MIS方法方法内容内容原型法原型法SSA&D开发路径开发路径循环、迭代型循环、迭代型严格、顺序型严格、顺序型文档数量文档数量较少较少多多用户参与程度用户参与程度高高低低开

43、发过程的可见度开发过程的可见度好好差差对功能需求或环境对功能需求或环境变化的适应性变化的适应性 较好较好差差用户的信息反馈用户的信息反馈早早迟迟对开发环境、软件对开发环境、软件工具的要求工具的要求高高低低对开发过程的管理和控制对开发过程的管理和控制较困难较困难 较容易较容易表表2-1 原型法与生命周期法的比较原型法与生命周期法的比较472 MIS开发方法开发方法2.0 MIS开发方法概述开发方法概述2.1 结构化生命周期法结构化生命周期法2.2 原型化方法原型化方法2.3 面向对象方法面向对象方法2.4 系统开发方法的选择系统开发方法的选择2 Methods of the MIS482.3 面

44、向对象方法面向对象方法2.3.1 OO方法的产生与发展方法的产生与发展(1)传统开发方法()传统开发方法(SSA&D)的困境)的困境 问题空间与求解空间不一致问题空间与求解空间不一致(即:(即:业务系统领域业务系统领域与与计算机领域计算机领域不一致)不一致) 系统分析到系统设计转换困难系统分析到系统设计转换困难 处理模型和数据模型分别建立处理模型和数据模型分别建立 忽视信息系统的行为特征忽视信息系统的行为特征2 Methods of the MIS492.3.1 OO方法的产生与发展(续)方法的产生与发展(续)(2)OO方法的历史方法的历史1950s:FORTRAN 的的变量名冲突变量名冲突

45、ALGOL60的的封装尝试封装尝试1960s:Simula 对象、类与类继承对象、类与类继承1970s:Smalltalk 对象、对象类、方法、实例对象、对象类、方法、实例1980s-:Object-C, C+, C#, Eiffel, Java, Object-Pascal 2 Methods of the MIS面向对象源出于面向对象源出于Simula,真正的,真正的OOP由由Smalltalk奠基。奠基。Smalltalk现在被认为是最纯的现在被认为是最纯的OOPL。OO方法方法 = OO分析分析 + OO设计设计 + OO编程编程502.3.2 OO方法的相关概念与基本思想方法的相关概

46、念与基本思想(1)OO方法的相关概念方法的相关概念 对象(对象(Object)客观世界中的任何事物或人脑中的各种概念在客观世界中的任何事物或人脑中的各种概念在计算机世界的抽象表示。计算机世界的抽象表示。它是它是OO编程的基本元素。编程的基本元素。2 Methods of the MIS对象对象 = 属性(私有数据属性(私有数据 )+ 操作(行为操作(行为/方法)方法)51(1)OO方法的相关概念(续方法的相关概念(续1) 消息(消息(Message)消息是对象间进行通信的一种数据结构。消息是对象间进行通信的一种数据结构。消息包含控制流与数据流两部分。消息包含控制流与数据流两部分。对象间的联系主

47、要是通过传递消息(而非函数对象间的联系主要是通过传递消息(而非函数/操作)来实现的。操作)来实现的。2 Methods of the MIS52(1)OO方法的相关概念(续方法的相关概念(续2) 类(类(Class)类是具有相同数据结构和行为(即操作)的类是具有相同数据结构和行为(即操作)的对象的集合。对象的集合。类有一定的结构:超类(类有一定的结构:超类(Superclass)、子类)、子类(Subclass)。)。2 Methods of the MIS53(1)OO方法的相关概念(续方法的相关概念(续3) 继承(继承(Inheritance)对象或类之间的层次结构是靠继承关系对象或类之间

48、的层次结构是靠继承关系(Inheritance)维系的。)维系的。继承是自动共享类、子类和对象中的方法和数继承是自动共享类、子类和对象中的方法和数据的机制,意味着据的机制,意味着“自动地拥有、隐含地复制自动地拥有、隐含地复制”。类类B继承类继承类A至少说明两点:至少说明两点:类类B是类是类A的子类;的子类;类类B中的实例拥有类中的实例拥有类A中实例的数据结构与操作中实例的数据结构与操作方法。方法。2 Methods of the MIS54(1)OO方法的相关概念(续方法的相关概念(续4) 封装(封装(Encapsulation)一种信息隐藏技术,把对象的属性和行为同时一种信息隐藏技术,把对象

49、的属性和行为同时封装在所定义的对象中。即封装在所定义的对象中。即将对象严格模块化将对象严格模块化。这种严格模块化了的对象满足软件工程的一切这种严格模块化了的对象满足软件工程的一切要求,而且可以直接被要求,而且可以直接被OO程序设计语言所接受。程序设计语言所接受。2 Methods of the MIS55(1)OO方法的相关概念(续方法的相关概念(续5) 实例(实例(Instance)某个特定的类所描述的一个具体的对象。某个特定的类所描述的一个具体的对象。 多态(多态(Polymorphism)同一消息被不同的对象接收时可产生完全不同同一消息被不同的对象接收时可产生完全不同的行动,这种现象称为

50、多态。的行动,这种现象称为多态。多态意味同一消息即可调用不同的方法多态意味同一消息即可调用不同的方法 。2 Methods of the MIS56(2)OO方法的基本思想方法的基本思想客观世界是由各种各样的对象组成的,每客观世界是由各种各样的对象组成的,每种对象都有各自的内部状态和运动规律,不同种对象都有各自的内部状态和运动规律,不同对象之间的相互作用和联系就构成了各种不同对象之间的相互作用和联系就构成了各种不同的系统。的系统。 2 Methods of the MIS57自习部分自习部分2.3.3 面向对象分析和设计的通用原则面向对象分析和设计的通用原则2.3.4 面向对象方法的种类面向对

51、象方法的种类2.3.5 面向对象方法的特点面向对象方法的特点2.3.6 面向对象方法与结构化方法的比较面向对象方法与结构化方法的比较2 Methods of the MIS582.3.7 OO方法的分析与设计过程方法的分析与设计过程 (1)系统调查和需求分析:)系统调查和需求分析:对系统将要面临的具体对系统将要面临的具体管理问题以及用户对系统开发的需求进行调查研管理问题以及用户对系统开发的需求进行调查研究,即先弄清要干什么的问题。究,即先弄清要干什么的问题。(2)分析问题的性质和求解问题:)分析问题的性质和求解问题:在繁杂的问题域在繁杂的问题域中抽象地识别出对象以及其行为、结构、属性、中抽象地

52、识别出对象以及其行为、结构、属性、方法等。一般称之为面向对象的分析,即方法等。一般称之为面向对象的分析,即OOA。2 Methods of the MIS592.3.7 OO方法的分析与设计过程(续)方法的分析与设计过程(续)(3)整理问题:)整理问题:对分析的结果作进一步的抽象、归对分析的结果作进一步的抽象、归类、整理,并最终以范式的形式将他们确定下来。类、整理,并最终以范式的形式将他们确定下来。一般称之为面向对象的设计,即一般称之为面向对象的设计,即OOD。(4)程序实现:)程序实现:用面向对象的程序设计语言将上一用面向对象的程序设计语言将上一步整理的范式直接映射(即直接用程序设计语言步整

53、理的范式直接映射(即直接用程序设计语言来取代)为应用软件。一般称之为面向对象的程来取代)为应用软件。一般称之为面向对象的程序,即序,即OOP。2 Methods of the MIS602.3.8 对对OO方法的评价及方法的评价及OO方法的适用范围方法的适用范围(1)评价)评价直接反映人们对客观世界的认知模式。直接反映人们对客观世界的认知模式。开发方案更加抽象化而且具有极强的对应性。开发方案更加抽象化而且具有极强的对应性。在设计中容易与用户沟通。在设计中容易与用户沟通。把数据和操作封装到对象之中。把数据和操作封装到对象之中。设计中对象构成模块、模块通过接口组成系统。设计中对象构成模块、模块通过

54、接口组成系统。应用程序具有较好的重用性、易改进、易维护和易扩充。应用程序具有较好的重用性、易改进、易维护和易扩充。 开发周期短、费用低。开发周期短、费用低。(2)适用范围)适用范围流行的开发方法,适用面很广。流行的开发方法,适用面很广。2 Methods of the MIS612 MIS开发方法开发方法2.0 MIS开发方法概述开发方法概述2.1 结构化生命周期法结构化生命周期法2.2 原型化方法原型化方法2.3 面向对象方法面向对象方法2.4 系统开发方法的选择系统开发方法的选择2 Methods of the MIS622.4 系统开发方法的选择系统开发方法的选择2.4.1 其他的系统开

55、发方法其他的系统开发方法除了这除了这3种常用的方法之外,还有种常用的方法之外,还有计算机辅助软计算机辅助软件工程方法(件工程方法(CASE)、软件包法、最终用户开发方)、软件包法、最终用户开发方法(法(End User Development)、外部化方法、软件再)、外部化方法、软件再造工程法造工程法等。等。2 Methods of the MIS应当指出,以上对应当指出,以上对MIS开发方法的分类只能说是大致的开发方法的分类只能说是大致的不严密的分类。由于这些方法间有不少交叉的内容,分类并不严密的分类。由于这些方法间有不少交叉的内容,分类并非在同一维度上进行,所以在概念上有含糊之处。非在同一

56、维度上进行,所以在概念上有含糊之处。632.4.2 系统开发方法的选择系统开发方法的选择2 Methods of the MIS系统开发方法涉及到以下因素:系统开发方法涉及到以下因素:需求和应用的类型、数据、需求和应用的类型、数据、过程、算法和环境等过程、算法和环境等各种方法的特点、各种方法的特点、应用的假设条件应用的假设条件人力资源人力资源CASE工具的可利用性工具的可利用性时间、资金等方面的约束条件时间、资金等方面的约束条件(1)应用的特点)应用的特点(2)方法的选择)方法的选择(3)资源分析)资源分析64案例:中海油的案例:中海油的MIS开发方法的选择开发方法的选择中国海洋石油总公司是经

57、国务院批准于中国海洋石油总公司是经国务院批准于1982年年2月月15日成日成立的国家石油公司。为降低成本,提高效益,公司一直在信立的国家石油公司。为降低成本,提高效益,公司一直在信息化建设上不遗余力。公司先后建设了海洋石油卫星通讯网、息化建设上不遗余力。公司先后建设了海洋石油卫星通讯网、广域网、局域网、海洋石油网络应用系统等。其中,有两个广域网、局域网、海洋石油网络应用系统等。其中,有两个大型的大型的MIS:勘探开发系统和财务管理系统。:勘探开发系统和财务管理系统。 (1)勘探开发系统从)勘探开发系统从1994年年自行组织力量自行组织力量开始建设,先开始建设,先后建立了勘探数据库、开发数据库、

58、生产动态信息库。该系后建立了勘探数据库、开发数据库、生产动态信息库。该系统已应用与公司的相关部门和所属分公司,主要服务于管理统已应用与公司的相关部门和所属分公司,主要服务于管理层和技术层。层和技术层。 2 Methods of the MIS65案例:中海油的案例:中海油的MIS开发方法的选择(续开发方法的选择(续1)(2)财务管理系统的开发经历了多个阶段。)财务管理系统的开发经历了多个阶段。80年代后期年代后期公司曾组织过一次财务信息系统的开发公司曾组织过一次财务信息系统的开发,系统是在系统是在DOS环境下环境下运行的单机版并在部分下属单位推广应用,尽管没有成功,运行的单机版并在部分下属单位推广应用,尽管没有成功,却为公司的会计电算化打下良好的技术基础。却为公司的会计电算化打下良好的技术基础。后来,公司又组织由财务人员和计算机技术人员参加的后来,公司又组织由财

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论