面向对象的系统开发方法1.ppt_第1页
面向对象的系统开发方法1.ppt_第2页
面向对象的系统开发方法1.ppt_第3页
面向对象的系统开发方法1.ppt_第4页
面向对象的系统开发方法1.ppt_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

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

文档简介

第八章 面向对象的系统 开发方法,现代信息系统体系结构庞大、数据量大,运用传统的系统开发方法及工具已难以满足用户的要求,需有新的方法论来指导系统开发过程。面向对象技术的出现为信息系统开发方法的研究带来了新的希望。,第二章 管理信息系统概论,9.1 面向对象的基本概念,1、标识:即是对象的名称,用来在问题域中区分其他对象。 2、数据:描述对象属性的存储或数据结构,它表明了对象的一个状态。 3、操作:即对象的行为。分为两类:一类是对象自身承受的操作,及操作结果修改了自身原有属性状态;另一类是施加于其他对象的操作,即将产生的输出结果作为消息发送的操作。 4、接口:主要指对外接口,是指对象受理外部消息所指定的操作名称集合。,消息 送回消息,接 口,操作集合,状态集合,状态转换,9.1 面向对象的基本概念,1、模块独立性 2、动态连接性 3、易维护性,模块内部状态不会受外界的干预而变动,也不会干涉其他模块,通过信息的灵活机制,实现对象之间动态连接,从而使整个机体运转起来,对象的功能实现细节被“隐蔽”,好像被一层壳保护在对象内部,9.1 面向对象的基本概念,对象划分的基本原则是:寻求大系统中事物的共性,将所有共同的系统成分确定为一个对象。,9.1 面向对象的基本概念,类定义了一大组大体上相似的对象。 1、标识:类的名称,用以区分其他类 2、继承描述:指子类承袭的父类的名称,以及承袭得到的结构与功能 3、数据结构:是对该类数据的组织结构的描述 4、操作:指该类通用功能的具体实现方法 5、接口:指面向其他类的统一的外部通讯协议,9.1 面向对象的基本概念,9.1 面向对象的基本概念,面向对象的世界是通过对象与对象间彼此的相互合作来推动的,消息是对向之间的通信载体。,1、同一对象可以接收不同形式的多个消息,产生不同响应。 2、一条消息可以发送给不同的对象,消息的解释完全由接收对象完成,不同的对象对相同形式的消息可以有不同的解释。 3、与传统程序的调用不同,对于传来的消息,对象可以返回相应的回答信息,也可以不返回,即消息响应不是必须的。,9.1 面向对象的基本概念,当一个消息发送给某个对象时,包含要求接收对象去执行某些活动的信息,接收到消息的对象经过解释予以响应,对象间的这种相互合作需要一个机制协助进行,这样的机制称为“消息传递”。,9.1 面向对象的基本概念,传送对象,消息,接 口,接收对象,9.1 面向对象的基本概念,对象的消息模式的处理能力即所谓的“方法”(Method),方法是实现消息具体功能的手段,在C+中方法称为成员函数。,9.1 面向对象的基本概念,继承是指一个类(即称子类)因承袭而具有另一个类(或称父类)的能力和特征的机制或关系。继承是一种联结类的层次模型,允许并鼓励类的重用。,9.1 面向对象的基本概念,1、类间具有共享特征(包括数据和程序代码的共享); 2、类间具有细微的差别或新增部分(包括非共享程序代码和数据); 3、类间具有层次结构。,9.1 面向对象的基本概念,数据抽象+数据抽象类型+继承机制,9.1 面向对象的基本概念,9.2 面向对象系统开发方法的原理,反复累增的生命周期,t时间,设计实现,维护,类 库,目标系统,运行,类一,类二,类三,分析,设计,分析设计,分析设计,t时间,(一)问题域陈述 (二)识别对象/类 (三)确定对象的属性 (四)确定对象的服务 (五)确定对象/类的关系,9.2 面向对象系统开发方法的原理,1、对实体对象进行增、并、改,并识别接口对象和控制对象。 2、确定实体对象、接口对象和控制对象之间的各种关系。 3、完善对象类结构图,组织系统的体系结构。,9.2 面向对象系统开发方法的原理,(1)静态联系。 (2)消息联系。,9.2 面向对象系统开发方法的原理,1、问题领域子系统的设计。主要任务是完善对象属性和操作的形式规定,包括限定值、确定复杂服务的算法等等,进一步规范对象形式说明以便对象在物理上实现。 2、人机交互子系统的设计。接口对象在设计初期就已经规定出来,此时主要确定图形用户接口的总体策略。,9.2 面向对象系统开发方法的原理,3、外部接口子系统的设计,主要处理两种情况:一是与现存的非面向对象或面向对象系统的交往,二是与现存的面向对象的(分)系统的集成。 4、数据管理子系统的设计。数据管理子系统是连接问题域子系统与外部数据库管理系统的桥梁。,9.2 面向对象系统开发方法的原理,5、任务管理子系统的设计。在设计多任务并行系统时,才有任务管理问题。譬如,多窗口同时接受输入,在多用户系统中存在的用户任务复本,等等。 6、基础对象子系统的设计。基础对象是实现应用系统所需的基础构造体,如串、数组、队、栈、结构、树等。,9.2 面向对象系统开发方法的原理,面向对象系统设计阶段结束时,系统的体系结构已完善,包括用什么样的用户接口以及数据库存取的管理等方面的战略决策,系统的对象/类结构图和系统对象间动态连接、控制、约束及物理数据存储等亦趋于完善,系统发展将过度到实施阶段。在系统实施阶段主要进行编码语言的选择、面向对象应用程序框架的构建,面向对象应用程序编写等,构件出信息系统的应用软件平台。,9.2 面向对象系统开发方法的原理,作为一种可视化的建模语言,UML为系统开发人员提供了标准的、易于理解的表达方式用于构建系统蓝图,并提供了便于不同的开发人员共享和交流设计结果的有效机制。在UML支持下,系统分析员、客户、程序员和其他系统开发人员能够相互理解,并以一致的方式来组织系统的设计过程。,9.2 面向对象的系统开发工具,面向对象建模语言出现于20世纪70年代中期。到1994年,这些建模语言增加到了50多种。 20世纪90年代中期,Grady Booch、James Runbaugh和Ivar jacabson等三人在原有各自进行的面向对象分析与设计方法学研究的基础上,开始相互借鉴与合作,共同推出了标准建模语言UML。1995年开始,许多公司纷纷支持UML标准,逐渐形成UML联盟。,9.2 面向对象的系统开发工具,UML语义的描述基于UML的精确元模型定义,元模型为UML的所有元素在语法和语义上提供了简单、一致、通用的定义性说明,使开发者能在语义上取得一致,消除因人而异的表达方法所造成的影响。此外,UML还支持对元模型的扩展定义。 定义UML符号的表示法为开发者或开发工具使用这些图形符号和文本语法为系统建模提供了标准。,9.2 面向对象的系统开发工具,类图几乎是所有面向对象开发方法的支柱。 类图示例,9.2 面向对象的系统开发工具,对象(Object)是类的实例,具有具体属性值和行为。例如,某个洗衣机的品牌可能是“海尔”,型号为“XDL500”,序列号为“OL57774”,一次最多洗涤重量为16磅的衣物。UML中,对象图可以看作是类图的一个实例,对象之间的链(Link)是类之间的关联的实例。,9.2 面向对象的系统开发工具,用例(Use Case)这一概念是第二代面向对象技术的标志,是从用户的观点对系统行为或系统使用场景的描述。一个用例是用户与计算机之间的一次典型交互作用。,洗衣服,洗衣机用户,UML用例图图示,9.2 面向对象的系统开发工具,在任何给定的时刻,一个对象总处于某一特定的状态。比如,一部电梯可以处于上升、停止或下降状态。洗衣机可以处于浸泡、洗涤、漂洗、脱水或关机等状态,一个状态图包括一系列的状态以及状态之间的转移。,9.2 面向对象的系统开发工具,对象之间要发生交互,且这些交互要经历一定的时间阶段。时序图所表达的则是这种对象之间的基于时间的动态交互关系,着重体现对象消息传递的时间顺序。时序图存在于两个轴:水平轴表示不同的对象,垂直轴表示时间。图中的对象用一个带有垂直虚线的矩形框表示,并标有对象名和类名。,9.2 面向对象的系统开发工具,UML的时序图图示,洗涤缸,排水管,注水管,注入净水,停止,注入净水,停止,保持静止,旋转洗涤,排污水,旋转洗涤,排污水,旋转甩干,停止,9.2 面向对象的系统开发工具,活动图的应用非常广泛,既可用来描述操作(类的方法)的行为,也可以描述用例和对象内部的工作过程。活动图是由状态图变化而来的,它们各自用于不同的目的。,9.2 面向对象的系统开发工具,UML协作图表达方式为完成系统的工作目标,系统中相互合作的对象间的交互关系和链接关系。虽然时序图和协作图都用来描述对象间的交互关系,但侧重点不一样。时序图着重体现交互的时间顺序,协作图则着重体现交互对象间的静态链接关系。,9.2 面向对象的

温馨提示

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

评论

0/150

提交评论