ImageVerifierCode 换一换
格式:DOCX , 页数:23 ,大小:225.65KB ,
资源ID:10543101      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10543101.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(机票预订系统详细设计.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

机票预订系统详细设计.docx

1、机票预订系统详细设计软件工程实验报告设计题目: 机票预订系统(详细设计部分) 班 号: 芙蓉计科0801班 实验组号: A3 姓 名: 彭虹茗 学号: 08120118 同组成员: 陈 东 学号: 08120102 胡 楠 学号: 08120106 何 涅 学号: 08120110 黄 涛 学号: 08120114 李 勇 学号: 08120122 刘 帅 学号: 08120126 聂 陈 学号: 08120130 黎祖吉 学号: 08120134 指导教师: 周 学 清 时 间: 2011-11-30 机票预订系统详细设计1 引言1.1 编写目的在前一阶段(概要设计说明书)中,已解决了实现该

2、系统需求的程序类设计问题。包括如何把该系统划分成若干个类、决定各类之间的接口、类之间传递的信息,以及数据结构、类结构的设计等。在以下的详细设计报告中将对在本阶段中对系统所做的所有详细设计进行说明。在本阶段中,确定应该如何具体地实现所要求的系统,从而在编码阶段可以这个描述直接翻译成用具体的java程序语言书写的程序。主要的工作有:根据在需求分析说明书中所描述的数据、功能、运行、性能需求,并依照概要设计说明书所确定的处理流程、总体结构、数据结构设计和类设计,逐个类的进行尽可能详尽的程序描述(包括各方法的功能、性能、输入、输出、算法、程序逻辑、接口等等),尽可能的减少编码时间。1.2 背景软件系统的

3、名称:机票预订系统项目由A3小组负责开发.项目分两个部分:面向客户的客户终端程序部署在服务器上的Java服务程序1.3 定义Socket:网络通信模式。Server:机票预订系统的服务器端。 Client:机票预定系统的客户端。1.4 参考资料1.机票预订系统项目开发计划书 2.机票预订系统需求分析说明书 3.软件工程实践者的研究方法 机械工程出版社2 程序系统的结构以类图形式展示:Server类图:Client类图:3 Server端程序说明:3.1类ServerStart设计说明3.1.1ServerStatrt()方法 调用窗口显示方法ServerGUI(),显示服务器主界面,Serve

4、r be ready。3.1.1.1 功能启动服务器。3.1.1.2 测试计划能顺利启动服务器3.1.2ServerLogon()方法 用于服务器管理员登录。3.1.2.1 功能直接访问数据库,验证输入的用户名密码,如正确则进入服务器管理界面。3.1.2.2 输入项用户名 String密码 String3.1.2.3 输出项是否正确 bool3.1.2.4 算法1.用getText()从管理员登陆界面读取用户名与密码。2.将信息传递到方法中到数据库中查找。3.返回查找情况,找到true,未找到false。3.1.2.5 测试计划能正确识别输入的用户名与密码。输入正确的用户名与密码可跳转至服务器

5、管理员界面,输入错误的则发出提示,不允许进入。3.1.3ServerGUI()方法 用于编辑管理员界面并显示。3.1.3.1 功能编辑管理员界面,传递参数给ServerLongON(),并显示界面。3.1.3.2 算法使用控件的监听事件达到上述效果3.1.3.3 测试计划界面能否正确显示,SeverLogON()方法能否正常运行。3.2 database类设计说明3.2.1 database()方法用于建立与数据库的链接,可被继承。3.2.1.1 功能建立与数据库的链接,可被继承,使其他类在访问数据库时不必再次建立连接。3.2.2.2 性能为提升数据传输的效率,访问数据库时间应尽量短。3.3

6、Userdb类设计说明3.3.1 Userdb()方法Userdb的构造方法。3.3.1.1 功能继承父类database()的构造方法,从而建立起与数据库的链接。3.3.2 isExit()方法判断数据是否出现,可被其他方法调用。3.3.2 .1 功能在查询函数中可被调用,用于判断所查询的数据是否出现。3.3.2 .2 输出项输出bool变量,若存在,则为true,or 则为false3.3.3 updatedata()方法更新当前行数据3.3.3.1 功能更新当前行数据为修改过的数据,修改数据库内内容。3.3.3.2 输入项要修改数据所在的列名 String修改后的数据 Object3.3

7、.3.3 输出项数据内的内容被修改。3.3.4 InsertNew(User user)向数据库加入一行数据3.3.4.1 功能读入User数据,将这行数据加入数据库中3.3.4.2 输入项用户信息 User3.3.4.3 输出项用户信息加入数据库3.3.5 QueryData()查询数据是否存在。3.3.5.1 功能接收数据,到数据库中查询数据数据是否存在。3.3.5.2 输入项用户名String密码String 余额 double 航班号String 票数int 查询种类int 查询种类必须输入,其他可根据需要选择性的输入。3.3.5.3 输出项查询得到的信息加入游标数组。3.3.6 Cl

8、oseAll()关闭链接。3.3.6.1 功能关闭服务器与数据库之间的链接3.4 Flightdb类设计说明3.4.1 Flightdb()方法Flightdb的构造方法。3.4.1.1 功能继承父类database()的构造方法,从而建立起与数据库的链接。3.4.2 isExit()方法判断数据是否出现,可被其他方法调用。3.4.2 .1 功能在查询函数中可被调用,用于判断所查询的数据是否出现。3.4.2 .2 输出项输出bool变量,若存在,则为true,or 则为false3.4.3 updatedata()方法更新当前行数据3.4.3.1 功能更新当前行数据为修改过的数据,修改数据库内

9、内容。3.4.3.2 输入项要修改数据所在的列名 String修改后的数据 Object3.4.3.3 输出项数据内的内容被修改。3.4.4 InsertNew(Flight flight)向数据库加入一行数据3.4.4.1 功能读入flight数据,将这行数据加入数据库中3.4.4.2 输入项航班信息 Flight3.4.4.3 输出项航班信息加入数据库3.4.5 QueryData()查询数据是否存在。3.4.5.1 功能接收数据,到数据库中查询数据数据是否存在。3.4.5.2 输入项航班号 String起飞地点String 到达地点String起飞时间String 到达时间String

10、票价 double 查询类型int 查询种类必须输入,其他可根据需要选择性的输入。3.4.5.3 输出项查询得到的信息加入游标数组。3.4.6 CloseAll()关闭链接。3.4.6.1 功能关闭服务器与数据库之间的链接3.5 UserServer类设计说明3.5.1 UserServer ()方法UserServer的构造方法。3.5.1.1 功能继承JFrame,建立界面用于把存放用户信息的数据库中的信息显示出来,便于管理员查看管理3.5.2 Query()方法遍历数据库中信息。3.5.2 .1 功能点击刷新时,遍历User数据库,将数据信息重新显示。3.5.2.2 算法1.建立足够大的

11、存储空间2.与User数据库建立连接3.遍历数据库,把数据加入存储空间4.数据加入显示界面,显示出来。3.6 FlightServer类设计说明3.6.1 FlightServer ()方法FlightServer的构造方法。3.6.1.1 功能继承JFrame,建立界面用于把存放航班信息的数据库中的信息显示出来,便于管理员查看管理。3.6.2 Query()方法遍历数据库中信息。3.6.2 .1 功能点击刷新时,遍历Flight数据库,将数据信息重新显示。3.6.2.2 算法1.建立足够大的存储空间2.与Flight数据库建立连接3.遍历数据库,把数据加入存储空间4.数据加入显示界面,显示出

12、来。3.7 User类设计说明3.7.1 User()方法User的构造方法,建立方便调用用户数据的数据结构。3.7.2 getID()方法得到用户名。3.7.2 .1 功能调用时,可返回用户名3.7.2.2 输出项用户名 String3.7.3 setID()方法修改用户名。3.7.3 .1 功能调用时,可修改用户名为指定值3.7.2.2 输入项用户名 String3.7.3 其他类似方法getpassword()setpassword()getmoney()setmoneygetflight()setflightgetnum()setflight不再赘述。3.8 Flight类设计说明3.

13、8.1 Flight()方法Flight类的构造方法,建立方便调用航班数据的数据结构。3.8.2 getnumofF()方法得到航班号。3.8.2 .1 功能调用时,可返回航班号3.8.2.2 输出项航班号 String3.8.3 setnumofF()方法修改航班号。3.8.3 .1 功能调用时,可修改航班号为指定值3.8.2.2 输入项航班号 String3.8.3 其他类似方法getnumofF()setnumofF()getstartp()setstartp()getendp()setendp()getstartt()setstartt()getendt()setendt()getpr

14、ice()setprice()getnum()setnum()不再赘述。3.9 Administrator类设计说明3.9.1 addUserData ()方法添加用户信息。3.9.1.1功能管理员可以通过这个方法跳过注册直接添加用户。3.9.1.2 输入项用户名String密码String 余额 double 3.9.1.3 输出项用户信息被加到User数据库中3.9.3.4 测试计划建立服务器与数据库的链接,使需要添加的用户信息如预料添加。3.9.2 delateUserData ()方法删除用户信息。3.9.2.1功能管理员可以通过这个方法删除用户。3.9.2.2 输出项用户信息被从Us

15、er数据库中删除3.9.2.3 测试计划建立服务器与数据库的链接,使需要删除的用户信息如预料删除。3.9.3 addFlightLine ()方法添加新航线。3.9.3.1功能管理员可以通过这个方法添加新航线。3.9.3.2 输入项航班号 String起飞地点String 到达地点String起飞时间String 到达时间String 票价 double 3.9.3.3 输出项新航线被加到Flight数据库中3.9.3.4 测试计划建立服务器与数据库的链接,使需要添加的航线如预料添加。3.9.4 delateFlightLine ()方法删除废弃航线。3.9.4.1功能管理员可以通过这个方法删

16、除废弃航线。3.9.4.2 输出项航线被从Flight数据库中删除3.9.4.3 测试计划建立服务器与数据库的链接,使需要删除的航线如预料删除。3.10 serverThread类设计说明3.10.1 serverThread ()方法serverThread类的构造方法3.10.1.1 功能建立Socket与端口,使客户端可以与服务器连接。3.10.2 run ()方法启动多线程3.10.2.1 功能启动多线程,调用DealRequest()处理客户端发送的各种请求。3.10.3 WriteControl()方法写控制台。3.10.3.1 功能把各个客户端的请求处理过程写进控制台,方便管理员

17、查看。3.10.3.2 输出项客户请求信息写入控制台。3.10.3.3 测试计划建立服务器与客户端的链接,客户端发送请求,确保服务器可以在控制台上写出正确的处理过程。3.10.4 DealRequest()方法处理客户端请求。3.10.4.1 功能多线程接受客户端发送的请求,调用DealRequest()方法处理。DealRequest()根据具体情况调用getAllMessage类中getInformation()方法处理,把结果发送至客户端。3.10.4.2 测试计划建立服务器与客户端的链接,客户端发送请求,确保服务器可以调用正确的getInformation()方法3.11 getAll

18、Message类设计说明3.11.1 getInformation ()方法服务器端最终要的方法,客户端与服务器交互的核心。3.11.1.1 功能处理客户端传递的一切请求,并得出相应的处理结果传递给客户端。3.11.1.2输入项请求类型 int3.11.1.3输出项处理结果 String3.11.1.4算法1.客户端发出请求。2.多线程接受请求,调用DealRequest()处理请求。3.DealRequest()调用getinformation()处理具体请求,并将结果发送至客户端。3.11.1.5 测试计划建立服务器与客户端的链接,客户端发送请求,确保服务器可以返回正确的处理结果至客户端。

19、4 client端程序说明:4.1类Customer设计说明4.1.1login()方法 用于用户登陆系统。4.1.1.1 功能用于用户登陆系统。4.1.1.2 测试计划能顺利登录系统4.1.2register()方法 用于用户注册系统。4.1.2.1 功能用于用户注册系统。4.1.2.2 输入项用户名 String密码 String确认密码 String4.1.2.3 输出项提示:是否注册成功4.1.2.4 测试计划能正确识别输入的用户名与密码。如果该用户名已被使用,那么不能注册,如果输入的密码和确认的密码不统一,则输出提示。4.1.3exit()方法 用于用户退出系统。4.1.3.1 功能

20、用于用户退出系统。4.1.3.2 测试计划能正确辨认用户是否已经登录,若已经登录,则可以退出系统。4.1.4queryFlights()方法 用于用户查询航班。4.1.4.1 功能用于用户查询航班。4.1.4.2 输入项起始地 String目的地 String4.1.4.3 输出项符合条件的各航班的信息。4.1.4.4算法4.1.4.4 测试计划能正确识别输入的起始地和目的地,根据这两个数据进行查询。4.1.5 orderFlight()方法 用于用户预定机票。4.1.5.1 功能用于用户预订机票。4.1.5.2算法4.1.5.3 测试计划能正确识别用户是否选择相应的航班,若用户没选择,则会提

21、示用户请选择你所需要的航班。4.1.6queryOrders()方法 用于用户查询已定机票。4.1.6.1 功能用于用户查询已定机票。4.1.6.2算法4.2类order设计说明4.2.1clearOrder()方法 用于清除某个用户的订单。4.2.1.1 功能用于清除某个用户的订单。4.2.1.2 测试计划能顺利清除订单4.2.2deleteFlight()方法 用于用户取消某一航班。4.2.2.1 功能用于用户取消某一航班。4.2.2.2 测试计划能按要求正确删除航班4.2.3addFlight()方法 用于用户预定航班后,加入到用户的订单中。4.2.3.1 功能用于用户预定航班后,加入到

22、用户的订单中。4.2.3.2 测试计划能正确添加航班。4.3类account设计说明4.3.1decreaseMoney()方法 用于用户账户的扣钱。4.3.1.1 功能用于用户账户的扣钱。4.3.1.2 测试计划用户订票后,能根据所定的机票,扣除相应的钱。4.3.2addMoney()方法 用于用户往账户里充钱。4.3.2.1 功能用于用户往账户里充钱。4.3.2.2 测试计划能正确往账户里充钱。4.3.3getID()方法 得到账户的用户名4.3.3.1 功能得到账户的用户名4.3.3.2 测试计划能得到正确的用户名补充:其余类flight和airport已在server中得到了解释,在这就不一一列举了啦。实验小结这次试验,让我更深一层次的了解到了团队的重要性,我不敢说我们的团队是最优秀的,但我可以肯定的说我们一直在变得更优秀!实验中我们分工合作,每个人都参与到了实验的整个过程,并且有自己主要负责的部分,这样既学到了知识又节省了时间。实验中我们相互鼓励、彼此沟通,当遇到问题时我们互相交流,进行探讨,真正感受到了合作的乐趣与沟通所产生的效率。这个实验让我从深层次理解了好的团队为什么会产生1+12的效果。不过通过程此次的实验,我不仅拓宽了自己的常识面,还在实践过程当中巩固和加深了自己所学的定见常识,使自己的技术素质有了进一步的提高,同时我的专业水平也有了很大的进步。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1