机票订购系统.设计详细说明书_第1页
机票订购系统.设计详细说明书_第2页
机票订购系统.设计详细说明书_第3页
机票订购系统.设计详细说明书_第4页
机票订购系统.设计详细说明书_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

文档编号: 密级:秘密版本号:文档名称:《详细设计说明书》项目名称:网上机票订购系统项目编号:无项目负责人:[《详细设计说明书》说明软件系统中的每个功能模块的具体实现,包括实现算法、逻辑流程等。] 编写:年月日审核:年月日批准:年月日开发单位:目录1引言 31.1概述 31.2背景 31.3定义 31.4参考资料 32系统结构 42.1系统类图 42.1.1表示层类图: 42.1.2控制层类图: 62.1.3业务层类图: 72.2模块汇总 83功能模块设计说明 93.1用户登录及注册模块 93.1.1模块时序图 93.1.2模块描述 103.1.3模块协作图 113.2查询模块 123.2.1模块时序图 123.2.2模块描述 123.2.3模块协作图 133.3订票模块 143.3.1模块时序图 143.3.2模块描述 143.3.3模块协作图 153.4改签模块 163.4.1模块时序图 163.4.2模块描述 173.4.3模块协作图 173.5退票模块 183.5.1模块时序图 183.5.2模块描述 193.5.3模块协作图 193.6注销 203.6.3模块协作图 201引言1.1概述本文描述了一个基于Web的飞机票网上预订系统的详细设计。系统采用MVC的三层架构模型。将应用系统划分为表示层、控制层、业务处理层和数据访问层4个层次。文中详细描述了各个模块的功能,并利用统一建模语言UML对软件进行建模,构建各个模块的类图、时序图、状态图等,从细节上进行具体分析。1.2背景系统名称:网上电子银行交易系统;用户:希望通过网络订飞机票的互联网用户。1.3定义B/S(Browser/Server)——浏览器/服务模式(网络体系结构)。1.4参考资料《数据要求说明书》《需求分析说明书》《概要设计说明书》《数据库设计说明书》2系统结构2.1系统类图2.1.1表示层类图:表示层类图为JSP页面:Login类:用户登录界面,username属性和password属性保存用户的账号和密码。QueryTransaction类:查询并输出用户交易记录,其中UserID为用户的账户ID,StartTime为查询的起始时间,EndTime为查询的截至时间,QueryResult为返回的订单类集合。updateUserInfo类:修改用户信息界面。其中可修改的项目有地址,联系方式等。uadatePassword类:修改用户密码界面。oldePassword表示原始密码,newPassword存储新密码。Query类:查询相关票务信息的类,用户可选择输入StartTime(出发时间)、RangeType(单程、往返、联程等)、Departure(出发城市)、Destination(目的地)、Number(人数)、Airline(航空公司)、CAB(舱位)等信息来查询符合条件的票务信息。FlightInfo类:存储机票的信息类,其中有Airline(航空公司)、StartTime(起飞时间)、RangeType(票务类型)、Departure(出发城市)、Destination(到达城市)、CABInfo(舱位相关信息)。Cabin类:表示对应FligthInfo(航线)的舱位情况。其中CAB为表示舱位名称的String[],Surplus为表示对应舱位剩余票数的Int[],Price为表示对应舱位座位价格的Double[]。Booking类:用户订票操作行为的类。FlightInfo表示用户选定的需要订票的航班编号;RangeType表示用户需订的机票类型;CABInfo表示用户所定的舱位、张数等信息。Reissue类:表示用户改签行为的类;其中OrderNumber表示用户希望改签的订单;UserID表示用户ID。Refund类:表示用户退票行为的类:其中OrderNumber表示用户希望退订的订单;UserID表示用户的ID。Defray:表示用户付款行为的类。UserID表示用户的ID,Order表示用户需要付款的订单类,Payment为用户的付款方式。2.1.2控制层类图:控制层类图说明:NetWorkActionServlet是Action的基类,UserAction、OrderAction、DealAction、BookAction、ReissueAction和RefundAction都是接受对应页面的请求,并向相应的Service层发送请求,接受来自Service的数据并向页面传递这些数据。UserService、OrderService、DealService、BookService、ReissueService和RefundService接受来自Action的数据请求并做一些相应的处理然后把他们交给DAO层,DAO层相对通过Hibernate对数据库进行操作,并给Action返回相应的结果。2.1.3业务层类图:业务层类图说明:Client类:客户类。客户类主要拥有一些基本的注册时的信息属性,能够实现登录(login)、注销(cancellation)、订票(Booking)、改迁(reissue)等多种类型的操作。Ticket类:机票类。主要拥有一些关于机票的基本信息。包括票的ID号(ticket_id)、机票所属的航班(flightInfo)、机票所属的仓位类型(cabin)等属性。Cabin类:仓位类。用户表示各种不同类型的仓位。其中包括仓位的类型(cabin)仓位所属航空公司(airline),票价相对比率(rate),以及其他一些服务明细信息(other)。FlightInfo类:航班类。主要描述了一个航班的基本信息。其中主要包括:航空公司名(airline)、起始时间(start_time、end_time)、目的地(destination)、起飞地(departure)等等。Cabin类和FlightInfo类聚集到Ticket类,是Ticket类的组成部分。BookAction类:。主要包含了订票的一些操作。订票类中包含某个用户的信息,以及订的某张票的信息。操作包含执行和确认订购。RefundAction类:退订票类。主要包含了用户退订票的一些操作。属性和订票类一样。ChangeAction类:改迁类。主要包含了改迁的一些操作和属性。2.1.4数据库详细数据库详细:这个图反映了系统所有对于数据库的操作。系统的所有操作都是通过DealAction操作类进行实现的。而这个类只是负责在本地的一些准备活动,需要通过UserDao、OrderDao、DealLogDao等几个类进行实际操作。然而UserDao等这些类操作的只是本地数据库,而该系统必须实时的与航空公司交互,获取航空公司的最新数据。因此最终需要通过一个OperateDB类与外界航空公司进行数据交互。实现最终的数据库操作。提交数据和获取处理结果。2.2模块汇总系统包括用户注册及登录模块,查询模块,订票模块,改签模块,退票模块,注销模块,其中用户登录模块和注销模块用以保证用户使用系统的交互信息的安全;电子支付模块为外部接口,用户在进行网上交易时,可选择本银行链接到系统的支付界面。查询,用户可通过时间,航班号,城市等方式查询航班。订票,与电子银行进行交互,并进行支付的操作。改签,按一定规则为用户进行改签处理,改签过程中修改订单,如有需要还需要进行相关的付款操作。退票,根据用户选择订单及公司制定相关规则进行判断,判断订单是否可退订,与电子银行进行交互,进行退票之后相应的转账到用户账户操作。3功能模块设计说明3.1用户登录及注册模块3.1.1模块时序图登录:

注册:3.1.2模块描述登录:1.用户在Login页面中输入账号和登录密码,通过方法doLogin()提交到Web服务器的TicketOnlineActionservlet类。2.类TicketOnlineActionservlet使用方法process()处理提交信息,调用UserAction进一步处理;3.UserAction使用方法execute()根据提交信息,调用与账号密码有关的User类处理;4.类User使用方法Login()验证账号状态和密码正确性,这里需要连接数据库;5.Web服务器向后台系统和数据库发送账号和密码,后台系统和数据库验证提交信息后,向Web服务器发送回应;6.Web服务器收到回应后返回给用户;7.若验证成功,类User调用方法upDataUserInfo()保存操作记录到数据库.注册:1.用户在Register页面中输入注册信息,通过方法register()提交到Web服务器的TicketOnlineActionservlet类。2.类TicketOnlineActionservlet使用方法insertUser()处理提交信息,调用UserAction进一步处理;3.UserAction使用方法execute()提交信息。4.类User使用方法register()验证注册信息正确性,这里需要连接数据库;5.Web服务器向后台系统和数据库发注册信息,后台系统和数据库验证提交信息后,向Web服务器发送回应;6.Web服务器收到回应后返回给用户;7.若验证成功,类User调用方法upDataUserInfo()保存操作记录到数据库.3.1.3模块协作图登录:注册:

3.2查询模块3.2.1模块时序图3.2.2模块描述1.用户在queryPage页面中输入查询信息,通过方法doSubmit()提交到Web服务器的TicketOnlineActionservlet类。2.类TicketOnlineActionservlet使用方法process()处理提交信息,调用OrderAction进一步处理;3.OrderAction使用方法execute()根据提交信息。4.orderService使用方法getFlightInfo()提交请求4.OrderDao通过queryFlight函数查询航班信息,这里需要连接数据库;5.后台系统获取数据库连接并从数据库中查询信息6.后台将信息返回web;7.若成功则返回用户查询的信息否则返回备选信息8.视图层显示查询结果3.2.3模块协作图

3.3订票模块3.3.1模块时序图3.3.2模块描述模块描述:1.用户确认登录状态和所订的飞机票到达订票页面,若用户在普通页面,处于未登录状态就点击订票则要先登录,doLogin(),登陆成功后,进入订票页面。2.用户处于订票页面,确认订票信息使用doSubmit(),提交给控制类DealAction(抽象)。3.DealAction返回银行支付接口,用户进入银行支付界面。4.用户使用doDfray()函数,进行银行支付,支付后将结果返回到DealAction5.DealAction,使用execute()函数提交给BookAction,使之进行订票操作。6.BookAction将订票请求传给BookService控制类。7.BookServive将订票信息使用book()函数传给模型类BookDao。8.BookDao使用updateDBOperate()函数从operateDB()获得数据库信息。9.OperateDB使用getCon等函数连接数据库,并进行相关查询,更新操作。10.ConnectDB将查询连接和查询结果返回给operateDB.11.OperateDB将查询信息返回给BookDao,若成功包含所查询到的结果。12.BookDao将结果返回到BookService控制类。13.BookService控制类根据查询结果,返回到用户的订票页面。3.3.3模块协作图

3.4改签模块3.4.1模块时序图3.4.2模块描述1,用户确认登录状态和所订的飞机票到达机票改签页面,若用户在普通页面,处于未登录状态就点击订票则要先登录,doLogin(),登陆成功后,进入订票页面。2,用户处于改签页面,确认确认改签信息使用doSubmit(),提交给控制类DealAction(抽象)。DealAction返回银行支付接口,用户进入银行支付界面。

4.用户使用doDfray()函数,进行银行支付,支付后将结果返回到DealAction。DealAction,使用execute()函数提交给BookAction,使之进行用户订单查询操作。DealDao,使用getLogByUser()提交给数据库控制类OperateDB。OperateDB使用getCon()函数连接数据库,并进行相关查询更新操作。ConnectDB将查询结果返回给OperateDB。OperateDB将订单查询结果返回给DealDao,若成功,包含所查询到的结果。DealDao将订单查询结果返回给DealerAction控制类。显示给用户。用户处于改签页面,使用doSubmit(),将选择订单信息提交给控制类DealAction(抽象)。11.DealerAction控制类使用execute()函数提交给ReissueAction,使之进行订票操作。ReissueAction将改签请求转发给ReissueService控制类ReissueService控制类将改签信息使用change()函数传给模型类ReissueDao。ReissueDao使用upd

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论