UML期末作业顺序图
- 格式:ppt
- 大小:717.00 KB
- 文档页数:7
UML类图记忆⼝诀
UML类图在设计模式书籍中⽤的⽐较多,经常忘记,⼝诀挺重要的,⽐如我们从⼩到⼤,除了乘法⼝诀、元素周期表等⼝诀形式的知识,其它的知识都基本忘记了,
所以编写⼝诀如下
1、三级⽯
2、见关⼀
3、零⾜迹
记忆⽅式:玩通关游戏时,装备上打了三级⽯头(三级⽯),才打到第⼀关(见关⼀),还没开始(零⾜迹)。
该⼝诀适合看UML类图⽤,不适合画UML类图(画图还需要记忆箭头指向顺序),不过⼀般画图的机会不多,毕竟敲代码的时候多。
备注:
每⼀句后两字分别代表实线,虚线或者实⼼空⼼。
空三⾓实线指向被继承,空三⾓虚线指向实现
箭头实线指向关联,箭头虚线指向依赖
菱形实⼼指向组合,菱形空⼼指向聚合
⽰例:。
《面向对象分析与设计(UML)》课程大作业大纲一、课程简介《面向对象分析与设计(UML)》是一门是软件工程专业重要的、实践性很强的一门必修课。
UML是一种定义良好、易于表达、功能强大且适用于各种应用领域的建模语言,已被OMG采纳为标准。
目前UML已成为面向对象技术领域内占主导地位的标准建模语言。
掌握UML 语言,不仅有助于理解面向对象的分析与设计方法,也有助于对软件开发全过程的理解。
通过该课程的学习,使学生能基本掌握面向象技术基本概念和面向对象分析与设计方法,能够使用UML 语言来进行初步的系统分析与设计。
二、课程目标结合专业培养目标,本课程大作业要达到的目标如下:1.知识与技能目标通过本课程的学习,使学生掌握面向对象分析与设计基本理论和使用统一建模语言(UML)实现软件生命周期模型的六大阶段(需求分析,概要设计,详细设计,编码,测试,维护)的一般性原理、主要思想、关键技术;了解和掌握各阶段的规范文档书写格式,通过实验项目实践活动,培养学生理解和应用相关的知识技能,开发软件项目。
2.过程与方法目标了解面向对象分析与设计的发展历史及趋势,掌握运用UML 理论及方法解决实际问题的分析步骤。
通过具体方法的学习与运用,理解它们的优势与不足,从而锻炼和提高思维分析能力(归纳能力,演绎能力,对比分析能力,变通能力,总结能力,抽象能力)。
3.软件工程文档写作目标通过面向对象程序设计实践,培养作为一个软件工程技术人员必须具备的文档写作能力,严谨治学的科学研究态度,为未来的学习、工作和科研奠定良好的理论基础和实践基础。
通过本课程的大作业的训练,使学生在分析问题、解决问题等方面得到锻炼,增强学生调查研究、查阅技术文献、资料、手册以及编写技术文献的能力。
三、作业设计任务由指导教师向学生提供一定数量的设计题目,每一题目所用到的知识至少要覆盖《面向对象分析与设计(UML)》教学大纲中的大部分内容,主要包括利用UML2进行面向对象分析与设计的方法,运用面向对象的一般原则和模式进行应用系统的分析和设计建模。
UML各种图例面向对象的问题的处理的关键是建模问题.建模可以把在复杂世界的许多重要的细节给抽象出.许多建模工具封装了UML(也就是Unified Modeling Language ™),这篇课程的目的是展示出UML的精彩之处.UML中有九种建模的图标,即:∙用例图∙类图∙对象图∙顺序图∙协作图∙状态图∙活动图∙组件图∙配置图本课程中的某些部分包含了这些图的细节信息的页面链接.而且每个部分都有一个小问题,测试一下你对这个部分的理解.为什么UML很重要?为了回答这个问题,我们看看建筑行业.设计师设计出房子.施工人员使用这个设计来建造房子.建筑越复杂,设计师和施工人员之间的交流就越重要.蓝图就成标准文档为了这个行业中的设计师和施工人员的必修课.写软件就好像建造建筑物一样.系统越复杂,参与编写与配置软件的人员之间的交流也就越重要.在过去十年里UML就成为分析师,设计师和程序员之间的“建筑蓝图”.现在它已经成为了软件行业的一部分了.UML提供了分析师,设计师和程序员之间在软件设计时的通用语言.UML被应用到面向对象的问题的解决上.想要学习UML必须熟悉面向对象解决问题的根本原则――都是从模型的建造开始的.一个模型model就是根本问题的抽象.域domain就是问题所处的真实世界.模型是由对象objects组成的,它们之间通过相互发送消息messages来相互作用的.记住把一个对象想象成“活着的”.对象有他们知道的事(属性attributes)和他们可以做的事(行为或操作behaviors or operations).对象的属性的值决定了它的状态state.类Classes是对象的“蓝图”.一个类在一个单独的实体中封装了属性(数据)和行为(方法或函数).对象是类的实例instances.用例图用例图Use case diagrams描述了作为一个外部的观察者的视角对系统的印象.强调这个系统是什么而不是这个系统怎么工作.用例图与情节紧紧相关的.情节scenario是指当某个人与系统进行互动时发生的情况.下面是一个医院门诊部的情节.“一个病人打电话给门诊部预约一年一次的身体检查.接待员找出在预约记录本上找出最近的没有预约过的时间,并记上那个时间的预约记录.”用例Use case是为了完成一个工作或者达到一个目的的一系列情节的总和.角色actor是发动与这个工作有关的事件的人或者事情.角色简单的扮演着人或者对象的作用.下面的图是一个门诊部Make Appointment用例.角色是病人.角色与用例的联系是通讯联系communication association(或简称通讯communication)标准文档角色是人状的图标,用例是一个椭圆,通讯是连接角色和用例的线.一个用例图是角色,用例,和它们之间的联系的集合.我们已经把Make Appointment作为一个含有四个角色和四个用例的图的一部分.注意一个单独的用例可以有多个角色.用例图在三个领域很有作用.决定特征(需求).当系统已经分析好并且设计成型时,新的用例产生新的需求标准文档∙客户通讯.使用用例图很容易表示开发者与客户之间的联系.∙产生测试用例.一个用例的情节可能产生这些情节的一批测试用例.类图类图Class diagram通过显示出系统的类以及这些类之间的关系来表示系统.类图是静态的-它们显示出什么可以产生影响但不会告诉你什么时候产生影响.下面是一个顾客从零售商处预定商品的模型的类图.中心的类是Order.连接它的是购买货物的Customer和Payment.Payment有三种形式:Cash,Check,或者Credit.订单包括OrderDetails(line item),每个这种类都连着Item.标准文档UML类的符号是一个被划分成三块的方框:类名,属性,和操作.抽象类的名字,像Payment是斜体的.类之间的关系是连接线.类图有三种关系.关联association-表示两种类的实例间的关系.如果一个类的实例必须要用另一个类的实例才能完成工作时就要用关联.在图中,关联用两个类之间的连线表示.标准文档标准文档为了简单地表示出复杂的类图,可以把类组合成包packages.一个包是UML上有逻辑关系的元件的集合.下面这个图是是一个把类组合成包的一个商业模型.dependencies关系.如果另一个的包B改变可能会导致一个包A改变,则包A依赖包B.包是用一个在上方带有小标签的矩形表示的.包名写在标签上或者在矩形里面.点化线箭头表示依赖对象图Object diagrams用来表示类的实例.他们在解释复杂关系的细小问题时(特别是递归关系时)很有用.这个类图示一个大学的Department可以包括其他很多的Departments.标准文档这个对象图示上面类图的实例.用了很多具体的例子.UML中实例名带有下划线.只要意思清楚,类或实例名可以在对象图中被省略.标准文档每个类图的矩形对应了一个单独的实例.实例名称中所强调的UML图表.类或实例的名称可能是省略对象图表只要图的意义仍然是明确的.顺序图类图和对象图是静态模型的视图.交互图是动态的.他们描述了对象间的交互作用.顺序图将交互关系表示为一个二维图.纵向是时间轴,时间沿竖线向下延伸.横向轴代表了在协作中各独立对象的类元角色.类元角色用生命线表示.当对象存在时,角色用一条虚线表示,当对象的过程处于激活状态时,生命线是一个双道线.消息用从一个对象的生命线到另一个对象生命线的箭头表示.箭头以时间顺序在图中从上到下排列.标准文档协作图协作图也是互动的图表.他们像序列图一样也传递相同的信息,但他们不关心什么时候消息被传递,只关心对象的角色.在序列图中,对象的角色放在上面而消息则是连接线.标准文档对象角色矩形上标有类或对象名(或者都有).类名前面有个冒号(:).协作图的每个消息都有一个序列号.顶层消息的数字是1.同一个等级的消息(也就是同一个调用中的消息)有同样的数字前缀,再根据他们出现的顺序增加一个后缀1,2等等.状态图对象拥有行为和状态.对象的状态是由对象当前的行动和条件决定的.状态图statechart diagram显示出了对象可能的状态以及由状态改变而导致的转移.标准文档我们的模型例图建立了一个银行的在线登录系统.登录过程包括输入合法的密码和个人账号,再提交给系统验证信息.登录系统可以被划分为四种不重叠的状态:Getting SSN, Getting PIN, Validating, 以及 Rejecting.每个状态都有一套完整的转移transitions来决定状态的顺序.标准文档状态是用圆角矩形来表示的.转移则是使用带箭头的连线表示.触发转移的事件或者条件写在箭头的旁边.我们的图上有两个自转移.一个是在Getting SSN,另一个则在上Getting PIN.初始状态(黑色圆圈)是开始动作的虚拟开始.结束状态也是动作的虚拟结束.事件或条件触发动作时用(/动作)表示.当进入Validating状态时,对象并不等外部事件触发转移.取而代之,它产生一个动作.动作的结果决定了下一步的状态.活动图活动图activity diagram是一个很特别的流程图.活动图和状态图之间是有关系的.状态图把焦点集中在过程中的对象身上,而活动图则集中在一个单独过程动作流程.活动图告诉了我们活动之间的依赖关系.对我们的例子来说,我们使用如下的过程.“通过ATM来取钱.”这个活动有三个类Customer, ATM和 Bank.整个过程从黑色圆圈开始到黑白的同心圆结束.活动用圆角矩形表示.标准文档标准文档标准文档。
UML实践----用例图、顺序图、状态图、类图、包图、协作图2009-01-20 作者:Randy Miller 来源:网络面向对象的问题的处理的关键是建模问题。
建模可以把在复杂世界的许多重要的细节给抽象出。
许多建模工具封装了UML(也就是Unified Modeling Language™),这篇课程的目的是展示出UML的精彩之处。
UML中有九种建模的图标,即:∙用例图∙类图∙对象图∙顺序图∙协作图∙状态图∙活动图∙组件图∙配置图本课程中的某些部分包含了这些图的细节信息的页面链接。
而且每个部分都有一个小问题,测试一下你对这个部分的理解。
为什么UML很重要?为了回答这个问题,我们看看建筑行业。
设计师设计出房子。
施工人员使用这个设计来建造房子。
建筑越复杂,设计师和施工人员之间的交流就越重要。
蓝图就成为了这个行业中的设计师和施工人员的必修课。
写软件就好像建造建筑物一样。
系统越复杂,参与编写与配置软件的人员之间的交流也就越重要。
在过去十年里UML就成为分析师,设计师和程序员之间的“建筑蓝图”。
现在它已经成为了软件行业的一部分了。
UML提供了分析师,设计师和程序员之间在软件设计时的通用语言。
UML被应用到面向对象的问题的解决上。
想要学习UML必须熟悉面向对象解决问题的根本原则――都是从模型的建造开始的。
一个模型model就是根本问题的抽象。
域domain就是问题所处的真实世界。
模型是由对象objects组成的,它们之间通过相互发送消息messages来相互作用的。
记住把一个对象想象成“活着的”。
对象有他们知道的事(属性attributes)和他们可以做的事(行为或操作behaviors or operations)。
对象的属性的值决定了它的状态state。
类Classes是对象的“蓝图”。
一个类在一个单独的实体中封装了属性(数据)和行为(方法或函数)。
对象是类的实例instances。
用例图用例图Use case diagrams描述了作为一个外部的观察者的视角对系统的印象。
1.UML如何表示类?类图标中可以指明哪些信息?类是描述一类对象的特征和行为,类图包含一组、接口及他们之间的关联、依赖和泛化的关系。
它不仅显示了信息的结构,同时还描述了系统对象的的行为。
2.什么是类的多重性(关联的基数)?多重性怎么表示?多重性是对象之间关联的一个重要方面,它说明了在关联中的一个类的对象可以对应另一个类的多个对象。
主要包含一组上下限数,用来指出可被允许生成的实例(instance)数量,即最多可以生成多少数目(上限),最少不得低于多少数目(下限)。
关联的两端以"下限..上限"的格式标示出多重性,如图2-12中的1..*。
星号(*)代表无指定上限,下限最低为0。
如果上下限数相同,标示出一个数目就可以了3.两者对象之间能够以多种方式关联吗?关联两边的"employee"和“employer”标示了两者之间的关系,而数字表示两者的关系的限制,是关联两者之间的多重性。
通常有“*”(表示所有,不限),“1”(表示有且仅有一个),“0...”(表示0个或者多个),“0,1”(表示0个或者一个),“n...m”(表示n到m个都可以),“m...*”(表示至少m个)。
在关联中有一种叫“限定关联”,还有一种谓之自身关联。
另外,对象之间的关联就没那么复杂,只是将类的关联实例化而已4.什么是约束?为什么要对类图附加注释?约束用来约束MUL成员的语义。
约束用举例在大括号内的条件来表示({contrraint}),可以直接放在图中,类图除了在设计新系统方面的用途外,它们还能用来记录一个存在系统(称它为“遗产”)的对象现在如何交互5.聚集和组成之间有什么区别?聚合关系完全是概念上的,只是区分了整体与组成部分,没有改变整体与其组成部分之间的关联导航的含义,也没有将整体与部分的生命周期联系起来。
而组合是聚合的变种,整体与部分之间有很强的所有关系,也就是说,在组合关系中,一个对象一次只是一个组合的一部分,而在简单的聚合关系中,一个部分可以被好几个整体共享。
UML中数据流图,⽤例图,类图,对象图,⾓⾊图,活动图,序列图详细讲述保存供参考这个⽂章,是我在急需的情况下在园⼦⾥搜索到的,原创作者是:DO-websoftware,为了⾃⼰看⽅便,所以复制到我的空间,希望原创者不要介意哦~~~~很详细的介绍,对我的帮助很⼤,谢谢哦。
类图,对象图,⾓⾊图:⼀、UML中基本的图范畴:在 UML 2 中有⼆种基本的图范畴:结构图和⾏为图。
每个 UML 图都属于这⼆个图范畴。
结构图的⽬的是显⽰建模系统的静态结构。
它们包括类,组件和(或)对象图。
另⼀⽅⾯,⾏为图显⽰系统中的对象的动态⾏为,包括如对象的⽅法,协作和活动之类的内容。
⾏为图的实例是活动图,⽤例图和序列图。
⼆、UML中的类图:1.类图的表⽰:类的 UML 表⽰是⼀个长⽅形,垂直地分为三个区,如图 1 所⽰。
顶部区域显⽰类的名字。
中间的区域列出类的属性。
底部的区域列出类的操作。
在⼀个类图上画⼀个类元素时,你必须要有顶端的区域,下⾯的⼆个区域是可选择的(当图描述仅仅⽤于显⽰分类器间关系的⾼层细节时,下⾯的两个区域是不必要的)。
描述:顶部区域显⽰类的名字。
中间的区域列出类的属性。
底部的区域列出类的操作。
当在⼀个类图上画⼀个类元素时,你必须要有顶端的区域,下⾯的⼆个区域是可选择的(当图描述仅仅⽤于显⽰分类器间关系的⾼层细节时,下⾯的两个区域是不必要的)。
·类名:如果是抽象类,则采⽤斜体·类属性列表:name : attribute type 如 flightNumber : Integer,这是最常见的表达形式name : attribute type = default value 如 balance : Dollars = 0,这是带有默认值的表达形式·类⽅法列表:name(parameter list) : type of value returned注意:在业务类图中,属性类型通常与单位相符,这对于图的可能读者是有意义的(例如,分钟,美元,等等)。
uml交互图(顺序图、通信图、鲁棒图、定时图)交互与交互图交互的概念一次交互就是指在特定语境中,为了实现某一个目标,而在一组对象之间进行交换的一组消息所表示的行为消息UML中的4种交互图顺序图:顺序图是一种强调消息时间顺序的交互图,为读者提供了控制流随着时间推移的清晰的可视化轨迹通信图:UML 2.0中的通信图实际上就是UML1中的协作图,它强调的是参加交互的对象的组织,为读者提供了在协作对象结构组织的语境中观察控制流的一个清晰的可视化轨迹定时图:采用了一种带数字刻度的时间轴来精确地描述消息的顺序交互概述图:是交互图和活动图的混合物如何阅读交互图阅读顺序图顺序图的主要元素对象与角色:最顶上一排矩形框。
在交互图中,参与交互的对象既可以是具体的事物,又可以是原型化的事物。
作为具体的事物,一个对象代表现实世界中的某个东西。
例如,aOrder作为类Order的一个实例,可以代表一个特定的订单;而如果作为一个原型化的事件,则aOrder可以代表类Order 的任何一个实例。
生命线与控制焦点:每个对象都有自己的生命线,对象生命线是一条垂直的虚线,用来表示一个对象在一段时间内存在消息:用来描述对象之间所进行的通信的,该信息带有对将要发生的活动的期望。
当传送一个消息时,它所引起的动作是用一个通过对计算过程的抽象而得到的可执行语句(就是方法头)。
消息分为五种:调用、返回、发送、创建和销毁调用:表示调用某个对象一个操作顺序编号(第几步的编号):整个消息的传递过程就形成了一个完整的序列,因此通过在每个消息的前面加上一个用冒号隔开的顺序号来表示其顺序。
除了顺序编号之外,还可以采用嵌套方案:读图小结第1步在dispatchForm(分发窗体)中,对于某个已支付的Order进行分发时,就会调用该订单(一个Order类的实例对象aOrder)的dispatch()方法。
1.1 dispatch()方法将逐个调用[for each orderitem]该Order对应的所有OrderItem对象的getPeddleryId()方法获取供应商ID 1.2(PeddleryId),1.1.1而OrderItem对象则是通过其所对应的Product对象来的getPeddleryId()方法来获取供应商ID。
UML各种图例——用例图、类图、状态图、包图、协作图、顺序图面向对象的问题的处理的关键是建模问题.建模可以把在复杂世界的许多重要的细节给抽象出.许多建模工具封装了UML(也就是Unified Modeling Language™),这篇课程的目的是展示出UML的精彩之处.UML中有九种建模的图标,即:∙用例图∙类图∙对象图∙顺序图∙协作图∙状态图∙活动图∙组件图∙配置图本课程中的某些部分包含了这些图的细节信息的页面链接.而且每个部分都有一个小问题,测试一下你对这个部分的理解.为什么UML很重要?为了回答这个问题,我们看看建筑行业.设计师设计出房子.施工人员使用这个设计来建造房子.建筑越复杂,设计师和施工人员之间的交流就越重要.蓝图就成为了这个行业中的设计师和施工人员的必修课.写软件就好像建造建筑物一样.系统越复杂,参与编写与配置软件的人员之间的交流也就越重要.在过去十年里UML就成为分析师,设计师和程序员之间的“建筑蓝图”.现在它已经成为了软件行业的一部分了.UML提供了分析师,设计师和程序员之间在软件设计时的通用语言.UML被应用到面向对象的问题的解决上.想要学习UML必须熟悉面向对象解决问题的根本原则――都是从模型的建造开始的.一个模型model就是根本问题的抽象.域domain就是问题所处的真实世界.模型是由对象objects组成的,它们之间通过相互发送消息messages来相互作用的.记住把一个对象想象成“活着的”.对象有他们知道的事(属性attributes)和他们可以做的事(行为或操作behaviors or operations).对象的属性的值决定了它的状态state.类Classes是对象的“蓝图”.一个类在一个单独的实体中封装了属性(数据)和行为(方法或函数).对象是类的实例instances.用例图用例图Use case diagrams描述了作为一个外部的观察者的视角对系统的印象.强调这个系统是什么而不是这个系统怎么工作.用例图与情节紧紧相关的.情节scenario是指当某个人与系统进行互动时发生的情况.下面是一个医院门诊部的情节.“一个病人打电话给门诊部预约一年一次的身体检查.接待员找出在预约记录本上找出最近的没有预约过的时间,并记上那个时间的预约记录.”用例Use case是为了完成一个工作或者达到一个目的的一系列情节的总和.角色actor是发动与这个工作有关的事件的人或者事情.角色简单的扮演着人或者对象的作用.下面的图是一个门诊部Make Appointment用例.角色是病人.角色与用例的联系是通讯联系communication association(或简称通讯communication)角色是人状的图标,用例是一个椭圆,通讯是连接角色和用例的线.一个用例图是角色,用例,和它们之间的联系的集合.我们已经把Make Appointment作为一个含有四个角色和四个用例的图的一部分.注意一个单独的用例可以有多个角色.用例图在三个领域很有作用.∙决定特征(需求).当系统已经分析好并且设计成型时,新的用例产生新的需求∙客户通讯.使用用例图很容易表示开发者与客户之间的联系.∙产生测试用例.一个用例的情节可能产生这些情节的一批测试用例.类图类图Class diagram通过显示出系统的类以及这些类之间的关系来表示系统.类图是静态的-它们显示出什么可以产生影响但不会告诉你什么时候产生影响.下面是一个顾客从零售商处预定商品的模型的类图.中心的类是Order.连接它的是购买货物的Customer和Payment.Payment有三种形式:Cash,Check,或者Credit.订单包括OrderDetails(line item),每个这种类都连着Item.每个类图包括类,关联和多样性表示.方向性和角色是为了使图示得更清楚时可选的项目.包和对象图为了简单地表示出复杂的类图,可以把类组合成包packages.一个包是UML上有逻辑关系的元件的集合.下面这个图是是一个把类组合成包的一个商业模型. dependencies关系.如果另一个的包B改变可能会导致一个包A改变,则包A依赖包B.包是用一个在上方带有小标签的矩形表示的.包名写在标签上或者在矩形里面.点化线箭头表示依赖对象图Object diagrams用来表示类的实例.他们在解释复杂关系的细小问题时(特别是递归关系时)很有用.这个类图示一个大学的Department可以包括其他很多的Departments.这个对象图示上面类图的实例.用了很多具体的例子.UML中实例名带有下划线.只要意思清楚,类或实例名可以在对象图中被省略.每个类图的矩形对应了一个单独的实例.实例名称中所强调的UML图表.类或实例的名称可能是省略对象图表只要图的意义仍然是明确的.顺序图类图和对象图是静态模型的视图.交互图是动态的.他们描述了对象间的交互作用.顺序图将交互关系表示为一个二维图.纵向是时间轴,时间沿竖线向下延伸.横向轴代表了在协作中各独立对象的类元角色.类元角色用生命线表示.当对象存在时,角色用一条虚线表示,当对象的过程处于激活状态时,生命线是一个双道线.消息用从一个对象的生命线到另一个对象生命线的箭头表示.箭头以时间顺序在图中从上到下排列.协作图协作图也是互动的图表.他们像序列图一样也传递相同的信息,但他们不关心什么时候消息被传递,只关心对象的角色.在序列图中,对象的角色放在上面而消息则是连接线.对象角色矩形上标有类或对象名(或者都有).类名前面有个冒号(:).协作图的每个消息都有一个序列号.顶层消息的数字是1.同一个等级的消息(也就是同一个调用中的消息)有同样的数字前缀,再根据他们出现的顺序增加一个后缀1,2等等.状态图对象拥有行为和状态.对象的状态是由对象当前的行动和条件决定的.状态图statechart diagram显示出了对象可能的状态以及由状态改变而导致的转移.我们的模型例图建立了一个银行的在线登录系统.登录过程包括输入合法的密码和个人账号,再提交给系统验证信息.登录系统可以被划分为四种不重叠的状态:Getting SSN, Getting PIN, Validating, 以及Rejecting.每个状态都有一套完整的转移transitions来决定状态的顺序.状态是用圆角矩形来表示的.转移则是使用带箭头的连线表示.触发转移的事件或者条件写在箭头的旁边.我们的图上有两个自转移.一个是在Getting SSN,另一个则在上Getting PIN.初始状态(黑色圆圈)是开始动作的虚拟开始.结束状态也是动作的虚拟结束.事件或条件触发动作时用(/动作)表示.当进入Validating状态时,对象并不等外部事件触发转移.取而代之,它产生一个动作.动作的结果决定了下一步的状态.活动图活动图activity diagram是一个很特别的流程图.活动图和状态图之间是有关系的.状态图把焦点集中在过程中的对象身上,而活动图则集中在一个单独过程动作流程.活动图告诉了我们活动之间的依赖关系.对我们的例子来说,我们使用如下的过程.“通过ATM来取钱.”这个活动有三个类Customer, ATM和Bank.整个过程从黑色圆圈开始到黑白的同心圆结束.活动用圆角矩形表示.。
课程名称:UML系统分析与设计姓名:班级:软件132班学号: ************ 指导老师:***作业一:绘制q q群的基础用例图QQ群操作主用例图(高层用例图)QQ群用户组成用例图查找添加群用例图进入群空间操作用例图对qq群进行操作的用例图查看QQ群资的用例图QQ群消息设置的用例图qq群内成员管理的用例图作业二:类图及其关系下面是系统分析员和一名篮球教练的谈话,用以建立一个篮球比赛的模型,谈话过程如下:分析员:教练,请大致介绍一下篮球比赛?教练员:比赛的目标是要把篮球投入篮框并且要尽量比对手得更多的分。
每个篮球队由5名队员组成,两名后卫、两名前锋和一名中锋。
每个队要将球推进到篮筐附近,将篮球投中篮筐。
分析员:如何将球推进?教练员:通过传球和运球。
但是某一方必须在规定的进攻时间内投篮。
分析员:进攻的时间是多少呢!?教练员:在某一方获得球权之后,必须在规定的进攻时间内投篮,否则犯规。
美国职业篮球比赛规定的进攻时间是24秒,国际篮球比赛的规定是30秒。
分析员:如果计算篮球比赛得分呢?教练员:在三分线之内没投入篮框一个球得两分,三分线外投入一次得三分,一次罚球得一分。
顺便说一下,罚球是对方犯规之后裁判判罚的投球,如果某个队员犯规了,裁判暂停比赛,由被侵犯的队员在罚球线处罚球分析员:能够详细说一下每个篮球队员在比赛中的情况好吗!?教练员:后卫队员通常主要是运球和传球,他们一般比前锋队员要矮小,前锋队员通常又比中锋矮。
所有队员都必须能够运球、传球、投球和抢篮板球,大部分抢篮板球和中距离投篮的工作都有前锋队员完成,中锋通常距离篮框最近,通常由他来进行篮下进攻分析员:篮球比赛的场地大小是怎么样的呢!?另外,每场比赛的时间是多少?教练员:国际比赛场地是28米长、15米宽。
篮框离地面3.05米高。
在职业篮球比赛中,一场比赛48分钟,分为四节,每节12分钟。
在国际篮联的比赛中,一场比赛40分钟,分为上下半场,各20分钟,有专门的比赛时钟记录比赛的剩余时间还有多少…上述只是部分谈话记录,但是已经涵盖了基本的信息,现在作业要求完成以下内容:•确定你设计的篮球比赛系统模型的类以及它们包含的信息(名称、属性和方法)•分析系统并确定这些类之间的关系(依赖、泛化、实现、关联),如果是关联关系还需要给出关联的属性作业三:顺序图•顾客购买一罐饮料的时序图(投入的钱数不正确)•投钱少•投钱多•顾客购买一罐饮料的时序图(没有所选择类型的商品)作业四:状态建模事件是指在某个时刻发生的事情,如本篮球赛比赛系统中,初始化时间(TimerInit)、开始计时(TimerBegin)、时间暂停(TimerPause)、进球(shot_in)、未进球(shot_out)、犯规(foul)、换人(exchangeplayer)等。
UML期末大作业一、作业目的与任务加深和巩固本学期课堂所学内容,掌握使用Rational Rose2003进行软件建模的技能。
同时,掌握面向对象的思想和UML的基本概念,并能够利用面向对象的思想进行系统分析和设计。
熟悉软件开发环境,学习软件开发小组的组织和管理,并熟悉软件系统的分析和设计。
二、作业要求每位同学根据结合自身情况,选择一个课题进行分析设计,具体应包含以下一些步骤:①需求:分析系统的需求,撰写需求陈述文档。
建立用例模型:包括软件系统的用例图以及关键用例的用例描述(用例规约)。
②静态分析:建立系统的类图。
③动态分析:分析系统的用例模型,选择合适的平台和模型详细描述用例的设计与实现,包括顺序图、协作图、活动图以及状态图。
④设计:建立系统的构件图和部署图。
第17周最后一次课,每位同学必须上交打印稿三、课题选择【1】网上商品商城实现一个网上商品销售系统,具体要求如下:1. 商品类别维护(类别可分多级);2. 商品信息维护;3. 仓库管理员维护进货信息;4. 可以在网上按照各种条件进行商品查询,查看商品,如果需要购买商品,则需要注册;5. 管理员看到订单后,进行处理,对应处理完毕的订单,系统自动标记为已经处理订单;【2】图书管理系统实现某大学图书馆书籍数据库管理系统,要求系统具有如下功能:1. 图书分类管理(可能涉及多级分类);2. 图书入库管理;3. 图书网上查询;4. 借书、还书管理;5. 读者管理(读者分为不同类型读者:本科生、研究生、老师等,不同读者可以借阅的书籍数量不同,不同读者可以借阅时间也不同);6. 读者可以在网上查询自己当前借了哪些书,这些书的归还日期;【3】选修课安排系统完成如下的选修课系统:1. 管理员可以录入本校所有教室;2. 每个学期开学前,每个老师可以登记自己本学期计划开课课程名称、最多招收人数、每周上课的时间(每周上1次课)、本课程是否需要多媒体授课;3. 同学可以随时查询自己选修课的情况4. 老师可以随时查询选修了自己课程的同学名单。
实验五—1 顺序图、协作图一、实验目的1.理解顺序图的基本概念。
2.理解协作图的基本概念。
3.掌握在Rational Rose 中绘制顺序图、协作图的操作方法。
二、实验器材1.计算机一台。
2.Rational Rose 工具软件。
三、实验内容通过对课堂学习和前面的实验,使我们完成了图书馆的管理系统的需求分析,并从业务对象中抽象出了类。
现在需要对前面所给出的用例进行实现,而用例的实现主要由顺序图来描述系统的动态特性,协作图与顺序图是同构的,Rose 可自动转换。
现指派你运用课堂所学的相关知识,完成如下任务:1.对图书管理功能中的借书用例、还书用例进行动态建模。
四、实验步骤4.1 分析阶段的动态建模1.分析:在分析阶段,绘制的顺序图中,所有消息可以使用便于理解的自然语言来描述,并且可以仅在实体类中识别对象职责,而不涉及边界类和控制类。
根据课堂讲授,参见教材P213 可完成借书用例和还书用例分析阶段的动态建模。
2.绘图步骤:(1)鼠标右击导航窗口“Logicl View”节点,选择“New——Package”,建立1 个子包:“Sequence Di ag ra m”(用于存放顺序图、协作图),完成后如图 3.1 所示。
(2)如图 3.2 所示,鼠标右击“Sequence Diagram”子包,选择快捷菜单项“New——Sequence Di ag ram”,创建一张新的顺序图,取名为“借出图书”(注意:为了好对应,顺序图名称最好与相应的用例名称相同)。
鼠标双击新建的顺序图,在右边绘图窗口中将其打开,如图 3.3 所示。
(3)设置支持嵌套消息的环境:选择主菜单项“Tools——O ptions”,打开Rose 环境设置的对话框,点击“D i a g r a m”选项卡,在如图3.4所示界面中,将“D i s p l a y”下的“Hierarchical Message”选中,点击“确定”即可。
图 3.1图 3.2图3.3图3.4(4)绘制类:从导航窗口中,将“Use Case View”节点下的参与者“图书管理员”拖到绘图窗口;将“Class Diagram”包下“BO”实体包中的相关类“Reader”、“ResourceItem”、“ResourceTitle”和“Loan”拖到绘图窗口中,如图3.5 所示。
NANCHANG UNIVERSITY小组概况组号:第 组 学号姓名班级 分工组长 8000113177 高爽超 软工133班 绘制ERP 各种图 组员 8000113166 罗崇飞 软工133班 制做文档组员 8000113174 方赖杨 软工133班 参与绘图讨论,事件流制作 组员8000113136李根华软工133班 参与绘图讨论,界面制作课程名称: UML 建模 题 目: ERP 系统 任课教师: 周翔老师 提交时间: 2015年 6 月 3 日 学 期:2014-2015学年第2学期目录一、前言 (5)1.背景说明 (5)2.需求分析 (5)二、系统模块划分及功能 (5)1.模块划分 (6)1.1基础数据维护模块 (6)1.2信息查询模块 (6)1.3生产管理模块 (6)1.4销售管理模块 (6)1.5采购管理模块 (7)1.6仓库管理模块 (7)1.7数据库管理模块 (7)2.各子系统的功能 (7)2.1管理者子系统 (7)2.2财务子系统 (8)三、用例图 (8)1.主用例图 (8)2.ERP系统界面 (8)3.系统管理模块 (9)3.1数据库管理模块 (9)3.1.1员工信息管理 (10)3.1.2客户信息管理 (10)3.1.3订单信息管理 (10)3.1.4产品信息管理 (11)3.1.5报表信息管理 (11)3.2基础数据维护模块 (12)4.信息查询模块 (12)5.生产管理模块 (13)6.销售管理模块 (14)7.采购管理模块 (14)8.仓库管理模块 (15)9.财务管理模块 (16)四、活动图 (16)1.数据库管理 (16)2.基础信息维护 (16)2.1添加员工信息 (17)2.2修改员工信息 (17)2.3添加订单信息 (18)2.4修改订单信息 (19)2.5添加产品信息 (19)2.6修改产品信息 (20)3.信息查询 (21)3.1订单信息查询 (21)3.2客户信息查询 (22)3.3员工信息查询 (22)3.4产品信息查询 (22)3.5报表查询 (23)4.生产管理 (24)5.销售管理 (25)6.采购管理 (25)7.仓库管理 (27)五、序列图 (28)1.数据库管理 (28)1.1信息添加 (29)1.2信息修改 (30)1.3信息删除 (31)2.基础数据维护 (31)2.1添加员工信息 (32)2.2修改员工信息 (33)2.3添加订单信息 (34)2.4修改订单信息 (35)2.5添加产品信息 (36)2.6修改产品信息 (37)3.信息查询 (38)4.生产管理 (38)5.销售管理 (39)6.采购管理 (39)7.仓库管理 (40)六、类图 (41)1.基础数据维护 (41)2.数据库管理 (42)3.信息查询 (43)七、状态图 (44)1.基础数据模块 (44)2.数据库模块 (45)3.信息查询模块 (45)八、组建图 (46)九、布局图 (47)十、数据模型图 (47)1.基础数据维护 (47)2.数据库管理 (48)十一、用户界面 (49)一、前言1.背景说明企业资源计划或称企业资源规划简称ERP(Enterprise ResourcePlanning),由美国著名管理咨询公司Gartner Group Inc.于1990年提出来的,最初被定义为应用软件,但迅速为全世界商业企业所接受,现已经发展成为现代企业管理理论之一。