火车票预订系统详细设计说明书及火车票预定查询系统概要设计说明书.docx
- 文档编号:17712155
- 上传时间:2023-08-03
- 格式:DOCX
- 页数:33
- 大小:486.22KB
火车票预订系统详细设计说明书及火车票预定查询系统概要设计说明书.docx
《火车票预订系统详细设计说明书及火车票预定查询系统概要设计说明书.docx》由会员分享,可在线阅读,更多相关《火车票预订系统详细设计说明书及火车票预定查询系统概要设计说明书.docx(33页珍藏版)》请在冰点文库上搜索。
火车票预订系统详细设计说明书及火车票预定查询系统概要设计说明书
详细设计说明书
详细设计说明书
1引言
1.1编写目的
本详细设计说明书是针对火车票查询预订系统而编写。
目的是对该项目进行详细设计,在概要设计的基础上进一步明确系统结构,详细地介绍系统的各个模块,为以后进行的实现和测试做准备。
本详细设计说明书的预期读者是本项目小组的成员以及对该系统感兴趣,在以后想对系统进行扩展和维护的人员。
1.2背景
待开发项目名称:
火车票查询预订系统;
本项目任务提出者:
何小林
开发者:
封语铖;
用户:
所有铁路旅客;
1.3定义
Ticket本系统名称;
TicketCX火车票查询;
TicketYD火车票预订;
User:
用户
1.4参考资料
[1]张海藩.软件工程导论(第四版)[M].北京:
清华大学出版社,2003
[2]王珊,萨师煊.数据库系统概论[M].北京:
高等教育出版社,2006
[3]中国铁道部网站。
[4]闪四清.SQLServer实用简明教程[M].北京:
清华大学出版社,2003
[5]软件需求说明书。
[6]软件概要设计说明书。
2程序系统的结构
图一:
程序系统结构
3TicketCX类设计说明
3.1程序描述
这个类是TicketCX类,主要是完成用户对火车票车次,发到站,余票,票价,坐席,途经站的查询。
3.2功能
图二:
程序功能
3.3性能
根据调研分析,从8:
00—18:
00应该是软件使用的高峰期,系统应该能适应1000个用户同时使用。
平均每个会话估计会持续2-3分钟。
系统对用户的最大响应时间是3秒,在此期间系统需将结果显示在显示器上。
3.4输人项
输入项将分为三行
(1)让用户输入自己想要查询的车次;
(2)让用户输入自己的出发站和目的站来查询;
(3)让用户输入想要查询的车站来查询列车信息;
3.5输出项
根据用户输入的不同,输出与输入相对应:
(1)输出用户输入车次的始发站,途经站,终到站,余票,从始发站到各站的坐席以及对应的票价;
(2)输出用户输入的出发站和目的站开行的列车的车次,余票,坐席及对应的票价;
(3)输出用户输入的车站的列车的车次,始发站和终到站,坐席及对应的票价,余票;
3.6算法
classTicketXC
{charcc,sfz,zdz,zx,tjcz;//定义车次,始发站,终点站,坐席,途经车站;
intyp;//定义余票数量;
floatpj;//定义票价;
cin>>”请输入要查询的车次”>>cc>>endl;
cin>>”请输入始发站”>>sfz;
cin>>”请输入终点站”>>zdz>>endl;;
cin>>”请输入车站”>>tjcz>>endl;;
if(cc);
selectsfz,tjcz,zdz,yp,zx,pjfrom列车信息表wherecc=cc;
cout< elseif(sfz&&zdz) selectcc,yp,zx,pjfrom列车信息表wheresfz=sfz;andzdz=zdz; cout< elseif(tjcz) selectcc,sfz,zdz,yp,zx,pjfrom列车信息表wheretjcz=tjcz; cout< } 3.7流程逻辑 图三: 程序流程 3.8接口 本功能的用户需要通过终端,进入相应的操作界面(输入界面)。 本功能还需要连接数据库的列车信息表。 3.9存储分配 无 3.10注释设计 a.加在模块首部的注释要求说明本程序是由谁完成的,由谁测试的目的是什么实现什么功能,达到什么要求; b.加在各分枝点处的注释要求说明对各变量的功能、标识范围、缺省条件; c.要求对使用的逻辑添加合理的注释。 3.11限制条件 限制条件即输入限制,用户输入需要满足输入的限制条件。 包括长度,精度,数据类型。 3.12测试计划 采用各种测试用列对输入,内部数据结构,逻辑路径,出错处理和边界值条件进行测试。 3.13尚未解决的问题 无 4TicketYD类设计说明 4.1程序描述 这个类是TicketYD类,主要是完成用户对火车票的预定。 4.2功能 图四: 功能 4.3性能 根据调研分析,从8: 00—18: 00应该是软件使用的高峰期,系统应该能适应1000个用户同时使用。 平均每个会话估计会持续2-3分钟。 系统对用户的最大响应时间是3秒,在此期间系统需将结果显示在显示器上。 4.4输人项 输入项包括: 旅客姓名,身份证号,所订车次,出发站,目的站,坐席,所需支付的票价。 4.5输出项 输出“预订成功”,旅客的姓名,身份证号,所订车次,出发站,目的站,坐席,票价。 4.6算法 classTicketYD {charcc,sfz,zdz,zx,tjcz,name,id;//定义车次,始发站,终点站,坐席,途经车站,姓名,身份证号; intyp;//定义余票数量; floatpj;//定义票价; cin>>”请输入姓名”>>name>>endl; cin>>”请输入身份证号”>>id>>endl; cin>>”请输入所订车次”>>cc>>endl; cin>>”请输入出发站”>>sfz>>endl; cin>>”请输入终点站”>>zdz>>endl; cin>>”请输入坐席”>>zx>>endl; if(yp>0); cout<<”你的姓名是: ”< cout<<”你的身份证号是: ”< cout<<”你的所订车次是: ”< cout<<”你的出发站是: ”< cout<<”你的目的站是: ”< cout<<”你的票价是: ”< cout<<”请你在24小时内到火车站或代售点取票,并支付票款。 ”< } 4.7流程逻辑 图五: 流程图 4.8接口 本功能的用户需要通过终端,进入相应的操作界面(输入界面)。 本功能还需要连接数据库的列车信息表,个人信息表。 4.9存储分配 无 4.10注释设计 a.加在模块首部的注释要求说明本程序是由谁完成的,由谁测试的目的是什么实现什么功能,达到什么要求; b.加在各分枝点处的注释要求说明对各变量的功能、标识范围、缺省条件; c.要求对使用的逻辑添加合理的注释。 4.11限制条件 限制条件即输入限制,用户输入需要满足输入的限制条件。 包括长度,精度,数据类型。 4.12测试计划 采用各种测试用列对输入,内部数据结构,逻辑路径,出错处理和边界值条件进行测试。 4.13尚未解决的问题 无 5TicketQC类设计说明 5.1程序描述 这个类是TicketQC类,主要是完成用户对已经预定的火车票订单的取消。 5.2功能 图六: 功能 5.3性能 根据调研分析,从8: 00—18: 00应该是软件使用的高峰期,系统应该能适应1000个用户同时使用。 平均每个会话估计会持续2-3分钟。 系统对用户的最大响应时间是3秒,在此期间系统需将结果显示在显示器上。 5.4输人项 输入项包括: 旅客姓名,身份证号。 5.5输出项 输出“取消成功”。 5.6算法 classTicketQC {charname,id;//定义车次,始发站,终点站,坐席,途经车站; cin>>”请输入姓名”>>name>>endl; cin>>”请输入身份证号”>>id>>endl; cout<<”取消成功。 ”< } 5.7流程逻辑 图七: 流程图 5.8接口 本功能的用户需要通过终端,进入相应的操作界面(输入界面)。 本功能还需要连接数据库的订单表,个人信息表。 5.9存储分配 无 5.10注释设计 a.加在模块首部的注释要求说明本程序是由谁完成的,由谁测试的目的是什么实现什么功能,达到什么要求; b.加在各分枝点处的注释要求说明对各变量的功能、标识范围、缺省条件; c.要求对使用的逻辑添加合理的注释。 5.11限制条件 限制条件即输入限制,用户输入需要满足输入的限制条件。 包括长度,精度,数据类型。 5.12测试计划 采用各种测试用列对输入,内部数据结构,逻辑路径,出错处理和边界值条件进行测试。 5.13尚未解决的问题 无 火车票预定查询系统概要设计说明书 1引言 1.1编写目的 在火车票查询预订系统的前一阶段,也就是需求分析阶段,已经将系统用户对本系统的需求做了详细的阐述。 本阶段是在需求分析的基础上,对火车票查询预订系统做概要设计。 主要解决了实现该系统需求的程序模块设计的问题。 包括如何把系统分成若干个模块、决定各个模块之间的接口、模块之间传递的信息,以及数据结构、模块结构的设计等。 在以下的概要设计中将对在本阶段所有的概要设计做详细的说明。 在下一阶段,程序员可以以概要设计为依据,在此基础上进行详细设计。 在以后的软件测试和软件维护也可以参考此说明书。 1.2背景 (1)项目名称: 火车票预订系统 (2)用户: 所有乘客 (3)运行环境: win7+Oracle11g (4)建议软件最短寿命: 3年 (5)开发工具: Java (6)开发者: 刘强、何小林、张天应、封语程 1.3定义 查询: 对数据库的一种操作,用于搜索数据信息。 插入: 对数据库的一种操作,用于将数据存入数据库中。 更新: 对数据库的一种操作,用于更改数据库中的数据信息。 软件结构图: 用于反应软件系统的功能模块之间的关系的数据图。 1.4参考资料 [1]张海藩.软件工程导论(第6版)[M].北京: 清华大学出版社,2013 [2]王珊,萨师煊.数据库系统概论[M].北京: 高等教育出版社,2006 [3]中国铁道部网站 [4]孙风栋.Oracle11g数据库基础教程[M].北京: 电子工业出版社,2015 [5]软件需求说明书。 2总体设计 2.1简述 系统采用流行的B/S结构模式。 系统的分析设计采用面向对象的技术,应用Visio等工具进行辅助设计。 2.2架构设计 2.2.1系统逻辑架构图 2.2.2系统物理架构图 2.2.3顶层系统包图 2.2.4业务类包图 2.2.5子系统关系图 2.3运行环境 操作系统: win7及以上 数据库软件: Oracle10g及以上 CPU大于等于1.5Hz。 内存大于512M。 硬盘大于32G。 2.4基本设计概念和处理流程 基本设计概念: 实现火车票的查询和预订。 处理流程: 根据可行性报告的研究和客户的需求,分析现有情况及问题,采用B/S结构,将火车票查询预订系统划主要就是服务端子系统。 本系统主要实现查询和预订两部分功能,其实查询模块主要借鉴铁道部。 网站,车票预订是开发者自行完成。 本系统分为火车票预订,火车票查询,火车票取消。 总体数据流图: 图一: 总体数据流图 查询子系统: 图二: 查找子系统 查找流程: 图三: 查询流程图 本模块用户根据自己的出行情况,输入车次,车站,发到站信息来查询自己想乘坐的火车。 系统收到输入后,根据数据库来反映用户查找,并将结果返回给用户。 如果用户输入信息有误,则告知用户。 预订子系统: 图四: 预订系统 预定流程: 图五: 预订流程图 本子系统用户输入姓名,身份证号,想要预订的车次,席别,系统通过个人数据库,验证个人信息是否正确,然后通过列车数据库查询列车余票,票价,如都正确则显示预订成功,输出个人信息,显示预订车次,坐席,票价。 火车票取消系统: 图六: 火车票取消子系统 取消流程: 图七: 取消流程 本系统用户输入姓名,身份证号来取消以成功预订的火车票,系统查询订单数据库,然后删除数据库中对应记录。 2.4软件体系结构 2.4.1软件结构图 图八: 总体结构 2.4.2模块命名规则 名称 模块名称 编号 用户登录 Login 1.1 修改用户信息 ModifyUser 1.2 查询车次 Query_cc 2.1 查询发到站 Query_fdz 2.2 查询余票 Query_yp 2.3 查询车站 Query_cz 2.4 预定车票 Schedule_cp 3.1 取消系统 CancelTicket 4.1 2.4.3模块描述 名称 用户登录 标识 1.1 子系统 名称 用户系统 系统 名称 火车票预订系统 接 口 说 明 输入 登录名(varchar(20)) 登录密码(varchar(10)) 输出 用户编号(varchar(30)) 功 能 说 明 可视化操作界面,输入用户名和密码,按“确定”键终止输入,进入系统,“取消”键终止输入,重置输入信息。 运行环 境说明 Windows7或者以上的操作平台都可以运行此程序 调用关 系说明 调用模块 登录(1.1) 被调用模块 各个用户表 名称 修改用户信息 标识 1.2 子系统 名称 用户系统 系统 名称 火车票预订系统 接 口 说 明 输入 用户名(namevarchar(20)) 密码(passvarchar(20)) 身份证号(idvarchar(20)) 手机号(te_telvarchar(15)) 性别(sexvarchar(10)) 输出 更新后的数据信息 功 能 说 明 可视化操作界面,管理员可以对教师进行增删改查 运行环 境说明 Windows7或者以上的操作平台都可以运行此程序 调用关 系说明 调用模块 登录(l.1),修改用户信息(1.2) 被调用模块 个人信息表 名称 查询余票 标识 2.3 子系统 名称 查询系统 系统 名称 火车票预订系统 接 口 说 明 输入 出发地(cf_cityvarchar(20)) 目的地(md_cityvarchar(10)) 出发日(begin_daydate) 身份(sf_uservarchar(10)) 输出 当天余票信息 功 能 说 明 可视化操作界面,输入出发地、目的地,出发日和身份,按“查询”键查询。 运行环 境说明 Windows7或者以上的操作平台都可以运行此程序 调用关 系说明 调用模块 余票查询(2.2) 被调用模块 查询车次(2.1),查询发到站(2.2),查询车站(2.4) 名称 查询车站 标识 2.4 子系统 名称 查询系统 系统 名称 火车票预订系统 接 口 说 明 输入 出发地(czvarchar(20)) 出发日(begin_daydate) 输出 所有列车信息 功 能 说 明 可视化操作界面,输入出发地、出发日,按“查询”键查询。 运行环 境说明 Windows7或者以上的操作平台都可以运行此程序 调用关 系说明 调用模块 查询车次(2.1),查询发到站(2.2),查询余票(2.3) 被调用模块 查询车次(2.1),查询发到站(2.2),查询车站(2.4) 名称 预订车票 标识 3.1 子系统 名称 预定系统 系统 名称 火车票预订系统 接 口 说 明 输入 登录名(namevarcher(10)) 密码(passvarcher(20)) 出发地(cf_cityvarchar(20)) 目的地(md_cityvarchar(10)) 出发日(begin_daydate) 身份(sf_uservarchar(10)) 车次(Ccvarchar(6)) 输出 预定结果,成功 功 能 说 明 可视化操作界面,输入登录名,密码,出发地、目的地,出发日和身份,车次,按“购票”键支付。 运行环 境说明 Windows7或者以上的操作平台都可以运行此程序 调用关 系说明 调用模块 预订车票(3.1) 被调用模块 登录(1.1)查询车次(2.1),查询发到站(2.2),查询余票(2.3)查询车站(2.4),支付系统 2.5功能需求与程序的关系 图九: 功能需求与程序的关系 2.6人工处理过程 无 2.7尚未解决的问题 无 3接口设计 本系统采用JAVA进行开发,所提供的不同层次的接口,都具有高度的集成性,本系统没有采用低级语言设计和完成自定义的接口,因此接口设计大部分已经由不同方式的JavaBean组件来完成了,以下只做简单的说明。 3.1用户接口 采用窗口化,菜单式进行设计。 在操作时响应热键。 3.2外部接口 硬件接口: 身份证扫描仪。 软件接口: 通过JDBC连接Oracle数据库服务器。 3.3内部接口 通过面对对象语言设计类。 在public类中实现调用,类间实现严格封装。 内部接口主要集中在两部分: A.中间处理层对数据库访问层数据的调用和处理; B.界面层对中间数据库处理层的调用、控制命令的响应; 3.4用户界面设计规则 a.用户界面: 本软件采用Windows的通用图形界面,对用户友好,且必须对鼠标键盘提供支持,界面设计应遵循: b.尽量保持一致性: 界面规范应遵循MSWindows软件界面的规范 c.设计完整的对话过程: 系统的每一次对话都应该有明确的次序: 开始、中间处理过程、结束。 d.提供简单的错误处理机制 e.提供信息反馈: 用多种信息提示用户当前软件运行状态,软件界面元件的功能。 f.操作可逆: 其动作可以是单个的操作,或者是一个相对独立的操作序列。 g.设计良好的联机帮助 h.显示启动画面: 画面简洁明快,富有现代气息,界面美观大方,可以保护视力。 提供控制的内部轨迹: 系统应该让用户觉得是由用户在做决定,可以通过提示字符和提示消息的方式使用用户产生这种感觉。 3.4.1登录界面 图10登录界面 3.4.2车票查询界面 3.4.3车票预定界面 4运行设计 4.1运行模块组合 本程序主要是以一个窗口为模块,内含多个输入框,按钮。 在用户点击“确定”之后,会打开另外一个窗口来显示信息。 以此来实现功能模块间的连接和组合。 各模块相互独立,移植性较好。 各模块间主要以传递数据项的引用来实现模块间的合作好数据共享。 4.2运行控制 只要符合操作说明书,用户可自由控制。 不额外限定用户输入。 异常由程序内部进行处理,给出相应的提示信息。 4.3运行时间 由用户决定,但是每次操作响应时间上限应控制在3秒以内。 5系统数据结构设计 5.1逻辑结构设计要点 列车信息表(车次,始发站,终点站,途经车站,坐席,票价,余票); 订单表(姓名,身份证号,所订车次,票价,坐席); 旅客信息表(身份证号,姓名)。 E—R图: 图十: E—R图 5.2物理结构设计要点 表一、列车信息表 序号 字段名 含义 类型 长度 允许空 主键 默认值 1 Cc 车次 Char 6 √ 1 2 Sfz 始发站 Char 10 3 Zdz 终点站 Char 10 4 Tjcz 途经车站 Char 10 5 Zx 坐席 Char 10 6 Pj 票价 Float 10 0.00 7 Yp 余票 Int 4 0 表二、订单表 序号 字段名 含义 类型 长度 允许空 主键 默认值 1 Name 姓名 Char 10 1 2 Id 身份证号 Int 18 √ 3 Cc 车次 Char 6 4 Pj 票价 Float 10 0.00 5 Zx 坐席 Char 10 表三、旅客信息表 序号 字段名 含义 类型 长度 允许空 主键 默认值 1 Name 姓名 Char 10 1 2 Id 身份证号 Int 18 √ 5.3数据结构与程序的关系 数据结构为关系型数据库,所以在程序中可以使用标准的SQL语句访问数据库。 采用通用的数据访问接口。 对数据库访问采用DAO设计模式实现,提高维护性与扩展性。 6系统出错处理设计 6.1出错信息 本程序采用了异常处理的机制,当遇到异常且不能及时处理的情况,可以保证程序的安全性与稳定性。 而且各种错误信息能通过弹出对话框的形式,及时告诉用户出错的原因及解决办法,使用户以后能够减少错误的发生。 另外,还采取了出错保护等措施,如输入数据的长度及类型等。 6.2补救措施 根据错误的不同,分为不同情况处理: (1)数据库连接错误。 这类错误主要是数据库设置错误,或者Oracler异常引起的。 这时我们只需取消本次操作,提醒用户检查数据库即可。 (2)输入错误。 这是由于用户输入不符合要求引起的。 这时通过弹出式对话框提醒用户重新输入。 (3)其他操作失误 这是由于用户的不规范操作引起的。 这时中断操作,并提醒用户操作失误。 (4)其他不可预知的错误 程序也会有一些我们无法预知的错误和完全没有考虑到的错误。 对此,我们不可能做出万全的处理方法。 我们首先要保证数据的安全,经常备份数据库。 并提醒用户及时联系我们。 6.3系统维护设计 软件的维护包括数据库的维护和软件功能的维护。 对于数据库的维护,Oracle已经提供了数据库的备份和恢复功能,可以方便的实现数据库的维护和管理。 对于软件功能的维护,由于我们采用的是模块化的设计方法,每个模块的独立性较高。 只需单独维护每个模块即可。 对于功能的添加,我们只需要增加相应的菜单项就行。 软件面世后,我们会对软件进行定期的维护。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 火车票 预订 系统 详细 设计 说明书 预定 查询 概要