您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 工程监理 > 高级软件工程实验报告一熟悉ROSE并建立用例模型
实验一熟悉ROSE并建立用例模型一、实验目的1)掌握RationalRose的特点、运行环境及获取方法;2)掌握RationalRose基本使用方法;3)掌握使用RationalRose绘制用例图的步骤;二、实验内容根据《简单的学生选课管理系统》采用面向对象分析方法给出系统的用例模型(用例图及课程注册用例描述)。三、建模思路1、系统角色分析学生选课管理系统主要满足三方面的需求,分别是学生用户、教师用户和管理员用户,也即三类用户角色(1)学生用户是主要需求者,主要功能需求是查询新学期将开设的课程和讲课教师情况,选择自己要学习的课程进行“课程注册”,并可以查询成绩单;(2)教师用户主要功能需求是查询新学期将开设的课程和选课学生情况,并可以登记成绩单;(3)管理员的功能需求较复杂,进行教师信息、学生信息和课程信息的维护,开启和关闭“课程注册”。2、rose建模步骤2.1.环境简介2.1.1RationalRose可视化环境组成Rose界面的五大部分是浏览器、文档工具、工具栏、框图窗口和日志。1、浏览器:用于在模型中迅速漫游。2、文档工具:用于查看或更新模型元素的文档。3、工具栏:用于迅速访问常用命令。4、框图窗口:用于显示和编辑一个或几个UML框图。5、日志:用于查看错误信息和报告各个命令的结果。2.1.2浏览器和视图浏览器是层次结构,用于在Rose模型中迅速漫游。在浏览器中显示了模型中增加的一切,如参与者、用例、类、组件等等。浏览器中包含四个视图:UseCase视图、Logical视图、Component视图和Deployment视图。点击每个视图的右键,选择new就可以看到这个视图所包含的一些模型元素。2.1.3框图窗口我们可以浏览模型中的一个或几个UML框图。改变框图中的元素时,Rose自动更新浏览器。同样用浏览器改变元素时,Rose自动更新相应框图。这样,Rose就可以保证模型的一致性。2.2用例图usecasediagram简介从用例图中我们可以看到系统干什么,与谁交互。用例是系统提供的功能,参与者是系统与谁交互,参与者可以是人、系统或其他实体。一个系统可以创建一个或多个用例图。用例图由参与者(Actor)、用例(UseCase)、系统边界、箭头组成,用画图的方法来完成。(1)、参与者参与者不是特指人,是指系统以外的,在使用系统或与系统交互中所扮演的角色。因此参与者可以是人,可以是事物,也可以是时间或其他系统等等。还有一点要注意的是,参与者不是指人或事物本身,而是表示人或事物当时所扮演的角色。(2)、用例是对包括变量在内的一组动作序列的描述,系统执行这些动作,并产生传递特定参与者的价值的可观察结果。这是UML对用例的正式定义。我们可以简单的理解为:用例是参与者想要系统做的事情。(3)、系统边界系统边界是用来表示正在建模系统的边界。边界内表示系统的组成部分,边界外表示系统外部。系统边界在画图中方框来表示,同时附上系统的名称,参与者画在边界的外面,用例画在边界里面。因为系统边界的作用有时候不是很明显,所以我个人理解,在画图时可省略。(4)、箭头箭头用来表示参与者和系统通过相互发送信号或消息进行交互的关联关系。箭头尾部用来表示启动交互的一方,箭头头部用来表示被启动的一方,其中用例总是要由参与者来启动。usecase图中的关系用例图中包含的元素除了系统边界、角色和用例,另外就是关系。关系包括用例之间的关系,角色之间的关系,用例和角色之间的关系。(1)、角色之间的关系由于角色实质上也是类,所以它拥有与类相同的关系描述,即角色之间存在泛化关系,泛化关系的含义是把某些角色的共同行为提取出来表示为通用的行为。(2)、用例之间的关系:包含关系:基本用例图的行为包含了另一个用例的行为。基本用例描述在多个用例中都有的公共行为。包含关系本质上是比较特殊的依赖关系。它比一般的依赖关系多了一些语义。在包含关系中箭头的方向是从基本用例到包含用例。2.3用例图的创建2.3.1创建用例图(1)、在浏览器内的UseCase视图中,双击Main,让新的用例图显示在框图窗口中。(2)、新建一个包(右击UseCase视图,选择new→package,并命名),然后右击这个新建的包,选择new→usecasediagram。(3)、对系统总的用例一般画在UseCase视图中的Main里,如果一个系统可以创建多个用例图,则可以用包的形式来组织。2.3.2创建参与者(1)在工具栏中选择“Actor”,光标的形状变成加号。(2)在用例图中要放置参与者符号的地方单击鼠标左键,键入新参与者的名称,如“客户”。若要简要的说明参与者,可以执行以下步骤:(1)在用例图或浏览器中双击参与者符号,打开对话框,而且已将原型(stereotype)设置定义为“Actor”。(2)打开“General”选项卡,在documentation字段中写入该参与者的简要说明。(3)单击OK按钮,即可接受输入的简要说明并关闭对话框。2.3.3创建用例(1)在工具栏中选择“UseCase”,光标的形状变成加号。(2)在用例图中要放置用例符号的地方单击鼠标左键,键入新用例的名称。若要简要的说明用例,可以执行以下步骤:(1)在用例图或浏览器中双击用例符号,打开对话框,接着打开“General”选项卡。(2)在documentation字段中写入该用例的简要说明。(3)单击OK按钮,即可接受输入的简要说明并关闭对话框。2.1.4记录参与者和用例之间的关系双击箭头,在弹出的属性框中选择关系类型,同时会在框图中显示。四、用例模型1、学生选课管理系统不同用户类所确定的不同用例。如下表所示:参与者用例学生1.1用例—学生系统登录1.2用例—课程信息查询课程和讲课教师1.3用例—课程注册1.4用例—查询成绩单管理员2.1用例—管理员系统登录2.2用例—维护教师信息2.3用例—维护学生信息2.4用例—维护课程信息2.5用例—开启与关闭课程注册教师3.1用例—教师系统登录3.2用例—查询开设的课程3.3用例—查询选课学生情况3.4用例—登记成绩单2、学生选课管理系统用例图(如下图所示)3、用例描述(1)系统的外部角色有:学生用户、教师用户和管理员(2)系统主要用例的文档描述:①学生管理用例:学生用户可见的功能,包含查询课程和讲课教师情况,选课进行“课程注册”,查询成绩三个用例功能。②教师管理用例:教师用户可见的功能,包含了查询将开设的课程和选课学生情况,并可以登记成绩三个用例功能。③系统管理用例:管理员可见的功能,包含了进行教师信息、学生信息和课程信息的维护,开启和关闭“课程注册”四个用例功能。④登录用例:所有用户可见的功能,用于登录系统。(3)系统用例之间的关系:①学生管理用例与课程查询、选课、成绩查询三个用例之间是包含关系。②教师管理用例与查询课程、查询选课情况、登记成绩三个用例之间是包含关系。③系统管理用例与维护教师信息、维护学生信息和维护课程信息,及开启和关闭课程注册四个用例之间是包含关系系统活动图如下图所示:管理员开启“课程注册”后,学生经登录进入“课程注册”用例来完成选课。每个学生可以从开课列表中选择不超过3门的选修课,每门课程最多不能超过30人,最少不能低于5人,低于5人的课程将被取消。在选课期间允许学生试听并改变已注册课程,开学两周后教务管理员关闭“课程注册”。五、结果分析1、功能模型和用户需求的对照比较学生选课管理系统的功能模型分四大块,分别是登录、学生管理、系统管理和教师管理。登录模块对应的需求是:使用系统的所有用户都需经过登录。学生管理模块的用户是学生,下面分课程查询、选课、成绩查询三部分对应学生用户的需求是:学生使用该系统可以查询新学期将开设的课程和讲课教师情况,选择自己要学习的课程进行“课程注册”,并可以查询成绩单。系统管理模块的用户是管理员,下面分维护教师信息、维护学生信息和维护课程信息,及开启和关闭课程注册四部分对应管理员的需求:教务管理员使用该系统进行教师信息、学生信息和课程信息的维护,开启和关闭“课程注册”。教师管理模块的用户是教师,下面分查询课程、查询选课情况、登记成绩几个部分。对应教师的需求:教师使用该系统可以查询新学期将开设的课程和选课学生情况,并可以登记成绩单。该用例模型较好的对接了系统中用户的各个功能需求,有比较匹配的一致型。并且运用面向对象的思想对用户需求有一个比较好的抽象提取与封装,具体细节还有待完善。2、实验的心得体会通过此次实验了解了RationalRose的特点、运行环境及获取方法;掌握了RationalRose基本使用方法;能够使用RationalRose绘制用例图并清楚各个步骤。本次实验让我知道了USECASE图的主要的作用有三个:(1)获取需求;(2)指导测试;(3)还可在整个过程中的其它工作流起到指导作用。用例图用于对系统、子系统或类的行为进行可视化,使用户能够理解如何使用这些元素,并使开发者能够实现这些元素。将每个系统中的用户分出工作状态的属性和工作内容,方便建模,防止功能重复和多余的类。用例图定义了系统的功能需求,它是从系统的外部看系统功能,并不描述系统内部对功能的具体实现。通过对学生选课管理系统的用例建模,让我学会了使用RationalRose,且加深了对用例图的理解,能更好的指导我以后面向对象的开发实践。
本文标题:高级软件工程实验报告一熟悉ROSE并建立用例模型
链接地址:https://www.777doc.com/doc-5853454 .html