《类图实例和习题.ppt》由会员分享,可在线阅读,更多相关《类图实例和习题.ppt(25页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、建立系统静态图的过程是对系统领域问题及其解决方案的分析和设计的过程。静态图设计的主要内容是类图的建立。建立类图的步骤:1.研究分析问题领域,确定系统的需求。2.发现类和对象,明确类的属性和操作。3.发现类之间的静态关系,一般与特殊关系,整体和部分关系,类之间的继承性和多重性。4.设计类与关系。5.绘制类图并编制相应的说明。部分文档描述:系统为每个读者建立一个账户,并给读者发放读者证,(可以提供读者证号、读者姓名),账户中存储读者的个人信息、借阅信息以及预订信息等,持有读者证可以借阅图书、返还图书、查询图书信息、预订图书和取消预订。在借阅图书时,需要输入读者所借阅的图书名、ISBN号,然后输入读
2、者的读者证号和姓名,完成后提交所填表格,系统验证读者是否有效。如果读者有效,借阅请求被接受,系统查询读者所借阅的图书是否存在。若存在,则读者可借出图书,系统记录借阅记录,如果读者所借阅的图书已被借出,读者还可预订该图书。读者如期还书后,系统清除借阅记录,否则需缴纳罚金。读者还可以续借图书,系统还包括图书挂失和读者证挂失等功能。同时,以上部分操作还需要系统管理员和图书管理员进行参与。结合以上分析,采用识别类的方法,暂时可以识别出“图书管理系统”中的一些类。实例实例:图书管理系统图书管理系统1.识别识别“图书管理系统图书管理系统”中的类中的类(1)寻找名词)寻找名词阅读系统文档和用例(尤其是用例事
3、件流),找出阅读系统文档和用例(尤其是用例事件流),找出名词或名词短语,注意区别类和属性,筛选后,去名词或名词短语,注意区别类和属性,筛选后,去除冗余的、与系统无关的、非独立的类。除冗余的、与系统无关的、非独立的类。(2)类)类-职责职责-协作方法协作方法CRC方法,模拟开发人员方法,模拟开发人员”处理卡片处理卡片”的一个过程。的一个过程。开发人员在执行一个处理实例(即一个用例)的同开发人员在执行一个处理实例(即一个用例)的同时,将类名赋予的职责和合作者填入卡片,以此时,将类名赋予的职责和合作者填入卡片,以此来确定类。来确定类。(3)根据)根据MVC模式寻找模式寻找根据用例图找出边界类;在用例
4、图中找出控制类;根据用例图找出边界类;在用例图中找出控制类;数据库设计完毕后,可以根据数据表获得实体类。数据库设计完毕后,可以根据数据表获得实体类。(4)有些类无法通过上述方法找到,可能还需要)有些类无法通过上述方法找到,可能还需要从后面的动态模型(如时序图和协作图)中通过从后面的动态模型(如时序图和协作图)中通过分析对象来确定。分析对象来确定。主要参与者:系统管理员、图书管理员、读者主要用例:Manage User(用户管理)、Manage Book(图书管理)、Manage Reader(读者管理)、Borrow-Lend(借阅管理)等。1.Manage User:完成系统用户的增加、删除
5、、修改、查询等功能。2.Manage Book:完成基本信息设置(图书类型设置、借阅种类设置)和图书信息管理(图书信息设置、图书信息查询)功能。3.Manage Reader:完成读者办证、读者信息查询、读者证挂失功能。4.Borrow-Lend:完成借书、还书、续借、超期罚款、图书预订、取消预订、图书挂失等功能。序号序号参与者参与者用例名称用例名称用例用例说说明明1Administrator(系系统统管理管理员员)Add User增加系增加系统统用用户户2Delete User删删除系除系统统用用户户3Update User修改系修改系统统用用户户4Query User查询查询系系统统用用户
6、户5Librarian(图书图书管理管理员员)Set Book Type进进行行图书类图书类型型设设置置6Set Brrow Type进进行借行借阅阅种种类设类设置置7Set BookInfo进进行行图书图书信息信息设设置置8Set ReaderCard为读为读者者办证办证9Query BookInfo根据需要根据需要进进行行图书图书信息信息查询查询10Query ReaderInfo进进行行读读者信息者信息查询查询11Brrow Book处处理理读读者的借者的借书请书请求求12Return Book处处理理读读者的者的还书请还书请求求13Renew Book处处理理读读者的者的续续借借图书请
7、图书请求求14Fine收取收取读读者的超期者的超期罚罚款款15Reserve Book收取收取读读者的者的图书预订请图书预订请求求16Cancle Reservation处处理理读读者的取消者的取消预订请预订请求求17Lose Book处处理理图书图书挂失挂失18Lose ReaderCard处处理理读读者者证证挂失挂失图书管理系统的用例19Reader(读读者者)Login登登录录系系统统 20Reserve Book申申请预订图书请预订图书21Cancle Reservation取消取消图书预订图书预订22Query BookInfo根据需要根据需要进进行行图书图书信息信息查询查询23Qu
8、ery ReaderInfo进进行行读读者信息者信息查询查询24Renew Book申申请续请续借借图书图书序号序号参与者参与者用例名称用例名称用例用例说说明明顶层用例图系统管理员Manage User 子用例图图书管理员Manage Reader 子用例图图书管理员Borrow-Lend子用例图读者Borrow-Lend子用例图序号序号类类名称名称类说类说明明1Admin抽象出来的管理抽象出来的管理员员2Administrator进进行系行系统统管理的管理管理的管理员员3Librarian进进行行读读者管理、者管理、图书图书管理、借管理、借阅阅管理的管理的图图书书管理管理员员4Reader读
9、读者基本信息者基本信息5ReaderType读读者者类别类别信息信息6Book图书图书基本信息基本信息7BookType图书类别图书类别信息信息8Borrow读读者借者借阅图书阅图书信息信息9BorrowType读读者借者借阅类阅类型信息型信息10Store图书图书在在图书馆图书馆中的存放位置信息中的存放位置信息11Reserve读读者者预订图书预订图书信息信息12Fine读读者者罚罚款信息款信息“图书管理系统图书管理系统”中的类中的类系统的用户接口可以作为系统的边界类系统的用户接口可以作为系统的边界类:(如果采用页面形式表示用户接口,可把页面看成边界类)(如果采用页面形式表示用户接口,可把页
10、面看成边界类)Login(登录)、(登录)、Main(主界面)、(主界面)、SystemManage(系统管理)、(系统管理)、ReadrManage(读者管理)、(读者管理)、BookManage(图书管理)、(图书管理)、BorrowManage(借阅管理)、(借阅管理)、FineManage(罚款管理)等窗体(罚款管理)等窗体为方便管理,设计为方便管理,设计2个包,个包,Business Package(业务包)、(业务包)、GUI Package(图形用户接口包)(图形用户接口包)2.绘制类图1.根据以下描述,给出系统的UML类设计方案。系统名称:农夫果园游戏系统任务角色:农夫(Far
11、mer)、市场调查员(Inquirer)、农场主(Boss)系统实物:各种水果(Fruit)、果园(Garden)功能需求:农夫可以根据市场行情种植各种水果;市场调查员可以了解市场行情;农场主可以向农夫、市场调查员发布命令;各种果树都具有种植(plant)、成长(grow)、收获(harvest)行为;果园是人物和实物进行交易的场所。2.每个HouseKeeper都有一个Manager负责,有的Manager可能负责多个HouseKeeper,有的Manager可能一个HouseKeeper都没有,下面哪幅图适合描述类HouseKeeper和类Manager的关系?AB3.为下面这段Java代
12、码补充类图。Public class Student private String name;public void setName(String name)this.name=name;public String getName return this.name;4.根据下面的陈述绘制类图学生包括本科生、研究生两种。研究生可以利用课余时间担任助教。教师包括讲师和教授两种。一名助教可以为一位讲师或一位教授助课,一位 讲师只能有一名助教,一位教授可以有5名助教。5.按如下描述绘制出“飞船系统”的类图。“神舟”六号飞船是“神舟”飞船系列的一种,它由轨道舱、返回舱和逃逸救生塔组成。航天员可以在返回舱
13、内驾驶飞船,轨道舱则是航天员工作和休息的场所。在紧急情况下,可以利用逃逸救生塔逃生。在飞船两侧有多个太阳能电池翼,可以为飞船提供电能。6.按如下描述绘制出“自制机器人系统”的类图这张图的焦点在那些让机器人在路上行走的机制所对应的类上。通过分析可以发现一个虚类Motor和两个由它派生出来的类:SteeringMotor和MainMotor。这两个类都是从父类Motor继承了5个方法:move()、stop()、resetConter()、status()Distance()。这两个类又是另一个类Driver的一部分。类PathAgent和Driver有一个一对一的关系,类PathAgent和CollisionSensor有1对n的关系。