当前位置:文档之家› 面向对象技术与UML--实验讲义--2013

面向对象技术与UML--实验讲义--2013

黑龙江大学

《面向对象技术与UML》

实验讲义

黑龙江大学软件学院

UML与软件开发工具实验课程共有五个实验题目,要求学生在每个实验完成后提交设计文档。本实验是《面向对象程序技术与UML》课程的实验教学部分。开设本实验可以使学生能够将课堂知识与实践相结合,让学生掌握用UML进行面向对象的全过程,同时也能使学生在实践中体会、深化了解课堂中学习的知识。

基本要求:

1、通过实验掌握用用例捕获需求的方法,并会绘制用例图。

2、通过实验掌握用概念模型和活动图得到系统的需求模型。

3、通过实验掌握用顺序图和分析类图得到系统的分析模型。

4、通过实验掌握细化顺序图和设计类图,得到系统的设计模型。

5、通过实验掌握职责分配和设计模式,得到实现模型。

6、通过实验掌握活动图、状态图、组件图、部署图的绘制和用法。

实验一用例模型

(一)实验目的

1.通过实验掌握用用例捕获需求的方法,并会绘制用例图。

2.掌握活动图的用法。

(二)实验内容

学生分小组选定项目题目,由各组的项目经理领导该组进行需求获取,对原始需求进行分析、验证,并以小组为单位书写用例(基本流程和扩展流程)和画用例图。用例文本的模板,见“用例描述模板.doc”,用例图见图一。

(三)Rose工具使用

用例图将在Rose的Use Case View 下创建,首先创建Actors包和Use Case包,然后再Use Case包下创建用例图,在每个用例的Document下写用例的基本流程。见图一。

图一创建用例模型的Rose界面

实验二概念(领域)模型和活动图

(一)实验目的

1.通过实验掌握用概念模型和活动图得到系统的需求模型。

(二)实验内容

1.学生按第一个实验分组选定的题目,在第一个实验的基础上,设计出概念模型。

2.设计系统活动图,见图三。

(三)Rose工具使用

概念模型将在Rose的Logical View 下创建,首先创建用例实现,然后再在用例实现下创建概念模型或称为领域模型。见图2。

(四)步骤

创建概念模型,首先识别概念类,识别的策略包括两种:

使用概念目录列表找出概念

根据名词性短语找出概念

方法1.使用概念目录列表找出概念,如下:

方法2:根据名词性短语找出概念

在Use Case中,根据名词短语识别找出概念类。即:识别有关用例文本描述中的名词和名词短语,将它们作为候选的概念类或属性。

按上面方法定义概念类后,分析概念类间的关系,创建领域模型(也叫概念模型)如图2

图二创建领域模型的Rose界面

图3 活动图的Rose界面

实验三顺序图和分析类图,建立分析、设计模型

(一)实验目的

1.通过实验掌握用顺序图、分析类图和状态图得到系统的分析模型,并优化得到设计模型。

(二)实验内容

1.学生按第一个实验分组选定的题目,在第二个实验的基础上,绘制交互图(顺序图或协作图),见图四。

2.绘制分析类图(见图五),状态图(见图六)。

要求将课堂讲授的GRASP模式等职责分配技术尽可能地应用到项目中去。

(三)Rose工具使用

交互图将在Rose的Logical View 下创建,在用例实现的包下,创建Sequence Diagram

图或Collaboration Diagram。见图四。

图四创建顺序图的Rose界面

图五创建分析类图的Rose界面

图六状态图的Rose界面

实验四设计类图转换为代码

(一)实验目的

1.掌握Rose工具的正向工程。

(二)实验内容

1.学生按第一个实验分组选定的题目,在第三个实验的基础上,把设计的结果变成程序框架。

(三)Rose工具使用

设计类图对应的代码可以在类图的Document下写。也可以用Rose的正向工程生成。见图四。转换后的代码仅仅是一个类的框架。

图七设计类图转换为代码的Rose界面

实验五部署图、组件图的绘制

(一)实验目的

1.掌握部署图、组件图的用途和绘制方法。

(二)实验内容

1.用Rose工具在前几个实验的基础上绘制系统的部署图、组件图。

(三)Rose工具使用

绘制组件图用到的Rose的Component View,绘制部署图用到的Rose的Deployment

View。见图五、图六。

图八创建组件图的Rose界面

图九创建部署图的Rose界面

附录I:实验侯选题目

题目1-请假管理系统

类型:流程系统

简述:完成某一公司内部的请假管理过程的设计及实现。

基本流程:公司员工请假时登录系统填写请假单,编写完成后提交部门经理审批,如果请假时间在3天之内,部门经理进行批准。如果超过3天,部门经理提交总经理进行审批,由总经理进行批准。部门经理请假时,完成请假单后直接送交总经理审批。

功能要求:

①填写请假单

相关信息包括员工部门、姓名、请假类型(事假、病假、公出等)、请假事由,请假开始时间、请假结束时间等信息。

②审批请假单

当部门经理登录系统时,列出需要进行审批的请假单,注意,相关部门经理只能审批本部门的请假单。如果不需要总经理审批,则直接批准或退回,如果需要总经理批准则提交总经理。同时列出总经理不批准的请假单,查看不批准的原因,同时退回给请假人。

当总经理登录系统时,列出需要进行审批的请假单,可以根据请假事由等信息确定批准或者退回部门经理,并填写审批结果。

③请假查询

当员工登录系统后,可查询自己提交的请假单被审批的情况,如果自己的请假单未被批准,可将该请假单进行作废。

④请假汇总

公司管理人员可以选定时间段进行公司内部人员请假情况的查询汇总,部门管理人员可以选定时间段进行部门内部人员请假情况的查询汇总,并提供打印功能。

题目2-库存管理系统

类型:库存系统

简述:完成某一公司内部的办公用品库存管理的设计及实现,供库存管理员使用。

基本流程:公司采购员进行采购后,将办公用品(打印纸、笔、记事本等)交与库存管理员,库存管理员填写入库单将办公用品入库,当各部门员工申请办公用品时,库存管理员填写出库单进行办公用品出库。

功能要求:

①办公用品维护

对办公用品进行维护,例如打印纸、笔、记事本等,可以进行增、删改的操作。

②办公用品入库

根据采购员送交的办公用品进行入库操作,每一入库单可以包括一种或者几种办公用品。

③办公用品出库

根据员工对办公用品的申请进行出库操作,每一出库单可以包括一种或者几种办公用品。

④库存查询

查询当前仓库内每种办公用品的数量。

题目3-计算机设备管理系统

类型:设备管理

简述:利用数据库技术,完成代码维护、计算机设备管理等功能,实现计算机设备管理系统。

基本流程:根据计算机类型和操作系统类型,对计算机设备进行分类管理,提供计算机设备查询、增加、修改和删除功能。

功能要求:

1.计算机类型维护:对计算机类型进行维护,提供增加、删除、修改和查询功

能,用于计算机设备维护功能中对计算机设备进行分类。

2. 操作系统类型维护:对计算机的操作系统类型进行维护,提供增加、删除、

修改和查询功能,用于计算机设备维护功能中对计算机设备进行分类。

3. 计算机设备管理:对计算机设备进行维护,提供增加、删除、修改和查询功

能,用于计算机设备管理.

4. 计算机设备统计:根据计算机类型和操作系统类型对计算机设备进行统计,

计算机类型项(可以选择全部)需要采用下拉列表的形式,内容来自计算机类型维护功能中录入计算机类型,操作系统类型项(可以选择全部)需要采用下拉列表的形式,内容来自操作系统类型维护功能中录入操作系统类型。 XXXX 年XX 月XX 日 计算机设备统计表

题目4-政务信息管理系统

类型:业务系统

简述:利用数据库技术,完成用户登录验证、单位维护和政务信息管理等功能,实现政务信息业务管理的简单功能。

基本流程:首先进行系统登录验证(可以使用固定的登录名和密码),系统登录成功后根据单位对政务信息进行管理,提供政务信息的查询、增加、修改和删除功能。

功能要求:

1. 登录验证:使用固定的登录名和密码进行系统登录验证。

2. 单位信息维护:对单位信息进行维护,提供增加、删除、修改和查询功能,

用于政务信息管理功能,单位信息包括单位名称和单位代码。

备注: 计算机设备信息包括计算机类型、所属单位、登记时间(日期类型,格式为XXXX 年XX 月XX 日)、计算机编号、使用人、登记人、计算机cpu 个数、计算机主频、计算机内存容量、计算机硬盘容量、计算机操作系统类型,计算机类型、计算机操作系统类型2个数据项采用下拉列表形式,内容来自对应的维护功能。

3.政务信息管理:根据单位对政务信息进行维护,提供增加、删除、修改和查

询功能。政务信息内容包括信息标题、填报时间、填报单位、填报人和政务信息内容(500个汉字),填报单位项需要采用下拉列表的形式,内容来自单位信息维护功能中的录入单位。

题目5-客户反馈管理系统

类型:业务系统

简述:利用数据库技术,完成代码维护、软件产品客户反馈管理和客户反馈统计功能,实现客户反馈业务管理的简单功能。

基本流程:根据软件产品、客户信息和反馈性质对客户反馈进行归类管理,提供查询、增加、修改和删除功能,还需要提供客户反馈统计功能。

功能要求:

1、软件产品维护:对软件产品进行维护,提供增加、删除、修改和查询功能,

用于客户反馈管理功能,软件产品信息包括软件产品名称和应用系统编码。

2、客户信息维护:对客户信息进行维护,提供增加、删除、修改和查询功能,

用于客户反馈管理功能,客户信息包括客户信息名称、客户地址、联系人姓名、联系方式。

3、反馈性质类型维护:对反馈性质进行维护,提供增加、删除、修改和查询功

能,用于客户反馈管理功能,反馈性质信息包括反馈性质名称。

4、客户反馈管理:对客户反馈信息进行维护,提供增加、删除、修改和查询功

能。客户反馈信息包括客户反馈记录编号、软件产品名称、客户名称、反馈性质、登记人、登记时间(日期类型,格式为XXXX年XX月XX日XX小时XX 分,自动获得服务器当前日期作为登记时间)、反馈内容、处理人、处理时间、处理结果,其中软件产品名称、客户名称、反馈性质3个数据项采用下拉列表形式,内容来自对应的维护功能。

5、客户反馈统计:根据软件产品名称、客户名称、反馈性质条件,对客户反馈

进行统计,软件产品信息(可以选择全部)项需要采用下拉列表的形式,内容来自软件产品信息维护功能中录入的软件产品信息,客户信息(可以选择全部)项需要采用下拉列表的形式,内容来自客户信息功能中录入的客户信

息,反馈性质(可以选择全部)项需要采用下拉列表的形式,内容来自反馈性质维护功能中录入的反馈性质。

附表:

XXXX年XX月XX日-XXXX年XX月XX日客户反馈统计表

题目6-学生选课系统

题目7-实验室管理系统

题目8-教务管理系统

题目9-网上书店

题目10-图书管理系统—参见需求分析调查表.DOC

附录I:实验一用例模板

1、报账系统需求

啟元公司的总部设在北京,在上海、广州、成都和西安有分支机构,全公司接近700名员工。鉴于业务和员工团队的快速发展,为了提升整体工作效率,啟元公司准备开发一套员工报帐系统,取代原来的人工处理方式。

报帐系统将支持员工记录(或预见)日常业务活动的开销,并自动结算每个月应该返还员工的补偿金额,补偿额会直接存入员工的工资户中。

报帐系统应具有基干先进技术的图形化界面,员工可以输入业务活动的种类和简短描述,活动开销的类别,选择不同的支付方式,并可以生成灵活的报表。

2、提交报销申请用例

简介

员工通过报帐系统填写报销申请,一次或者多次填写相关活动产生的费用,经过验证之后提交,以电子邮件的方式通知相应经理批复。

事件流(Flow of Events)

基本事件序列(Basic Flow)

1.打开报销单

[员工]:员工选择进入“报销申请”功能。

[系统]:如果该员工当月报销单存在,系统将取出相应信息并展示给员工。

2.添加报销记录

[员工]:员工要求添加一条报销记录

[系统]:系统显示条空白的报销记录。

3.填写报销记录

[员工]:员工开始填写报销记录,每条报销记录包括的信息有:业务活动发生的时间、

地点、客户名称(可选)、原因以及费用金额和种类(交通、餐饮、会议、通信和杂项)。

[系统]:系统显示并记录员工输入的信息。为了让员工方便而准确地输入相关信息,除了客户名称、业务活动原因和金额之外,其他信息域提供相应的下拉式选择列表。

(重复以上针对每一条报销记录的活动,直至所有记录填写完毕)

4.验证报销单

[员工]:员工填写完毕所有报销记录之后,要求系统验证这些记录的合理性。

[系统]:报销记录的初始状态为“未验证”,每当一条报销记录被验证为合理,系统将该报销记录的状态设置为“已验证”,系统在验证所有报销记录(为“已验证”)之后提示用户可以提交本月的报销单。验证为合理的记录必须满足几种条件:第一,不同种类的费用不超过相应的限额:第二,报销费用的类型要和员工的职能匹配。

5.提交报销单

[员工]:所有报销记录经过验证之后,员工提交当月的报销单。

[系统]:系统保存这张报销单,将报销单的状态设置为“已提交”并记录提交日期,同时这张报销单被设为“只读”。系统要从人事管理数据库中获知该员工及其经理(负担该员工当月开销者)的电子邮件地址。

为了及时通知相关人员,系统将自动生成份以当前报销单为内容的电子邮件发送到该员工及其经理的信箱中。当邮件成功发送后,员工得到一个确认信息。

备选事件序列组(Alternative Flows)

A1创建当月报销单

[起始位置]:基本事件序列中,员工进入报销申请程序并准备打开当月报销单。

[触发条件]:该员工的当月报销单不存在。

[具体内容]:系统为该员工创建一张当月报销单。

[返回位置]:基本事件序列中的“打开报销单”步骤

A2删除报销记录

[起始位置]:在提交报销单之前任意时间点。

[触发条件]:员工希望删除某一条报销记录。

[具体内容]:系统删除由员工指定的某一条报销记录。

[返回位置]:同“起始位置”。

A3更新报销记录

[起始位置]:在提交报销单之前任意时间点。

[触发条件]:员工希望更新某一条报销记录。

[具体内容]:系统根据员工重新输入的内容更新相应的一条报销记录。将该报销记录状态设置为“未验证”

[返回位置]:同“起始位置’。

A4保存当月报销单

[起始位置]:该Use Case允许员工在事件流中的任意时间点保存当月的报销单。

[触发条件]:员工希望将已经录入的报销记录保存在报帐系统中。

[具体内容]:系统保存该员工的当月报销单,并给出确认信息。员工可以在保存当月报销单之后直接退出系统。

[返回位置]:同“起始位置”。

A5报销记录不合理

[起始位置]:基本事件序列中,“验证报销单”步骤中对每一条报销记录验证结束之后。

[触发条件]:报销记录未通过验证,有两种情形:第一,某报销记录的金额超出了其对应类型费用的上限,己知有三种:请客户用餐人均超过300元,出差时每天住宿费超过800元,移动电话费在无特殊说明情况下超过800元;第二,报销费用的类型和员工所处的部门及职能不匹配,己知的情形是业务部门的员工申请加班补助。

[具体内容]:告知员工不合理的报销记录编号,以及未通过验证的原因。

[返回位置]:基本事件序列中的“填写报销单”步骤,目的是订正有问题的报销记录。

A6人事管理数据库不可用

[起始位置]:基本事件序列中,“提交报销单”步骤的结尾

[触发条件]:当报帐系统向人事管理数据库索取信息而该数据库没有正常的响应。

[具体内容]:告知员工“人事管理数据库不可用,报帐单没有提交成功”。

[返回位置]:Use Case执行结束。

A7邮件未及时发出

[起始位置]:基本事件序列中,“提交报销单”步骤的结尾,成功地从人事管理数据库获得相关信息之后。

[触发条件]:报帐系统要求发送相关邮件时,邮件系统没有及时的响应。

[具体内容]:系统将以提示信息的方式告知员工,“邮件没有及时发出,但是报销单在系统内己经提交成功,待邮件系统恢复后,相关邮件会自动发出。”

[返回位置]:Use Case执行结束。

特殊需求列表(专属于该Use Case )

暂无。

启动条件

员工成功登录系统,通过身份验证。被系统提示进入“报销申请”或者“借款申请”功能。

结束状态(组)

如果该Use Case 顺利执行,员工的报销申请单将被建立、更新、保存或者提交:否则,系统的状态应该保持和该Use Case 执行之前相同。

“补充规约”要点

为了突出重点,在后续的实践过程中只考虑两个非功能需求:用Java 实现对关系型数据库的访问和分布式处理。

2、报账系统用例图

(from Actors)结算当月报销费用

相关主题
文本预览
相关文档 最新文档