欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    UML课程-福州大学计算机系.ppt

    • 资源ID:5451605       资源大小:461.50KB        全文页数:69页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    UML课程-福州大学计算机系.ppt

    面向对象分析与设计(UML),授课教师:刘秉瀚联系电话:83716525Email:,内容提要,第一部分 内容概要:介绍面向对象软件开发所使用的过程和技术,讲解UML的基础知识及其应用 1.基本概念和背景知识 2.UML语言详述 3.UML对象分析设计第二部分 Rose的使用:介绍支持UML的CASE软件开发工具Rational Rose第三部分 学习实例:结合实例,应用面向对象思想,分析UML的应用方法与技巧,参考书,面向对象分析与设计(UML2.0版)美MikeO,Docherty 著 俞志翔 译清华大学出版社介绍面向对象的软件开发所使用的过程和技术,描述了UML语言以及UML在面向对象的软件系统分析与设计中的应用UML基础、案例与应用 美Joseph Schmuller 著 李虎 王美英 万里威 译人民邮电出版社通俗易懂UML 与 Rational Rose2002从入门到精通美Wendy Boggs Michael Boggs著 邱仲潘 等译电子工业出版社很大篇幅介绍Rose的使用,适于入门UML参考手册最经典的书籍,由三剑客编写,适于精通,资源链接中国UML论坛:大量有关UML的资源和讨论Rational公司了解UML和Rose进展的站点,资源链接,考试方式,40%-笔试60%-课程设计,基本概念及背景知识,软件开发方法概述面向对象的系统分析与设计UML(Unified Modeling Language)诞生,软件开发方法概述,方法学(过程、方法):指开发项目通常应遵循的一系列规则,其中可能包含文档的描述、设计模式及其他按某种顺序产生的产品。,方法学的优势,开发中小型系统有助于对编码设置规则。增进对问题的理解,提高解决方案的质量。有助于在提交源代码之前找出概念错误和实践性的错误。能明确指定下一步工作。有助于编写出扩展性更高(可用于解决其他问题)、可靠性更高(容易修改)、更容易调试(有较多的说明)的代码。,开发大型项目文档说明:开发的每个阶段提供全面的说明,完成的系统不会艰涩难懂。等待时间减少:由于工作流、活动的相互依赖性更容易理解,资源等待工作做的可能性也减少了。工作能及时交付,且不超过预算。人员之间有更好的交流:好的方法学建立在逻辑和常识的基础之上,所有参与者较容易抓住其根本,因此,开发更有序,误解和浪费资源的情况也较少。可重复性:类似项目可重用。更准确的成本。,软件开发中的经典阶段,需求:需求捕获就是找出新软件要达到的目标,包含两方面:业务建模与系统需求建模。分析:分析表示理解我们要处理的商务。在设计解决方案之前,需要了解相关实体、它们的属性和相关关系。设计:在设计阶段,要确定如何解决问题。系统设计把系统分解为逻辑设计子系统(过程)和物理设计子系统(计算机和网络)。规范:规范是按合同设计的、至关重要的底层规则,用来描述编程组件的期望行为。如:需求阶段的结果是系统必须做什么的规范;分析的结果是我们要处理什么事务的规范,等。实现:编写代码,形成子系统。子系统之间协同工作,形成整个系统。测试:软件完成后,根据系统需求对其进行测试,检测系统是否符合最初目标。部署:将硬件和软件交付给最终用户,并提供手册和培训材料。维护:投入运行后,对系统进行修改和完善。,软件开发阶段的关键问题,需求阶段:什么是我们的上下文?要达到什么目的?分析阶段:要处理什么实体?如何确保有正确的实体?系统设计阶段:如何解决问题?在完成的系统中需要什么硬件和软件?子系统设计阶段:如何实现解决方案?源代码和支持文件有哪些?规范阶段:哪些规则控制着组件之间的接口?可以去除模糊,确保正确吗?实现阶段:如何编写符合规范要求的组件?如何编写漂亮代码?测试阶段:完成的系统满足要求吗?系统能否被攻破?部署阶段:系统管理员必须做什么?如何培训最终用户?维护阶段:可以找出和更正错误吗?可以改进系统吗?,软件开发方法概述,瀑布方法学螺旋式方法学迭代式方法学递增式方法学合并方法学面向对象方法学,瀑布开发,维护,部署,测试,实现,规范,设计,分析,需求,瀑布模型的优点,使早期的手工作坊式的软件开发转变为软件工程消除非结构化软件、降低软件复杂度有一套严格的计划、步骤、规格、方法,保证软件产品达到预期的质量要求20世纪70年代以来得到广泛的传播,瀑布模型的缺点:僵化,瀑布模型要求:各阶段要遵守严格的顺序。瀑布模型要求:预先定义并“冻结”软件需求。,实际情况是:软件开发往往在反复实践中完成。实际情况是:某些系统的需求的一个逐渐明确的过程,且预先定义的需求到软件完成时可能已经过时,瀑布模型适用于:,重复某种区别很小的开发。作为一个架构,来学习软件开发中使用不同的技术:尽管瀑布方法对于实际的开发来说过于简单,但仍包含逻辑顺序的经典阶段,适合于学习。是螺旋方法学中的一遍过程。作为支持迭代方法学的架构。用于开发人员较少的小项目的快速开发。如:原型、概念证明或快速应用程序开发等。,螺旋式方法学,规范,分析,设计,需求,实现,测试,部署,维护,在完成了一次循环后,就增进了对问题域和解决方案的理解,还使用户参与进来,这样用户就可以更正我们对最终系统中包含的事务或功能的误解。在经过三四遍的开发过程,完成系统后,就可以全面测试和部署系统了。,与瀑布相比,问题少:用户参与整个生命周期;每个人都可以看到开发人员的工作;可以调整改动的次数和每次改动所花的时间;比较适合于软件开发的创新性。,不完美之处:只是把瀑布开发过程进行了三四次,尽管问题越来越小,但并没有消失。不灵活,在经典阶段要按照有序的方式进行。如果发现错误,必须在下一遍开发过程中才能更正。,螺旋式方法学,迭代方法学,规范,分析,设计,需求,实现,测试,部署,维护,允许重复各阶段,根据需要前后移动或来回移动。把软件从早期阶段传递给下述完备、使所有用户满足的整体系统。有三个原则避免混乱:经典阶段提醒我们应该在每个阶段做什么,向什么方向移动。经典阶段的工作中产生的制品(图、描述、代码等)不应抛弃,应在进入部署阶段的过程中逐步改进。支持所选方法学的软件生产工具和表示法有助于保持制品的一致性,并在一个地方保存所有制品。,递增式方法学,在首次交付的系统版本(1.0)中,将包含最基本、最重要的功能。在以后的某个时间交付1.1版本,其中包含附加的功能(替代1.0)。之后,在对整体进行大的修改,交付2.0版本。这将延续至系统的生命周期。能满足不断变化的需求,适应市场的变化。,时间,发布,1.0,1.1,2.0,2.1,合并方法学,在最高层上,根据递增式方法学,必须规划一系列递增部分。在每个递增部分,螺循式方法学建议,开发每个递增部分至少应进行二遍。在每一遍中,瀑布方法学制定了各个阶段和它们的顺序。在每一个子瀑布中,迭代式方法学允许重复各个阶段,直至满足需求为止。迭代式方法学还允许一发现问题就更正它。,时间,发布,1.0,1.1,2.0,2.1,软件设计准则,认识抽象:建立软件的设计模型时常采用分层抽象的办法。在最高的抽象层次上,可以采用问题的环境语言概括地描述问题的解法;在较低层次上,则采用过程化的方法描述问题的解法。模块化:模块化把一个复杂的软件系统的设计问题转化为若干个较小的、容易处理的模块的设计问题,便于分别解决。信息屏蔽和局部化:信息隐蔽是指每个模块的实现细节(过程和数据)对于其它模块是隐蔽的和不能访问的。信息局部化是指把一切关系密切的软件元素物理地就近安置。结构化程序设计:采用自顶向下逐步求精方法。基本控制结构:顺序、选择、循环。软件规范:当今国际和国内都制订了一系列的软件规范,对软件开发的目标、开发方法、开发过程、软件文档、质量标准等都给出了明确的规定。,面向对象技术,面向对象是一种新的软件工程方法,新的程序设计范型基本技术:使用对象、类、继承、封装、消息等基本概念进行程序设计和实现基本思想:尽可能地运用人类的自然思维方式来构造软件系统。现实世界的问题是由客观实体和实体之间的联系构成的,对象就是客观实体的抽象。,面向对象技术的基本观点,客观世界是由对象组成的。具有相同类型数据和相同操作的对象可以归并为一类,对象是类的一个实例。类可以产生对象。类可以派生子类,子类继承父类的特性。对象之间通过消息传递相互联系。软件工程学家认为:面向对象=对象+类+继承+通讯,面向对象的软件工程(OOSE)方法,面向对象的分析(OOA)面向对象的设计(OOD)面向对象的编程(OOP)面向对象的测试(OOT)面向对象的维护(OOSM),传统软件系统分析与设计存在的问题,1、问题域和系统责任:问题域是指待开发的系统的应用领域,也称为业务领域。系统责任是指待开发的系统应具备的职能。问题域与系统责任密切相关,但两者侧重点不同。准确、透彻地理解问题域与系统责任是软件系统开发的首要任务。但要做到这一点很不容易,其原因有:软件开发人员往往不是领域专家,对业务领域的理解深度有限,而参与系统分析的领域专家又往往对软件开发的一些要求和方法不熟悉,难以恰当地归纳和提供软件系统分析所要求的领域知识。,迫切需要有效的方法和工具能够简单明了地描述待开发软件的问题域与系统责任。,2、人员交流与通讯障碍:软件开发是一项创造性的思维活动,在软件开发过程中人员的交流十分频繁。软件开发项目的有关人员包括用户、领域专家、系统分析员、软件设计员、程序员、测试员、项目管理员等,需要经常交流,探讨系统的需求,明确软件成分的定义,协商系统的结构与衔接,进行工作的交接等,因而,软件工程是“面向人”的。通讯障碍常是人员交流的一个困难。例如,用户、领域专家或项目管理员看不懂、不明白软件开发人员表达问题的概念、术语、表示法,反之亦然。,需要有一套通用的思维方法和便于交流的语言,包括系统的模型、术语、表示法、文档书写格式等。,3、系统需求变化:在软件开发过程中系统的需求常不断地发生变化。这种变化可能由多种原因引起。最常见的是用户对系统的要求发生了改变。在软件开发之初,用户对系统的需求认识可能不够深入,随着软件开发的进展,用户提出对早期的系统需求进行修改和补充;也可能是客观情况发生了变化,用户提出新的需求。其它如经费、技术因素、竞争因素等都可能引起系统需求的变化。,一个好的软件开发方法和技术要能有效的应付系统需求的变化。,4、软件重用:软件重用是提高软件开发效率、改善软件质量的重要途径。正如一座房屋由许多门、窗、墙、楼板等构件构成,一台机器由许多零部件构成一样,一个软件系统也是由许多软件构件构成的,其中很大部分可以复用已有的软件构件,无须重复设计和编程。,需要解决重用构件的提取和制作、重用构件库的组织、重用构件的检索、重用构件的组装等技术问题。,面向对象方法的优点,按照人类的自然思维方式,面对客观世界建立软件系统模型。有利于对问题域和系统责任的理解,有利于人员交流。对需求变化的适应性。把最稳定的部分,即对象作为构筑系统的基本单位,而把容易发生变化的部分,既属性与服务,封装在对象之内,对象之间通过接口联系,使得需求变化的影响尽可能地限制在对象内部。可维护性好。支持软件重用。对象所具有的封装性和信息屏蔽等特性,使它容易实现软件重用。类可以产生实例对象,对象类可以派生出新类,这些就实现了对象类的数据结构和操作代码的软构件重用。,面向对象的软件开发语言与工具,1981推出的Smalltalk-80面向对象的C/C+、Basic、Pascal、Fortran、Lisp、ADA、Java等MicroSoft公司的Visual C+、Visucal Basic计算机辅助软件工程(CASEComputer Aided Software Engineering)Rational Rose一个面向对象的且支持UML的CASE工具,面向对象的系统分析与设计方法-面向对象中的基本概念,对象(Object)/类(Class)抽象(Abstraction)继承(Inheritance)多态性(Polymorphism)封装(Encapsulation)消息(Message)关联(Association)聚集(Aggregation),什么是对象?(Object),一个对象代表了一个现实的或虚构的实体自然实体(有形)概念实体(无形),化学过程,生产计划,对象(对象技术围绕对象的概念来建立),对象从不同的角度有不同的含义问题论域:对象指现实世界中的一个事物。如:人、房屋、洗衣机等建模和实现:对象描述客观事物的一个实体,是构成系统的基本单元。对象特征:静态特征和动态特征问题论域:一个对象所包含的特性和行为 系统:一个对象所包含的数据(属性)和使用这些数据的所有功能(操作)对象属性:描述对象静态特征的数据项对象操作:是对象动态特征的体现对象之间通过消息通信 一个对象通过向另一个对象发送消息激活某一 个功能,在面向对象软件中,真实世界中的对象会转化为代码。在编程术语中,对象是独立的模块,有自己的数据和操作。Person对象:有头衔、名字、出生日期和地址,它还可以改名,搬到新地址,告诉我们它有多大等。如果以后需要知道Person身高,就可以把身高的知识和相关的行为直接添加到Person代码中。在系统的其余部分中,只有需要身高属性的代码才需要修改,其余代码保持不变。面向对象软件的重要特征:改变的简单性和本地化。电视机对象呢?-改变其价格?给自己做一个新广告?如果电视机不做这些工作,系统的其余部分就要做。问题:电视的特性泄漏给代码的其余部分,违背简单性和本地化。,什么是类?(Class),类是对象的抽象,它给出了属于该类的全部对象的抽象定义。(从对象产生类)问题域:类是一组具有相同特性和行为的对象的通用定义系统:共同的特性通过属性表现出来(数据)共同的行为通过操作表现出来(功能)类是对象的模板,用它可以产生多个对象,一个具体的对象只是类的一个实例。(从类产生对象)在面向对象的系统分析与设计中,并不需要对逐个对象进行说明,而是着重描述代表一批对象共性的类,类的示例,StructureNameAddressPositionSalaryStart DateEnd Date,ClassEmployee,BehaviorHireFirePromoteIncrease SalaryRetire,类,具有相同特征和操作的对象可以归到同一类中。在下面这副图中您看到了什么类?,对象的类,您看到了几个类?,属性,属性是类的特征或特性 属性的值是某一特定对象的属性值 在类中属性名必须是唯一的 每一个类的实例都有为这个类定义的所有属性的值 例如:,银行帐户类属性帐号银行名称拥有者金额,Mary的银行帐户属性值12345678First National BankMary Smith$1024.48,属性取决于视点,从销售人员的角度 型号 价格 颜色 里程数,从维修人员的角度 马达类型 传动类型 维修记录,一辆汽车具有的属性:,操作,对象的行为是由为此对象定义的一系列操作决定的 操作访问或修改对象的属性值 一个类的所有实例都可以使用在这个类中定义的操作,操作取决于视点,从销售人员的角度 处理客户定单 准备销售合同 加入清单 从清单中删除,从维修人员的角度 测试刹车 修理刹车 转动轮胎 检查马达速度,一辆汽车具有的操作:,属性和操作的标记法,在类的图标中描述属性和操作通常只显示最重要的属性和操作,避免图形混乱属性显示在操作上方,操作的名字后跟有(),类和对象的关系,每一个对象都是某一个类的实例每一个类在某一时刻都有零个或更多的实例类是静态的;它们的存在、语义和关系在程序执行前就已经定义好了对象是动态的;它们在程序执行时可以被建立和删除,抽象(Abstraction),一个对象是现实世界中一个实体的抽象 抽象是一种单一化的描述:强调与给出应用有关的特性 抑制不相关的特性 一个类是一组对象的抽象 抽象通过注重主要的、与问题有关的特性,帮助 我们处理复杂系统关键在于找出重要的、有关的类,以及每个类中重要、有关的操作和属性,继承(Inheritance),子类(特化类、派生类)可以自动拥有父类(基类、泛化类、超类)的属性和操作。例如:“洗衣机”、“冰箱”、“电视机”公共的属性:开关、电线“家用电器”公共的操作是:开机、关机 则:“家用电器”类是父类“洗衣机”、“冰箱”、“电视机”等是子类继承可以提高软件的可重用性。,多态性(Polymorphism),在父类中定义的属性和服务为其子类继承后,可以具有不同的数据类型或表现出不同的行为。如:“打开一扇门”“打开一个银行帐号”“打开一段对话”等,虽然都是“打开”操作,但执行的是不同的行为动作。对建模者,多态性也很重要,它可以让建模者用客户的语言和术语与客户交流。有些术语可能导致操作词有多种不同的含义。理解多态性的概念可以让建模者省去发明新术语以及维护术语一致性的麻烦。多态性机制不但为软件的结构设计提供了灵活性,减少信息冗余,而且显著提高了软件的可复用性和可扩充性。,封装(Encapsulation),将属性和操作包装成一个单元,使得对状态的访问和修改只能通过封装提供的接口进行。封装体现了面向对象方法的“信息屏蔽与局部化”的原则。,消息(Message),对象间在交互中所传送的通讯信息。如:电视机,遥控器对象向电视机对象发送消息。,关联(Association),关联:对象之间所存在的联系。联系:分类关系(一般与特殊),聚集和组成关系(部分与整体),属性之间的静态联系(实例连接),对象行为的动态联系(消息连接)。多重性:关联中一个类的对象可以对应另一个类的多个对象。,面向对象的系统分析与设计方法,面向对象分析(OOA-Object Oriented Analysis)的主要任务是分析问题论域,找出问题解决方案,发现对象,分析对象的内部构成和外部关系,建立软件系统的对象模型。面向对象设计(OOD-Object Oriented Design)的主要任务是根据已确立的系统对象模型,运用面向对象技术,进行系统软件设计。系统建模软件开发中极其重要的环节。在系统分析阶段,建立系统的分析模型。在系统设计阶段,建立系统的设计模型。,面向对象分析,问题论域分析发现和定义对象和类识别对象的外部联系建立系统的静态结构模型建立系统的动态行为模型,面向对象分析(1)-问题论域分析,分析应用领域的业务范围、业务规则和业务处理过程,确定系统的责任、范围和边界,确定系统的需求。在分析中需要着重对系统与外部用户和其它系统的交互进行分析,确定交互的内容、步骤和顺序。,面向对象分析(2)-发现和定义对象和类,识别对象和类,确定它们的内部特征:属性和服务操作。这是一个从现实世界到概念模型的抽象过程,是认识从特殊到一般的上升过程。例如,系统中的对象是现实世界中事物的抽象,对象的属性是事物的静态特征的抽象(数据抽象),对象的服务是事物动态特征的抽象(过程抽象),对象的类是对象的抽象,一般类是特殊类的抽象等等。,面向对象分析(3)-识别对象的外部联系,在发现和定义对象与类的过程中,需要同时识别对象与对象、类与类之间的各种外部联系,包括结构性的静态联系和行为性的动态联系,包括一般与特殊、整体与部分、实例连接、消息连接等联系。,面向对象分析(4)-建立系统的静态结构模型,分析系统的静态结构,建立系统的静态结构模型,并把它们用图形和文字说明表达出来。这主要是在前面对于类和对象,及其联系的分析的基础上,绘制对象类图和对象图、系统与子系统结构图等,编制相应的说明文档。,面向对象分析(5)-建立系统的动态结构模型,分析系统行为,建立系统的动态行为模型,并且把它们用图形和文字说明表达出来。如:绘制Use Case图、交互图、活动图、状态图等,编制相应的说明文档。,面向对象分析-总结,OOA对系统行为的分析以对象为单位,包括对象的服务操作,对象之间的交互、工作流、事件流、消息传递、对象状态转换等。现实世界中的事物的行为是及其复杂的,需要从中抽象出对建立系统模型有意义的行为。在分析中需要控制系统行为的复杂性,应当注意确定行为的归属和作用范围,确定事物之间的行为依赖关系,区分主动和被动,认识并发行为和状态对行为的影响。系统的静态结构模型和动态行为模型,以及必要的需求分析说明书、系统分析说明书一起构成了系统的分析模型,即对象模型。它是系统分析活动的成果,是下一步进行系统设计的基础。,面向对象设计,设计对象与类设计系统结构设计问题论域子系统设计人机交互子系统设计数据管理子系统设计任务管理子系统设计优化,提高系统的性能,面向对象设计(1)-设计对象与类,在OOA的对象模型的基础上具体设计对象与类的属性、服务操作(设计数据结构和操作的实现算法),设计对象与类的各种外部联系的实现结构,设计消息与事件的内容、格式等。类和对象的设计可以并且应当充分利用预定义的系统类库或其它来源的现有的类,把它们加入到解决方案中去,并采用继承、复用、演化等方法设计所需要的新类。,面向对象设计(2)-设计系统结构,设计系统结构的主要任务是设计组件与子系统,以及它们的相互的静态和动态结构。一般的应用系统可有四个组成部分:问题论域、人机界面、数据管理、任务管理。在OOA阶段重点对问题域进行了分析,建立了问题域的业务对象模型,在OOD阶段需要进行软件设计,实现系统领域业务的服务功能。对于人机界面、数据管理、任务管理等问题,在OOA阶段一般较少分析或者没有进行分析,而是留待OOD阶段解决。,面向对象设计(3)-设计问题论域子系统,问题域子系统应包括与应用领域的业务直接有关的全部的类和对象。OOD继承OOA对问题域的分析工作,适当地进行改进和补充,对OOA模型中的某些类、对象、结构、属性、操作进行调整,根据软件实现的要求增加必要的类、属性和联系。例如,把问题域的专用类关联在一起,建立类层次;为公共操作建立一般类;调整继承的表示结构等。在设计中应当考虑对时间与空间的折衷与权衡,以及内存管理等问题。,面向对象设计(4)-设计人机交互子系统,设计人机交互子系统的主要任务是设计用户界面,设计工作的内容包括用户分类,描述交互场景,设计人机交互操作命令、命令层次和操作顺序,设计详细交互过程,设计人机交互类,如窗口、对话框、菜单等。现在的软件系统一般都采用图形界面(GUI)和人机应答形式,力求操作简便,用户界面友好。人机交互子系统中的类与所使用的操作系统和编程语言密切相关。,面向对象设计(5)-设计数据管理子系统,数据管理子系统负责数据的管理,包括数据的录入、操纵、检索、存储,以及对数据的访问控制等。设计数据管理子系统的主要任务是:确定数据管理的方法,设计数据库与数据文件的逻辑结构和物理结构,设计实现数据管理的对象类。,面向对象设计(6)-设计任务管理子系统,设计任务管理子系统就是要设计软件系统的内部模块的管理机制,即把事件驱动、时钟驱动、优先级管理、关键任务和协调任 务等系统管理任务分配给硬件和软件执行。,面向对象设计(7)-设计优化,提高系统的性能,一个系统的质量和性能指标有多个,如运行速度、内存开销、资源占用等,它们的重要性是不同的,指标之间还存在着矛盾。例如,要求运行速度高常导致多用内存,多占资源。因此,应根据实际情况制定一个设计优化的折衷方 案,进行系统优化,提高系统的性能和质量。,UML的诞生,面向对象的分析和设计方法已逐渐取代了传统的方法,成为当前计算机软件工程学中的主流方法。目前使用的面向对象的分析与设计方法主要有Booch、Jacobson的OOSE、Rumbaugh的OMT等方法,它们各有特色,也各有不足之处,而且术语不统一,缺乏共同标准,常给软件开发人员带来困惑。,UML的诞生,从1995年起,著名的软件工程学家Grady Booch、Ivar Jacobson、Jim Rumbaugh携手合作、共同努力,综合了他们各自原创的面向对象的分析与设计方法,加以扩充改进,并汲取其他同类方法的优点,提出了统一建模语言UML。1997年被美国工业标准化组织OMG(Object Management Group)接受,并发布了UML的标准版本,提供给计算机业界使用。,UML的诞生 Rational三剑客,Grady Booch,Jim Rumbaugh,Ivar Jacobson,

    注意事项

    本文(UML课程-福州大学计算机系.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开