客运管理系统.docx
《客运管理系统.docx》由会员分享,可在线阅读,更多相关《客运管理系统.docx(14页珍藏版)》请在冰豆网上搜索。
客运管理系统
《数据库》课程设计
院系:
信息科学与技术学院
计算机科学与技术系
学号:
2010508034
姓名:
蒋健波
指导老师:
于宝华
完成时间:
2013-3-14
某客运公司的运输管理系统
一、选题依据
1.1选题背景
现在各个客运站客流量越来越大,传统的售票方式已经不能满足人们的出行。
各部门管理与方案的制定,已经不能靠传统手工记录。
为了适应市场的需求。
我们为此开发了客运管理系统,使公司管理与售票方式都要满足现在人们快节奏的生活方式。
为了使公司各个部门更好的配合,使公司更好的适应21世纪发展。
售票系统的开发客运使广大用户在任何地方都可以买上票。
在也不用再寒冷的排队等待买票。
现在可以谁时都能买上票。
也能提前订购车票。
不仅方便管理,也给市民提供方便。
使用本系统有三个角色,即管理员、经理、员工。
管理员的用户权限最高,可以设置用户的登录,已经权限分配。
还有员工信息的录入和任务审核。
经理主要是任务制定者,和工作方案的发布者。
还有审批职员提交的作业。
员工主要是查询任务职责。
提交经理派发的任务。
或者申请工作方案。
二、系统需求分析
2.1可行性分析
(1)经济上的可行性
系统界面友好,操作简单,系统的配置要求不高,实现可行,因此经济可行。
该系统可以容易实现员工、经理与领导之间的联系,在Internet上实现完成部分教务工作,提高办事效率。
(2)技术上的可行性
随着互联网的蓬勃发展,越来越多的机构将科研管理与Internet融合到一起,以方便客运公司的管理。
在这样一个社会背景下,基于Windows和SQLServer2005,运用先进的jsp技术、先进的java语言,采用B/S模式开发的客运管理系统系统,因为java是开源的安全性能很高。
它提供一套科学的解决方案。
将员工、经理、管理员、有机地结合在一起,有效地提高管理水平和效率。
也能提高办事效率。
随着科学技术的不断提高,计算机科学日渐成熟,基于以上的技术在现今比较容易实现。
(3)操作上的可行性
该系统操作方便,安全可靠、稳定。
2.2结构化分析方法
系统功能模块基本将本系统划分为三大模块,即员工工作模块、经理管理模块以及管理员管理模块。
1、员工工作模块主要是员工浏览工作任务,根据任务要求,完成工作任务。
以及工作方案提出,提出自己对公司发展的建议。
以及自己的对公司的规划。
2、经理模块主要是工作方案的制定,和提交自己的工作方案。
工作计划的制定,给每位员工合理安排工作。
检查员工提交的作业。
对此进行审批和建议。
3、管理员是对整个公司的综合管理。
对用户权限的划分。
对员工信息的录入。
发布公司的通知。
以及采集员工的建议。
2.2.1功能需求图
图2-1客运管理系统的功能需求图
2.2.2顶层DFD图
根据分析得到的系统功能要求,画出可以能管理管理系统的分层DFD图。
首先画出顶层的DFD图如图2-2所示。
顶层确定了系统的范围,其外部实体为管理员、经理和员工。
图2-2客运管理系统顶层DFD图
2.2.3第一层DFD图
在顶层DFD图的基础上再进行分解,对系统功能需求做进一步分解:
(1)用户登录
获取用户输入的用户名及密码;
若出现用户名、密码错误或不匹配现象,反馈错误提示;
在用户名及密码都正确的前提下,支持密码修改。
(2)客运管理系统
首先发布公司通知,即先对经理发出通知(经理根据公司通知具体制定工作方案),然后对员工发出通知(具体派发到每个员工头上)。
各个部门统一派发各自的任务,使之平衡。
任务根据每个部门所负责的工作进行派发。
分配账号及密码(由于是管理员操作此部分)。
(3)经理
根据领导的安排,具体制定方案,提出工作计划。
等待审批合理后,派发到所管属的每位职员。
审批员工提交的作业。
(4)员工
浏览经理派发的任务,根据任务要求按规定完成任务。
提交作业,等待经理的审批。
提交自己的申请工作。
通过以上分析,建立第一层DFD图,如图2-3所示。
图2-3客运管理系统的第一层DFD图
2.2.4第二层DFD图
第一层已将系统分为用户登录、任务提出、部门设置、车辆管理4个加工。
具体的说明工作的审批与提出。
公司根据自己的情况合理的制定计划。
把制定的计划派发到每个部门,部门管理员根据公司的计划安排自己的工作方案。
可以确定第二DFD图2-4
图2-4客运管理系统的第二层DFD图
根据经理对员工工作的派发,为了使每位员工都能更好的为公司效力,根据每位员工的能力派发不同的任务。
可以确定第三DFD图2-5
图2-5客运管理系统的第二层DFD图
2.3.1建立系统用例模型
(1)角色确定
①管理员:
对员工基本资料维护,对工作计划基本资料进行添加、删除、更新或查询等;
②员工:
任务查询,任务作业的完成,提交作业,工作申请等;
③经理:
工作方案的制定,工作计划安排,任务派发。
审批员工提交的作业等;
(2)确定用例
与管理员有关的用例:
发布通知、分配帐号密码、注销或修改用户状态、任务设置
派发到各个部门经理手里吗,审核经理提出的工作计划;
与员工有关的用例:
录入员工信息、修改员工个人信息、审核工作申请、查询工作任务与经理有关的用例:
浏览经理派发的任务、查询经理的反馈意见。
(3)建立系统用例图
如图所示的是客运管理系统的高层用例图、管理员管理子系统用例图、经理管理子系统用例图以及客运管理系统的用例图。
图3-1客运管理系统的高层用例图
图3-2经理管理子系统用例图
图3-3客运管理子系统用例图
2.4.1活动图
图4-1描述的是员工管理操作的活动图。
在图中,员工从登录客运管理系统到选课完成需经历一系列过程。
首先输入用户名和密码登录系统,系统给出提示,若登录成功后则进行任务查询。
然后对信息进行详细查看,例如任务查询、作业提交、工作申请等,之后可点击选择申请并提交确认,此时系统也会给出提示,若成功提交,系统会提示经理审查中,
工作的申请,以及自己对公司美好计划,自己提出工作方案。
经过活动图的可视化效果,可更清楚了解此过程。
图4-1员工工作操作的活动图
顺序图
员工工作操作的顺序图及经理管理操作的子系统分别如图4-2和图4-3所示
图4-2员工工作操作顺序图
图4-3经理管理操作子系统顺序图
2.4.2协作图
图4-4经理管理操作子系协作图
图4-4主要描述职员登录客运管系统,查看经理给自己派发的工作,职员接收到任务,通过自己综合分析完成后向经理提交作业。
等待经理审核,如果能通过,就给员工发出通过命令。
否则打回重做。
图4-5经理登录系统协作图
图4-5主要描述经理登录系统,更具要求制定工作计划,审批完成后,派发给每位员工
员工根据派发的任务,去完成作业,之后想经理提交,等待经理的审批。
2.4.3状态图
图4-6描述了员工这个特定对象所有可能的状态及其引起状态转移的事件。
员工登录系统后操作中其生存周期中所处的不同状态、转换时的条件,虽然看似较为简单,但并不可忽视。
对于此信息的详细设计,可进一步用于用类状态的设计和编制类。
图4-6员工登录系统的状态图
2.4.4类图
类模型是面向对象方法的核心,类模型从对象的角度描述系统的组成,描述对象及相互间的关系。
系统已在前面进行过简单描述,通过检查问题陈述中的所有名词短语和代词,得到初始类:
部门运输部财政部人事部车队职员任务管理器
经过分析画出系统整个分布图,来却不同类之间的关联可以获得如下图所示:
三、软件设计
3.1数据库设计
3.1.1设计内容
根据需求分析,设计一个以员工为单位客运管理数据库,能实现员工信息的录入,车辆信息的录入,部门设置等信息表的设置,可以对此进行创建、更新、删除、修改,数据库完整性检查、冲突检测、查询优化以及数据库角色、权限的分配,实现数据库的备份等事务处理以保证数据的完整性、一致性、安全性、可靠性。
3.1.2设计要求
实现车型、路线、驾驶员等信息的管理;实现线路车次、线路站点及票价管理;实现售票管理;创建存储过程按线路统计乘坐次数;创建存储过程按车次统计某段时间的乘坐次数;创建触发器,实现售票时自动修改相应车次已售座位数;创建视图查询各线路各车型的数量;建立数据库相关表之间的参照完整性约束
3.1.3数据库表结构
根据需求分析可以画出如下各表之间的关系
四、总结
这次的软件工程课程设计,我们做的是“客运管理管理系统”,通过几个星期对其各阶段任务的分析实验操作(确定课题、可行性研究与计划、需求分析、设计等),使我们对这门课程有了更深层次的了解,同时也学到了很多东西。
首先确定各个部门之间的关系,弄清选题依据后,进行了可行性研究,可行性研究的主要任务不是具体解决系统中的问题,而是以最小的代价在尽可能短的时间内确定问题是否值得解决,是否能够解决,因此我们考虑了经济、技术与操作上的可行。
接着是需求分析阶段,这部分任务用了较长的时间,因为除了用传统的结构化分析方法外,还用了面向对象的分析方法。
刚开始用结构化的方法时,由于对系统的了解程度不够,有很多方面都考虑的不周全。
通过进行数据流程图的划分,使功能模块的实现看起来更具体。
我们总共划分到第二次数据流,按照“自定而下,逐层分解”的总原则划分,逐层到每一层的复杂度。
比较有难度的就是用面向对象的方法分析了,这种方法以前自己没有使用过,只是通过课程来了解其含义,理解起来也很空洞。
一开始我们都觉得很难上手,在建立用例模型的时候,如何确定执行者、用例、用例之间的关系;在建立动态模型的时候,状态图、顺序图、协作图、活动图等都是如何定义与细化的;在建立静态模型的时候,如何分析确定类、确定类与类之间的关系等等都阻碍着分析的前行。
为了解决这些问题,我们也不乏做了很多工作,比如把书上的各小节的例子与案例分析都仔细的研究了几遍,然后通过借鉴其它书本及网上搜索的资料,并根据我们所选系统定义的功能以及操作过程再反复斟酌,进一步对系统进行了较好的分析。
同时通过两人之间的讨论配合,也是问题难度有了一定减弱。
然后我们又花了两周进行设计阶段的工作,这部分我们熟悉了一个软件开发工具——PowerDesigner。
用word来画模型图还是比较复杂,至少说很花时间的,用PowerDesigner工具大大节约了时间并且减少了出错率,同时也使得我们对UML建模有了一个专业上的认知。
之后根据需要对系统进行了数据结构的设计,这部分内容比较简洁,因为我们可以根据生活经验与买票的经历,所包含的具体结构相对而言较为清楚。
总之,此次课程设计最大的收获就是对于建模语言UML有了深层次的理解。
用例模型由若干个用例图组成,在UML中构成用例图的主要元素是用例和执行者及它们之间的联系;构成类图的主要成分是类及类之间的关系,类的识别、类属性与操作识别都是非常细节的一部分;动态模型描述了系统的动态行为和控制结构,顺序图侧重于用例的行为在过程行为中的操作次序,是一种交互图;而活动图又描述了用例及对象的活动,操作实现中完成的工作;此外,状态图针对于对象、子系统或系统的生存周期;协作图则侧重于相互合作对象间的交互关系。
这些训练了我们的实践性,使设计能力、分析和解决问题的能力有了较好的提高。
五、参考文献
[1]李绪成,闫海珍.JavaWeb开发教程[M].北京:
清华大学出版社,2009.1
[2]戴志诚,赵国峰.JSP信息化系统建设方案[M].北京:
人民邮电出版社,2007
[3]林上杰,林康司.JSP2.0技术手册[M].北京:
电子工业出版社,2005.2
[4]刘金岭,冯万利,张有东.数据库原理及应用[M].北京:
清华大学出版社,2009.7
[5]马斗,邱泽.专家门诊—JSP开发答疑[M].北京:
人民邮电出版社,2006