首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

【UML】案例分析:飞机场运作系统

2012-08-31 
【UML】案例分析:机场运作系统08年9月入学,12年7月毕业,结束了我在软件学院愉快丰富的大学生活。此系列是对四

【UML】案例分析:机场运作系统

08年9月入学,12年7月毕业,结束了我在软件学院愉快丰富的大学生活。此系列是对四年专业课程学习的回顾,索引参见:http://blog.csdn.net/xiaowei_cqu/article/details/7747205

此篇是UML课程的大作业,是我跟随 桐姐,小鹿,和 翠翠 一起完成的。感谢几位认真扎实又不嫌弃我的队友,让我学习很多~

UML案例分析
UML建模的目的:
使用模型可以更好地理解问题 (To understand the problem better)使用模型可以加强人员之间的沟通 (To communicate with other persons)使用模型可以更早地发现错误或疏漏的地方 (To find errors or omissions)使用模型可以获取设计结果 (To plan out the design)模型为最后的代码生成提供依据 (To generate code)UML建模:
UML是Unified Modeling Language(统一建模语言)的简称。UML是对软件密集型系统中的制品(软件开发过程中产生的各种各样的产物,如模型、源代码、测试用例等)进行可视化、详述、构造和文档化的语言。
UML是一套表示法系统。UML由一组图组成,它使得系统分析员可以利用这一标准来建立能够和客户、程序员以及任何参与程序开发的人员理解的多视角的系统蓝图。不同的风险承担人通常使用不同类型的图相互交流。
    UML提供了九种不同的图来描述系统模型,用于面向对象的编程:类图:一类或者一组具有类似属性和共同行为的事物;对象图:一个类的实例,是具有属性值的一个具体事物;用例图:是从用户的观点对系统行为的一个描述;状态图:在任意给定的时刻,一个对象总是处于某一特定的状态;顺序图:表达对戏那个之间基于时间的动态交互;活动图:显示系统中从一个活动到另一个活动的流程;协作图:展示一组对象间的连接以及这组对象收发的消息;构件图:展现了一组组件之间的组织和依赖,用于对源代码、可执行的发布、物理数据库和可调整的系统建模;部署图:显示了基于计算机系统的物理体系结构;
实验步骤
【确定项目】机场运作系统
【项目立意】 机场运作系统分析旨在分析机场的运作系统,从中发现系统中的不足,以求设计出更好的机场运作系统。机场运作系统的核心在于机场的调度系统,通过对此业务模型的建立和分析,希望那个能够找出更好的机场调度算法,使机场能够更加高效的运行。整个系统中采用无线网络进行通信,除了Pc机,为了方便通信,在本系统中还通过对讲机进行通信,使信息能够及时的传送。【系统分析】首先机场运作系统是一个比较庞大的系统,为了方便起见,我们将其分成四大版块,小组四位成员一人负责一大版块,每阶段任务结束都进行汇报总结,相互纠正错误,完善各版块体系:
四大版块:
    买票系统:主要对乘客购买机票到登机前的系统的分析;包括:网购 、机场购买、退票、改签机票登记系统:主要对乘客到达机场后直到登机之间的系统分析;包括:安检、检票、登机调度系统:主要对飞机起飞与着陆的系统分析; 包括:跑道控制、飞机起飞、特殊情况、飞机降落货运系统:主要对货物从安检装机到抵达目的地之间的系统分析; 包括:发货、货物检查、收货
对各版块进行系统分析的方法也同样依照书本上所使用的——从业务入手,发现业务过程。我们小组成员对各自的版块都进行了业务流程的分析,并画出了业务流程图,为方便之后的抽类及细化类的过程。
图 1 登记活动图【UML】案例分析:飞机场运作系统

图 2 买票活动图
【UML】案例分析:飞机场运作系统

图 3 飞机起飞活动图
【UML】案例分析:飞机场运作系统

图 4 飞机着陆活动图
【UML】案例分析:飞机场运作系统

图 5 机场货运活动图
【UML】案例分析:飞机场运作系统

【领域分析——抽类】上阶段步骤校验结束后,进行领域分析,即对各版块系统进行对名词和动词的抽取,汇总去掉重复累赘项后得到初步类图:
初步将类分为 : 角色、实体和机场部分
    角色包括:乘客、检票员、安检人员、地控中心人员、携货员、前台服务人员、机场货运人员、机场广播人员、跑道工作人员实体包括:机票、行李、货物、货运单、登机牌、货运单机场部门包括:飞机、跑道、候机厅、机场公安局、机场大厅、海关、登机口、边防检查属
图 6 系统类图
【UML】案例分析:飞机场运作系统

图 7 跑道工作人员类图
【UML】案例分析:飞机场运作系统

图 8 安检人员类图
【UML】案例分析:飞机场运作系统

图 9 乘客相关类图
【UML】案例分析:飞机场运作系统

图 10 低空中心人员相关类图
【UML】案例分析:飞机场运作系统

图 11 机场工作人员相关类图
【UML】案例分析:飞机场运作系统

图 12 机场总负责相关类图
【UML】案例分析:飞机场运作系统

图 13 检票相关类图
【UML】案例分析:飞机场运作系统

图 14 携货人员相关类图
【UML】案例分析:飞机场运作系统


【开发用例】   对各种类进行了细化后,开始对用例的开发。
   对于用例,我们根据所得出的类来分析,首先我们将类分为几个不同的包,
   如乘机对象(乘客和货物)、 携货人员(发货人和收货人)检查机构(海关和边防检察署)、 机场工作人员(前台服务员等)
图 15 检查机构用例图
【UML】案例分析:飞机场运作系统

图 16 乘机对象用例图
【UML】案例分析:飞机场运作系统


图 17 携货人员用例图
【UML】案例分析:飞机场运作系统

图 18 机场工作人员用例图
【UML】案例分析:飞机场运作系统

【创建时序图】   开发完用例后,我们小组对其中重要的用例进行了时序图的创建。
   对于买票系统来说,最关键的用例即购票,我们我们仅对网上购票进行了时序图的描述,具体时序图 ;对于登机系统来说,我们对登记检查部分进行了时序图的描述,检查包括登机前的机票检查和物品安检以及国际航班的海关检查;对于调度系统来说,主要是飞机的起飞和着陆,我们分别对这两个用例进行了时序图的描述。
   对于货运系统来说,我们主要对货物交货时的安检用例进行了时序图的描述,对于货物的安检来说是比较严格的,而且考虑到的方面也比较繁杂
   时序图完成后,相应的协作图就很容易得到,按F5即可。
图 19 登机顺序图【UML】案例分析:飞机场运作系统

图 20 买票顺序图【UML】案例分析:飞机场运作系统

图 21 飞机起飞顺序图【UML】案例分析:飞机场运作系统

图 22 飞机着陆顺序图【UML】案例分析:飞机场运作系统

图 23 货运顺序图
【UML】案例分析:飞机场运作系统

【创建状态图】   状态图在创建的过程中很容易出现错误,不知道什么是状态图,如何确定状态,常常需要回过头去看状态图的概念——是针对某一个对象不同时刻的状态所描绘成德图。
   于此,我们小组对两个重要对象进行了状态图的描绘:
图 24 货物状态图【UML】案例分析:飞机场运作系统

图 25 飞机状态图【UML】案例分析:飞机场运作系统
【创建组件图】   组件图是根据之前的类图,相关的用例所构建的,描述的是组件之间的组织和依赖。
图 26 系统构件图【UML】案例分析:飞机场运作系统

【创建部署图】   部署图展现的是运行时处理节点以及其中组件的配置,说明分布、交付和安装的物理系统。

图 27 系统部署图
【UML】案例分析:飞机场运作系统



实验结果及分析
    通过实验对具体问题的建模,更加深了对UML的理解,以及体系化了自己建模的思想。UML是Unified Modeling Language(统一建模语言)的简称。UML是对软件密集型系统中的制品(软件开发过程中产生的各种各样的产物,如模型、源代码、测试用例等)进行可视化、详述、构造和文档化的语言。同时理解了UML各种图之间的关系。UML中视图包括:用例视图、逻辑视图、实现视图、进程视图、部署视图。由九种图组成:包括类图、对象图、顺序图、状态图、用例图、活动图、协作图、构件图、部署图。通过实验我们也再次融洽了小组的协作。集体的力量是无穷的!当你属于你一个集体的时候,那种归属感与优越感也能再次大限度的发挥你的潜力!整个建模过程我们一起讨论,分工合作。大家各有自己的任务,同时也有集体的大局,熬了几夜才搞出这个浩大的工程。实验中我们系统的类图啊,部署,构件几乎都是一起做的,而每个模块分到个人专门负责。我负责调度模块,为了使这一块做的好一些,也查阅了不少有关调度的知识(虽然很多并没有用来建模),学习了很多。相信我们团队会越走越远!整个系统是通过EA(Enterprise Architecture)软件作为分析平台,由于Rational Rose中有些UML图是不支持的,比如顺序图中的帧化等,所以在此选择EA作为开发平台。顺序图中的帧化情况的出现是由于我们在各自的工程下进行分析,在整合系统的时候就直接采用帧化的方式,说明图式来自于别的工程,充分利用了UML2.0的优越性
转载请注明出处:http://blog.csdn.net/xiaowei_cqu/article/details/7773820


热点排行