1、软件设计规格阐明书 一、引言1.1 编写目编写本套航空订票系统软件规格阐明书目在于依照软件需求阐明书中任务概述,需求规定等规划设计出一套可执行软件构造模型。1.2 参照资料网上订票系统需求分析报告 王曦编写软件工程导论第三版-张海藩 编著 清华大学出版社 基于项目软件工程面向对象研究办法-Cathie LeBlanc & Evelyn Stiller编著 机械工业出版社二、总体设计2.1 需求规定本套航空订票系统软件分为服务器端和客户端两某些:客户端某些由顾客使用,通过B/S方式实现,顾客可使用浏览器通过互联网进行操作。服务器端软件由管理员使用,通过C/S方式实现,管理员通过管理界面可对数据库
2、进行操作和管理。2.2 运营环境客户端运营环境:Windows98以上操作系统、IE5以上浏览器(或其她浏览器)。服务器端运营环境:Windows Server或Windows Advanced Server、SQL Server 。2.3 基本设计概念和解决流程本套航空订票系统软件编写,是为了设计出一套网上订票应用和管理软件。软件分为两大某些,网上订票某些和数据管理某些。网上订票某些(客户端)是以网页形式实现,顾客通过浏览器对数据库中航班数据进行查询、浏览并可进行订票。数据管理某些(服务器端)则是用VB编写一套管理软件,在管理某些中,管理员可以对数据库中数据进行输入、修改、删除和查询等操作,
3、从而对数据库中数据进行管理。2.4 构造本套航空订票系统软件采用Browser/Server和Client/Server相结合构造来进行开发。2.5 人工解决过程2.5.1 服务器端人工解决2.5.1.1 数据输入顾客依照需要来输入航班、订票人、乘客等信息详细数据,但必要保证其对的性和精确性。2.5.1.2 数据修改顾客依照需要对指定数据进行修改,由于记录繁多,因而顾客一方面要输入一定查询条件,缩小记录范畴,然后再从该范畴中找到指定记录进行修改,保证修改内容对的性和精确性后可更新数据库数据。2.5.1.3 数据删除顾客依照需要对指定数据进行删除,由于记录繁多,因而顾客一方面要输入一定查询条件,
4、缩小记录范畴,然后再从该范畴中找到制定记录进行删除,保证将要删除内容对的性和精确性后可删除掉数据库中数据。2.5.1.4 数据查询顾客依照需要查询数据库中所有数据,顾客需输入一定查询条件,然后可按照输入查询根据查询新数据库数据。2.5.2 客户端人工解决2.5.2.1 注册顾客必要注册才干进行订票操作,在此,顾客必要填写个人真实并精确详细信息。2.5.2.1 查询顾客通过填写一定查询条件,可查询顾客所需要航班信息、机票信息等。2.5.2.2 订票顾客可通过互联网进行订票操作,填写精确订票信息后提交订票。2.6 尚未解决问题2.6.1 客户端尚未解决问题客户端尚未解决问题是,如何与订票人银行账户
5、连接。2.6.2 服务器端尚未解决问题服务器端尚未解决问题是,系统自动检索到过期航班后自动将其信息删除并且要保所有与该航班关联订票人信息和乘客信息都删除,难点在于,如何保证数据库中表间一致性。2.6.3 难点问题难点问题是服务器端程序删除某些,由于订票人信息关系到某些乘客信息,必要保持数据完整性。另一方面是航班信息,它关系着某些订票人信息和乘客信息,其中还嵌套着这某些订票人当中有某些关系乘客信息,并且同一定票人可以订购多架次航班机票和所订购机票数量也不但仅是1张,要将航班信息删除,也要保数据完整性。三、接口设计3.1 顾客接口本套航空订票系统软件可视化很强,做到顾客运营程序就可直接上手操作。在
6、设计界面时,同步也考虑到此方面,因而在每个可以点击按钮上都设立了鼠标获得焦点后提示信息,即ToolTipText属性。3.2 外部接口在本套航空订票系统软件中没有考虑外部接口问题,如有需要可以添加对外部接口考虑,例如红外扫描、卡式读取设备等。3.3 内部接口由于本套航空订票系统软件是使用可视化软件来管理数据库中数据,因而数据库为连接各个模块之间接口,咱们同步也称之为软件内部接口。四、系统数据构造设计4.1 逻辑构造设计要点按照需求分析设计数据库中字段,建立一种逻辑上数据库构造。4.2 物理构造设计要点在数据库软件(SQL Server)中建立数据库,并要保证数据库最低要符合第二范式。4.3 数
7、据构造与程序关系4.3.1 静态数值需求(1) 支持并行操作顾客。(2) 解决多条记录数据。(3) 表或文献最小为2048字节,最大无限制。4.3.2 精度需求在进行提取数据库数据时,规定数据记录定位精确,在向数据库中添加数据时,规定输入数据精确。重要精度适应系统规定,不接受违规操作。4.3.3 时间特性需求(1) 响应时间应在人感觉和视觉事件范畴内;(2) 更新解决时间,随着应用软件版本升级,以及网络定期维护更新。4.3.4 灵活性当需求发生某些变化时,管理应用软件操作方式、数据构造、运营环境基本不会发生变化,变化只是将相应数据库文献内记录变化,或将过滤条件变化即可。4.3.5 数据管理能力
8、需求本应用软件可管理多条记录,本应用软件基本约用1,300千字节空间,所有文献均放置在数据库中调用,查询数据、文献、记录时,通过库文献名直接进行操作或通过存储过程来完毕操作。4.4 数据库设计描述4.4.1 数据库分析需将数据库设计成关系模式最低符合第二范式原则。按照需求分析,拟定系统实体。依照实体分析成果,在数据库中应建立如下数据表:passenger_infor(乘客信息表)、destine_infor(订票人信息表)、destine_infor1(订票人信息表1)、plane_infor(航班信息表)、plane_infor1(航班信息表1)、user_infor(订票人注册信息表),其
9、中destine_infor(订票人信息表)和destine_infor1(订票人信息表1)用来存储订票人信息, plane_infor(航班信息表)和plane_infor1(航班信息表1) 用来保存航班信息,同步各个数据表间也存在着相应连接关系,例如在passenger_infor(乘客信息表)中包具有订票人身份证号码(直接购票乘客无)、航班代码、机舱级别等有关字段用来与订票人数据表和航班信息表建立联系。4.4.2 数据库设计阐明(1) passenger_infor(乘客信息表)在此数据表中,存储是详细乘客详细信息,在乘客信息中包具有乘客某些基本信息和订票人身份证号码(如果该乘客是自己直
10、接购买机票,就没有订票人身份证号码)、航班号、航班级别等字段与其她表相连接字段。在该信息表中涉及如下字段:passenger_id(乘客身份证号码)、passenger_name(乘客姓名)、passenger_age(乘客年龄)、passenger_sex(乘客性别)、passenger_tel(乘客联系电话)、passenger_address(乘客地址)、plane_no(所乘坐航班号)、plane_grade(所乘坐航班机舱级别)、destine_id(订票人身份证号码)、catch_tic_date(取票日期)等字段。(2) destine_infor(订票人信息表)在此数据表中存储
11、是订票人其她信息,如:所乘坐航班号、所乘坐机舱级别等信息。订票人信息表要与航班信息表有所关联。在该信息表中包括如下字段:destine_id(订票人身份证号码)、plane_no(航班号)、plane_grade(机舱级别)、destine_count(订票数量)、destine_date(定票日期)、destine_status(订票状态)、cancel_count(取消数量)、cancel_date(取消日期)、cancelstatus(取消状态)等字段。(3) destine_infor1(订票人信息表1)在此数据表中存储是订票人某些基本信息,如:姓名、联系电话等,以便可以以便送票上门及
12、与订票人获得联系。该信息表通过destine _id (订票人身份证号码)字段建立起与destine_inofr数据表标间连接。在该信息表中包括如下字段:destine_id(订票人身份证号码)、destine_name(订票人姓名)、destine_phone(订票人联系电话)、destine_email(订票人电子邮箱地址)、destine_address(送票地址)等字段。(4) plane_infor(航班信息表)在此数据表中存储是航班起飞与降落地点和时间,并通过plane _no(航班号)字段建立起与plane_infor1数据表表间连接。在该信息表中包括如下字段:plane_no(
13、航班号)、begin_from(起飞地点)、end_address(降落地点)、begin_time(起飞时间)、end_time(降落时间)等字段。(5) plane_infor1(航班信息表1)在此数据表中存储是航班机舱级别和机票价格,并通过plane _no(航班号)字段建立起与plane_infor数据表表间连接。在该信息表中包括如下字段:plane_no(航班号)、plane_grade(机舱级别)、ticket_price(机票价格)等字段。4.4.3 数据库ER图AirPlane ER图 飞机信息 ER图4.4.4 数据库附加内容user_infor(订票人信息注册表)此数据表重
14、要应用于客户端,当订票人通过浏览网页想要订票时则需要订票人一方面通过网页注册后,才干进行订票操作。在此数据表中,除了存储了订票人基本信息外,还要存储订票人用于登录密码信息。订票人注册并登录成功后,订票时系统会将该表中订票人基本信息复制一份并存入订票人信息表中,以便服务器端维护并修改订票人有关订票信息。在该信息表中包括一下字段:id(身份证号码)、name(姓名)、tel(联系电话)、email(电子信箱)、address(联系地址)、password(登陆密码)等字段。 附加内容ER图五、系统出错解决设计5.1 出错信息在设计本套航空订票系统软件时,设计人员应尽量考虑到所有出错状况,并做出相应
15、恢复信息。无法预料错误信息,应返回给顾客一种特定信息提示。5.2 补救办法对于出错概率较大地方,设计人员应结合顾客需求做某些必要限制,减少出错也许。5.3 系统维护设计本套航空订票系统软件维护设计要有专门人员来做,这些人员应对本套航空订票系统软件程序代码构造与流程有进一步理解。六、程序系统组织构造6.1 系统组织构造图6.1.1 服务器端组织构造图系统层次构造图(服务器端) 6.1.2 客户端组织构造图 系统层级构造图(客户端) 6.2 模块层次图6.2.1 查询模块层次图 6.2.2 添加模块层次图 6.2.3 修改模块层次图 6.2.4 删除模块层次图 七、程序(标记符)设计阐明7.1 程
16、序描述7.1.1客户端程序:本套航空订票系统软件客户端应用程序以网页形式编写,涉及静态和动态网页,存储在服务器中,客户使用浏览器通过互连网络对网页进行访问,并完毕客户端可以完毕功能。7.1.2服务器端程序:本套航空订票系统软件服务器端应用程序,使用VB编写前台控制软件,管理员通过使用该软件来进行对数据库中数据进行管理。7.1.3后台数据库:本套航空订票系统软件后台数据库使用Microsoft SQL Server 来搭建后台数据库服务器,用来存储所有数据。7.2 功能7.2.1 客户端重要功能7.2.1.1订票信息查询功能:1)查询航班信息涉及航班号、时间、地点等信息。2)查询及票价格涉及起始
17、地、到达地、机舱级别、机票价格等信息。7.2.1.2网上定票功能: 1)填写订票人详细信息其中涉及:姓名、身份证号码、联系电话、送票地址等信息。 2)填写订票详细信息,其中涉及: 航班编号、机舱级别、订票时间、订票数量等信息。7.2.2 服务器端管理软件7.2.2.1 查询功能1)查询航班信息:输入航班代码或可以查询航班所有详细信息。2)查询订票人详细信息:精准查询:输入订票人身份证号码查询订票人详细信息。模糊查询:输入订票人姓名(或订票人姓或是年龄或是性别)查询出一系列有关信息,然后可从小范畴内找到订票人详细信息。3)查询乘客详细信息:精准查询:输入乘客身份证号码查询乘客详细信息。模糊查询:
18、输入乘客姓名(或乘客姓或是年龄或是性别)查询出一系列有关信息,然后可从小范畴内找到乘客详细信息。7.2.2.2 录入信息功能1)取票功能:依照输入订票人身份证号验证订票人身份后,输入详细乘客信息并进行保存。2)直接购票:直接输入乘客详细信息并保存(不通过订票人)。3)录入航班信息:录入航班有关信息。4)订票人取消订票:保存订票人取消订票信息。7.2.2.3 修改功能1)修改乘客信息:将查找到乘客信息,进行修改,然后进行保存。2)修改订票人信息:将查找到订票人信息进行修改然后进行保存。3)修改航班信息:将查找到航班信息进行修改后保存。7.2.2.4 删除功能1)删除乘客信息:将查找到乘客信息,进
19、行删除。2)删除订票人信息:将查找到订票人信息进行删除。3)删除航班信息:将查找到航班信息进行删除。7.3 性能7.3.1 时间特性需求在网络连接正常状况下,查询响应时间为秒级。7.3.2 灵活性当需求发生某些变化时,机票管理应用软件操作方式、数据构造、运营环境基本不会发生变化,变化只是将相应数据库文献内记录变化,或变化过滤条件。7.3.3 可用性软件应当尽量一目了然,使普通顾客可以使用。7.3.4 安全性本套航空订票软件系统所涉及数据存储于Microsoft SQL Server数据库中,在程序中应尽量使用调用存储过程办法以免使某人反编译软件后或入侵到服务器后对数据库构造了如指掌,在程序中应
20、当设立不同权限人访问时账户和密码,以保证数据不容易被错改、破坏,并且要经常对数据库进行备份操作,使得数据一旦受到破坏或是出错可以保证及时恢复数据,将损失减少到最低。7.3.5 可维护性7.3.5.1 应用程序维护当顾客使用本套航空订票系统软件时,遇到了软件自身逻辑错误时,应当有软件维护人员对软件进行修改。7.3.5.2 数据库维护应当有特定数据库维护人员对数据库进行及时地进行备份,管理等操作,以保证数据库安全性。7.3.6 可转移、可转换性Visual Basic及asp编程语言兼容性很高,在windows95/98. windowsNT. windows. windows XP等操作系统都可
21、以直接运营。7.4 输入项顾客通过软件输入必要信息,然后保存到数据库,所输入信息是通过需求分析限定内容,同步也是数据库中每个字段中存储内容。7.5 输出项本套航空订票系统软件会将所有需要浏览数据显示在屏幕上,以便使顾客可以浏览到数据库中数据或顾客想要浏览范畴中数据。7.6 算法 1)将顾客输入数据,按字段保存到数据库中。2)将数据库中数据,按字段提取到顾客界面中。3)必要去除重复项算法。4)按条件修改、删除数据中数据。5)保持表间数据一致性。7.7 流程逻辑7.7.1 服务器端个模块流程图7.7.1.1查询模块流程图 7.7.1.2 添加模块流程图 7.7.1.3 修改模块流程图7.7.1.4
22、 删除模块流程图 7.7.2 客户端各模块流程图7.7.2.1 查询模块流程图7.7.2.2 订票模块流程图7.8 接口本套航空订票系统软件服务器端程序是使用Visual Basic 6.0来编写完毕,建立VB与数据库连接使用了ADODB对象来完毕,每个模块中都使用了Recordset、Command、Connection对象,因而在模块中对三者对象进行定义(分别为:rs、cmd、cn),并且将cn连接数据库语句写好并打开连接,在其她模块中共同调用这三个对象来对数据库进行操作。7.9 注释设计尽量将软件中插入注释语句,使语句功能明了。制作客户端ASP网页时候应当制作两分,一份是标有注释语句网页,用来给维护人员、测试人员和开发人员理解开发过程所用,另一份是不带有注释语句网页,用来最后实际应用当中,这样可以充分运用有限带宽,减少客户计算机打开网页时间,提高客户端浏览速度。7.10 限制条件限制必要条件,以排除由于顾客误操作导致不必要错误。7.11 测试筹划在软件编辑工作进行当中,测试人员便要开始制定测试筹划,其中要涉及白盒和黑盒详细测试项目,及其必要测试数据和出错信息。每次测试成果要写报告,并就发现和怀疑问题与编辑人员联系。测试成果要让编辑人员明白。