软件工程机票预订系统总体设计.docx
《软件工程机票预订系统总体设计.docx》由会员分享,可在线阅读,更多相关《软件工程机票预订系统总体设计.docx(25页珍藏版)》请在冰豆网上搜索。
![软件工程机票预订系统总体设计.docx](https://file1.bdocx.com/fileroot1/2023-1/9/43d4d480-3df5-4743-aa23-bc31ecd3aced/43d4d480-3df5-4743-aa23-bc31ecd3aced1.gif)
软件工程机票预订系统总体设计
1.导言
1.1目的
在当今社会,随着经济的不断发展,必然带动交通业和旅游业务的不断扩大,特别是航空售票信息管理日异复杂,传统的手工登记和集中管理已经难以满足快节奏,高效率的现代生活需求。
“飞机售票管理系统”是一个全新的系统,它将取代传统的手工登记和集中管理过程
1.2范围
软件设计总体结构设计、全局数据库和数据结构设计、外部接口设计、主要部件功能分配设计、部件之间的接口设计等方面的内容。
1.3命名规则
变量对象命名规则:
申明全局变量、局部变量对象的命名规则。
数据库对象命名规则:
申明数据库表名、字段名、索引名、视图名等对象的命名规则。
1.4术语定义
表1-1术语定义或解释表
序号
术语名称
术语定义
1
总体结构
软件设计的总体逻辑结构。
按照不同的设计方法,有不同的总体逻辑结构。
2
外部接口
本软件系统与其他软件系统之间的接口,接口设施可以是中间件。
接口扌田述包括:
传输方式、带宽、数据结构、传输频率、传输量、传输协议。
3
数据结构
数据结构包括:
数据库表的结构、其他数据结构等
4
概念数据模型
关系数据库的逻辑设计模型,叫做概念数据模型。
主要包括一张逻辑E-R图及其相应的数据字典。
5
物理数据模型
关系数据库的物理设计模型,叫做物理数据模型。
主要内容包括一张物理表关系图及其相应的数据字典。
6
视图
在基表或其他视图之上建立的一张虚表,叫做视图,它具有物理表的许多性质,在数据处理和授权上
很有用。
7
角色
数据库只能够享有某些特权操作的用户,叫做角色。
角色的权利通过授权来实现。
8
子系统
具有相对独立功能的小系统叫做子系统。
一个大的软件系统可以划分为多个子系统,每个子系统可由多个模块和多个部件组成。
9
模块
具有功能独立、能被调用的信息单元叫做模块。
模块是结构化设计中的概念。
10
内部接口
软件系统内部各子系统之间、个部件之间、各模板之间的接口,叫做内部接口。
接口描述包括:
调用方式、入口信息、出口信息等。
11
相关文件
相关文件是指当本文件内容变更后,可能引起变更的其他文件。
如需求分析报告、详细设计说明书、测试计划、用户手册。
12
参考资料
参考资料是指本文件书写时用到的其他资料,如各种相关规范、模板、标准、准则。
1.5参考资料
[1]用户需求报告
[2]软件开发合同
[3]数据库设计规范
[4]命名规范
1.6相关文档
[1]《详细设计说明书》
[2]源程序清单
[3]测试计划及报告
[4]《用户使用手册》
1.7版本更新记录
表1-2版本更新记录
版本号
创建者
创建日期
维护者
维护日期
维护记录
V1.0
小郑
2016/5/9
V1.0.1
小林
2016/5/13
2总体设计
1.总体结构设计
总体结构示意图:
总体结构示意图
图
2-1
图2-2总体结构示意图
2运行环境设计
硬件环境:
最低配置:
CPUIntel奔腾双核,运行速度2600MHz或以上
内存:
1024MB或以上
硬盘:
160G或以上
显示器:
19英寸宽频LCD分辨率为1440X900
建议配置:
计算机配置均在Pentium133级别以上,客户程序应能够在
Pentium133级别以上
外设的要求:
键盘、鼠标、显示器。
软件环境:
安装SQLServer2008,如果是更高的版本需要对数据库进行升级
操作系统:
Windows2000Serve或Windows7
网络平台:
通信协议、通信带宽。
2.3子系统清单
表2-1子系统清单
子系统编号
子系统英文名
子系统功能简述
子系统之间的关系
SS1
Codefor
registrationof
aircraft
飞机规范信息,包括座位数,座位等级,服务类别,备注信息
SS2
Registrationflightinformation
发布机票,查询机票出售情况
SS3
Bookairtickets
产生订票记录,修改所订座位的状况和修改剩余机票数
SS4
sellticket
产生购票记录,修改所订座位的状况和剩余机票数
SS5
Ticketrefund
产生退票记录,修改所订座位的状况和剩余机票数
SS6
Checkflight
information
产牛杳询记录
SS7
Checkflight
information
系统显示该航班已售票的信息和未售票的信息
2.4功能模块清单
表2-2功能模块清单
模块编号
模块英文名
模块功能简述
模块的借口简述
M1-1
userinterface
用户操作
M1-2
Shuqvku
用户数据库
3.模块功能分配
3.1专用模块功能分配
表3-1专用功能模块分配
专用模块编号
模块英文名
模块功能简述
M1-1
Codefor
registrationof
aircraft
本用例记录了公司业务人员将飞机规范录入系统的情况。
飞机只有经过登记后,才可以进行订票、隹酋
售票
M1-2
Registrationflightinformation
本用例记录了公司业务人员将航班信息录入系统的情况。
航班信息只有经过登记后,才可以进行订票、售票
M1-3
Bookairtickets
本用例记录了公司售票员将为旅客办理订票的情况。
旅客通过电话、email、现场订票和网上订票等方式进行订票
M1-4
sellticket
本用例记录了公司售票员将为旅客办理售票的情况
M1-5
Ticketrefund
本用例记录了公司售票员将为旅客办理退票的情况
M1-6
Checkflight
information
本用例记录了公司售票员将为旅客查询航班信息的情况。
旅客通过电话、email、现场查询和网上查询等方式进行查询
M1-7
Checkflight
information
本用例记录了公司领导、业务人员、财务人员查询售票信息的情况
3.2公用模块功能分配
表3-2公用模块功能分配
公共模块编号
模板英文名
模板详细功能分配
模板的接口标准
G-1
UserLogin
登入机票预定系统
数据结构封装标
准、SQL标准
G-2
Usermodify
information
修改用户个人信息
SQL标准
G-3
Userexit
退出机票预定系统
SQL标准
4.数据结构设计
4.1数据库表名清单
表4-1数据库表名清单
序号
中文表明
英文表名
表功能说明
1
乘客
passager
乘客表保存了所有定票旅客的个人信息和旅行信息
2
航班号
Plane
航班班次表保存了所有从本地起飞的班机信息,
3
机票号
Ticket
机票表里存储了有关机票的信息
4
取票单号
Getticket
取票表里存储的是有关取票的核对信息和要取机票有关的信息
4.2数据库表之间的关系说明
服务器程序在对定票/领票进行操作时需对数据库数据库数据结构,也就是数据表进行查询和修改:
在定票/领票过程中都需要对数据库中的所有表,进行联合查询、修改。
物理数据结构主要用于各模块之间函数的信息传递。
接口传递的信息将是以数据结构封装了的数据,以参数传递或返回值的形式在各模块间传输。
出错信息将送入显示模块中,机票结构,帐单结构,送入打印准备模块中准备打印格式。
4.3数据库表的详细清单
表4-2乘客信息表
序号
字段中
文名
字段英文名
类型、宽度、精度
取值约束
空否
默认
值
主键/外键
索引否
1
乘客用
户名
DI
nvarchar(20)notnull
默认值
否
主键
2
性别
Gender
Int
默认值
否
3
工作单位
Workunit
int
默认值
否
4
旅行时间
Traveltime
nvarchar(20)notnull
默认值
否
5
旅行目的地
Traveldestination
int
默认值
表4-3航班信息表
序号
字段中
文名
字段英文名
类型、宽度、精度
取值约束
空
否
默认
值
索引
否
1
航班号
Plane
nvarchar(20)not
null
默认值
否
主键
2
目的地
Destination
Int
默认值
否
3
座位数
Numberof
seats
nvarchar(20)not
null
默认值
否
4
票价
Ticket
Price
nvarchar(20)not
null
默认值
否
5
起飞时
间
Takeoff
time
nvarchar(20)not
null
默认值
否
6
剩余座
位
Residualseat
nvarchar(20)not
null
默认值
否
7
座位号
分配
Seatnumberassignment
nvarchar(20)not
null
默认值
否
表4-4机票信息表
序号
字段中
文名
字段英
文名
类型、宽度、精度
取值约束
空否
默认
值
主键/外
键
索引否
1
机票号
Ticket
nvarchar(20)not
null
默认值
否
主键
2
取票单
号
Theticketnumber
nvarchar(20)not
null
默认值
否
3
座位号
Seatnumber
nvarchar(20)not
null
默认值
否
表4-5取票信息表
序号
字段中
文名
字段英文
名
类型、宽度、精度
取值约束
空
否
默认
值
主键/外
键
索引否
1
取票单
号
Getticke
nvarchar(20)not
null
默认值
否
主键
否
2
乘客ID
Passenger
ID
int
默认值
否
否
3
航班号
Ticket
nvarchar(20)not
null
默认值
否
否
4
起飞时
间
Takeoff
time
nvarchar(20)not
null
默认值
否
否
5
订票数
量
Bookingquantity
nvarchar(20)not
null
默认值
否
4.4视图设计
表4-6旅客信息视图
中文名
英文名
中文列名
英文列名
类型、宽度、精度
对应的表
旅客信息
Passengerinformation
用户名、性别、年龄、身份证号码、联系电话
username,gender,
age,identitycardnumber.
nvarchar(20)notnull
Passengerinformation
telephonenumber
算法:
USE旅客信息GOCREATEVIEWview_PassengerinformationASSELECTusernameAS姓名FROMPassengerinformation
表4-7机票信息视图
中文名
英文名
中文列名
英文列名
类型、宽度、精度
对应的表
机票信息
Ticketinformation
机票号、单价、机次、时间
、起始及终点站、优惠标识、用户名
TicketnumberUnitprice,time,timeStartingandterminal,preferentiallabeling、username
nvarchar(20)notnull
Ticket
算法:
USE机票信息GOCREATEVIEWview_TicketinformationASSELECTusernameAS机票号
FROMTicketinformation
表4-8订票旅客清单视图
中文名
英文名
中文列名
英文列名
类型、宽度、精度
对应的表
订票旅客清单
Bookingpassengerlist
姓名、性别、年龄、身份证号码、联系电话、机票号、用户名
Ticketnumber、
Name,gender,age,identitycardnumber,telephonenumberuser
name
nvarchar(20)notnull
Bookingpassengerlist
算法:
USE订票旅客信息GOCREATEVIEWview_BookingpassengerlistASSELECTusernameAS订票旅客FROMBookingpassengerlist
表4-9取票通知视图
中文名
英文名
中文列名
英文列名
类型、宽度、精度
对应的表
取票通知
Ticketnotice
旅客姓名、领票时间、用户名
Passengername,tickettime、username
nvarchar(20)notnull
Ticketnotice
算法:
USE取票信息GOCREATEVIEWview_TicketnoticeASSELECTusernameAS旅客姓名FROMTicketnotice
表4-10退票通知视图
中文名
英文名
中文列名
英文列名
类型、宽度、精度
对应的表
退票通知
Refundnotice
机次、单价、时间
Machinetime,unit
price,time
nvarchar(20)notnull
Refundnotice
算法:
USE退票信息GOCREATVIEWview_RefundnoticeASSELECTusernameAS机次FROMRefundnotice
表4-11订票信息视图
中文名
英文名
中文列名
英文列名
类型、宽度、精度
对应的表
订票信息
Bookinginformation
旅客旅行时间、旅客旅行目的地、用户名
Passengertraveltime,touristdestination、username
nvarchar(20)notnull
Bookinginformation
算法:
USE订票信息GOCREATVIEWview_BookinginformationASSELECTisernameASFROMBookinginformation
表4-12航班机票信息视图
中文名
英文名
中文列名
英文列名
类型、宽度、精度
对应的表
航班机票信息
Flightticketinform
旅客机票时间、旅客机票班次
Passengertickettime,passengerticket
nvarchar(20)notnull
Flightticketinform
算法:
USE航班彳
机票信息GOCREATE/IEWview_FlightticketinformASSELECTisernameASFROM
Flightticketinform
4.5其他数据结构设计
图4-1用户登入流程图
图4-2户密码修改流程图
-PNR
十海加華窖洋纲汇应心
+-SftLF%K,I|
十洗毕机尹仁
十盲mi味检.号诃用酒皂口
^■rS4■子出npnr(>
卜般査卅亡曰期的迤:
哲诂況门d沁LrFXFt(J
i*"他11IdM
*熬押祭饰0
^2^
"左记曰M
卜足f/pTWit
•曰凶冰吒航曲订绷殆.也
M»*■桃共
C&』
:
¥
:
…-_■-|]
:
~悅骑纽
:
起乞宕佛
IRlgfSlidiiTtW
-W儿十;圮
i-UisJin:
-任帕T4査鍔心
-M-
杓电縄左rr
»fr
打M:
机
卜帘'•;
*站^i'y:
inrTwM^fefTO~
-SSK
-FNR
j
乘窖
■客户倫砰一严普•知:
估候对
■41
卜总哇11期-[宜堆-爼顒Ob保打滞細信赵2
IIS&PNRll卜临脱机須金甌24醴喘施<1riH50
jfi-n^HL^O
i-fJ申逼.款收IB"鼻订ren系恪列?
卜ithieu飲摘碇授真门
下汁*r机贴金■<)
卜庄词H
:
Ze供预ijn朗心
•wmu区电
4按莹p闯tu>
经挤鮒
■诫卡卜盹衣y曰卓收吉占
駄斑
y*g盘比
上込営怙况
卜掛旳航训佶汎仆
■M
H-
;毎柚怙也
■候补机訣数
讥育询偎外汰岳忙負和
|許询存船细耳忡憎出门
图4-4票预订管理系统类关系图
(性别l龙崔姓名〕
(联系电话]——[rarj[百份斥
飞机售票管理系统]
图4-5票预订管理系统
5、接口设计
5.1外部接口
用户界面
在用户界面部分,根据需求分析的结果,用户需要一个用户友善界面。
在界面设计上,应做到简单明了,易于操作,并且要注意到界面的布局,应突出的显示重要以及出错信息。
外观上也要做到合理化,考虑到用户多对WINDOWS格较
熟悉,应尽量向这一方向靠拢。
在设计语言上,已决定使用MSVISUALC++进
行编程,在界面上可使用VISUALC++所提供的可视化组件,向WINDOW风格靠近。
其中服务器程序界面要做到操作简单,易于管理。
在设计上采用下拉式菜单方式,在出错显示上可调用VISUALC++库中的错误提示函数。
总的来说,系统的用户界面应作到可靠性、简单性、易学习和使用。
5.2软件接口
服务器程序可使用VISUALC++提供的对SQLSERVERS接口,进行对数据库的所有访问。
服务器程序上可使用SQLSERVE的对数据库的备分命令,以做到对数据的保存。
在网络软件接口方面,使用一种无差错的传输协议,采用滑动窗口方式对数据进行网络传输及接收。
5.3硬件接口
在输入方面,对于键盘、鼠标的输入,可用VISUALC+啲标准输入/输出,对输入进行处理。
在输出方面,打印机的连接及使用,也可用VISUALC++勺标准输入/输出对其进行处理。
在网络传输部分,在网络硬件部分,为了实现高速传输,将使用高速ATM。
5.4内部接口
内部接口方面,各模块之间采用函数调用、参数传递、返回值的方式进行信息传递。
具体参数的结构将在下面数据结构设计的内容中说明。
接口传递的信息将是以数据结构封装了的数据,以参数传递或返回值的形式在各模块间传输。
6.其他设计
6.1检测出错设计
程序在运行时主要会出现两种错误:
1、由于输入信息,或无法满足要求时产生的错误,称为软错误。
2、由于其他问题,如网络传输超时等,产生的问题,称为硬错误。
对于软错误,须在定票/领票操作成功判断及输入数据验证模块由数据进行数据分析,判断错误类型,再生成相应的错误提示语句,送到输出模块中。
对与硬错误,可在出错的相应模块中输出简单的出错语句,并将程序重置。
返回输入阶段。
6.2补救措施设计
所有的客户机及服务器都必须安装不间断电源以防止停电或电压不稳造成的数据丢失的损失。
在网络传输方面,可考虑建立一条成本较低的后备网络,以保证当主网络断路时数据的通信。
在硬件方面要选择较可靠、稳定的服务器机种,保证系统运行时的可靠性。
6.3系统维护
维护方面主要为对服务器上的数据库数据进行维护。
可使用SQLSERVER勺
数据库维护功能机制。
例如,定期为数据库进行Backup,维护管理数据库死锁
问题和维护数据库内数据的一致性等
7.设计查询列表
7.1功能设计检查列表
表7-1功能设计检查列表
编
号
名
匕匕
厶冃功称
使用部门
使用岗位
功能描述
输入
内容
系统响应
输出内
容
是
否覆盖
1
登入航
管
管
登入航班座位、票
航班
快
航班信
否
班信息
理
员
理
员
价、起飞时间、起
飞地、目的地
号
息
2
检查座
位
管
理
员
管
理
员
检查用户所有座位
信息,
航班
座号
快
航班所
有座位
号
是
3
查看航
班预订
情况
管理员
管理员
查看所有用户航班
预定信息
航班
号
快
航班座
位预定
情况
是
4
航班取
消
管
理
员
管
理
员
对遇到特殊情况,
取消航班
取消
航班
号
快
航班号
消
是
5
用户注
册
用
户
用
户
进行用户注册
用户、
密码
快
注册成
功
是
7
查询航
班、票价
用
户
用
户
查询航班信息、票
价
航班
票价
快
航班机
票价
是
8
订票
用
户
用
户
对航班进行订票
订票
快
订票成
功
否
9
退票
用
户
用
户
对已定机票进行退
票
退