UML与系统分析设计(第二版) 第12章 简易教学管理系统分析与设计.ppt

上传人:s****8 文档编号:67259883 上传时间:2022-12-24 格式:PPT 页数:51 大小:1.05MB
返回 下载 相关 举报
UML与系统分析设计(第二版) 第12章 简易教学管理系统分析与设计.ppt_第1页
第1页 / 共51页
UML与系统分析设计(第二版) 第12章 简易教学管理系统分析与设计.ppt_第2页
第2页 / 共51页
点击查看更多>>
资源描述

《UML与系统分析设计(第二版) 第12章 简易教学管理系统分析与设计.ppt》由会员分享,可在线阅读,更多相关《UML与系统分析设计(第二版) 第12章 简易教学管理系统分析与设计.ppt(51页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、以一个简易教学管理系统以一个简易教学管理系统JXGLJXGL的分析与设计作为示例,说的分析与设计作为示例,说明明UMLUML在软件项目开发中的应用。在软件项目开发中的应用。这里主要介绍这里主要介绍建立建立JXGLJXGL的系统静态结构模型与动态行为模的系统静态结构模型与动态行为模型型。一般对系统做分析与设计,建立静态结构模型与建立动态一般对系统做分析与设计,建立静态结构模型与建立动态行为模型应当同时、交替进行,相互印证和补充。行为模型应当同时、交替进行,相互印证和补充。UMLUML是一种通用的工具,它可以使用于是一种通用的工具,它可以使用于Use CaseUse Case驱动的软驱动的软件开发

2、,也可以使用于其他面向对象的软件开发方法,例件开发,也可以使用于其他面向对象的软件开发方法,例如直接从现实世界抽象出对象和类,建立系统的对象模型。如直接从现实世界抽象出对象和类,建立系统的对象模型。简易教学管理系统简易教学管理系统JXGLJXGL的分析与设计遵循的分析与设计遵循Use CaseUse Case驱动的驱动的软件开发思想与过程。软件开发思想与过程。第第1212章章 简易教学管理系统分简易教学管理系统分析与设计析与设计Home第第1212章章 简易教学管理系统分简易教学管理系统分析与设计析与设计1212.1 .1 系统需求系统需求12.2 12.2 分析问题领域分析问题领域12.3

3、12.3 静态结构模型静态结构模型12.12.4 4 动态行为模型动态行为模型12.12.5 5 物理模型物理模型Home对简易教学管理系统对简易教学管理系统JXGLJXGL要求提供两个方面的服务:要求提供两个方面的服务:(1 1)选课管理,负责新学期的课程选课注册工作;)选课管理,负责新学期的课程选课注册工作;(2 2)成绩管理,负责学生成绩管理。)成绩管理,负责学生成绩管理。在选课管理方面应提供的服务功能:在选课管理方面应提供的服务功能:1 1录入与生成新学期课程表录入与生成新学期课程表 2 2学生选课注册学生选课注册 3 3查询查询 4 4选课注册信息的统计与报表生成选课注册信息的统计与

4、报表生成 5 5把学生选课注册信息传送给财务系统把学生选课注册信息传送给财务系统 在成绩管理方面应提供的服务功能:在成绩管理方面应提供的服务功能:1 1成绩录入成绩录入 2 2成绩查询成绩查询 3 3成绩统计与报表生成成绩统计与报表生成 12.1 12.1 系统需求系统需求HomeJXGLJXGL的用户的用户 (1 1)学生。查询信息,只允许对自己有关的数据进行添加、)学生。查询信息,只允许对自己有关的数据进行添加、更新、删除等操作。更新、删除等操作。(2 2)教师。查询信息,只允许对自己有关的数据进行添加、)教师。查询信息,只允许对自己有关的数据进行添加、更新、删除等操作。更新、删除等操作。

5、(3 3)教学管理员。有权操纵数据库的数据,进行添加、更)教学管理员。有权操纵数据库的数据,进行添加、更新、删除等操作。新、删除等操作。JXGLJXGL的系统环境的系统环境 (1 1)基于局域网的客户机)基于局域网的客户机)基于局域网的客户机)基于局域网的客户机/服务器系统(服务器系统(服务器系统(服务器系统(Client/ServerClient/Server)(2 2 2 2)外部相关系统:财务系统外部相关系统:财务系统外部相关系统:财务系统外部相关系统:财务系统 12.1 12.1 系统需求系统需求Home分析问题领域的目的是对问题领域的清晰、精确的分析问题领域的目的是对问题领域的清晰、

6、精确的定义,明确目标系统将做些什么。定义,明确目标系统将做些什么。分析问题领域的主要任务是:分析问题领域的主要任务是:对问题领域进行抽象,提出解决方案;对问题领域进行抽象,提出解决方案;对未来的系统进行需求分析,确定系统的职责对未来的系统进行需求分析,确定系统的职责范围、功能需求、性能需求、应用环境及假设条范围、功能需求、性能需求、应用环境及假设条件等;件等;用用Use CaseUse Case图对未来系统的行为建立模型,初图对未来系统的行为建立模型,初步确定未来系统的体系结构等。步确定未来系统的体系结构等。12.2 12.2 分析问题领域分析问题领域Home12.2 12.2 分析问题领域分

7、析问题领域Home12.2.1 12.2.1 确定系统范围和系统边界确定系统范围和系统边界12.2.2 12.2.2 定义活动者定义活动者12.2.4 12.2.4 绘制绘制Use CaseUse Case图图12.2.5 12.2.5 绘制主要交互图绘制主要交互图12.2.3 12.2.3 定义定义Use CaseUse Case首先要确定业务需求和系统目标。首先要确定业务需求和系统目标。简易教学管理系统简易教学管理系统JXGLJXGL用于新学期课程的选课注册管理用于新学期课程的选课注册管理和学生的成绩管理。和学生的成绩管理。系统范围:凡是这两方面的教学管理内容都是系统范围:凡是这两方面的教

8、学管理内容都是JXGLJXGL系统系统的职责范围,其他的教学管理内容,如安排教学计划、的职责范围,其他的教学管理内容,如安排教学计划、排课、实习、实验、考试等都不属于排课、实习、实验、考试等都不属于JXGLJXGL系统的职责系统的职责范围。范围。系统边界:系统边界:JXGLJXGL系统与财务系统存在系统边界,财务系系统与财务系统存在系统边界,财务系统将从统将从JXGLJXGL系统得到学生选课注册信息。系统得到学生选课注册信息。JXGLJXGL系统与学校的其他信息管理系统没有直接的联系,系统与学校的其他信息管理系统没有直接的联系,但是可以从学校的全局数据库中共享学生、教师、教学但是可以从学校的全

9、局数据库中共享学生、教师、教学计划等必要的数据。计划等必要的数据。Home12.2.1 12.2.1 确定系统范围与系统确定系统范围与系统边界边界根据根据JXGLJXGL系统的职责范围和需求可以确定系统的职责范围和需求可以确定4 4个活动者:学生、老个活动者:学生、老师、教学管理员和财务系统。师、教学管理员和财务系统。对于每一个活动者,应当明确其业务活动的内容、对系统的服务对于每一个活动者,应当明确其业务活动的内容、对系统的服务要求。要求。“学生学生”活动者使用活动者使用JXGLJXGL系统查询新学期开设的课程信息和教师开系统查询新学期开设的课程信息和教师开课信息,选课并登记注册课程,查询自己

10、的课程成绩信息。课信息,选课并登记注册课程,查询自己的课程成绩信息。“老师老师”活动者使用活动者使用JXGLJXGL系统查询新学期开设的课程信息、学生选系统查询新学期开设的课程信息、学生选课信息和学生成绩信息。课信息和学生成绩信息。“教学管理员教学管理员”活动者使用活动者使用JXGLJXGL系统管理学期开设的课程的选课注系统管理学期开设的课程的选课注册和学生的考试成绩。册和学生的考试成绩。“财务系统财务系统”活动者是外部系统活动者,从活动者是外部系统活动者,从JXGLJXGL系统接受学生的课系统接受学生的课程注册信息。程注册信息。Home12.2.2 12.2.2 定义活动者定义活动者教学管理

11、员学生老师财务系统每一个每一个Use CaseUse Case都是一个活动者与系统在交互中执行的都是一个活动者与系统在交互中执行的有关事务序列。有关事务序列。应当根据系统需求,找出全部的应当根据系统需求,找出全部的Use CaseUse Case,并从活动者并从活动者的角度给出事件流,当的角度给出事件流,当Use CaseUse Case执行时系统应提供给活执行时系统应提供给活动者的服务。动者的服务。对一个对一个Use CaseUse Case应说明的基本内容是:应说明的基本内容是:Use CaseUse Case怎样开怎样开始和结束、正常的事件流、变通的事件流、意外情况的始和结束、正常的事件

12、流、变通的事件流、意外情况的事件流等。事件流等。从从JXGLJXGL的顶层的顶层Use CaseUse Case抽象,可以确定两个抽象,可以确定两个Use Case Use Case:“选课管理选课管理”和和“成绩管理成绩管理”。Use Case“Use Case“选课管理选课管理”与与4 4个活动者都存在交互。个活动者都存在交互。Use Case“Use Case“成绩管理成绩管理”与活动者与活动者“学生学生”、“老师老师”、“教学管理员教学管理员”存在着交互。存在着交互。Home12.2.3 12.2.3 定义定义Use CaseUse Case JXGLJXGL的顶层的顶层Use Cas

13、eUse Case图,如图图,如图12.112.1所示。所示。Home12.2.3 12.2.3 定义定义Use CaseUse Case图12.1 顶层Use Case图 Use CaseUse Case“选课管理选课管理”可以分解为以下可以分解为以下一些一些Use Case Use Case:“查询课程信息查询课程信息”、“选课注册选课注册”、“管理开设课程管理开设课程”、“管理学生信息管理学生信息”、“管理老师信息管理老师信息”、“管理课程信息管理课程信息”,如图,如图12.212.2所示。所示。Home12.2.3 12.2.3 定义定义Use CaseUse Case图12.2 选课

14、管理的Use Case图 Use CaseUse Case“成绩管理成绩管理”可以分解为以下可以分解为以下一些一些Use Case Use Case:“查询学生成绩查询学生成绩”,“查询课程成绩查询课程成绩”,“学生成绩管理学生成绩管理”,“成绩统计成绩统计”,如图,如图12.312.3所示。所示。Home12.2.3 12.2.3 定义定义Use CaseUse Case图12.3 成绩管理的Use Case图 活动者活动者“学生学生”与与Use CaseUse Case“查询课程信息查询课程信息”、“选课注选课注册册”、“查询学生成绩查询学生成绩”发生交互。发生交互。活动者活动者“老师老师

15、”与与Use CaseUse Case“查询课程信息查询课程信息”、“查询课查询课程成绩程成绩”发生交互。发生交互。活动者活动者“教学管理员教学管理员”与与Use CaseUse Case“管理学生信息管理学生信息”、“管理老师信息管理老师信息”、“管理课程信息管理课程信息”、“管理开设课程管理开设课程”、“学生成绩管理学生成绩管理”、“成绩统计成绩统计”发生交互。发生交互。活动者活动者“财务系统财务系统”与与Use CaseUse Case“产生选课信息产生选课信息”发生交发生交互。互。Home12.2.3 12.2.3 定义定义Use CaseUse Case绘制绘制Use CaseUse

16、 Case图从顶层抽象开始,如图图从顶层抽象开始,如图12.112.1,然后逐步,然后逐步分解,精细化分解,精细化Use CaseUse Case图,如图图,如图12.212.2、图、图12.312.3所示。直到所示。直到能清晰地表达问题,满足系统分析与建立模型的需要为能清晰地表达问题,满足系统分析与建立模型的需要为止。止。除了除了Use CaseUse Case图之外,对每一个图之外,对每一个Use CaseUse Case还应进行描述,还应进行描述,编写编写Use CaseUse Case的说明文档。的说明文档。应当对应当对以下的以下的JXGLJXGL的的全部全部Use CaseUse C

17、ase编写编写说明:说明:Use CaseUse Case“查询课程信息查询课程信息”Use CaseUse Case“选课注册选课注册”Use CaseUse Case“管理开设课程管理开设课程”Use CaseUse Case“管理学生信息管理学生信息”Home12.2.4 12.2.4 绘制绘制Use CaseUse Case图图应当对应当对以下的以下的JXGLJXGL的的全部全部Use CaseUse Case编写编写说明说明(续):(续):Use CaseUse Case“管理老师信息管理老师信息”Use CaseUse Case“管理课程信息管理课程信息”Use CaseUse C

18、ase“查询学生成绩查询学生成绩”Use CaseUse Case“查询课程成绩查询课程成绩”Use CaseUse Case“学生成绩管理学生成绩管理”Use CaseUse Case“成绩统计成绩统计”Use CaseUse Case“身份验证身份验证”Home12.2.4 12.2.4 绘制绘制Use CaseUse Case图图在在Use CaseUse Case图图上,上,不但要把不但要把Use CaseUse Case表示出来,而且表示出来,而且应当把应当把Use CaseUse Case与活动者与活动者之间的联系、之间的联系、Use CaseUse Case之之间的联系也表现出来

19、。间的联系也表现出来。如图如图12.412.4所示,所示,Use CaseUse Case“查询课程信息查询课程信息”和和Use Use CaseCase“选课注册选课注册”都与都与Use Use CaseCase“身份验证身份验证”有有Uses联系,即它们在联系,即它们在运行中都使用运行中都使用Use CaseUse Case“身身份验证份验证”进行用户的合法进行用户的合法身份检查。身份检查。Home12.2.4 12.2.4 绘制绘制Use CaseUse Case图图图12.4 联系 交互图描述交互图描述Use CaseUse Case如何实现对象之间的交互。交互图如何实现对象之间的交互

20、。交互图用于建立系统的动态行为模型。用于建立系统的动态行为模型。在分析和绘制了在分析和绘制了Use CaseUse Case图之后,对主要的图之后,对主要的Use CaseUse Case做做交互行为的分析是有必要的。交互行为的分析是有必要的。交互行为的分析的结果可以写成文档,绘制初步的交互交互行为的分析的结果可以写成文档,绘制初步的交互图,从而更清楚地理解图,从而更清楚地理解Use CaseUse Case的行为,以便进一步调的行为,以便进一步调整整Use CaseUse Case视图,确定问题的解决方案。视图,确定问题的解决方案。交互图主要有两种:顺序图和协同图,可根据需要绘制。交互图主要

21、有两种:顺序图和协同图,可根据需要绘制。在项目开发之初,分析问题领域时,绘制交互图只是为在项目开发之初,分析问题领域时,绘制交互图只是为了印证领域分析的结果和了印证领域分析的结果和Use CaseUse Case视图的正确性,在以视图的正确性,在以后对系统动态行为建模的过程中,还需要对交互图做深后对系统动态行为建模的过程中,还需要对交互图做深入的分析、细化和完善。入的分析、细化和完善。Home12.2.5 12.2.5 绘制主要交互图绘制主要交互图对每一个活动者与对每一个活动者与Use CaseUse Case的的交互行为,应编写详细的文字说明,即交互行为,应编写详细的文字说明,即交互活动剧本

22、,以作为绘制交互图的依据。交互活动剧本,以作为绘制交互图的依据。例:例:在活动者在活动者“学生学生”与与Use Case“Use Case“选课注册选课注册”的交互中,活动者的交互中,活动者“学生学生”的行为有三:登录注册,查询课程,选修课程。的行为有三:登录注册,查询课程,选修课程。在在登录注册活动中,活动者登录注册活动中,活动者“学生学生”提交用户提交用户IDID和口令。和口令。在查询在查询课程活动中,活动者课程活动中,活动者“学生学生”提交提交查询条件。查询条件。在在选修课程活动中,活动者选修课程活动中,活动者“学生学生”提交增加或删除所选的课程,并提交增加或删除所选的课程,并确认选课结

23、果。确认选课结果。Use Case“Use Case“选课注册选课注册”响应活动者响应活动者“学生学生”的请求,验证用户的请求,验证用户IDID和口和口令,查询或修改课程数据库的数据,反馈结果信息。令,查询或修改课程数据库的数据,反馈结果信息。Use Case“Use Case“选课注册选课注册”的行为由的行为由“注册表单注册表单”接口对象、接口对象、“选课注册选课注册表单表单”接口对象和接口对象和“开设课程开设课程”对象实现。对象实现。Home12.2.5 12.2.5 绘制主要交互图绘制主要交互图例:例:活动者活动者“学生学生”与与Use CaseUse Case“选选课注册课注册”的的顺

24、序图,如顺序图,如图图12.512.5所示。所示。Home12.2.5 12.2.5 绘制主要交互图绘制主要交互图图12.5 选课注册顺序图 12.3 12.3 静态结构模型静态结构模型Home12.3.1 12.3.1 建立对象类图建立对象类图12.3.2 12.3.2 建立数据库模型建立数据库模型12.3.3 12.3.3 建立包图建立包图 1 1定义对象类定义对象类首先从研究首先从研究Use CaseUse Case和交互剧本中发现对象类,确定类和交互剧本中发现对象类,确定类的属性和主要操作。的属性和主要操作。对于对于JXGLJXGL系统可以抽象出以下一些主要的对象类:系统可以抽象出以下

25、一些主要的对象类:在人事信息处理方面有在人事信息处理方面有“学生学生”类、类、“教师教师”类。类。在选课管理方面有在选课管理方面有“课程课程”类、类、“开设课程开设课程”类、类、“学学生登记生登记”类、类、“课程登记课程登记”类、类、“选课统计选课统计”类等。类等。在成绩管理方面有在成绩管理方面有“学生成绩登记学生成绩登记”类、类、“成绩统计成绩统计”类。类。对于每一个类应当确定其职责、属性、主要操作以及其对于每一个类应当确定其职责、属性、主要操作以及其他性质说明。他性质说明。Home12.3.1 12.3.1 建立对象类图建立对象类图对象类的属性可以通过检查类的定义、分析问题的需求和运用领域

26、对象类的属性可以通过检查类的定义、分析问题的需求和运用领域知识而确定。知识而确定。对象类的操作可以通过检查分析交互图确定,把交互图中对象之间对象类的操作可以通过检查分析交互图确定,把交互图中对象之间的交互活动抽象成一个类的操作。的交互活动抽象成一个类的操作。例:从课程信息管理的顺序图中的活动例:从课程信息管理的顺序图中的活动“加入课程(数据结构,基加入课程(数据结构,基础课,础课,3 3)”抽象得到抽象得到“课程课程”类的操作类的操作“加入课程()加入课程()”,如图,如图12.612.6所示。所示。Home12.3.1 12.3.1 建立对象类图建立对象类图图12.6 从顺序图抽象出类的操作

27、 2 2定义用户接口定义用户接口 除了一般类外还需要分析与定义系统的用户接口除了一般类外还需要分析与定义系统的用户接口。JXGLJXGL系统可以有的系统可以有的接口:接口:“课程信息管理表单课程信息管理表单”、“查查询课程表单询课程表单”、“查询成绩表单查询成绩表单”、“选课注册表单选课注册表单”、“开设课程表单开设课程表单”、“选课统计表单选课统计表单”、“成绩信息管成绩信息管理表单理表单”、“成绩统计表单成绩统计表单”等。等。JXGLJXGL系统的用户接口用对象类定义,如图系统的用户接口用对象类定义,如图12.712.7所示。所示。对每一个对每一个用户接口类应详细规定其功能操作。用户接口类

28、应详细规定其功能操作。Home12.3.1 12.3.1 建立对象类图建立对象类图 JXGLJXGL系统的用户接口类,如图系统的用户接口类,如图12.712.7所示。所示。Home12.3.1 12.3.1 建立对象类图建立对象类图图12.7 用户接口 3 3定义联系定义联系 JXGLJXGL系统的对象类之间的联系有多种类型,关联、聚系统的对象类之间的联系有多种类型,关联、聚合、泛化、依赖等都有。合、泛化、依赖等都有。(1 1)关联)关联 在在“开设课程开设课程”类与类与“师生师生”类之间存在类之间存在“授课授课”关联关联和和“登记注册登记注册”关联关联 ,在在“开设课程开设课程”类与类与“学

29、生成绩学生成绩登记登记”类之间存在关联类之间存在关联。(2 2)聚合联系)聚合联系 在在“开设课程开设课程”类与类与“课程课程”类之间存在聚合联系,在类之间存在聚合联系,在“开设课程开设课程”类与类与“学生登记学生登记”类、类、“课程登记课程登记”类之类之间存在聚合联系。间存在聚合联系。Home12.3.1 12.3.1 建立对象类图建立对象类图 (3 3)泛化联系)泛化联系 “学生学生”类、类、“教师教师”类与类与“师生师生”类的联系为泛化联系。类的联系为泛化联系。(4 4)依赖联系)依赖联系 在在“成绩统计成绩统计”类与类与“学生成绩登记学生成绩登记”类之间存在依赖联系,类之间存在依赖联系

30、,在在“选课统计选课统计”类与类与“开设课程开设课程”类之间存在依赖联系。类之间存在依赖联系。JXGLJXGL系统中,系统中,上述关联、聚合、泛化、依赖等联系可参见对象类上述关联、聚合、泛化、依赖等联系可参见对象类图图图图12.812.8、图、图12.912.9、图、图12.1012.10等。等。4 4绘制对象类图绘制对象类图 根据已定义的对象类及其联系,以及对象类的多重性、角色、导航根据已定义的对象类及其联系,以及对象类的多重性、角色、导航等性质,可以画出对象类图,如图等性质,可以画出对象类图,如图12.812.8、图、图12.912.9、图、图12.1012.10所示。所示。在对象类图的基

31、础上可以根据需要绘制一些对象图。在对象类图的基础上可以根据需要绘制一些对象图。使用对象图的目的是分析系统的瞬间状态,以便进一步了解系统的使用对象图的目的是分析系统的瞬间状态,以便进一步了解系统的结构和行为。结构和行为。Home12.3.1 12.3.1 建立对象类图建立对象类图 JXGLJXGL系统的课系统的课程管理对象类程管理对象类图图,如图,如图12.812.8所所示。示。Home12.3.1 12.3.1 建立对象类图建立对象类图图12.8 课程管理对象类图 JXGLJXGL系统的成系统的成绩管理对象类绩管理对象类图图,如图,如图12.912.9所所示。示。Home12.3.1 12.3

32、.1 建立对象类图建立对象类图图12.9 成绩管理对象类图 JXGLJXGL系统的人系统的人事信息对象类事信息对象类图图,如图,如图12.1012.10所示。所示。Home12.3.1 12.3.1 建立对象类图建立对象类图图12.10 人事信息对象类图 在分析和设计系统的静态结构模型时需要进行数据分析在分析和设计系统的静态结构模型时需要进行数据分析和数据库设计。和数据库设计。JXGLJXGL系统采用关系数据库系统存储和管理数据。系统采用关系数据库系统存储和管理数据。JXGLJXGL系统有系统有4 4个方面的数据需要管理:个方面的数据需要管理:人员数据(学生、教师)人员数据(学生、教师)课程数

33、据课程数据 选课注册数据选课注册数据 学生成绩数据。学生成绩数据。经过分析,经过分析,JXGLJXGL系统至少应有系统至少应有6 6个数据库表:个数据库表:学生表、教师表、课程表、开设课程表、选课表、任课学生表、教师表、课程表、开设课程表、选课表、任课表。表。Home12.3.2 12.3.2 建立数据库模型建立数据库模型这些基本表定义为:这些基本表定义为:学学生生(学学生生号号、姓姓名名、出出生生日日期期、性性别别、籍籍贯贯、地地址址、电电话话、入入学学时间、专业、班级备注)时间、专业、班级备注)教教师师(教教师师号号、姓姓名名、出出生生日日期期、性性别别、籍籍贯贯、地地址址、电电话话、职职

34、称称、专长、备注)专长、备注)课程(课程号、课程名、描述、学分、学时、性质、备注)课程(课程号、课程名、描述、学分、学时、性质、备注)开开设设课课程程(课课程程号号、学学期期、授授课课日日期期、授授课课时时间间、地地点点、选选修修人人数数、备注)备注)选课(学生号、课程号、学期、成绩、备注)选课(学生号、课程号、学期、成绩、备注)任课(教师号、课程号、学期、备注)任课(教师号、课程号、学期、备注)对于这些基本表需要进行关系规范化,设计用户视图、触发器、存对于这些基本表需要进行关系规范化,设计用户视图、触发器、存储过程等。储过程等。关系关系数据库模式通常用实体数据库模式通常用实体联系模型(联系模

35、型(ERDERD)表示,也可以按第表示,也可以按第1313章的叙述,用对象类图为数据库模式建立模型。章的叙述,用对象类图为数据库模式建立模型。Home12.3.2 12.3.2 建立数据库模型建立数据库模型对于一个大型的复杂的系统,常需要把大量的对于一个大型的复杂的系统,常需要把大量的模型元素用包组织起来,以方便理解和处理。模型元素用包组织起来,以方便理解和处理。JXGLJXGL系统虽然不算大,但也可以把系统的对象系统虽然不算大,但也可以把系统的对象类组织成包,以便更清楚地了解系统的结构。类组织成包,以便更清楚地了解系统的结构。包图表示的是系统的静态结构,但是建立包图包图表示的是系统的静态结构

36、,但是建立包图应当同时考虑系统的动态行为。应当同时考虑系统的动态行为。JXGLJXGL系统的包图,如图系统的包图,如图12.1112.11所示,一共有所示,一共有5 5个个包:包:“教学管理教学管理”包、包、“用户接口用户接口”包、包、“数数据库据库”包、包、“MFCMFC类类”包、包、“出错处理出错处理”包。包。对每一个包应绘出其详细的内部的组成结构图。对每一个包应绘出其详细的内部的组成结构图。Home12.3.3 12.3.3 建立包图建立包图在在“用户接口用户接口”包中包含了全部接包中包含了全部接口对象类:口对象类:“课程信息管理表单课程信息管理表单”、“查询课程表单查询课程表单”、“查

37、询成绩表查询成绩表单单”、“选课注册表单选课注册表单”、“开设开设课程表单课程表单”、“选课统计表单选课统计表单”、“成绩信息管理表单成绩信息管理表单”、“成绩统成绩统计表单计表单”、“注册表单注册表单”等。等。“教学管理教学管理”包中包含了为实现教学包中包含了为实现教学管理业务领域任务的全部对象类。管理业务领域任务的全部对象类。在在“数据库数据库”包中包含了实现数据包中包含了实现数据库服务功能的全部对象类。库服务功能的全部对象类。在在“MFCMFC类类”包中包含了支持系统包中包含了支持系统的动态连接库的必要的库函数对象的动态连接库的必要的库函数对象类。类。在在“出错处理出错处理”包中包含了实

38、现数包中包含了实现数据库服务功能的全部对象类。据库服务功能的全部对象类。Home12.3.3 12.3.3 建立包图建立包图图12.11 JXGL系统的包图“教学管理教学管理”包内部组成如图包内部组成如图12.1212.12所示。所示。其中包含了为实现教学管理其中包含了为实现教学管理业务领域任务的对象类:业务领域任务的对象类:“学生学生”类、类、“教师教师”类、类、“师生师生”类、类、“课程课程”类、类、“开设课程开设课程”类、类、“学生登记学生登记”类、类、“课程登记课程登记”类、类、“选课统计选课统计”类、类、“学生成绩学生成绩登记登记”类、类、“成绩统计成绩统计”类,类,以及以及“身份验

39、证身份验证”类等。类等。这些类又分别组成这些类又分别组成3 3个小包:个小包:“选课管理选课管理”包、包、“成绩管成绩管理理”包和包和“人事信息人事信息”包。包。“身份验证身份验证”类则相对独立。类则相对独立。Home12.3.3 12.3.3 建立包图建立包图图12.12 教学管理包 简易教学管理系统简易教学管理系统JXGLJXGL由两个子系统组成:由两个子系统组成:(1 1)课程注册子系统,负责新学期的选课注册管理工作。)课程注册子系统,负责新学期的选课注册管理工作。(2 2)成绩管理子系统,负责学生成绩管理。)成绩管理子系统,负责学生成绩管理。JXGLJXGL的系统与子系统包图如图的系统

40、与子系统包图如图12.1312.13所示。所示。Home12.3.3 12.3.3 建立包图建立包图图12.13 JXGL系统与子系统包图 12.4 12.4 动态行为模型动态行为模型Home12.4.1 12.4.1 建立顺序图建立顺序图12.4.2 12.4.2 建立协同图建立协同图12.4.3 12.4.3 建立状态机图建立状态机图12.4.4 12.4.4 建立活动图建立活动图在建立在建立Use CaseUse Case视图时已经绘制了一些顺序图或协同图,在建立系视图时已经绘制了一些顺序图或协同图,在建立系统的动态行为模型中需要继续这项工作,进一步绘制主要统的动态行为模型中需要继续这项

41、工作,进一步绘制主要Use CaseUse Case的顺序图或协同图,并逐步精细化。的顺序图或协同图,并逐步精细化。为了绘制顺序图,首先要对一个为了绘制顺序图,首先要对一个Use CaseUse Case编写交互活动的剧本,然编写交互活动的剧本,然后确定参与交互的活动者和对象,确定交互事件。后确定参与交互的活动者和对象,确定交互事件。例:例:设置开设课程的顺序图,如图设置开设课程的顺序图,如图12.1412.14所示。所示。其中的交互事件如下:其中的交互事件如下:1 1登录登录 2 2验证验证 3 3查询查询 4 4设置课程设置课程 5 5增加课程增加课程 6 6删除课程删除课程 7 7提交提

42、交 8 8存储存储 9 9退出退出Home12.4.1 12.4.1 建立顺序图建立顺序图设置开设课设置开设课程顺序图,程顺序图,如图如图12.1412.14所所示。示。Home12.4.1 12.4.1 建立顺序图建立顺序图图12.14 设置开设课程顺序图 成绩登记与成绩登记与统计的顺序统计的顺序图,如图图,如图12.1512.15所示。所示。Home12.4.1 12.4.1 建立顺序图建立顺序图图12.15 成绩登记与统计的顺序图 协同图用于描述系统的行为是如何由系统的成分实现的。协同图用于描述系统的行为是如何由系统的成分实现的。对于对于JXGLJXGL系统也需要绘制主要的系统也需要绘制

43、主要的Use CaseUse Case的协同图,以的协同图,以深入了解和表示系统的行为和各个对象的作用。深入了解和表示系统的行为和各个对象的作用。对于一个协同图,首先应确定参与协同的对象角色、关对于一个协同图,首先应确定参与协同的对象角色、关联角色和消息,然后才能绘制协同图。联角色和消息,然后才能绘制协同图。协同图主要表示对象与对象之间的连接,它们是如何共协同图主要表示对象与对象之间的连接,它们是如何共同完成系统的行为的,但这些行为的发生顺序和时间并同完成系统的行为的,但这些行为的发生顺序和时间并不是协同图表达的主要内容。不是协同图表达的主要内容。例:例:对于对于Use CaseUse Cas

44、e“管理课程信息管理课程信息”的协同图如图的协同图如图12.1612.16所所示。图中的对象角色有示。图中的对象角色有“注册表单注册表单”接口对象、接口对象、“开设开设课程表单课程表单”接口对象、接口对象、“课程课程”对象和对象和“开设课程开设课程”对对象。它们协同工作,实现设置新开设课程的服务。象。它们协同工作,实现设置新开设课程的服务。Home12.4.2 12.4.2 建立协同图建立协同图管理课程信息协同图,如图管理课程信息协同图,如图12.1612.16所示。所示。Home12.4.2 12.4.2 建立协同图建立协同图图12.16 管理课程信息协同图 状态机图表现一个对象(类)的生命

45、史。对于一些实现状态机图表现一个对象(类)的生命史。对于一些实现重要行为动作的对象应当绘制状态机图。重要行为动作的对象应当绘制状态机图。绘制状态机图需要确定一个对象的生命期可能出现的全绘制状态机图需要确定一个对象的生命期可能出现的全部状态,哪些事件将引起状态的转移,将会发生哪些动部状态,哪些事件将引起状态的转移,将会发生哪些动作。作。例如,对于例如,对于JXGLJXGL系统中的一个学生选课注册的系统中的一个学生选课注册的“学生登学生登记记”对象,可能有的状态如下:对象,可能有的状态如下:1 1“初始化初始化”状态状态 2 2“增加课程增加课程”状态状态 3 3“减少课程减少课程”状态状态 4

46、4“取消取消”状态状态 5 5“关闭关闭”状态状态 Home12.4.3 12.4.3 建立状态机图建立状态机图选课学生登记状选课学生登记状态机图如图态机图如图12.1712.17所示。所示。Home12.4.3 12.4.3 建立状态机图建立状态机图图12.17 选课学生登记状态机图 选课课程登记状选课课程登记状态机图如图态机图如图12.1812.18所示。所示。Home12.4.3 12.4.3 建立状态机图建立状态机图图12.18 选课课程登记状态机图 活动图的主要作用是表示系统的业务工作流和并发处理活动图的主要作用是表示系统的业务工作流和并发处理过程。对于一个系统可以针对主要的业务工作

47、流绘制活过程。对于一个系统可以针对主要的业务工作流绘制活动图。动图。绘制活动图需要确定参与活动的对象、动作状态、动作绘制活动图需要确定参与活动的对象、动作状态、动作流,以及对象流。流,以及对象流。例:对例:对JXGLJXGL系统的设置开设课程的活动可以绘制活动图,系统的设置开设课程的活动可以绘制活动图,如图如图12.1912.19所示。所示。其其中,参与活动的对象有中,参与活动的对象有“注册表单注册表单”接口对象、接口对象、“开开设课程表单设课程表单”接口对象、接口对象、“课程课程”对象、对象、“选课注册表选课注册表单单”接口对象、接口对象、“开设课程开设课程”对象等。对象等。其其中,动作状态

48、有中,动作状态有“登录登录”、“新开课程新开课程”、“取课程取课程信息信息”、“取选课信息取选课信息”、“增加增加/删除课程删除课程”等。等。Home12.4.4 12.4.4 建立活动图建立活动图设置开设课程活动图,如图设置开设课程活动图,如图12.1912.19所示。所示。Home12.4.4 12.4.4 建立活动图建立活动图图12.19 设置开设课程活动图 12.5 12.5 物理模型物理模型Home12.5.1 12.5.1 建立组件图建立组件图12.5.2 12.5.2 建立配置图建立配置图系统实现的源代码、二进制码、执行码可以按照模块化系统实现的源代码、二进制码、执行码可以按照模

49、块化的思想,用组件分别组织起来,明确系统各部分的功能的思想,用组件分别组织起来,明确系统各部分的功能职责和软件结构。职责和软件结构。JXGLJXGL系统的运行软件可以组织成组件图,如图系统的运行软件可以组织成组件图,如图12.2012.20所所示。示。其中有其中有“教学管理教学管理”、“课程管理课程管理”、“成绩管理成绩管理”、“人事信息人事信息”、“课程课程”、“开设课程开设课程”、“选课注册选课注册”、“教师教师”、“学生学生”等组件。等组件。在所有这些组件中包含了各自相应的对象类、接口、联在所有这些组件中包含了各自相应的对象类、接口、联系的实现代码。系的实现代码。如果需要,可以绘制系统的

50、源代码、二进制码、执行码如果需要,可以绘制系统的源代码、二进制码、执行码的组件的跟踪关系图。的组件的跟踪关系图。Home12.5.1 12.5.1 建立组件图建立组件图JXGLJXGL系统的运行软件组件图,如图系统的运行软件组件图,如图12.2012.20所示。所示。Home12.5.1 12.5.1 建立组件图建立组件图图12.20 JXGL系统组件图 JXGLJXGL系统是一个基于局部网络(校园网)和数据库的应系统是一个基于局部网络(校园网)和数据库的应用系统,因此有必要进行系统的配置,建立配置图。用系统,因此有必要进行系统的配置,建立配置图。JXGLJXGL系统的各个部分可以配置在不同的

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 生活常识

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com