实验三 顺序图参考答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
顺序图、协作图设计实验三
【实验目的】
1.理解顺序图和协作图的概念及作用;
掌握顺序图与协作图的基本图形,了解它们各自的组2.成元素、特定作用和适用场合;
3.重点掌握顺序图的画法及其中元素所代表的意义。
【实验性质】
设计性实验。
【实验要求】
1.学习根据指定的用例描述绘制顺序图和协作图的方法;2.学习使用绘制顺序图和协作图;
掌握顺序图和协作图的相互转换方法。 3.
【实验内容】
以网上选课系统中的(选课)用例为例,设计和实现顺序图、协作图。、
【实验步骤】
1.假设学生已经成功登录系统,分析选课的事件流。
a)学生进入选课主界面
b)学生点击选课
c)系统显示所有课程信息
d)学生选择课程
e)系统验证课程是否可选
A1:课程不可选
f)系统提示课程选择成功,提示学生交费
g)用例结束。
A1:课程不可选
a)系统提示课程不可选以及原因
b)学生重新选课
c)重新验证直至成功
d)转选课事件流第f)步。
顺序图描述的是对象与对象的交互,创建顺序图的步骤如下:1)寻找对象。
2)寻找角色。
3)将消息加进图中。
首先,查找(选课)用例的对象,从事件流冲发现涉及一下对象:
1)界面。
2)课程
于业务层的操作,也应该有对象进行处理。对)3.
4)事件流中涉及的角色有:学生、数据库。
2.分析对象、角色之间交互的消息。
本用例主要有以下交互:
1)学生通过界面发送选课命令。
2)界面向控制对象请求课程信息。
3)控制对象向数据库发送查询数据消息
4)控制对象暂存数据库的查询结果
5)界面对象从控制对象中取得所有的课程信息
6)在界面上显示所有的课程信息
7)界面对象发送命令要求控制对象删除课程信息
8)学生选择课程
9)界面对象要求学生输入学号
10)界面对象向控制对象发送信息,查询该生是否可以选择选定的课程
11)控制对象从数据库查询关联信息。
12)控制对象判断是否可以选课
13)如果可以选课,则向数据库中添加关联信息。
14)向界面对象返回信息。
3.根据以上分析,绘制出用例的顺序图,并转换成对应的协作图。
参考顺序图如下:control : Form : course : db : Databasestu : StudentControlObjectFormObjectCourse
1: SelectCommand(2: GetAllCourse(3: QueryCourse(4: Create(String,int,String,String5: GetcourseInfo(6: DisplayCourseList(7: DeleteCourse(8: GetCourse(9: QueryAssociation(int,int10: QueryAssociation(int,int11: CanSelect()12: AddAssociation(int,int)13: ShowSucessInfo()14: GetStudentId()
按照上述例子的方法,试着绘制网上选课系统中其他用例.4如、、、的顺序图和协作图。
扩展练习:
(1)以“远程网络教学系统”为例,在该系统中,系统管理员需要登录系统才能进行系统维护工作,如添加教师信息、删除教师信息等。根据系统管理员添加教师信息用例,创建相关顺序图,并转换成对应的协作图。.
(2)在“远程网络教学系统”中,如果我们单独抽象出来一个数据访问类来进行数据访问。那么,根据系统管理员添加教师信息用例,重新创建相关顺序图,并转换成对应的协作图。
【思考问题】
1.总结绘制顺序图和协作图的步骤。
2.结合网上选课系统的顺序图设计实例,总结一下顺序图在系统分析设计过程中所起的作用。