管理信息系统的开发方式与方法.ppt

上传人:m**** 文档编号:568463763 上传时间:2024-07-24 格式:PPT 页数:78 大小:1.19MB
返回 下载 相关 举报
管理信息系统的开发方式与方法.ppt_第1页
第1页 / 共78页
管理信息系统的开发方式与方法.ppt_第2页
第2页 / 共78页
管理信息系统的开发方式与方法.ppt_第3页
第3页 / 共78页
管理信息系统的开发方式与方法.ppt_第4页
第4页 / 共78页
管理信息系统的开发方式与方法.ppt_第5页
第5页 / 共78页
点击查看更多>>
资源描述

《管理信息系统的开发方式与方法.ppt》由会员分享,可在线阅读,更多相关《管理信息系统的开发方式与方法.ppt(78页珍藏版)》请在金锄头文库上搜索。

1、第二章第二章 MIS的开发方式与方法的开发方式与方法l第一节:系统开发概述第一节:系统开发概述l第二节:第二节:MIS的开发策略的开发策略l第三节:第三节:MIS的开发方式的开发方式l第四节:第四节:MIS的开发方法的开发方法第一节第一节 系统开发概述系统开发概述l一、系统开发的任务一、系统开发的任务 根据企业的具体情况,为企业建立起计根据企业的具体情况,为企业建立起计算机化的信息系统。算机化的信息系统。 核心工作核心工作:开发出一套适合于现代企业:开发出一套适合于现代企业管理要求的管理要求的应用软件应用软件。 管理信息系统的开发过程管理信息系统的开发过程 就是根据需要解决的问题,建立一个有信

2、就是根据需要解决的问题,建立一个有信息技术支撑、与解决问题相关的、数据处理的、息技术支撑、与解决问题相关的、数据处理的、可运行计算机模型。可运行计算机模型。现实世界:现实世界:问题问题计算机世界:计算机世界:计算机可计算机可执行模型执行模型现实世界:问题观念世界观念世界逻辑模型逻辑模型数据世界数据世界物理模型物理模型计算机世界计算机世界计算机可计算机可执行模型执行模型对用户问题进行抽象根据系统平台进行设计利用实用软件进行描述l逻辑模型逻辑模型:识别用户需求,确定开发系统的功能:识别用户需求,确定开发系统的功能(“做什么?做什么?”)-系统分析系统分析l物理模型物理模型:在一定信息技术、系统平台

3、约束下,:在一定信息技术、系统平台约束下,设计系统实现方式(设计系统实现方式(“如何做?如何做?”)-系统设系统设计计l计算机可执行模型计算机可执行模型:利用计算机语言设计出相应:利用计算机语言设计出相应的计算机程序。的计算机程序。-系统实施系统实施第一节第一节 系统开发概述系统开发概述l二、系统开发的特点二、系统开发的特点 充分认识充分认识MISMIS开发的特点,在系统开发中少走开发的特点,在系统开发中少走弯路。弯路。1.1.复杂性高(知识密集;企业管理自身的复杂性)复杂性高(知识密集;企业管理自身的复杂性)2.2.基于原系统,高于原系统基于原系统,高于原系统3.3.一把手工程一把手工程4.

4、4.产品是无形的产品是无形的 第一节第一节 系统开发概述系统开发概述l三、系统开发的原则三、系统开发的原则1.1.面向用户的原则面向用户的原则(用户是否满意是衡量系统开发质量的(用户是否满意是衡量系统开发质量的标准)标准)2.2.整体原则整体原则(原系统的物理模型(原系统的物理模型原系统的逻辑模型原系统的逻辑模型新新系统的逻辑模型系统的逻辑模型新系统的物理模型)新系统的物理模型)3.3.相关性和环境适应性原则相关性和环境适应性原则4.4.工作成果文档化、图标规范化原则工作成果文档化、图标规范化原则 第一节第一节 系统开发概述系统开发概述l四、系统开发的主要风险四、系统开发的主要风险1.1.需求

5、风险需求风险 需求风险几乎出现在每一个软件项目中,而且大多数需求风险几乎出现在每一个软件项目中,而且大多数会转变为问题。原因:会转变为问题。原因:(1 1)系统开发人员并不是业务领域的专家,对业务的理解)系统开发人员并不是业务领域的专家,对业务的理解存在偏差;存在偏差;(2 2)业务领域的工作人员很多时候并不特别清楚他们想要)业务领域的工作人员很多时候并不特别清楚他们想要的东西,系统需求从来源开始就是不明确的;的东西,系统需求从来源开始就是不明确的;(3 3)业务领域的专家,与系统开发人员有沟通和理解的问)业务领域的专家,与系统开发人员有沟通和理解的问题。题。第一节第一节 系统开发概述系统开发

6、概述l四、系统开发的主要风险四、系统开发的主要风险2.2.预算风险预算风险 预算是否充足、是否能够及时到位、一旦发预算是否充足、是否能够及时到位、一旦发生问题或项目延期的时候是否能够保证相对充足的生问题或项目延期的时候是否能够保证相对充足的预算,都必须考虑。预算,都必须考虑。例如,预算紧张,可能会使用工资水平较低的人员、例如,预算紧张,可能会使用工资水平较低的人员、选用廉价的工具等。选用廉价的工具等。第一节第一节 系统开发概述系统开发概述l四、系统开发的主要风险四、系统开发的主要风险3.3.团队风险团队风险 ITIT项目团队要求有明确的职责和高度畅通的项目团队要求有明确的职责和高度畅通的沟通渠

7、道。沟通渠道。 现实中:现实中:ITIT项目团队不稳定,人员流动频繁;项目团队不稳定,人员流动频繁;往往在项目启动后才组建团队,团队缺乏凝聚力;往往在项目启动后才组建团队,团队缺乏凝聚力;团队成员主要从事技术工作,沟通能力欠缺。团队成员主要从事技术工作,沟通能力欠缺。无法确定的团队聚合后的能力将成为项目的风险之一。无法确定的团队聚合后的能力将成为项目的风险之一。第一节第一节 系统开发概述系统开发概述l四、系统开发的主要风险四、系统开发的主要风险4.4.关键人员风险关键人员风险 在项目组中,总有一个或少数几个人掌握着在项目组中,总有一个或少数几个人掌握着项目核心的技术和解决方案,如技术专家或业务

8、专项目核心的技术和解决方案,如技术专家或业务专家。若有可能发生关键人员的离职或被调到其他项家。若有可能发生关键人员的离职或被调到其他项目组,则必须当成项目中的风险进行考虑。目组,则必须当成项目中的风险进行考虑。第一节第一节 系统开发概述系统开发概述l四、系统开发的主要风险四、系统开发的主要风险5.5.技术风险技术风险 ITIT项目是技术性的项目,其中会应用到各种各样的技术项目是技术性的项目,其中会应用到各种各样的技术方法,不恰当的选择和应用技术会给项目带来很大的问题。方法,不恰当的选择和应用技术会给项目带来很大的问题。 技术总是在不断的发展,更新的技术可能带来技术总是在不断的发展,更新的技术可

9、能带来更高的效率更高的效率和和更强大的功能更强大的功能,保持组织的竞争优势。但在项目中导入新,保持组织的竞争优势。但在项目中导入新技术需要非常谨慎,新技术常常意味着技术需要非常谨慎,新技术常常意味着不成熟不成熟,在最初的应,在最初的应用阶段会遇到各种各样的问题。尤其要用阶段会遇到各种各样的问题。尤其要避免避免在同一个项目中在同一个项目中导入多种新技术导入多种新技术,其结果可能是,其结果可能是灾难性灾难性的。的。第二节第二节 MIS MIS的开发策略的开发策略l(1 1)“自下而上自下而上”的开发策略的开发策略 基本思想:基本思想:从现行系统业务状况出发,从现行系统业务状况出发,先实现一个个具体

10、的功能,逐步地由低级先实现一个个具体的功能,逐步地由低级到高级建立到高级建立MIS。(2 2) “自上而下自上而下”的开发策略的开发策略 基本思想:从整体上协调和规划,由基本思想:从整体上协调和规划,由全面到局部、由长远到近期,从合理的信全面到局部、由长远到近期,从合理的信息流出发来设计信息系统。息流出发来设计信息系统。两种策略优缺点的对比两种策略优缺点的对比一般发生在一般发生在“初装初装”和和“蔓蔓延延”阶段。阶段。 备注备注复杂、繁琐。复杂、繁琐。 整体性和逻辑性整体性和逻辑性强。强。自上而下自上而下缺乏整体优化;缺乏整体优化;开发过程存在开发过程存在大量的重复工大量的重复工作。作。能保证

11、最终的系能保证最终的系统可以运行(虽统可以运行(虽然系统性能不一然系统性能不一定良好)。定良好)。自下而上自下而上缺点缺点优点优点策略策略开发策略的适用范围开发策略的适用范围 通常,通常, 自下而上自下而上 的策略用于的策略用于小型系统小型系统的设的设计。计。 在实践中,对于在实践中,对于大型系统大型系统往往把这两种方法往往把这两种方法结合起来使用,即先自上而下地作好结合起来使用,即先自上而下地作好MISMIS的战略规的战略规划,再自下而上地逐步实现各系统的应用开发。划,再自下而上地逐步实现各系统的应用开发。第三节第三节 MIS MIS的开发方式的开发方式l(1 1)自行开发方式)自行开发方式

12、l(2 2)委托开发方式)委托开发方式l(3 3)合作开发方式)合作开发方式l(4 4)购买应用软件包)购买应用软件包l(5 5)“外包外包”方式方式(1 1)自行开发方式)自行开发方式l适合:适合:适合:适合:有较强的有较强的有较强的有较强的MISMISMISMIS分析、设计、程序设计、系统分析、设计、程序设计、系统分析、设计、程序设计、系统分析、设计、程序设计、系统维护的组织和单位。维护的组织和单位。维护的组织和单位。维护的组织和单位。l优点:优点:优点:优点:管控强管控强管控强管控强针对性强针对性强针对性强针对性强推广迅速推广迅速推广迅速推广迅速培养队培养队培养队培养队伍伍伍伍l缺点:缺

13、点:缺点:缺点:水平?水平?水平?水平?规范性差,导致开发周期长,规范性差,导致开发周期长,规范性差,导致开发周期长,规范性差,导致开发周期长,后期维护难后期维护难后期维护难后期维护难先进性差先进性差先进性差先进性差(2 2)委托开发方式)委托开发方式l适合:适合:技术力量薄弱、资金较为充足的单位。技术力量薄弱、资金较为充足的单位。l优点:优点:优点:优点:省时、省事;开发的系统技术水平较高。省时、省事;开发的系统技术水平较高。省时、省事;开发的系统技术水平较高。省时、省事;开发的系统技术水平较高。l缺点:缺点:缺点:缺点:费用高;系统维护与扩展需要开发单位的费用高;系统维护与扩展需要开发单位

14、的费用高;系统维护与扩展需要开发单位的费用高;系统维护与扩展需要开发单位的长期支持;不利于本单位的人员培养。长期支持;不利于本单位的人员培养。长期支持;不利于本单位的人员培养。长期支持;不利于本单位的人员培养。l注意:注意:注意:注意:l 使用单位的业务骨干要参与系统的论证工作;使用单位的业务骨干要参与系统的论证工作;使用单位的业务骨干要参与系统的论证工作;使用单位的业务骨干要参与系统的论证工作;l 开发过程中需要开发单位和使用单位双方及开发过程中需要开发单位和使用单位双方及开发过程中需要开发单位和使用单位双方及开发过程中需要开发单位和使用单位双方及时沟通、协调。时沟通、协调。时沟通、协调。时

15、沟通、协调。(3 3)合作开发方式)合作开发方式l适合:适合:适合:适合:l 有一定的技术力量,希望通过系统的开发,有一定的技术力量,希望通过系统的开发,有一定的技术力量,希望通过系统的开发,有一定的技术力量,希望通过系统的开发,建立完善和提高自己的技术队伍,便于系统维护建立完善和提高自己的技术队伍,便于系统维护建立完善和提高自己的技术队伍,便于系统维护建立完善和提高自己的技术队伍,便于系统维护工作的单位。工作的单位。工作的单位。工作的单位。l优点:优点:优点:优点: l 节约资金;可以培养、增强使用单位的技节约资金;可以培养、增强使用单位的技节约资金;可以培养、增强使用单位的技节约资金;可以

16、培养、增强使用单位的技术力量;便于系统维护工作。术力量;便于系统维护工作。术力量;便于系统维护工作。术力量;便于系统维护工作。l缺点:缺点:缺点:缺点:l 双方在合作中沟通容易出现问题。双方在合作中沟通容易出现问题。双方在合作中沟通容易出现问题。双方在合作中沟通容易出现问题。(4 4)购买商品化应用软件)购买商品化应用软件l适合:适合:适合:适合:l 开发的系统是多数组织都要用到的通用功开发的系统是多数组织都要用到的通用功开发的系统是多数组织都要用到的通用功开发的系统是多数组织都要用到的通用功能,如财务管理、工资管理;能,如财务管理、工资管理;能,如财务管理、工资管理;能,如财务管理、工资管理

17、;l 缺少组织内部的开发人员缺少组织内部的开发人员缺少组织内部的开发人员缺少组织内部的开发人员l不适合:不适合:不适合:不适合:l 规模较大、功能复杂、需求量不确定程度高规模较大、功能复杂、需求量不确定程度高规模较大、功能复杂、需求量不确定程度高规模较大、功能复杂、需求量不确定程度高的系统。的系统。的系统。的系统。l优点:优点:优点:优点:缩短开发时间,节省开发费用,系统可以缩短开发时间,节省开发费用,系统可以缩短开发时间,节省开发费用,系统可以缩短开发时间,节省开发费用,系统可以得到较好的维护。得到较好的维护。得到较好的维护。得到较好的维护。l缺点:缺点:缺点:缺点:系统功能较简单,专用性差

18、,难以满足特系统功能较简单,专用性差,难以满足特系统功能较简单,专用性差,难以满足特系统功能较简单,专用性差,难以满足特殊要求。殊要求。殊要求。殊要求。(5 5)“外包外包”方式方式l优点:优点:优点:优点:实效性强实效性强实效性强实效性强ITITITIT技术投资成本低技术投资成本低技术投资成本低技术投资成本低质量稳质量稳质量稳质量稳定定定定企业可以专注于核心业务企业可以专注于核心业务企业可以专注于核心业务企业可以专注于核心业务l缺点:缺点:缺点:缺点:质量监控和管理难度大质量监控和管理难度大质量监控和管理难度大质量监控和管理难度大人资管理、信人资管理、信人资管理、信人资管理、信息管理难度大息

19、管理难度大息管理难度大息管理难度大依赖性增强依赖性增强依赖性增强依赖性增强选择问题选择问题选择问题选择问题第四节第四节 MIS MIS的开发方法的开发方法信息系统的开发是一个庞大的系统工程:信息系统的开发是一个庞大的系统工程:涉及到涉及到组织结构、管理模式、经营管理过程、组织结构、管理模式、经营管理过程、数据的收集与处理过程、计算机硬件系统的管理、数据的收集与处理过程、计算机硬件系统的管理、软件系统的开发等软件系统的开发等各个方面。各个方面。耗资大、周期长、技术复杂耗资大、周期长、技术复杂有必要研究出科学的开发方法。有必要研究出科学的开发方法。MISMIS的开发方法的开发方法l结构化系统开发方

20、法结构化系统开发方法l原型法原型法l面向对象开发方法面向对象开发方法lCASECASE方法方法(一)结构化系统开发方法(一)结构化系统开发方法l一种一种一种一种最常用最常用最常用最常用的的的的MISMISMISMIS开发方法开发方法开发方法开发方法l背景背景背景背景:20202020世纪世纪世纪世纪70707070年代,年代,年代,年代,MISMISMISMIS开发过程普遍存在开发过程普遍存在开发过程普遍存在开发过程普遍存在需求不清、需求不清、需求不清、需求不清、步骤混乱、成功率低步骤混乱、成功率低步骤混乱、成功率低步骤混乱、成功率低等问题。等问题。等问题。等问题。人们通过总结经验教训,认识的

21、人们通过总结经验教训,认识的人们通过总结经验教训,认识的人们通过总结经验教训,认识的MISMISMISMIS的开发是一的开发是一的开发是一的开发是一项项项项投入大、历时长、涉及面广、影响因素众多投入大、历时长、涉及面广、影响因素众多投入大、历时长、涉及面广、影响因素众多投入大、历时长、涉及面广、影响因素众多的的的的系系系系统工程统工程统工程统工程,必须用系统理论来指导,必须用系统理论来指导,必须用系统理论来指导,必须用系统理论来指导MISMISMISMIS的开发过程。的开发过程。的开发过程。的开发过程。基本思路基本思路结构化开发结构化开发l结构化结构化结构化结构化:用一组规范的:用一组规范的:

22、用一组规范的:用一组规范的步骤步骤步骤步骤、准则准则准则准则和和和和工具工具工具工具进行一进行一进行一进行一项工作。项工作。项工作。项工作。l基本思路:基本思路:基本思路:基本思路:l把整个系统开发过程分成把整个系统开发过程分成把整个系统开发过程分成把整个系统开发过程分成若干阶段若干阶段若干阶段若干阶段l明确规定每个阶段的明确规定每个阶段的明确规定每个阶段的明确规定每个阶段的目标、任务、工作流程目标、任务、工作流程目标、任务、工作流程目标、任务、工作流程以以以以及完成的任务需要遵循的标准、规范、方法等。及完成的任务需要遵循的标准、规范、方法等。及完成的任务需要遵循的标准、规范、方法等。及完成的

23、任务需要遵循的标准、规范、方法等。l规定每个阶段的规定每个阶段的规定每个阶段的规定每个阶段的产出产出产出产出及其规范。及其规范。及其规范。及其规范。MIS 生命周期模型生命周期模型系统分析报告系统分析报告系统设计报告系统设计报告(1 1)系统规划阶段)系统规划阶段l任务任务任务任务:初步调查初步调查初步调查初步调查,确定企业目标及信息系统目标,确定企业目标及信息系统目标,确定企业目标及信息系统目标,确定企业目标及信息系统目标,系统的总体方案、开发顺序、资源分配等,开展系统的总体方案、开发顺序、资源分配等,开展系统的总体方案、开发顺序、资源分配等,开展系统的总体方案、开发顺序、资源分配等,开展系

24、统规划的可行性研究。系统规划的可行性研究。系统规划的可行性研究。系统规划的可行性研究。l目的目的目的目的:避免:避免:避免:避免盲目盲目盲目盲目开发系统,减少不必要的损失。开发系统,减少不必要的损失。开发系统,减少不必要的损失。开发系统,减少不必要的损失。l方法方法方法方法:企业系统规划方法(:企业系统规划方法(:企业系统规划方法(:企业系统规划方法(BSPBSPBSPBSP),关键成功因素),关键成功因素),关键成功因素),关键成功因素法(法(法(法(CSFCSFCSFCSF)等。)等。)等。)等。 l产出产出产出产出:系统规划报告:系统规划报告:系统规划报告:系统规划报告 (2 2)系统分

25、析阶段)系统分析阶段l任务任务任务任务:建立新系统的:建立新系统的:建立新系统的:建立新系统的逻辑模型,逻辑模型,逻辑模型,逻辑模型,解决系统解决系统解决系统解决系统“ “做什做什做什做什么么么么” ”的问题。的问题。的问题。的问题。l对企业进行对企业进行对企业进行对企业进行详细调查详细调查详细调查详细调查,了解用户的需求、业务,了解用户的需求、业务,了解用户的需求、业务,了解用户的需求、业务流程,以及信息的输入、处理、存储和输出;流程,以及信息的输入、处理、存储和输出;流程,以及信息的输入、处理、存储和输出;流程,以及信息的输入、处理、存储和输出;l进行组织结构分析;管理业务流程分析、数据进

26、行组织结构分析;管理业务流程分析、数据进行组织结构分析;管理业务流程分析、数据进行组织结构分析;管理业务流程分析、数据与数据流程分析;与数据流程分析;与数据流程分析;与数据流程分析;l优化优化优化优化l建立新系统的逻辑模型;建立新系统的逻辑模型;建立新系统的逻辑模型;建立新系统的逻辑模型;l产出产出产出产出:系统分析报告系统分析报告系统分析报告系统分析报告。系统分析阶段系统分析阶段l l注意注意注意注意:系统开发人员与用户的密切配合至关重要,缺乏用户:系统开发人员与用户的密切配合至关重要,缺乏用户:系统开发人员与用户的密切配合至关重要,缺乏用户:系统开发人员与用户的密切配合至关重要,缺乏用户的

27、参与和支持,系统的开发难以取得成功。的参与和支持,系统的开发难以取得成功。的参与和支持,系统的开发难以取得成功。的参与和支持,系统的开发难以取得成功。 l l系统开发人员系统开发人员系统开发人员系统开发人员:拥有开发技术,知道如何用信息技术实现用:拥有开发技术,知道如何用信息技术实现用:拥有开发技术,知道如何用信息技术实现用:拥有开发技术,知道如何用信息技术实现用户的需求,但是他们很难把握和深切体会特定用户对信息系户的需求,但是他们很难把握和深切体会特定用户对信息系户的需求,但是他们很难把握和深切体会特定用户对信息系户的需求,但是他们很难把握和深切体会特定用户对信息系统的具体要求。统的具体要求

28、。统的具体要求。统的具体要求。l l用户用户用户用户:对信息技术的了解有限,不知道计算机解决问题的具:对信息技术的了解有限,不知道计算机解决问题的具:对信息技术的了解有限,不知道计算机解决问题的具:对信息技术的了解有限,不知道计算机解决问题的具体过程,面对他们所需要解决的问题,通常不能用规范的、体过程,面对他们所需要解决的问题,通常不能用规范的、体过程,面对他们所需要解决的问题,通常不能用规范的、体过程,面对他们所需要解决的问题,通常不能用规范的、专业的语言将需求完整地、准确地表达。专业的语言将需求完整地、准确地表达。专业的语言将需求完整地、准确地表达。专业的语言将需求完整地、准确地表达。(3

29、 3)系统设计阶段)系统设计阶段l任务:任务:任务:任务:设计系统的设计系统的设计系统的设计系统的物理模型,物理模型,物理模型,物理模型,解决系统解决系统解决系统解决系统“ “如何做如何做如何做如何做” ”的问题。在系统分析的基础上,以系统分析报告为的问题。在系统分析的基础上,以系统分析报告为的问题。在系统分析的基础上,以系统分析报告为的问题。在系统分析的基础上,以系统分析报告为依据,说明如何从软硬件技术的角度来设计系统,依据,说明如何从软硬件技术的角度来设计系统,依据,说明如何从软硬件技术的角度来设计系统,依据,说明如何从软硬件技术的角度来设计系统,以实现系统目标。以实现系统目标。以实现系统

30、目标。以实现系统目标。l总体设计总体设计总体设计总体设计:设计系统的功能模块结构图,确定合适:设计系统的功能模块结构图,确定合适:设计系统的功能模块结构图,确定合适:设计系统的功能模块结构图,确定合适的计算机处理方式和计算机总体结构及系统配置;的计算机处理方式和计算机总体结构及系统配置;的计算机处理方式和计算机总体结构及系统配置;的计算机处理方式和计算机总体结构及系统配置;l详细设计详细设计详细设计详细设计:代码设计、数据库设计、:代码设计、数据库设计、:代码设计、数据库设计、:代码设计、数据库设计、I/OI/OI/OI/O设计、对话设计、对话设计、对话设计、对话设计、处理流程设计等;设计、处

31、理流程设计等;设计、处理流程设计等;设计、处理流程设计等;l产出产出产出产出:系统设计报告系统设计报告系统设计报告系统设计报告。(4 4)系统实施阶段)系统实施阶段l l 任务:任务:任务:任务:依据系统设计报告,将新系统的设计方案变成依据系统设计报告,将新系统的设计方案变成依据系统设计报告,将新系统的设计方案变成依据系统设计报告,将新系统的设计方案变成可运行可运行可运行可运行的计算机模型的计算机模型的计算机模型的计算机模型。l l硬件的购置及安装;硬件的购置及安装;硬件的购置及安装;硬件的购置及安装;l l系统软件的购置及安装调试;系统软件的购置及安装调试;系统软件的购置及安装调试;系统软件

32、的购置及安装调试;l l程序设计、调试与优化;程序设计、调试与优化;程序设计、调试与优化;程序设计、调试与优化;l l人员培训;人员培训;人员培训;人员培训;l l数据准备与录入;数据准备与录入;数据准备与录入;数据准备与录入;l l新旧系统的切换。新旧系统的切换。新旧系统的切换。新旧系统的切换。l l产出产出产出产出:软件、用户手册等:软件、用户手册等:软件、用户手册等:软件、用户手册等(5 5)系统运行、维护与评价阶段)系统运行、维护与评价阶段 系统维护:系统维护:系统维护:系统维护:对系统进行维护,使其能正常运对系统进行维护,使其能正常运对系统进行维护,使其能正常运对系统进行维护,使其能

33、正常运行。行。行。行。 系统评价:系统评价:系统评价:系统评价:当系统运行一段时间后,组织评当系统运行一段时间后,组织评当系统运行一段时间后,组织评当系统运行一段时间后,组织评价组对新系统进行评价,目的在于价组对新系统进行评价,目的在于价组对新系统进行评价,目的在于价组对新系统进行评价,目的在于发现问题发现问题发现问题发现问题,总结,总结,总结,总结经验,为今后系统的改进提供资料。经验,为今后系统的改进提供资料。经验,为今后系统的改进提供资料。经验,为今后系统的改进提供资料。开发原理开发原理结构化开发结构化开发l l用户的积极参与用户的积极参与用户的积极参与用户的积极参与:用户积极参与信息系统

34、的开发的全过程,:用户积极参与信息系统的开发的全过程,:用户积极参与信息系统的开发的全过程,:用户积极参与信息系统的开发的全过程,是信息系统开发能否成功的一个关键的、绝对必要的因素。是信息系统开发能否成功的一个关键的、绝对必要的因素。是信息系统开发能否成功的一个关键的、绝对必要的因素。是信息系统开发能否成功的一个关键的、绝对必要的因素。 l l严格按划分的阶段:严格按划分的阶段:严格按划分的阶段:严格按划分的阶段:运用系统处理方法,将系统开发的全运用系统处理方法,将系统开发的全运用系统处理方法,将系统开发的全运用系统处理方法,将系统开发的全过程采取过程采取过程采取过程采取“ “分而治之分而治之

35、分而治之分而治之” ”的策略,将整个系统的开发过程分的策略,将整个系统的开发过程分的策略,将整个系统的开发过程分的策略,将整个系统的开发过程分为一系列为一系列为一系列为一系列“ “阶段(阶段(阶段(阶段(PhasesPhasesPhasesPhases)” ”,然后再将阶段分为一系列,然后再将阶段分为一系列,然后再将阶段分为一系列,然后再将阶段分为一系列的的的的“ “活动活动活动活动” ”,将活动划分为更小的、更易于管理和控制的,将活动划分为更小的、更易于管理和控制的,将活动划分为更小的、更易于管理和控制的,将活动划分为更小的、更易于管理和控制的“ “作业作业作业作业” ”。 开发原理开发原理

36、结构化开发结构化开发l l设立检查点:设立检查点:设立检查点:设立检查点:在系统开发的每一个阶段均设立检查点,来在系统开发的每一个阶段均设立检查点,来在系统开发的每一个阶段均设立检查点,来在系统开发的每一个阶段均设立检查点,来评估所开发系统的可行性,避免由于系统开发的失败造成评估所开发系统的可行性,避免由于系统开发的失败造成评估所开发系统的可行性,避免由于系统开发的失败造成评估所开发系统的可行性,避免由于系统开发的失败造成更大的损失。更大的损失。更大的损失。更大的损失。l l各阶段成果描述文档的标准化各阶段成果描述文档的标准化各阶段成果描述文档的标准化各阶段成果描述文档的标准化:每一阶段的成果

37、,必须用:每一阶段的成果,必须用:每一阶段的成果,必须用:每一阶段的成果,必须用明确的文字和标准化的图形、图表,完整、准确地进行描明确的文字和标准化的图形、图表,完整、准确地进行描明确的文字和标准化的图形、图表,完整、准确地进行描明确的文字和标准化的图形、图表,完整、准确地进行描述,这不仅是一个阶段工作完成的标志和管理决策的依据,述,这不仅是一个阶段工作完成的标志和管理决策的依据,述,这不仅是一个阶段工作完成的标志和管理决策的依据,述,这不仅是一个阶段工作完成的标志和管理决策的依据,并且是系统建设必须的文件积累,很多文件还是下一阶段并且是系统建设必须的文件积累,很多文件还是下一阶段并且是系统建

38、设必须的文件积累,很多文件还是下一阶段并且是系统建设必须的文件积累,很多文件还是下一阶段工作的主要依据。工作的主要依据。工作的主要依据。工作的主要依据。结构化系统开发方法的优点结构化系统开发方法的优点(1 1 1 1)建立面向用户的观点。)建立面向用户的观点。)建立面向用户的观点。)建立面向用户的观点。(2 2 2 2)设计方法结构化。)设计方法结构化。)设计方法结构化。)设计方法结构化。(3 3 3 3)质量保证措施完备。)质量保证措施完备。)质量保证措施完备。)质量保证措施完备。(4 4 4 4)文档标准化。)文档标准化。)文档标准化。)文档标准化。结构化系统开发方法的缺点结构化系统开发方

39、法的缺点l不能充分预料可能发生的情况及变化:不能充分预料可能发生的情况及变化:不能充分预料可能发生的情况及变化:不能充分预料可能发生的情况及变化:预先定义需预先定义需预先定义需预先定义需求、开发周期长、不能变更前一阶段的工作成果。求、开发周期长、不能变更前一阶段的工作成果。求、开发周期长、不能变更前一阶段的工作成果。求、开发周期长、不能变更前一阶段的工作成果。l开发周期长:开发周期长:开发周期长:开发周期长:严格的阶段划分和文档要求。严格的阶段划分和文档要求。严格的阶段划分和文档要求。严格的阶段划分和文档要求。l不直观,用户最后才能看到真实模型不直观,用户最后才能看到真实模型不直观,用户最后才

40、能看到真实模型不直观,用户最后才能看到真实模型。在系统实施。在系统实施。在系统实施。在系统实施阶段之前,用户由于长时间看不到实际的系统,会阶段之前,用户由于长时间看不到实际的系统,会阶段之前,用户由于长时间看不到实际的系统,会阶段之前,用户由于长时间看不到实际的系统,会感到疑惑,开发热情减退,使开发人员和用户交流感到疑惑,开发热情减退,使开发人员和用户交流感到疑惑,开发热情减退,使开发人员和用户交流感到疑惑,开发热情减退,使开发人员和用户交流产生影响。产生影响。产生影响。产生影响。结构化系统开发方法适用结构化系统开发方法适用 该方法适用于一些该方法适用于一些该方法适用于一些该方法适用于一些组织

41、相对稳定、业务处理组织相对稳定、业务处理组织相对稳定、业务处理组织相对稳定、业务处理过程规范、需求明确过程规范、需求明确过程规范、需求明确过程规范、需求明确且在一定时期内不会发生大的且在一定时期内不会发生大的且在一定时期内不会发生大的且在一定时期内不会发生大的变化的变化的变化的变化的大型复杂系统大型复杂系统大型复杂系统大型复杂系统的开发。的开发。的开发。的开发。 结构化系统开发方法的评价结构化系统开发方法的评价 尽管结构化方法存在缺点,但其尽管结构化方法存在缺点,但其尽管结构化方法存在缺点,但其尽管结构化方法存在缺点,但其严密的理论严密的理论严密的理论严密的理论基础基础基础基础和和和和系统工程

42、方法系统工程方法系统工程方法系统工程方法仍是系统开发中不可缺少的,仍是系统开发中不可缺少的,仍是系统开发中不可缺少的,仍是系统开发中不可缺少的,对于对于对于对于复杂系统复杂系统复杂系统复杂系统的开发往往必须采用结构化的方法。的开发往往必须采用结构化的方法。的开发往往必须采用结构化的方法。的开发往往必须采用结构化的方法。 目前,结构化方法仍是一种被目前,结构化方法仍是一种被目前,结构化方法仍是一种被目前,结构化方法仍是一种被广泛使用广泛使用广泛使用广泛使用的系的系的系的系统开发方法,而且随着大量开发工具的引入,系统统开发方法,而且随着大量开发工具的引入,系统统开发方法,而且随着大量开发工具的引入

43、,系统统开发方法,而且随着大量开发工具的引入,系统开发的工作效率得到了很大的提高。结构化方法还开发的工作效率得到了很大的提高。结构化方法还开发的工作效率得到了很大的提高。结构化方法还开发的工作效率得到了很大的提高。结构化方法还可可可可与其他开发方法结合使用与其他开发方法结合使用与其他开发方法结合使用与其他开发方法结合使用,在结合使用中不同的,在结合使用中不同的,在结合使用中不同的,在结合使用中不同的开发方法互相取长补短,系统开发的效果更好。开发方法互相取长补短,系统开发的效果更好。开发方法互相取长补短,系统开发的效果更好。开发方法互相取长补短,系统开发的效果更好。开发流程开发流程结构化结构化序

44、序序序号号号号开发阶段开发阶段开发阶段开发阶段基本任务基本任务基本任务基本任务完成者完成者完成者完成者文档文档文档文档1 1系统规划系统规划初步调查初步调查系统可行性研究系统可行性研究制定开发计划制定开发计划用户用户系统分析员系统分析员可行性研究报告可行性研究报告项目开发计划项目开发计划2 2系统分析系统分析详细调查详细调查分析用户环境分析用户环境, ,需求需求, ,流程流程, ,数据数据结构结构确定系统目标与功能确定系统目标与功能开发订报系统的逻辑模型开发订报系统的逻辑模型系统分析员系统分析员系统分析报告系统分析报告软件需求说明软件需求说明3 3系统设计系统设计总体设计总体设计( (模块设计

45、、硬件配置模块设计、硬件配置设计设计) )详细设计(代码设计、数据库详细设计(代码设计、数据库设计、输入设计、输入/ /出设计)出设计)系统分析员系统分析员系统设计员系统设计员测试计划测试计划概要设计说明概要设计说明详细设计说明详细设计说明数据库设计数据库设计4 4系统实施系统实施完成程序编制完成程序编制模块测试、联调、系统测试模块测试、联调、系统测试分析员,分析员,设计员,设计员,程序员,程序员,用户用户源程序清单源程序清单测试报告测试报告用户手册用户手册5 5系统运行系统运行和维护和维护移交运行移交运行硬件硬件/ /软件维护软件维护系统评价系统评价用户用户运行手册运行手册维护手册维护手册系

46、统运行和维护系统运行和维护系统运行和维护系统运行和维护系统规划系统规划系统规划系统规划系统设计系统设计系统设计系统设计系统实施系统实施系统实施系统实施系统分析系统分析系统分析系统分析开发开发设计设计初步初步 调查调查 可行性可行性研究研究审批审批系统系统 评价评价 系统系统 维护维护总体总体设计设计详细详细设计设计审查审查审查审查编程编程调试调试系统系统 转换转换 验收验收详细详细调查调查逻辑逻辑 设计设计 二、原型法二、原型法 背景背景背景背景:20202020世纪世纪世纪世纪80808080年代,信息技术迅速发展,年代,信息技术迅速发展,年代,信息技术迅速发展,年代,信息技术迅速发展,使得

47、使得使得使得MISMISMISMIS更新的速度越来越快,企业要求更新的速度越来越快,企业要求更新的速度越来越快,企业要求更新的速度越来越快,企业要求MISMISMISMIS开发的开发的开发的开发的速度要快、成本要低速度要快、成本要低速度要快、成本要低速度要快、成本要低,使得结构化方法的缺陷日益,使得结构化方法的缺陷日益,使得结构化方法的缺陷日益,使得结构化方法的缺陷日益突出。突出。突出。突出。 结构化最大结构化最大结构化最大结构化最大缺陷缺陷缺陷缺陷:要求系统开发人员和用户:要求系统开发人员和用户:要求系统开发人员和用户:要求系统开发人员和用户在系统开发初期对整个系统的功能就要有全面、深在系统

48、开发初期对整个系统的功能就要有全面、深在系统开发初期对整个系统的功能就要有全面、深在系统开发初期对整个系统的功能就要有全面、深刻的认识,并制定出每一阶段的计划和说明书。事刻的认识,并制定出每一阶段的计划和说明书。事刻的认识,并制定出每一阶段的计划和说明书。事刻的认识,并制定出每一阶段的计划和说明书。事实上,实上,实上,实上,用户的需求是随着对系统理解的加深不断地用户的需求是随着对系统理解的加深不断地用户的需求是随着对系统理解的加深不断地用户的需求是随着对系统理解的加深不断地完善与变化完善与变化完善与变化完善与变化,用户想在项目开发初期就非常清楚地,用户想在项目开发初期就非常清楚地,用户想在项目

49、开发初期就非常清楚地,用户想在项目开发初期就非常清楚地陈述需求几乎是不可能的。陈述需求几乎是不可能的。陈述需求几乎是不可能的。陈述需求几乎是不可能的。(一)原型法的基本概念(一)原型法的基本概念 原型(原型(原型(原型(PrototypePrototypePrototypePrototype):):):):一个结构简单但已经具一个结构简单但已经具一个结构简单但已经具一个结构简单但已经具备系统基本功能的应用软件,也就是软件的一个备系统基本功能的应用软件,也就是软件的一个备系统基本功能的应用软件,也就是软件的一个备系统基本功能的应用软件,也就是软件的一个可可可可运行运行运行运行的早期版本。的早期版

50、本。的早期版本。的早期版本。 基本思想:基本思想:基本思想:基本思想:系统开发人员在初步了解用户基系统开发人员在初步了解用户基系统开发人员在初步了解用户基系统开发人员在初步了解用户基本需求的基础上,借助功能强大的辅助系统开发本需求的基础上,借助功能强大的辅助系统开发本需求的基础上,借助功能强大的辅助系统开发本需求的基础上,借助功能强大的辅助系统开发工工工工具具具具,快速开发一个原型,快速开发一个原型,快速开发一个原型,快速开发一个原型,使用户尽早看到未来系统使用户尽早看到未来系统使用户尽早看到未来系统使用户尽早看到未来系统的概貌的概貌的概貌的概貌;在原型的实际运行中与用户一起发现问题,;在原型

51、的实际运行中与用户一起发现问题,;在原型的实际运行中与用户一起发现问题,;在原型的实际运行中与用户一起发现问题,提出修改意见;如此反复,逐步完善,直到用户完提出修改意见;如此反复,逐步完善,直到用户完提出修改意见;如此反复,逐步完善,直到用户完提出修改意见;如此反复,逐步完善,直到用户完全满意为止。全满意为止。全满意为止。全满意为止。(二)原型法与结构化生命周期法的不同(二)原型法与结构化生命周期法的不同 原型法不区分系统开发的各个阶段,而是同原型法不区分系统开发的各个阶段,而是同原型法不区分系统开发的各个阶段,而是同原型法不区分系统开发的各个阶段,而是同时完成各个阶段的活动,并快速反馈给用户

52、,通过时完成各个阶段的活动,并快速反馈给用户,通过时完成各个阶段的活动,并快速反馈给用户,通过时完成各个阶段的活动,并快速反馈给用户,通过反复迭代反复迭代反复迭代反复迭代,完成系统的开发过程。,完成系统的开发过程。,完成系统的开发过程。,完成系统的开发过程。 原型法把原型法把原型法把原型法把试验机制试验机制试验机制试验机制引入系统的开发过程,从引入系统的开发过程,从引入系统的开发过程,从引入系统的开发过程,从本质上避开了结构化方法的需求定义阶段,使得本质上避开了结构化方法的需求定义阶段,使得本质上避开了结构化方法的需求定义阶段,使得本质上避开了结构化方法的需求定义阶段,使得用用用用户的需求在反

53、复迭代的开发过程中不断地明确户的需求在反复迭代的开发过程中不断地明确户的需求在反复迭代的开发过程中不断地明确户的需求在反复迭代的开发过程中不断地明确,不,不,不,不断地在原型中对这些需求进行补充和细化,成为用断地在原型中对这些需求进行补充和细化,成为用断地在原型中对这些需求进行补充和细化,成为用断地在原型中对这些需求进行补充和细化,成为用户满意的系统。户满意的系统。户满意的系统。户满意的系统。(三)原型法的开发过程(三)原型法的开发过程可行性研究可行性研究确定用户的基本需求确定用户的基本需求构造构造/修改系统初始原型修改系统初始原型用户和开发人员用户和开发人员一同评审一同评审开发人员开发人员修

54、改原始模型修改原始模型用户满意?用户满意?最终产品最终产品作为初步设计参考文档作为初步设计参考文档否否否否是是是是在计算机上在计算机上初步实现的初步实现的信息系统信息系统1)1)确定用户的基本需求确定用户的基本需求 在这个阶段中,系统开发人员首先进行详细在这个阶段中,系统开发人员首先进行详细在这个阶段中,系统开发人员首先进行详细在这个阶段中,系统开发人员首先进行详细的系统调查,的系统调查,的系统调查,的系统调查,识别出新系统的基本需求识别出新系统的基本需求识别出新系统的基本需求识别出新系统的基本需求,如系统功,如系统功,如系统功,如系统功能、人机界面、输入输出、运行环境、性能及安全能、人机界面

55、、输入输出、运行环境、性能及安全能、人机界面、输入输出、运行环境、性能及安全能、人机界面、输入输出、运行环境、性能及安全可靠性。可靠性。可靠性。可靠性。 要求用户一次提供完整的需求几乎是不可能要求用户一次提供完整的需求几乎是不可能要求用户一次提供完整的需求几乎是不可能要求用户一次提供完整的需求几乎是不可能的,但是要用户快速的,但是要用户快速的,但是要用户快速的,但是要用户快速确定关键要求确定关键要求确定关键要求确定关键要求是可能的。是可能的。是可能的。是可能的。2)2)征求用户对原型的改进意见征求用户对原型的改进意见 让用户亲自使用原型,会很快发现原型存在让用户亲自使用原型,会很快发现原型存在

56、让用户亲自使用原型,会很快发现原型存在让用户亲自使用原型,会很快发现原型存在的缺点和不足,提出改进的意见;的缺点和不足,提出改进的意见;的缺点和不足,提出改进的意见;的缺点和不足,提出改进的意见; 同时在系统的启发下,还可能提出新的需求。同时在系统的启发下,还可能提出新的需求。同时在系统的启发下,还可能提出新的需求。同时在系统的启发下,还可能提出新的需求。(四)原型法的优点与缺陷(四)原型法的优点与缺陷 主要优点:主要优点:主要优点:主要优点:(1 1 1 1)减少开发时间,提高系统开发效率。)减少开发时间,提高系统开发效率。)减少开发时间,提高系统开发效率。)减少开发时间,提高系统开发效率。

57、 原型法减少了大量制作文档的时间,减少了用原型法减少了大量制作文档的时间,减少了用原型法减少了大量制作文档的时间,减少了用原型法减少了大量制作文档的时间,减少了用户培训时间,开发周期短,费用相对少。户培训时间,开发周期短,费用相对少。户培训时间,开发周期短,费用相对少。户培训时间,开发周期短,费用相对少。(2 2 2 2)改进用户与系统开发人员的信息交流方式。)改进用户与系统开发人员的信息交流方式。)改进用户与系统开发人员的信息交流方式。)改进用户与系统开发人员的信息交流方式。 原型法将原型提供给用户,使用户在参与中直原型法将原型提供给用户,使用户在参与中直原型法将原型提供给用户,使用户在参与

58、中直原型法将原型提供给用户,使用户在参与中直接发现问题,及时得到用户的反馈。接发现问题,及时得到用户的反馈。接发现问题,及时得到用户的反馈。接发现问题,及时得到用户的反馈。(3 3 3 3)用户满意程度高。)用户满意程度高。)用户满意程度高。)用户满意程度高。(4 4 4 4)应变能力强。)应变能力强。)应变能力强。)应变能力强。(四)原型法的优点与缺陷(四)原型法的优点与缺陷 主要缺点:主要缺点:主要缺点:主要缺点:(1 1 1 1)开发工具要求高。)开发工具要求高。)开发工具要求高。)开发工具要求高。(2 2 2 2)不适用于开发大型、复杂系统。)不适用于开发大型、复杂系统。)不适用于开发

59、大型、复杂系统。)不适用于开发大型、复杂系统。 大型的、复杂的系统,功能多、技术复杂,大型的、复杂的系统,功能多、技术复杂,大型的、复杂的系统,功能多、技术复杂,大型的、复杂的系统,功能多、技术复杂,设计人员很难理解透彻,最初快速设计的原型就要设计人员很难理解透彻,最初快速设计的原型就要设计人员很难理解透彻,最初快速设计的原型就要设计人员很难理解透彻,最初快速设计的原型就要反复迭代,迭代的次数多了,周期就会变长,成本反复迭代,迭代的次数多了,周期就会变长,成本反复迭代,迭代的次数多了,周期就会变长,成本反复迭代,迭代的次数多了,周期就会变长,成本就会提高,失去了原型法原有的优势。就会提高,失去

60、了原型法原有的优势。就会提高,失去了原型法原有的优势。就会提高,失去了原型法原有的优势。(3 3 3 3)对用户的管理水平要求高。)对用户的管理水平要求高。)对用户的管理水平要求高。)对用户的管理水平要求高。(五)原型法的适用范围(五)原型法的适用范围l适用:用户需求不清,管理及业务处理不稳定,需适用:用户需求不清,管理及业务处理不稳定,需适用:用户需求不清,管理及业务处理不稳定,需适用:用户需求不清,管理及业务处理不稳定,需求常常变化,规模小,不太复杂,而且不要求集中求常常变化,规模小,不太复杂,而且不要求集中求常常变化,规模小,不太复杂,而且不要求集中求常常变化,规模小,不太复杂,而且不要

61、求集中处理的系统。处理的系统。处理的系统。处理的系统。l不适用:开发大型不适用:开发大型不适用:开发大型不适用:开发大型MISMISMISMIS。(六)原型法中快速制作原型的方法(六)原型法中快速制作原型的方法l制作出用于演示的系统制作出用于演示的系统l制作出只具备部分功能的系统制作出只具备部分功能的系统l制作一个功能较全的缩微系统制作一个功能较全的缩微系统三、面向对象法三、面向对象法 2020世纪世纪9090年代,面向对象(年代,面向对象(Object-Oriented,OO)的技术和程序设计语言取得)的技术和程序设计语言取得了巨大的成功,成为计算机领域中开发软件了巨大的成功,成为计算机领域

62、中开发软件的主流技术。的主流技术。 基本思想基本思想:客观世界是由各种各样的客观世界是由各种各样的对象对象组成的,每种对象都有各自的组成的,每种对象都有各自的内部状态内部状态和运动规律和运动规律,不同对象之间的相互作用和联,不同对象之间的相互作用和联系就构成了各种不同的系统。系就构成了各种不同的系统。面向对象的基本概念面向对象的基本概念l l对象对象对象对象:是一封闭体,由一组数据和施加于这些数据上的一组:是一封闭体,由一组数据和施加于这些数据上的一组:是一封闭体,由一组数据和施加于这些数据上的一组:是一封闭体,由一组数据和施加于这些数据上的一组操作构成(数据操作构成(数据操作构成(数据操作构

63、成(数据+ + + +操作)操作)操作)操作)l l类类类类:具有相同属性的对象的集合。:具有相同属性的对象的集合。:具有相同属性的对象的集合。:具有相同属性的对象的集合。l l消息消息消息消息:为完成某些操作而向其他对象发送的命令和命令说明。:为完成某些操作而向其他对象发送的命令和命令说明。:为完成某些操作而向其他对象发送的命令和命令说明。:为完成某些操作而向其他对象发送的命令和命令说明。对象之间的相互操作、调用和应答是通过彼此之间发送消息对象之间的相互操作、调用和应答是通过彼此之间发送消息对象之间的相互操作、调用和应答是通过彼此之间发送消息对象之间的相互操作、调用和应答是通过彼此之间发送消

64、息实现的。实现的。实现的。实现的。l l继承继承继承继承:子类继承父类所定义的属性、操作,并可增加自己新:子类继承父类所定义的属性、操作,并可增加自己新:子类继承父类所定义的属性、操作,并可增加自己新:子类继承父类所定义的属性、操作,并可增加自己新的内容。的内容。的内容。的内容。l l封装封装封装封装:信息隐藏,把对象的属性及对象的方法、操作的实现:信息隐藏,把对象的属性及对象的方法、操作的实现:信息隐藏,把对象的属性及对象的方法、操作的实现:信息隐藏,把对象的属性及对象的方法、操作的实现封闭在一起,使对象的使用者只能看到封装界面上的信息,封闭在一起,使对象的使用者只能看到封装界面上的信息,封

65、闭在一起,使对象的使用者只能看到封装界面上的信息,封闭在一起,使对象的使用者只能看到封装界面上的信息,对象的内部是隐藏的。对象的内部是隐藏的。对象的内部是隐藏的。对象的内部是隐藏的。订阅订阅订阅编号订阅编号订阅信息订阅信息订阅者编号订阅者编号订阅邮局编号订阅邮局编号识别订阅要求识别订阅要求报告订阅者情况报告订阅者情况终止订阅终止订阅识别订阅者信息识别订阅者信息识别地址信息识别地址信息报告地址变化报告地址变化订阅者编号订阅者编号订阅者姓名订阅者姓名地址编号地址编号订阅者订阅者对象名对象名属性属性方法方法消息传递消息传递(一)面向对象法的基本思想(一)面向对象法的基本思想对象是世界中的物体在人脑中

66、的映像,是人类最对象是世界中的物体在人脑中的映像,是人类最对象是世界中的物体在人脑中的映像,是人类最对象是世界中的物体在人脑中的映像,是人类最朴素的认知世界的思维方式,任何事物都可以看成朴素的认知世界的思维方式,任何事物都可以看成朴素的认知世界的思维方式,任何事物都可以看成朴素的认知世界的思维方式,任何事物都可以看成对象。即客观世界是由各种各样的对象。即客观世界是由各种各样的对象。即客观世界是由各种各样的对象。即客观世界是由各种各样的对象对象对象对象组成的。组成的。组成的。组成的。从对象出发去认识客观世界,分析问题域,如实从对象出发去认识客观世界,分析问题域,如实从对象出发去认识客观世界,分析

67、问题域,如实从对象出发去认识客观世界,分析问题域,如实的描述问题域中事物之间存在的各种关系。的描述问题域中事物之间存在的各种关系。的描述问题域中事物之间存在的各种关系。的描述问题域中事物之间存在的各种关系。每个对象都有各自的内部状态和运动规律,不同每个对象都有各自的内部状态和运动规律,不同每个对象都有各自的内部状态和运动规律,不同每个对象都有各自的内部状态和运动规律,不同对象之间的相互作用和联系就构成了各种不同的系对象之间的相互作用和联系就构成了各种不同的系对象之间的相互作用和联系就构成了各种不同的系对象之间的相互作用和联系就构成了各种不同的系统。统。统。统。(二)面向对象法的要点(二)面向对

68、象法的要点l客观事物是由对象组合而成的,对象是在原事物客观事物是由对象组合而成的,对象是在原事物客观事物是由对象组合而成的,对象是在原事物客观事物是由对象组合而成的,对象是在原事物基础上抽象的结果。基础上抽象的结果。基础上抽象的结果。基础上抽象的结果。l对象是由属性和操作方法组成的。对象是由属性和操作方法组成的。对象是由属性和操作方法组成的。对象是由属性和操作方法组成的。l对象之间的联系通过传递消息来实现。对象之间的联系通过传递消息来实现。对象之间的联系通过传递消息来实现。对象之间的联系通过传递消息来实现。l对象可以按其属性归类,子类可以继承父类的特对象可以按其属性归类,子类可以继承父类的特对

69、象可以按其属性归类,子类可以继承父类的特对象可以按其属性归类,子类可以继承父类的特性。性。性。性。l对象具有封装性,一个对象就构成一个严格模块对象具有封装性,一个对象就构成一个严格模块对象具有封装性,一个对象就构成一个严格模块对象具有封装性,一个对象就构成一个严格模块化的实体,在系统开发中可被共享和重复引用,化的实体,在系统开发中可被共享和重复引用,化的实体,在系统开发中可被共享和重复引用,化的实体,在系统开发中可被共享和重复引用,达到软件重用的目的。达到软件重用的目的。达到软件重用的目的。达到软件重用的目的。(三)面向对象法的开发过程(三)面向对象法的开发过程1.1.1.1.系统系统系统系统

70、调查和需求分析调查和需求分析调查和需求分析调查和需求分析2.2.2.2.面向对象分析(面向对象分析(面向对象分析(面向对象分析(OOAOOAOOAOOA)3.3.3.3.面向对象设计(面向对象设计(面向对象设计(面向对象设计(OODOODOODOOD)4.4.4.4.面向对象程序设计(面向对象程序设计(面向对象程序设计(面向对象程序设计(OOPOOPOOPOOP)(四)面向对象法的优劣势(四)面向对象法的优劣势 优势:优势:优势:优势:l符合人类的思维习惯符合人类的思维习惯符合人类的思维习惯符合人类的思维习惯l有利于用户与开发人员的沟通有利于用户与开发人员的沟通有利于用户与开发人员的沟通有利于

71、用户与开发人员的沟通l缩短开发周期,提高系统开发的正确性和效率。缩短开发周期,提高系统开发的正确性和效率。缩短开发周期,提高系统开发的正确性和效率。缩短开发周期,提高系统开发的正确性和效率。l封装、继承、多态性等特征提高了软件的一致性、封装、继承、多态性等特征提高了软件的一致性、封装、继承、多态性等特征提高了软件的一致性、封装、继承、多态性等特征提高了软件的一致性、独立性和可重用性。独立性和可重用性。独立性和可重用性。独立性和可重用性。面向对象法的优劣势面向对象法的优劣势劣势:劣势:劣势:劣势:l l需要有一定的软件基础支持才可以应用,初学者不易接受、需要有一定的软件基础支持才可以应用,初学者

72、不易接受、需要有一定的软件基础支持才可以应用,初学者不易接受、需要有一定的软件基础支持才可以应用,初学者不易接受、难学。难学。难学。难学。l l客观世界的对象五花八门,在系统分析阶段抽象比较困难。客观世界的对象五花八门,在系统分析阶段抽象比较困难。客观世界的对象五花八门,在系统分析阶段抽象比较困难。客观世界的对象五花八门,在系统分析阶段抽象比较困难。l l大型的大型的大型的大型的MISMISMISMIS开发中如果不经自顶向下的整体划分,而是一开开发中如果不经自顶向下的整体划分,而是一开开发中如果不经自顶向下的整体划分,而是一开开发中如果不经自顶向下的整体划分,而是一开始就自底向上的采用面向对象

73、方法开发系统,同样也会造成始就自底向上的采用面向对象方法开发系统,同样也会造成始就自底向上的采用面向对象方法开发系统,同样也会造成始就自底向上的采用面向对象方法开发系统,同样也会造成系统结构不合理、各部分关系失调系统结构不合理、各部分关系失调系统结构不合理、各部分关系失调系统结构不合理、各部分关系失调等问题。等问题。等问题。等问题。l l因此,因此,因此,因此,面向对象的开发方法与结构化系统开发方法在系统面向对象的开发方法与结构化系统开发方法在系统面向对象的开发方法与结构化系统开发方法在系统面向对象的开发方法与结构化系统开发方法在系统开发中相互依存、不可替代。开发中相互依存、不可替代。开发中相

74、互依存、不可替代。开发中相互依存、不可替代。结构化方法与面向对象方法区别结构化方法与面向对象方法区别 结构化方法结构化方法:视数据和过程为独立的:视数据和过程为独立的实体,不支持软件的可复用性和可维护性。实体,不支持软件的可复用性和可维护性。 面向对象方法面向对象方法:把对象的属性(数据):把对象的属性(数据)和处理(方法)封装在一起,通过子类对和处理(方法)封装在一起,通过子类对父类的继承,使得软件便于维护和扩充,父类的继承,使得软件便于维护和扩充,提高了软件的可复用性。提高了软件的可复用性。 三种三种开发方法开发方法的比较的比较l结构化系统方法的规范化程度比较高结构化系统方法的规范化程度比

75、较高l原型法比较灵活原型法比较灵活l面向对象法的开发质量和经济性比较好面向对象法的开发质量和经济性比较好四、四、CASECASE法法lCASECASE(Computer-Aided Software EngineeringComputer-Aided Software Engineering)计)计)计)计算机辅助软件工程算机辅助软件工程算机辅助软件工程算机辅助软件工程lCASECASE:一种对整个开发过程进行支持的技术,严格:一种对整个开发过程进行支持的技术,严格:一种对整个开发过程进行支持的技术,严格:一种对整个开发过程进行支持的技术,严格说,说,说,说,CASECASE只是一种开发环境而

76、不是一种方法。只是一种开发环境而不是一种方法。只是一种开发环境而不是一种方法。只是一种开发环境而不是一种方法。CASECASE产生背景产生背景l软件开发软件开发软件开发软件开发周期长、效率低周期长、效率低周期长、效率低周期长、效率低,软件产品交付用户使用,软件产品交付用户使用,软件产品交付用户使用,软件产品交付用户使用时,用户的业务环境与需求可能已经发生了很大的时,用户的业务环境与需求可能已经发生了很大的时,用户的业务环境与需求可能已经发生了很大的时,用户的业务环境与需求可能已经发生了很大的变化,变化,变化,变化,“手工作坊手工作坊手工作坊手工作坊”式式式式的软件开发模式难以适应软的软件开发模

77、式难以适应软的软件开发模式难以适应软的软件开发模式难以适应软件工业的发展需求。件工业的发展需求。件工业的发展需求。件工业的发展需求。l软件开发人员逐渐认识到:他们为用户的应用开发软件开发人员逐渐认识到:他们为用户的应用开发软件开发人员逐渐认识到:他们为用户的应用开发软件开发人员逐渐认识到:他们为用户的应用开发出各种各样的软件和信息系统,却没有开发出支持出各种各样的软件和信息系统,却没有开发出支持出各种各样的软件和信息系统,却没有开发出支持出各种各样的软件和信息系统,却没有开发出支持开发人员工作的工具开发人员工作的工具开发人员工作的工具开发人员工作的工具。lCASECASECASECASE技术实

78、现了软件生产由技术实现了软件生产由技术实现了软件生产由技术实现了软件生产由“ “工程化工程化工程化工程化” ”向向向向“ “自动化自动化自动化自动化” ”的转变,显著提高了软件的生产效率。的转变,显著提高了软件的生产效率。的转变,显著提高了软件的生产效率。的转变,显著提高了软件的生产效率。CASECASE工具工具l图形工具图形工具l描述模型描述模型l原型化工具原型化工具l质量管理工具质量管理工具l文档出版工具文档出版工具l设计模型和典型代码生成工具设计模型和典型代码生成工具 提高生产率提高生产率 提高软件质量提高软件质量 提高文档质量提高文档质量 减少系统维护的费用和精力减少系统维护的费用和精

79、力优点优点五五 基于构件的软件开发基于构件的软件开发l基本思想基本思想l 从第三方市场购买、定制构件或者从成熟从第三方市场购买、定制构件或者从成熟的构件库中提取已有构件来解决应用软件的的构件库中提取已有构件来解决应用软件的开发问题开发问题五五 基于构件的软件开发基于构件的软件开发l构件的定义构件的定义l系统中实际存在的可更换部分,它实现特定的系统中实际存在的可更换部分,它实现特定的功能,符合一套接口标准功能,符合一套接口标准 并实现一组接口。并实现一组接口。五五 基于构件的软件开发基于构件的软件开发l领域工程领域工程l领域分析领域分析领域分析领域分析l建立领域特定的基准体系结构模型建立领域特定

80、的基准体系结构模型建立领域特定的基准体系结构模型建立领域特定的基准体系结构模型l标识候选构件标识候选构件标识候选构件标识候选构件l泛化和可变性分析泛化和可变性分析泛化和可变性分析泛化和可变性分析l重建构件重建构件重建构件重建构件l软件的包装软件的包装软件的包装软件的包装l构件入库构件入库构件入库构件入库五五 基于构件的软件开发基于构件的软件开发l应用系统工程应用系统工程l l建立应用系统的体系结构模型建立应用系统的体系结构模型建立应用系统的体系结构模型建立应用系统的体系结构模型l l寻找候选构件寻找候选构件寻找候选构件寻找候选构件l l评价和选择合适的构建评价和选择合适的构建评价和选择合适的构

81、建评价和选择合适的构建l l构件的修改和特化构件的修改和特化构件的修改和特化构件的修改和特化l l开发未被复用的部分开发未被复用的部分开发未被复用的部分开发未被复用的部分l l构件的组装构件的组装构件的组装构件的组装l l集成测试集成测试集成测试集成测试l l评价被复用的构建,并推荐可能的新构件评价被复用的构建,并推荐可能的新构件评价被复用的构建,并推荐可能的新构件评价被复用的构建,并推荐可能的新构件五五 基于构件的软件开发基于构件的软件开发l优势分析优势分析l使大规模的软件生产成为可能使大规模的软件生产成为可能l缩短周期、降低成本、提高效率缩短周期、降低成本、提高效率l提高系统各部分开发的独

82、立性和并行性提高系统各部分开发的独立性和并行性l增强系统健壮性增强系统健壮性l提高灵活性提高灵活性 MIS MIS的开发方法评价的开发方法评价l 从严格意义上看:目前尚无一种方法能够从严格意义上看:目前尚无一种方法能够从严格意义上看:目前尚无一种方法能够从严格意义上看:目前尚无一种方法能够很好地解决系统开发的复杂性。现有的各种方法很好地解决系统开发的复杂性。现有的各种方法很好地解决系统开发的复杂性。现有的各种方法很好地解决系统开发的复杂性。现有的各种方法都有各自的适用范围和优缺点,在实际的系统开都有各自的适用范围和优缺点,在实际的系统开都有各自的适用范围和优缺点,在实际的系统开都有各自的适用范

83、围和优缺点,在实际的系统开发过程中,往往是根据特定环境和条件来选择和发过程中,往往是根据特定环境和条件来选择和发过程中,往往是根据特定环境和条件来选择和发过程中,往往是根据特定环境和条件来选择和综合运用这些方法。综合运用这些方法。综合运用这些方法。综合运用这些方法。第五节第五节 软件工程与项目管理软件工程与项目管理l软件工程产生的背景:软件工程产生的背景:l l20202020世纪世纪世纪世纪60606060年代中期,软件危机年代中期,软件危机年代中期,软件危机年代中期,软件危机l l(1 1 1 1)软件开发费用和进度失控。)软件开发费用和进度失控。)软件开发费用和进度失控。)软件开发费用和

84、进度失控。l l(2 2 2 2)软件的可靠性差。)软件的可靠性差。)软件的可靠性差。)软件的可靠性差。l l(3 3 3 3)生产出来的软件难以维护。)生产出来的软件难以维护。)生产出来的软件难以维护。)生产出来的软件难以维护。l l危机原因:软件项目的规模日益扩大,而规模宏大的软件危机原因:软件项目的规模日益扩大,而规模宏大的软件危机原因:软件项目的规模日益扩大,而规模宏大的软件危机原因:软件项目的规模日益扩大,而规模宏大的软件项目必然需要大量的人来齐心协力地共同参与。项目必然需要大量的人来齐心协力地共同参与。项目必然需要大量的人来齐心协力地共同参与。项目必然需要大量的人来齐心协力地共同参

85、与。l l软件工程概念:软件项目的建设过程和软件工程概念:软件项目的建设过程和软件工程概念:软件项目的建设过程和软件工程概念:软件项目的建设过程和传统工程传统工程传统工程传统工程相似,都相似,都相似,都相似,都要经历设计、实施、验收等节点。要经历设计、实施、验收等节点。要经历设计、实施、验收等节点。要经历设计、实施、验收等节点。(1 1)软件工程的概念)软件工程的概念l软件工程:软件工程:l 用用工程化的方法工程化的方法构建和维护软件的一门新兴构建和维护软件的一门新兴工程学科。工程学科。l研究内容:研究内容:l 软件生产的客观规律软件生产的客观规律,建立与系统化软件,建立与系统化软件生产有关的

86、概念、原则、方法、技术和工具,指生产有关的概念、原则、方法、技术和工具,指导和支持软件系统的生产活动,以达到导和支持软件系统的生产活动,以达到降低软件降低软件生产成本、改进软件产品质量与生产率,生产成本、改进软件产品质量与生产率,最终实最终实现软件的现软件的工业化生产工业化生产。(2 2)软件工程的主要内容)软件工程的主要内容软件工程软件工程软件开发技术软件开发技术软件管理技术软件管理技术软件开发技术软件开发技术软件工具软件工具软件开发环境软件开发环境软件开发管理软件开发管理软件经济管理软件经济管理信息系统建设信息系统建设“80/2080/20”l对于对于IS,业界有两个,业界有两个80/20

87、估计:估计:l一:一:80%的项目都失败了,只有的项目都失败了,只有20%是成功的是成功的l二:二:在那些失败的项目中,在那些失败的项目中,80%的原因是非技术的原因是非技术因素导致的,只有因素导致的,只有20%是由技术因素导致的失败。是由技术因素导致的失败。l非技术因素:非技术因素:l 企业业务流程与组织结构的改造问题、企业企业业务流程与组织结构的改造问题、企业领导的观念问题、企业员工的素质问题、软件管领导的观念问题、企业员工的素质问题、软件管理问题等理问题等whywhy不重视项目管理不重视项目管理l原因:原因:l IT行业平均利润率远远高于传统行业行业平均利润率远远高于传统行业,因此,因此

88、即使内部存在很大的问题,仍能赢利,从而造成即使内部存在很大的问题,仍能赢利,从而造成众多众多IT企业忽视了项目管理的重要性。企业忽视了项目管理的重要性。例例l背景:背景:某知名某知名IT企业的市场部接到一个老客户的企业的市场部接到一个老客户的1亿元人民币的项目。亿元人民币的项目。l承接项目时承接项目时:计算出的理论利润相当高:计算出的理论利润相当高l项目结束后:项目结束后:进行财务结算,发现项目亏损。进行财务结算,发现项目亏损。l追究原因:追究原因:l(1)主要原因:客户多次更改需求,而项目小组)主要原因:客户多次更改需求,而项目小组始终认为还有足够的利润,因而并未对客户提出始终认为还有足够的

89、利润,因而并未对客户提出的变更收取相应的更改费用的变更收取相应的更改费用l(2)客户部花费了大量资金用于维系客户关系。)客户部花费了大量资金用于维系客户关系。思考思考l 这个例子反映出了该企业在项目管理上存在这个例子反映出了该企业在项目管理上存在着严重的问题:着严重的问题:l(1)在项目确定期间,没有明确客户的需求,缺)在项目确定期间,没有明确客户的需求,缺乏规范的项目费用管理,未对项目进行严格的费乏规范的项目费用管理,未对项目进行严格的费用估测、费用预算及费用控制;用估测、费用预算及费用控制;l(2)在项目进行当中,对客户的需求变更没有及)在项目进行当中,对客户的需求变更没有及时作出反应并按相应程序重新计算成本。时作出反应并按相应程序重新计算成本。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号