《[理学]UML教案.doc》由会员分享,可在线阅读,更多相关《[理学]UML教案.doc(73页珍藏版)》请在三一办公上搜索。
1、安徽中澳科技职业学院教 案20112012学年第 二 学期课 程: 统一建模语言 系(部): 信息技术与艺术传媒系 教研室: 计算机教研室 教 师: 汪海威 职 称: 副研究员 安徽中澳科技职业学院制二一二年二月安徽中澳科技职业学院教案(首页)课程名称统一建模语言课程编号总计: 72 学时理论: 36 学时实践: 36 学时课程类别公共基础( ) 专业基础() 专业技术() 能力拓展( )使用教材UML基础与Rose建模实用教程授课班级10软件技术教学目的要求本课程主要介绍统一建模语言UML和面向对象的分析和设计知识。使学生掌握利用UML工具进行面向对象的分析和设计,在分析和设计中如何进行建模
2、,同时使得学生掌握在Rose环境下用UML分析和设计,学会使用UML建模工具,为系统和科学的软件开发打下良好的基础。教学重点难点教学重点是学生掌握掌握UML的表示法和建模方法,使得学生掌握在Rose环境下用UML分析和设计,学会使用UML建模工具。教学难点是UML的建模方法和在实际项目中运用UML建模工具进行面向对象的分析和设计。主要参考资料参考教材:统一建模语言作者:袁涛 孔蕾蕾出版社:清华大学出版社参考教材:基于UML的管理信息系统实训作者:姚策出版社:北京理工大学出版社备 注课 时 教 案授课章节及题目第一章 面向对象概述第二章 UML概述课次1课 时2教学目标与要求了解软件模型的重要性
3、了解UML的起源和发展掌握UML的基本概念:视图、图、模型元素熟悉UML的公共机制教学重点与难点UML的视图、图、图形元素环节、时间授课内容教学方法课程导入(10分钟)面向对象技术已经成为计算机软件开发中的一种主流技术,随着其研究内容的深化和应用领域的扩大,使得面向对象技术越来越受欢迎。面向对象技术作为一种设计和构造软件的技术,使得计算机解决问题的方式更加符合人类的思维方式,更能直观的描述客观世界,UML是一种对软件系统进行规约、构造、可视化和文档化的语言。讲授80分钟一、开发软件为什么需要模型计算机辅助设计:将人和计算机的最佳特征结合起来,辅助进行产品设计与分析的一种技术,它综合了计算机与工
4、程设计方法的最新发展。包括计算机辅助建模、计算机辅助结构分析计算、计算机辅助数据库管理等。1开发者在编写程序之前需要研究和分析的问题用户需求的准确描述问题功能与功能之间的关系问题软件的质量和性能问题软件的结构组成问题建立几十个甚至几百个程序或组件之间的关联问题等等2在这个复杂的开发过程中,最关注的是开发者之间的交流问题3软件开发中能否消除技术人员与非技术人员(用户)之间、使用不同技术的开发人员之间、不同功能使用者之间的等等交流障碍是软件开发成功的关键4直观的软件模型将有助于软件工程师与他们进行有效的交流5软件设计者可以通过建立需求模型来实现技术人员与非技术人员(用户)之间的交流6在软件的设计中
5、,设计人员首先要把描述系统功能需求的自然语言形式转化为软件程序的逻辑形式,在这个转化过程中,设计人员要借助许多模型来完成最终的程序设计模型7在软件的实施、测试和部署中,模型为不同领域的技术人员在软件和硬件的实施、测试和部署中提供有效的交流平台8软件模型是最有效的软件文档保存形式,软件模型在开发团队人员的培训、学习和知识的传递和传播等方面起着非常重要的作用9软件开发中需要建立需求(Requirement)模型问题域 (Domain) 模型设计(Design)模型实施模型测试模型部署模型10在系统开发生命周期中,需要从多角度来建立模型才能全面、准确地分析和设计软件系统二、UML基本概念统一建模语言
6、是由一系列具有标准的图形符号组成的建模语言,它用于描述软件系统分析、设计和实施中的各种模型UML的定义有两个主要组成部分:语义:用自然语言和对象约束语言(Object Constraint Language,OCL)描述表示法:定义了UML的可视化的标准表示符号三、常用的UML元素1视图UML是用模型来描述系统的结构或静态特征以及行为或动态特征的,它从不同的视角为系统的架构建模形成系统的不同视图(view)。在UML中主要包括的视图为静态视图、用例视图、交互视图、实现视图、状态机视图、活动视图、部署视图和模型管理视图。2图用例图、类图、序列图、状态图、活动图、构件图、部署图3模型元素在UML中
7、,图作为一种可视化的方式聚集了相关需要表达的事物,并且表达了这些事物之间的关系。 事物是对模型中最具有代表性的成分的抽象,关系描述了事物之间如何彼此关联、相互依赖或作用的。正是关系把构成系统的诸多事物结合成一个有机的整体。事物:是UML模型中面向对象基本的模块,它们在模型中属于静态部分。事物作为对模型中最具有代表性的成分的抽象,在UML中,定义了四种基本的面向对象的事物,分别是结构事物、行为事物、分组事物和注释事物等。关系:UML模型是由各种事物以及这些事物之间的各种关系构成的。关系是指支配、协调各种模型元素存在并相互使用的规则。UML中主要包含四种关系,分别是依赖、关联、泛化和实现。四、UM
8、L的公共机制UML通用机制:规格说明、修饰、通用划分UML扩展机制:构造型、标记值、约束五、UML建模对象在软件的生命周期中,软件有两种存在形式:静止状态、运行状态UML提供的建模图可分为结构和行为两大类型,所以,我们在软件开发的分析和设计时,需要从三个方面来考虑建立软件模型:静止状态下的结构; 运行状态下的结构; 运行状态下的行为(或功能)讲授/演示教学反思课 时 教 案授课章节及题目第3章、第4章课次3课 时2教学目标与要求了解Rational Rose的历史掌握Rational Rose的四种视图模型熟悉Rational Rose双向工程熟悉Rational Rose统一过程的结构熟悉R
9、ational Rose统一过程的配置和实现教学重点与难点四种视图模型环节、时间授课内容教学方法课程导入(10分钟)回顾上次课内容讲授80分钟一、Rational Rose的起源和其对UML的支持1:Rational Rose的起源Rational Rose是由Rational软件开发公司设计、开发的一种重要的可视化建模工具。 在Rational与IBM合并以前,Rational Rose在发布的每一时期的版本中通常包含以下三种版本:(1)Rose Modeler:仅仅用于创建系统模型,但是不支持我们所说的代码生成和逆向工程。(2)Rose Professional,可以创建系统模型,包含了R
10、ose Modeler的功能,并且还可以使用一种语言来进行代码生成。(3)Rose Enterprise,Rose的企业版工具,支持前面的Rose工具的所有功能。并且支持各种语言,包括C+、Java、Ada、CORBA、Visual Basic、COM、Oracle8等,还包括对XML的支持。模型的组件还可以使用不同语言进行生成。2: Rational Rose对UML的支持Rational Rose为UML提供了基本的绘图功能Rational Rose为模型元素提供存储库 Rational Rose为各种视图和图提供导航功能 Rational Rose提供了代码生成功能 Rational R
11、ose提供逆向工程功能 Rational Rose提供了模型互换功能二、Rational Rose的4种视图模型在Rational Rose建立的模型中包括四种视图,分别是用例视图(Use Case View)、逻辑视图(Logical View)、构件视图(Component View)和部署视图(Deployment View)。在我们创建一个Rational Rose工程的时候,会自动包含这四种视图。1用例视图在用例视图(Use Case View)中包括了系统中的所有参与者、用例和用例图,必要时还可以在用例视图中添加顺序图、协作图、活动图和类图等。用例视图是与系统中的实现是不相关的,它
12、关注的是系统功能的高层抽象,适合于对系统进行分析和获取需求,而不关注于系统的具体实现方法。2.逻辑视图逻辑视图关注系统如何实现用例中所描述的功能,主要是对系统功能性需求提供支持,即在为用户提供服务方面,系统所应该提供的功能。在逻辑视图中,用户将系统更加仔细的分解为一系列的关键抽象,将这些大多数来自于问题域的事物通过采用抽象、封装和继承的原理,使之表现为对象或对象类的形式,借助于类图和类模板等手段,提供了系统的详细设计模型图。在逻辑视图下的模型元素可以包括类、类工具、用例、接口、类图、用例图、协作图、顺序图、活动图和状态图等。 3. 构件视图构件视图用来描述系统中的各个实现模块以及它们之间的依赖
13、关系。构件视图包含模型代码库,执行文件,运行库和其他构件的信息,但是按照内容来划分构件视图主要由包、构件和构件图构成。包是与构件相关的组。构件是不同类型的代码模块,它是构造应用的软件单元,构件可以包括源代码构件、二进制代码构件以及可执行构件等等。4. 部署视图部署视图显示的是系统的实际部署情况,它是为了便于理解系统如何在一组处理节点上的物理分布,而在分析和设计中使用的构架视图。在系统中,只包含有一个部署视图,用来说明了各种处理活动在系统各节点的分布。在部署视图中,可以创建处理器和设备等的模型元素。在浏览器中选择Deployment View(部署视图)选项,右键单击,可以看到在该视图中允许创建
14、的模型元素。三、Rational Rose双向工程1. 用Rational Rose生成代码Rational Rose Enterprise版本对UML提供了很高的支持,可以使用多种语言进行代码生成,这些语言包括Ada83、Ada95、ANSI C+、CORBA、JAVA、COM、Visual Basic、Visual C+、Oracle8和XML_DTD等。可以通过选择选择“Tools”(工具)下的“Options”(选项)选项来查看所支持的语言信息。2. 逆向工程在Rational Rose中,可以通过收集有关类(Classes)、类的属性(Attributes)、类的操作(Operati
15、ons)、类与类之间的关系(Relationships)以及包(Packages)和构件(Components)等静态信息,将这些信息转化成为对应的模型,在相应的图中显示出来。可以在工具栏中通过选择“Tools”(工具)中“Java”菜单下的“Reverse Engineer.”(逆向工程)选项来进行逆向工程。四、Rational Rose统一过程的结构1.Rational Rose统一过程概念是一种软件工程过程、是一个过程产品、拥有一套自己的过程框架、包含了许多软件开发中的最佳实践。2Rational Rose统一过程的结构静态结构Rational统一过程的静态结构是通过对其模型元素的定义来
16、进行描述的。在Rational统一过程的开发流程中定义了“谁”“何时”“如何”做“某事”,并分别使用四种主要的建模元素来进行表达,它们是:第一,角色(Workers),代表了“谁”来做?第二,活动(Activities),代表了“如何”去做?第三,产物(Artifacts),代表了要做“某事”?第四,工作流(Workflows),代表了“何时”做?动态结构Rational统一过程的动态结构,是通过对迭代式软件开发过程的周期、阶段、迭代过程以及里程碑等的描述来进行表示的。面向架构的过程在Rational统一过程中建议采用五种视图来进行描述架构:逻辑视图(Logical View):逻辑视图主要支
17、持系统的功能性需求,即在为用户提供服务方面系统应该提供的功能。 过程视图(Process View):过程视图考虑的是一些非功能性的需求,主要表现为系统运行时的一些特性,如系统的性能和可用性等。 物理视图(Physical View):物理视图主要关注的也是系统的非功能性需求,这些需求包括系统的可用性、可靠性、性能和可伸缩性。 开发视图(Development View):开发视图描绘的是系统地开发架构,它关注的是软件开发环境中实际模块的组织情况,即系统的子系统是如何分解的。用例视图(Use Case View):它综合了所有上面的这四种视图。四种视图的元素通过数量比较少的一组重要的场景或者用
18、例进行无缝协同工作。五、Rational Rose统一过程的配置和实现1. 配置Rational统一过程配置Rational统一过程是指通过修改Rational软件公司交付的过程框架,使整个过程产品适应采纳了这种方法的组织的需要和约束。 当将在线的Rational统一过程的基线拷贝置于配置管理之下时,配置该过程的相关人员就可以修改过程以实现变更。例如:(1)在活动中增加、扩展、修改或删除一些步骤。(2)基于经验增加评审活动的检查点。(3)根据在以前项目中发现的问题,增加一些指南。(4)裁减一些模板,比如增加公司的标志、头注、脚注、标识和 封面等。(5)增加一些必要的工具指南等。2 . 实现Ra
19、tional统一过程实现Rational统一过程是指在软件开发组织中,通过改变组织的实践,使组织能例行地、成功地使用Rational统一过程的全部或其一部分。在软件开发组织中实现一个全新的过程可以使用以下六个步骤来描述。它们分别是:(1)评估当前状态。(2)建立明确目标。(3)识别过程风险。(4)计划过程实现。(5)执行过程实现。(6)评价过程实现。讲授/演示教学反思实 训 教 案实训项目熟悉Rose2003和Rose2003中各种图的创建课次2、4课时4教学目标与要求熟悉Rose2003界面;掌握常用菜单和工具的使用熟悉每个菜单项和常用工具教学重点与难点Rose2003的使用文档实训内容一.
20、启动Rose2003,熟悉工作界面 主菜单、工具栏模型结构窗口、特性窗口、日志、应用窗口二.使用Rose创建模型使用向导设计创建模型不是要向导设计创建模型三.在Rose中创建UML图的操作用例图的创建类图的创建对象图的创建状态图的创建活动图的创建顺序图的创建协作图的创建组件图的创建配置图的创建课后分析课 时 教 案授课章节及题目第5章用例图课次5课 时2教学目标与要求1、了解用例图的作用和在系统建模中的重要地位2、掌握用例图的组成元素3、掌握参与者和用例的识别,以及用例间关系的识别教学重点与难点参与者、用例的识别用例之间关系的确定环节、时间授课内容教学方法课程导入(10分钟)回顾上次课内容讲授
21、80分钟一、用例图基本概念定义:由参与者、用例以及他们之间的关系构成的用于描述系统功能的动态视图作用:描述参与者和用例之间的关系,帮助开发人员可视化地了解系统功能。二、用例图的组成1参与者定义:存在于系统外部并直接与系统交互的人、系统、子系统或类的外部实体的抽象。每个参与者可以参与一个或多个用例,每个用例也可以有一个或多个参与者。参与者的确定:寻找参与者需要考虑以下问题系统的使用者是谁系统需要从哪些人活其他系统中获取数据系统会为哪些人或其他系统提供数据系统是由谁来维护的谁对本系统产生的结果感兴趣。参与者间的关系:参与者实质上也是类,它拥有与类相同的关系描述,参与者与参与者之间主要是泛化关系。泛
22、化关系的含义是把某些参与者的共同行为提取出来表示成通用行为,并描述成超类。泛化关系表示的是参与者之间的一般/特殊关系,在UML图中,使用带空心三角箭头的实线表示泛化关系。2.系统边界在项目开发过程中,边界是一个非常重要的概念。这里说的系统边界是指系统与系统之间的界限。通常我们所说的系统可以认为是由一系列的相互作用的元素形成的具有特定功能的有机整体。系统同时又是相对的,一个系统本身又可以是另一个更大系统的组成部分,因此,系统与系统之间需要使用系统边界进行区分开来。我们把系统边界以外的同系统相关联的其他部分,称之为系统环境。3.用例概念:用例是参与者可以感受到的系统服务或功能单元,它从用户的角度来
23、描述系统的功能。识别用例:任何用例都不能在缺少参与者的情况下独立存在。同样,任何参与者也必须要有与之关联的用例。所以识别用例的最好方法就是从分析系统参与者开始,在这个过程中往往会发现新的参与者。可以通过以下问题来寻找用例:(1)参与者希望系统提供什么功能?(2)参与者是否会读取、创建、修改、删除、存储系统的某种信息?如果是的话,参与者又是如何完成这些操作的? (3)参与者是否会将外部的某些事件通知给系统? (4)系统中发生的事件是否通知参与者? (5)是否存在影响系统的外部事件。用例规约:对于每一个用例,我们还需要有详细的描述信息,以便让别人对于整个系统有一个更加详细的了解,这些信息包含在用例
24、规约之中。4.用例之间的关系包含:包含关系指用例可以简单地包含其他用例具有的行为,并把它所包含的用例行为作为自身行为的一部分。在UML中,包含关系是通过带箭头的虚线段加字样来表示,箭头由基础用例(Base)指向被包含用例(Inclusion)。包含关系代表着基础用例会用到被包含用例,具体的讲就是将被包含用例的事件流插入到基础用例的事件流中。扩展:在一定条件下,把新的行为加入到已有的用例中,获得的新用例叫做扩展用例(Extension),原有的用例叫做基础用例(Base),从扩展用例到基础用例的关系就是扩展关系。一个基础用例可以拥有一个或者多个扩展用例,这些扩展用例可以一起使用泛化:用例的泛化指
25、的是一个父用例可以被特化形成多个子用例,而父用例和子用例之间的关系就是泛化关系。在用例的泛化关系中,子用例继承了父用例所有的结构、行为和关系,子用例是父用例的一种特殊形式。子用例还可以添加、覆盖、改变继承的行为。三、用例图创建示例 以学生信息管理系统为例,学习用例图的创建过程。1需求分析“学生信息管理系统”部分功能性需求包括以下内容:(1)系统管理员登录后可以对班级的基本信息进行增加、删除、修改、查询等操作。学校领导登录后可以对班级基本信息进行查询操作。(2)教师登录后可以对学生的考试成绩进行录入、删除、修改、查询等操作。学生登录后可以对考试成绩进行查询操作。(3)学生登录后可以了解所有选修课
26、程的具体信息,可以根据自己的需要选择不同课程。系统管理员登录后可以增加、修改、查询、删除选修课程。(4)系统管理员可以对账号进行创建、设置、查看、删除等操作。2. 识别参与者(1)对于一个学校来说,最重要的就是教育学生成才,所以我们首先要考虑到的参与者就是学生。(2)要给学生上课,必然就需要教师。教师负责教育学生、并且在日常管理中可以查询学生的基本信息、查询学生的考试成绩。(3)作为一个学校,除了教师和学生,还有不可或缺的就是校领导。为了便于校领导掌握学校的基本情况,加强对学校的管理导. (4)不管什么系统,基本都会有比较专业的人员来负责管理系统,本系统也不例外。系统管理员除了负责维护系统的日
27、常运行,还要进行录入学生基本信息、维护选课信息等工作。3. 构建用例模型系统管理员:直接参与的用例为登录、找回密码、查看班级基本信息、删除班级基本信息、修改班级基本信息和录入班级基本信息。校领导直接参与用例登录、找回密码和查看班级基本信息。当登录过程中发生忘记密码的情况,就需要使用找回密码的功能来找回密码,而在正常情况下用不到找回密码这个功能所以用例找回密码”和用例登录之间是扩展关系。教师:参与用例录入成绩、修改成绩、保存成绩、查询成绩、删除成绩和登录。学生参与用例登录和查询成绩。因为修改成绩和录入成绩的时候都要保存成绩,所以将保存成绩抽象出来作为单独的一个用例。用例录入成绩、修改成绩和用例保
28、存成绩之间是包含关系,用例找回密码和用例登录之间是扩展关系。学生:直接参与用例查看课程信息、按课程编号查看、按课程名查看、选择课程、删除已选课程、登录和找回密码。系统管理员参与用例登录、找回密码和“维护课程信息”。其中查看课程信息有两种方式,一种是按照课程名查看,另一种是按照课程编号查看。所以查看课程信息是父用例,而按照课程名查看和按照课程编号查看是子用例,他们之间的关系是泛化关系。用例找回密码和用例登录之间是扩展关系。讲授/演示课堂练习(15分钟)网络的普及带给了人们更多的学习途径,随之用来管理远程网络教学的“远程网络教学系统”也诞生了。“远程网络教学系统”的功能需求包括:(1)学生登录网站
29、后,可以浏览课件、查找课件、下载课件、观看教学视频。(2)教师登录网站后,可以上传课件、上传教学视频、发布教学心得、查看教学心得、修改教学心得。(3)系统管理员负责对网站页面的维护,审核不法课件和不法教学信息,批准用户注册。根据需求,创建用例图教学反思实 训 教 案实训项目用例图的应用课次6课时2教学目标与要求掌握从需求分析获取用例图的方法掌握用例图中的各种关系掌握用Rose工具绘制用例图教学重点与难点根据需求分析识别参与者根据需求分析识别用例实训内容一、学籍管理系统的需求描述1系统基本需求 对登录的操作人员要有所区分,有根据学校规定限定权限的人员(学生的档案管理、学生分班及班主任管理、学费管
30、理、成绩管理、登录人员管理);有具备全部权限的管理员;还有只能进行查询操作的操作员2学生档案管理学生档案管理包括学生档案的建立、修改、查询和打印3班级管理班级管理包括班级的设置、修改、查询和打印4交费管理交费管理主要用来管理学费信息,可根据年级、年制、专业、学期来设置收费类型和收费标准;并能根据实际交费计算当期欠费,同时查询以往欠费和累计欠费金额;查询学生交费情况和打印5课程管理设置课程的名称和使用教材,能够进行修改;能对不同专业和年级开设的课程进行设置6成绩管理能够设定考试类型;学生成绩的录入;成绩的查询二、根据需求描述,获取用例图 1识别参与者(角色) 从分类情况看,可以包括授权人员、一般
31、人员和系统管理员,而授权人员又可以细分为登录用户管理、课程与成绩管理、班级及学生档案管理、收费4种权限类型的操作人员。 2识别用例确定系统的用例来源于要执行的是什么任务。系统需要处理参与者的哪些事情。另外还要决定用例的范围大小。 3改进或细化用例 4用例的描述 5确定参与者和用例之间的关系参与者和用例之间的交流关系;用例之间的扩展关系;用例之间的包含关系。三、用Rose工具画用例图。课后分析课 时 教 案授课章节及题目类图与对象图课次7课 时2教学目标与要求掌握类图的组成要素,特别是类图中的关系掌握获取类图的方法掌握绘制类图的方法掌握对象图的要素和绘制教学重点与难点类图中各种关系的确定环节、时
32、间授课内容教学方法课程导入(10分钟)回顾上次课内容,从需求分析获取系统的用例图之后,为了更详细的描述系统的静态结构,我们今天开始类图的学习,类图通过类之间的关系描述了系统的静态结构。讲授80分钟一、 类图基本概念定义:就是用于对系统中的各种概念进行建模,并描绘出它们之间关系的图。类图中一共包含包含了以下几种模型元素,分别是:类、接口、依赖关系、泛化关系、关联关系以及实现关系。作用:通过系统中的类以及各个类之间的关系来描述系统的静态方面。主要作用有,为系统的词汇建模;模型化简单的协作;模型化逻辑数据库模式二、 类图的组成1类类是面向对象系统组织结构的核心,是对一组具有相同属性、操作、关系和语义
33、的事物的抽象。 在UML的图形表示中,类的表示法是一个矩形,这个矩形由三个部分构成,分别是:类的名称(Name)、类的属性(Attribute)和类的操作(Operation)。类如果有操作,则每一个操作也都有一个名字,其它可选的信息包括可见性、参数的名字、参数类型、参数缺省值和操作的返回值的类型等2接口一组操作的集合,只有操作的声明而没有实现3类图中的关系(1)关联关系:描述了类的结构之间的关系。具有方向、名字、角色和多重性等信息。一般的关联关系语义较弱。也有两种语义较强,分别是聚合与组合。聚合关系:特殊关联关系,指明一个聚集(整体)和组成部分之间的关系组合关系:语义更强的聚合,部分和整体具
34、有相同的生命周期(2)泛化关系:在面向对象中一般称为继承关系,存在于父类与子类、父接口与子接口之间(3)实现关系:对应于类和接口之间的关系(4)依赖关系:描述了一个类的变化对依赖于它的类产生影响的情况。有多种表现形式,例如绑定(bind)、友元(friend)等三、 类图创建示例在用例驱动的开发过程中,通过分析各个用例及参与者得到类图。分析用例图的过程中需要根据面向对象的原则设计类和关系,根据用例的细节设计类的属性和操作。1确定类和关联用例图实质上是一种系统描述的形式,自然可以根据用例描述来识别类。针对各个用例,通常可以根据如下的问题辅助识别: (1)用例描述中出现了那些实体? (2)用例的完
35、成需要哪些实体合作? (3)用例执行过程中会产生并存储哪些信息? (4)用例要求与之关联的每个角色的输入是什么? (5)用例反馈与之关联的每个角色的输出是什么? (6)用例需要操作哪些硬设备?2确定属性和操作每个类的操作都有所不同。我们确定的一些类的属性和操作,为方便表示,一般使用英文标识。以“远程网络教学系统“为例,在该系统中,系统的参与者为学生、教师和系统管理员。学生包括登录名称、登录密码、学生编号、性别、年龄、班级、年级、邮箱等属性。教师包含自己的登录名称、登录密码、姓名、性别、教授课程、电话号码和邮箱等属性。系统管理员包含系统管理员用户名、系统管理员密码、邮箱等属性。根据这些信息,创建
36、系统的类图。如果我们把参与者学生、教师和系统管理员进行抽象出一个单独的人员类,学生、教师和系统管理员分别是人员类的继承。根据这些信息,重新创建类图。四、 对象图定义:对象图中包含对象(Object)和链(Link)。其中对象是类的特定实例,链是类之间关系的实例,表示对象之间的特定关系对象图作用:对象图作为系统在某一时刻的快照,是类图中的各个类在某一个时间点上的实例及其关系的静态写照,可以通过以下几个方面来说明它的作用: (1)说明复杂的数据结构。对于复杂的数据结构,有时候很难对其进行抽象成类表达之间的交互关系。使用对象描绘对象之间的关系可以帮助我们说明复杂的数据结构某一时刻的快照,从而有助于对
37、复杂数据结构的抽象。 (2)表示快照中的行为。通过一系列的快照,可以有效表达事物的行为。讲授/演示教学反思实 训 教 案实训项目类图和对象图的应用课次8课时2教学目标与要求掌握从需求分析、用例图获取类图的方法掌握类图的各个组成要素掌握使用Rose工具绘制类图、对象图的方法教学重点与难点分析对象之间的关系,并进行归纳消除冗余实训内容一、 获取现实类对象分析上次实验课得到的用例图,检查每个用例并确定备选对象来发现参与对象。也可以将需求描述语句的各部分(名词如学生、班级,动词如删除、增加等)直接映射到模型当中去,首先从需求描述和用例中发现对象,然后再找出对象的属性和操作。1标识实体类给对象、对象属性
38、以及职责进行命名,并做简短描述。2标识界面类界面类标识系统与使用系统的参与者的接口,在每一个用例中,每个参与者至少与一个界面类进行交互。界面类从参与者收集信息,并将这些信息存入系统制定的结构中。界面类对用户界面进行粗略的建模。3标识业务逻辑类业务逻辑类负责协调界面类和实体类。通常,业务逻辑类在现实中没有具体的对应部分,在用例和业务逻辑类之间通常有密切的关系。业务逻辑类通常在一个用例的开始被创建,用例终止时就不存在了。它负责从界面类收集信息并将信息发送给实体类。二、分析类对象确定对象之间的数量关系;确定对象之间的受限关系;确定对象之间的归纳和继承关系。三.建立类图、对象图使用Rose工具画图。课
39、后分析课 时 教 案授课章节及题目第七章 序列图课次9课 时2教学目标与要求掌握序列图的组成要素掌握从需求分析获取序列图的方法掌握序列图的绘制方法教学重点与难点从需求分析、类图获取序列图环节、时间授课内容教学方法课程导入(10分钟)回顾上次课内容讲授80分钟一、序列图的基本概念定义:在UML的表示中,序列图将交互关系表示为一个二维图。其中,纵向是时间轴,时间沿竖线向下延伸。横向代表了在协作中各独立对象的角色。角色使用生命线进行表示,当对象存在时,生命线用一条虚线表示,此时对象不处于激活状态,当对象的过程处于激活状态时,生命线是一个双道线。序列图中的消息使用从一个对象的生命线到另一个对象生命线的
40、箭头表示,箭头以时间顺序在图中从上到下排列。作用:序列图作为一种描述在给定语境中消息是如何在对象间传递的图形化方式,在使用其进行建模时,主要可以将其用途分为以下三个方面:确认和丰富一个使用语境的逻辑表达;细化用例的表达;有效地描述如何分配各个类的职责以及各类具有相应职责的原因。二、序列图的组成要素组成四要素:对象、消息、生命线、激活1对象:序列图中的对象可以是系统的参与者或者任何有效的系统对象。对象使用包围名称的矩形框来标记,所显示的对象及其类的名称带有下划线,二者用冒号隔开,使用“对象名 :类名”的形式,对象的下部有一条被成为“生命线”的垂直虚线。2消息:消息(Messages)是从一个对象
41、(发送者)向另一个或几个其他对象(接收者)发送信号,或由一个对象(发送者或调用者)调用另一个对象(接收者)的操作。它可以有不同的实现方式,比如过程调用、活动线程间的内部通讯、事件的发生等。3生命线:是一条垂直的虚线,用来表示序列图中的对象在一段时间内的存在。每个对象的底部中心的位置都带有生命线。生命线是一个时间线,从序列图的顶部一直延伸到底部,所用时间取决于交互持续的时间,也就是说生命线表现了对象存在的时段。对象与生命线结合在一起称为对象的生命线。对象的对象存在的时段包括对象在拥有控制线程时或被动对象在控制线程通4激活:列图可以描述对象的激活(Activation),激活是对象操作的执行,它表
42、示一个对象直接地或通过从属操作完成操作的过程。它对执行的持续时间和执行与其调用者之间的控制关系进行建模。激活在序列图中用一个细长的矩形框表示,它的顶端与激活时间对齐而底端与完成时间对齐。被执行的操作根椐不同风格表示成一个附在激活符号旁或在左边空白处的文字标号三、对象的创建和撤销如果对象位于时序图的顶部,说明在交互开始之前该对象已经存在了。如果对象是在交互的过程中创建的,那么它应当位于图的中间部分。对象在创建消息发生之后才能存在,对象的生命线也是在创建消息之后才存在的。创建对象的两种表示方法:四、序列图绘制实例1. 需求分析我们可以通过更加具体的描述来确定工作流程,基本工作流程如下:(1)李老师
43、希望通过系统查询某名学生的学科成绩。(2)李老师通过用户界面录入学生的学号以及学科科目请求学生信息。(3)用户界面根据学生的学号向数据库访问层请求学生信息。(4)数据库访问层根据学生的学号加载学生信息。(5)数据库访问层根据学生信息和学科科目(6)数据库访问层将学生信息和分数信息提供给用户界面。(7)用户界面将学生信息和分数信息显示出来。2. 确定序列对象建模序列图的下一步是从左到右布置在该工作流程中所有的参与者和对象,同时也包含要添加消息的对象生命线。 五、在Rose工具中绘制序列图讲授/演示教学反思实 训 教 案实训项目序列图的应用课次10课时2教学目标与要求掌握序列图的要素掌握如何获取序
44、列图掌握使用Rose工具画序列图的方法教学重点与难点序列图中对象的识别实训内容一、 从需求分析获取用例图二、获取类图部分功能的类图如下所示:三、获得序列图部分功能的序列图如下所示课后分析课 时 教 案授课章节及题目第八章 协作图课次11课 时2教学目标与要求掌握协作图基本概念掌握协作图组成元素掌握获取协作图的方法教学重点与难点获取协作图环节、时间授课内容教学方法课程导入(10分钟)回顾上次课内容讲授80 分钟一、协作图基本概念所谓协作是指在一定的语境中一组对象以及用以实现某些行为的这些对象间的相互作用。协作图是一种交互图,强调的是发送和接收消息的对象之间的组织结构,使用协作图来说明系统的动态情
45、况。 协作图主要描述协作对象间的交互和链接,显示对象、对象间的链接以及对象间如何发送消息。协作图可以表示类操作的实现。二、协作图组成元素1对象对象是类的实例,负责发送和接收消息,与顺序图中的符号相同,冒号前为对象名,冒号后为类名。一个协作代表了为了完成某个目标而共同工作的一组对象。对象的角色表示一个或一组对象在完成目标的过程中所应起的那部分作用。对象是角色所属的类的直接或者间接实例。在协作图中,不需要关于某个类的所有对象都出现,同一个类的对象在一个协作图中也可能要充当多个角色。协作图中对象的表示形式也和序列图中的对象的表示方式一样,使用包围名称的矩形框来标记,所显示的对象及其类的名称带有下划线,二者用冒号隔开,使用“对象名 :类名”的形式,与序列图不同的是,对象的下部没有一条被成为“生命线”的垂直虚线,并且对象存在多对象的形式。2消息在协作图中,可以通过一系列的消息来描述系统的动态行为。 在协作图中,消息使用带有标签的箭头来表示,它附在连接发送者和接收者的链上