《第5章图书管理系统需求建模.ppt》由会员分享,可在线阅读,更多相关《第5章图书管理系统需求建模.ppt(38页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、PPT模板下载:/moban/ 行业PPT模板:/hangye/ 节日PPT模板:/jieri/ PPT素材下载:/sucai/PPT背景图片:/beijing/ PPT图表下载:/tubiao/ 优秀PPT下载:/xiazai/ PPT教程: /powerpoint/ Word教程: /word/ Excel教程:/excel/ 资料下载:/ziliao/ PPT课件下载:/kejian/ 范文下载:/fanwen/ 试卷下载:/shiti/ 教案下载:/jiaoan/ 字体下载:/ziti/ 第5章 图书管理系统需求建模软件工程与软件工程与RoseRose建模案建模案例教程例教程第5章 图
2、书管理系统需求建模 主编:刘志成2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程本章学习导航本章学习导航2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程本章学习要点本章学习要点l Rational Rose的安装的安装l 用例图的组成(参与者和用例)用例图的组成(参与者和用例)l 识别软件系统中的用例识别软件系统中的用例l 描述软件系统中的用例描述软件系统中的用例l 识别用例间的关系(泛化、使用、包含和扩展)识别用例间的关系(泛化、使用
3、、包含和扩展)l 绘制用例图的一些考虑绘制用例图的一些考虑 教学课时:教学课时:8课时课时2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务1 了解用例模型的基本功能和基本组成,理了解用例模型的基本功能和基本组成,理解用例模型在软件系统开发中的重要地位解用例模型在软件系统开发中的重要地位任务目标任务目标l 小组讨论法小组讨论法l 资料查询法资料查询法l 模仿实践模仿实践学习方法学习方法2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任
4、务1 用例模型是把应满足用户需求的基本功能聚合起来表示的强大工具。对于正在构造的新系统,用例描述该系统应该做什么系统应该做什么;对于已构造完毕的系统,用例则反映了系统能够完成什么样的功能系统能够完成什么样的功能。可定制的目标库或编码指南的代码生成机制;从用例模型中受益的人员包括:l客户(或最终用户) ;l开发者 ;l系统集成和测试的人员 ;l其他人员 ;用例模型的功能用例模型的功能2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务 1(1)确定系统应具备哪些功能 。(2)为系统的功能提供清晰一致的描述 。(3)为
5、系统验证工作打下基础。 引入用例的目的引入用例的目的(1)用例)用例 用于描述系统的功能,即从外部用户的角度观察,系统应具备哪些功能,帮助分析人员理解系统的行为,它是对系统功能的宏观描述。 (2)参与者)参与者 是与系统进行交互的外部实体,它可以是系统用户,也可以是其它系统或硬件设备 (3)系统)系统 实现各种用例的“黑盒子” 用例模型的基本组成用例模型的基本组成2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务2确定图书管理系统中的参与者和系统边界确定图书管理系统中的参与者和系统边界任务目标任务目标l 小组讨论
6、法小组讨论法l 资料查询法资料查询法l 模仿实践模仿实践学习方法学习方法2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务2l描述了图书管理业务中读者和图书管理员之间的关系关系。以及图书管理系统的功能功能:读者借阅图书、图书管理员进行借书处理、图书管理员进行图书资料统计、图书管理员维护读者信息等。 典型用例图典型用例图2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务2l是与系统交互交互的人或事。所谓“与系统交互”指的是参与者向系统
7、发送消息,从系统中接收消息,或是在系统中交换信息。 参与者参与者具体表现形式具体表现形式 l系统用户 l其他系统 l一些可以运行的进程 参与者在系统中的地位参与者在系统中的地位 l主要参与者l次要参与者 参与者对用例的作用参与者对用例的作用 l主动参与者l被动参与者 2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务2获取参与者的问题:获取参与者的问题:(1)使用系统主要功能的人是谁(即主要参与者)?(2)需要借助于系统完成日常工作的人是谁?(3)谁来维护和管理系统(次要参与者),保证系统正常工作?(4)系统控制
8、的硬件设备有哪些?(5)系统需要与哪些其它系统交互? (6)对系统产生的结果感兴趣的人或事是哪些? 参与者的确定参与者的确定图图书书管管理理系系统统2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务2 系统是用例模型的一个组成部分,代表的是一部机器机器或一个商务商务活动活动,而并不是真正实现的软件系统。系统的边界用来说明构建的用例模型的应用范围。比如,一台自助式售货机自助式售货机(被看作系统)应提供售货、供货、提取销售款等功能,这些功能在自动售货机之内的区域起作用,自动售货机之外的情况不考虑。 系统系统 用例图中
9、的系统用一个长方框长方框表示,系统的名字写在方框上或方框里面,方框内部还可以包含该系统中的用符号表示的用例。 自助式售货机2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务2 Jacobson给出的用例的定义用例的定义是:用例代表一个系统或系统的一部分行为,是对一组动作序列的描述,系统执行该动作序列来作为参与者产生一个可观察的结果值。 UML中的用例用椭圆椭圆形表示,用例的名字写在椭圆的内部或下方。 用例的定义用例的定义2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案
10、 例 教 程建 模 案 例 教 程任务2(1)用例总由参与者初始化)用例总由参与者初始化 。 用例所代表的功能必须由参与者激活,然后才能执行。 (2)用例为参与者提供值)用例为参与者提供值 。 用例必须为参与者提供实在的值,虽然这个值并不重要,但是能被参与者识别。(3)用例具有完全性)用例具有完全性 。 用例是一个完整的描述。 用例的特征用例的特征 提示:提示:l 用例表示的也是一个类,而不是某个具体的实例。l 用例描述了它代表的功能的各个方面,也就是包含了用例执行期间可能发生的种种情况;l 用例通常使用动名词(借阅图书)命名,而不是名字短语(图书),也不是一个句子(读者借阅图书)。2022-
11、7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程课堂实践 1(1)通过学习小组讨论和上网查询资料形式完成。(2)使用手绘形式绘制出B-C电子商务系统的参与者和系统边界。(3)不需要确定系统的用例。操作提示操作提示(1)小组讨论用例模型是主要的功能是什么?(2)根据您的经验,使用用例模型来描述需求与使用文字的方式来描述需求有什么不同?(3)举例说明用例模型由哪三部分组成?(4)分析第4章B-C电子商务系统的需求,确定该系统中的参与者。并说明你确定的根据。(5)确定B-C电子商务系统的系统边界。 操作要求操作要求2022-7-9
12、软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务3 确定图书管理系统中的用例,绘制图书管确定图书管理系统中的用例,绘制图书管理系统的用例图。并对用例进行描述理系统的用例图。并对用例进行描述任务目标任务目标l 小组讨论法小组讨论法l 资料查询法资料查询法l 模仿实践模仿实践学习方法学习方法2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务3l针对参与者针对参与者(1)某个参与者要求系统为其提供什么功能;该参与者需要做哪些工作?(2)参与者需要阅读、
13、创建、销毁、更新或存储系统中的某些信息吗?(3)系统中的事件一定要告知参与者吗?参与者需要告诉系统一些什么吗?(4)系统新功能的识别,参与者的日常工作被简化或效率提高了吗? 识别用例识别用例l针对系统针对系统 (1)系统需要什么样的输入和输出?输入来自哪里?输出去往哪里?(2)该系统的当前状况还存在哪些问题?(3)系统改进的方向是什么?2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务3图书管理系统主要用例图书管理系统主要用例1 12022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e
14、 建 模 案 例 教 程建 模 案 例 教 程任务3图书管理系统主要用例图书管理系统主要用例2 22022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务3(1)新建工程 (2)新建用例图 (3)添加参与者和用例 (4)删除参与者和用例 (5)设置参与者的属性 (6)设置用例的属性 (7)设置字体、调整位置和大小 (8)完成图书管理系统顶层用例图(不含关系)的绘制 (9)绘制“申请借还”子用例图 (10)绘制“处理借还”子用例图 (11)绘制“系统维护”子用例图 绘制图书管理系统用例图绘制图书管理系统用例图 提示:提示
15、:l 教师现场演示用例图的绘制过程和方法2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务31.用例的目标 2.用例是怎样被启动的 3.参与者和用例之间的消息流 用例描述用例描述4.用例的多种执行方案 5.用例怎样才算完成并把值传给了参与者 用例模板2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务3用用例例描描述述- -实实例例2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教
16、程建 模 案 例 教 程课堂实践 2(1)通过学习小组讨论和上网查询资料形式完成。(2)在使用Rational Rose绘制用例图之前,采用纸上手绘方式。(3)确定用例时,请注意用例名称的确定。操作提示操作提示(1)讨论确定B-C电子商务系统的用例。(2)绘制B-C电子商务系统的用例图。(3)参照本书用例描述模板,选取B-C电子商务系统的几个典型的用例进行描述。操作要求操作要求2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务4 确定图书管理系统中用例间的关系,在已确定图书管理系统中用例间的关系,在已绘制的用例图
17、添加用例之间的关系绘制的用例图添加用例之间的关系任务目标任务目标l 小组讨论法小组讨论法l 资料查询法资料查询法l 模仿实践模仿实践学习方法学习方法2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务4 是指一种从子用例到父用例的关系,它指定了子用例如何特化特化父用例的所有行为和特征。 泛化关系泛化关系 在图书管理系统中用户查询图书时,可以有两种方式:一是登录网上系统后,在线查询图书信息;二是读者到达图书馆后,在图书馆内进行图书查询。因而,用例“查询图书查询图书”和“网上查询图书网上查询图书”与“馆内查询图书馆内查
18、询图书”之间为泛化关系 2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务4 用例使用关系(use)是指一个用例使用另一个用例的关系。 使用关系使用关系 图书管理系统中读者要预订图书,必须先登录网上系统,因此“预预订图书订图书”需要使用“登录系登录系统统”功能。 2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务4 是指使用一个用例来封装一组跨越多个用例的相似动作,以便多个基用例复用的关系。 包含关系包含关系图书管理系统的系统维护用
19、例可以分解成“添加图书”用例、“修改图书”用例和“删除图书”用例。在这里“维护图书维护图书”和“添加图书添加图书”用例之间就是包含关系。 2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务4 是指一个用例中加入一些新的动作构成一个新用例,原用例和新用例之间的关系就是扩展关系。 扩展关系扩展关系在图书管理系统中,在“读者还书”用例中,如果读者所借图书超过了规定期限,则需要交付超期罚款,而如果是读者损坏了图书,则需要交付损坏图书罚款。这里“读读者还书者还书”用例和“支付罚款支付罚款”用例也是扩展关系 2022-7-9
20、软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务4图书管理系统用例关系图图书管理系统用例关系图- -顶层用例图顶层用例图2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务4图书管理系统用例关系图图书管理系统用例关系图- -申请借还用例图申请借还用例图2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务4图书管理系统用例关系图图书管理系统用例关系图- -处理借还用例图处
21、理借还用例图2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务4图书管理系统用例关系图图书管理系统用例关系图- -系统维护用例图系统维护用例图2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程任务4l进行用例建模时,将系统视为黑盒,从使用者的角度看系统,确定系统必须实现的功能;l角色描述的是系统中涉及的用户,现实生活中不同人可能拥有多个的角色;l所有的交互都发生在参与者和用例之间,再没有其他可能发生的交互;l一般情况下一个用例只有一个参
22、与者拥有,如果有多个参与者共用一个用例,就要考虑是否要增加新的角色,或者拆分用例。小结小结在软件系统建模时使用用例图的优点优点有:l方便系统分析设计人员和业务人员沟通;l方便系统分析人员对系统范围和规模进行认识;l方便构建测试用例;l方便分析人员明确系统功能;l方便接口设计人员尽早介入设计开发过程。2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程课堂实践 3(1)阅读图5-32所示的自动售货系统的用例图,指出参与者、用例,并对每个用例进行说明。(2)确定B-C电子商务系统的用例间的关系。(3)在B-C电子商务系统的
23、用例图基础上添加用例间的关系。操作要求操作要求2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程课堂实践 3(1)通过学习小组讨论和上网查询资料形式完成。(2)用例间的关系并非绝对,取决于建模者的理解和解释。操作提示操作提示2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程用例拾遗1描述对象不同描述对象不同2“系统系统”定义不同定义不同3两者的域不同两者的域不同4组成元素不同组成元素不同5图形元素不同图形元素不同系统用例系统用例VSVS业务
24、用例业务用例2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程用例拾遗1连用户都不理解的用例连用户都不理解的用例 2用例太多用例太多 3过于复杂的用例过于复杂的用例4描述特定用户界面元素和行为的用例描述特定用户界面元素和行为的用例5不再使用其他需求模型不再使用其他需求模型用例陷阱用例陷阱1.怎样确定用例的粒粒度也是用例使用中的一大问题。2.用例粒度的划分依据(尤其是业务用例)最标准的方法是以该用例是否完成了参与者的某个目的为依据的。3.不论用例的粒度如何选择,必须把握的原则是:在同一个需求阶段,所有用例的粒度应该是同
25、一个量级的。用例用例粒度粒度2022-7-9软 件 工 程 与软 件 工 程 与 R o s eR o s e 建 模 案 例 教 程建 模 案 例 教 程课外拓展(1)以小组方式对一次完整的ATM取款过程进行讨论分析。(2)尽可能的描述参与者之间和用例之间的关系。(3)以chap05.mdl文件保存ATM系统的模型。操作提示操作提示(1)简述ATM自动取款系统中ATM机取款的过程。(2)通过回答下列提示问题,获取ATM自动取款系统参与者和用例。(a)谁使用ATM系统的取款功能?(b)谁使用ATM系统的支持以完成日常工作任务?(c)谁来维护、管理并保持ATM系统的正常运行?(d)ATM系统需要和哪些系统进行交互?(e)ATM系统需要处理哪些设备?(f)谁对ATM系统运行的结果感兴趣?(3)确定ATM系统中各用例之间的关系。(4)绘制ATM系统的用例图。操作要求操作要求