基于web机票预定信息系统设计与实现_第1页
基于web机票预定信息系统设计与实现_第2页
基于web机票预定信息系统设计与实现_第3页
基于web机票预定信息系统设计与实现_第4页
基于web机票预定信息系统设计与实现_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

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

文档简介

1、本科生毕业设计(论文)摘 要基于web机票预定信息系统设计与实现的是为了方便全国乘坐民航的消费者进行机票预定而设计的。系统的用户分为管理员和普通用户,通过不同的用户名和密码来登陆系统来进行所需要的操作,管理员可以对后台数据库中的内容进行修改和管理。该系统的主要功能包括会员管理,航线航班管理,机票服务管理,客户留言信息管理,以及管理员的后台管理等。该系统其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强,数据安全性好的数据库。而对于后者则要求应用程序功能完备,易使用等。本设计采用ASP.NET为开发环境进行操作界面和代码的设计;数据库采用M

2、icrosoft SQL Server 2000数据库系统。论文的大致框架如下:第一章 绪论;第二章 可行性分析;第三章介绍可行需求分析;第四章介绍系统总体设计;第五章介绍系统数据库设计;第六章介绍系统详细设计;第七章和第八章介绍系统的测试与性能分析;第九章是总结。关键词:会员管理;航线航班管理;机票服务管理;客户留言;数据库设计。AbstractDesign and Implementation of Booking Tickets for the Web-Based Information System is to facilitate the use of CAD booking tic

3、kets for the consumer designed. System have administrators and ordinary users, through different user names and passwords to the landing system to carry out some needed operations, Administrators can modify and manage the background database the its content . The system's main functions include

4、members of management, flight route management, ticket service management, customer information management messages, Administrators manage the background of system.The Development of the system including two facets which its database background to the establishment and maintenance and the developmen

5、t of the front-end applications .Regarding the former require to establish the stronger data consistency and integrity, good data security database. As for the latter we demanded the application Complete functions, and easy to use.The design used ASP.NET development environment for the operation of

6、the interface and code design; Database used Microsoft SQL Server 2000 database system. The thesiss general framework is as follows : Chapter 1 Introduction; Chapter 2 feasibility analysis; Chapter 3 introduce the possible demand analysis; Chapter 4 introduce the Overall design; Chapter 5 introduce

7、the database design; Chapter 6 introduce a detailed system design; Chapter 7 and Chapter 8 introduce the systems test and function analysis; Chapter 9 is a summary. Keywords : Member management; Flight route management; Ticket service management; Customers Message; Database design.目 录第1章 绪 论11.1 系统的

8、概述11.2 相关工具与开发工具介绍2第2章 可行性分析42.1 技术可行性42.2 经济可行性42.3 操作可行性52.4 运行环境5第3章 需求分析63.1 系统环境的工作需求及流程63.2 系统数据流图和数据字典6第4章 总体设计114.1 总述114.2 系统结构图11第5章 数据库设计145.1 概念设计145.2 逻辑设计175.3 物理设计19第6章 详细设计216.1 菜单设计216.2 模块设计22第7章 系统测试387.1测试的目的387.2测试的方法387.3测试的步骤397.4本系统的测试40第8章 系统维护与性能分析418.1系统维护418.2性能分析41第9章 总结

9、43参考文献44致 谢45附 录 I46IV第1章 绪 论1.1 系统的概述1.1.1 机票预定信息系统的研究意义随着社会发展的不断进步,民航事业的壮大,人们消费水平的提高,在现实生活中,乘坐民航的消费者也越来越多。由于中国人口众多,订购机票成为了旅客们最头疼的问题!怎样为旅客提供高效,便捷的服务是国家在航空运输中应该首要解决的问题。通过网络实现机票预定已经成为一种消费的时尚,给消费者带来极大的便捷!预定查询系统因此在各机票预定网点中的作用也越显重要。因此,开发一套具有完整的存储,查询,核对,打印机票功能的实时机票预定系统更显紧迫。机票预定系统应克服存储乘客信息少,查询效率低下等问题外,更重要

10、的是其安全性,可靠性,这关系到航班的乘客的安全及准确,本系统因面向广大机票预定网点,因此要能在售票网点中普及,则需要开发一个功能全,价格能被顾客所接受的系统!1.1.2 本系统的主要功能本系统最突出的一个特点是可以通过IP地址访问数据库。系统功能主要实现会员资料管理,航线航班管理、机票服务,客户留言情况的统计,航班票价查询,航线航班的查询等功能。管理员可以轻松地对系统会员,航线,航班,票价进行修改,也可以通过本系统来查看用户订票的的资料。本系统对会员资料管理包括添加会员,删除会员和修改会员资料并对会员进行统计等。航线航班管理模块有:添加删除航线、添加删除航班功能,并且可以修改现在的资料。在加入

11、新航班航线的同时数据库会随时更新显示出最新的数据,方便用户进行查询。机票服务模块有:机票的预定,票价的查询,订票信息的打印,退票的服务等功能。客户留言管理模块有:客户留言功能。客户可以根据自己对订票的意见以及自己的要求进行留言。管理员后台管理模块有:会员的添加,更名和删除,航线航班的添加删除,查询客户留言,查询订票退票信息的操作。这样方便进行相应的调动调整,反馈给客户最新的信息!此外,本软件还具有界面简捷美观,信息量大,操作简单,安全性好,实现成本低等特点。除此之外使用了权限设置等技术使系统具备了良好的健壮性。1.2 相关工具与开发工具介绍本系统采用ASP.NET作为前台程序开发环境,Micr

12、osoft SQL Server 2000作为后台数据库,并且以Windows作为运行平台,以便更广泛的适应企业要求。ASP.NET语言环境的功能比较强大,Microsoft SQL Server 2000数据库也具有广泛的适应性,Windows操作平台具有很高的适应性,这样的组合有利于降低成本,服务于广泛的用户。1.2.1 ASP.NET 开发环境ASP.NET是美国微软公司(Microsoft)推出的Windows环境下的软件开发工具。ASP.NET 是一种建立在通用语言上的程序构架,能被用于一台Web服务器来建立强大的Web应用程序。ASP.NET提供许多比现在的Web开发模式强大的的优

13、势。因为ASP.NET是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上(笔者到现在为止只知道它只能用在Windows 2000 Server上)。通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到ASP.NET的Web应用中。ASP.NET同时也是language-independent语言独立化的,所以,你可以选择一种最适合你的语言来编写你的程序,或者把你的程序用很多种语言来写,现在已经支持的有C#(C+和Java的结合体),VB,Jscript。将来,这样的多种程序语言协同工作的能力保护您现在的基于COM+开发的程序,能够

14、完整的移植向ASP.NET。ASP.NET是运行一些很平常的任务如表单的提交客户端的身份验证、分布系统和网站配置变得非常简单。应用ASP.NET编译出来的程序通俗易懂,非常适合初学者应用。1.2.2 Microsoft SQL Server 2000数据库介绍数据库技术是计算机软件的一个重要分支,它产生于20世纪60年代,最早是由IBM公司推出的IMS数据库系统。数据库技术从开始到现在大致经历了三个阶段,分别是:人工管理阶段、文件管理阶段和数据库管理阶段。Microsoft SQL Server 2000是用来专门管理数据库的应用软件。所谓数据库是指经过组织的、关于特定主题或对象的信息集合。数

15、据库管理系统分为两类:文件管理系统和关系型管理系统。除了这些外Microsoft SQL Server 2000还为你的数据管理和分析带来了灵活性,允许用户在快速变化的环境中从容相应,Microsoft SQL Server 2000是一个具备完全web支持的数据库产品,不仅易于使用,而且界面友好,如今在世界各地广泛流行。Microsoft SQL Server 2000需要掌握的功能很多例如:关系代数以编写功能强大的查询,对索引进行调优使其成为数据和查询之间的桥梁,分析查询执行计划以提高性能。Microsoft SQL Server 2000不需要进行复杂的编程,利用提供的工具和功能就能完成

16、小型数据库管理系统的设计,因此数据库管理者使用起来非常的方便,任何非专业的用户都可以用它来创建功能强大的数据库管理系统。在SQL Server 2000中使用可扩展标记语言(XML)可以在松散耦合系统之间交换数据。从浏览器通过防火墙可方便而安全地访问数据,并可对有格式文档执行快速全文检索。分析和链接联机分析处理(OLAP)多维数据集,即使在 Web 上也是如此,从而提供了强大的数据处理能力和通用性,使其成为一个功能强大而且易于使用的桌面关系型数据库管理系统。一个Microsoft SQL Server 2000数据库中可以包含表、关系图、视图、存储过程、用户、规则以角色等。使用单一的.mdf文

17、件管理所有的信息,这种针对数据库集成的最优化文件结构不仅包括数据本身,也包括了它的支持对象。第2章 可行性分析可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。在这个阶段,信息单位必须就时间、人力、物力、财力、效益、技术等要素来评估他们是否有足够的资源支持使用单位的需要。要从技术可行性、经济可行性、操作可行性三个方面来进行研究。 2.1 技术可行性首先,机票预定信息系统是以预定机票为主要功能的软件,附加包括航线航班的查询,会员的管理,订票的管理,票价的管理等功能。它应该是航空公司预定机票系统的一个模块。主要包括一些基本功能而不是全部功能,这样方便各大航空公司应用,这就决定

18、了它的开发时间不能太久,在给定的17周里有足够的时间实现要求;其次是人力资源,开发该系统是有一个人独立完成的,虽然在开发前期有点困难,但在调试过程中总体看来要容易的多。再次是技术能力方面,本系统地开发采用ASP.NET环境, ASP.NET开发的系统是面向对象的,开发出来的系统包括客户端和服务器,其中服务器和数据库放在各大航空公司!客户端放在各个机票预定点,服务器给客户端提供数据库服务器ip,这样用户在客户端登陆就可以看到航空公司提供的数据进行订票。而且ASP.NET还具有很强的数据库管理功能,可以有效的管理多种格式数据库。在本软件中以Microsoft SQL Server 2000作为后台

19、数据库,在机票预定客户端输入的数据都将直接进入数据库集中存放。在ASP.NET中有很完美的可以和它连接的数据库对象和对数据库的操作而且Microsoft SQL Server 2000具有广泛的适应性,用来做本软件的后台是数据库比较合适。2.2 经济可行性就是该系统的经济效益能否超过它的开发成本。本系统的开发潜力应该是非常大的。因为本系统实现的机票预定的基本功能,各大航空公司都可以购买开发,本软件主要实现机票预订系统的基本功能和基本管理,对于其他的附加功能特色功能则需要购买的航空公司根据需求自己开发。本软件使用也非常方便只要管理者把数据库添加进去,再发服务器的IP地址给到客户端,用户便可以使用

20、。对各个航空公司的利益不发生冲突,允许多个航空公司购买使用,提高了软件经济效益,达到了开发的目的!一般情况下,一个软件的寿命是5年,本系统的开发时间是17周。现在的总体投入大约在5000元,包括了购买开发本系统所需要的全部软、硬件及调研的费用。今年的年利率是2.93%,根据公式: (1-1)公式中:i表示年利率; n表示软件使用时间; P表示实际投入资金; F表示n年后收入的资金;那么在5年后的收入为5776.7,很明显对企业是有好处的,投资的回收率在15%以上,因此本投资项目是值得的。2.3 操作可行性在整个资料管理系统中的操作都是采用大众化的操作方式,用户和管理员只要经过简单的学习,熟悉软

21、件的功能就能轻松掌握,并熟练的进行操作,所以操作方面可行。2.4 运行环境2.4.1 硬件配置使用CPU P4 2.4GHz以上,内存在512M以上,硬盘容量在80G以上,就能完全保证本系统稳定、快速的运行。2.4.2 软件配置操作系统平台采用了Windows XP Professional ,选择此版本操作系统主要是因为经过几年的发展后,这个版本是最为成熟的一个操作系统,在稳定性、兼容性等多个方面都很突出。数据库采用Microsoft SQL Server 2000,与ASP.NET开发环境很好地兼容,可以方便安装及使用,节约成本。程序开发采用ASP.NET,一个可以方便快捷地开发Windo

22、ws应用软件的开发程序,使用方便,开发出来的程序也能很方便地被使用。第3章 需求分析3.1 系统环境的工作需求及流程3.1.1 系统环境的工作需求无论是软件开发还是硬件建设,需求分析是个非常重要的过程。严格来说,需求分析需要系统分析员、系统管理员、用户这三方面人员的通力合作,以确定系统的功能要求、系统的性能要求、运行要求以及将来可能提出的各种新的要求。可行性研究的阶段产生的文档,特别是数据流图是需求分析的出发点。数据流图中以划分出系统必须完成的基本功能,在需求分析阶段系统分析员将仔细研究这些功能并进一步具体化。需求分析的结果是系统开发的基础,是整个项目的起点,关系到工程的成败的和软件产品的质量

23、。因此,必须用行之有效的方法对软件需求进行严格的审查验证。基于web机票预定信息系统本着方便广大旅客的需求为原则,包含了机票预定的各项基本功能,方便各个机票预定站使用。该系统应该具备以下功能:首先,该系统的客户端允许用户会员登陆使用,因此必须有系统登陆界面(用户名、密码核实等),只有正确的用户名和相应的密码才能登陆系统,进行相应的航线航班查询,机票价格查询等的操作;其次,要有后台管理员管理功能(添加、修改、删除用户资料、查询会员资料、机票航线航班当前状况等),通过此功能管理者可以了解到每个功能实现的具体情况;第三,要有后台修改功能(修改当前航线,航班,票价,会员密码等功能),通过此功能管理者可

24、以随时更新,添加航线,临时添加航班给用户查询带来最新的最准确的消息;第四,应具备客户留言功能,通过此功能可以实现对客户意见的反馈,作出及时的调整来满足客户需求。3.2 系统数据流图和数据字典3.2.1 系统的数据流图数据流图是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。在数据流图中没有具体的物理部件,只是描绘数据在软件中流动和被处理的逻辑过程。此外,设计数据流图时只需考虑系统必须完成的基本逻辑功能,而不必考虑具体这样实现这些功能,也就是说数据流图的基本要点是描述“做什么”而不考虑“怎么做”,所以它也是今后进行软件设计的出发点。其实,软件系统归根到底是一个信息处理系统

25、,其最基本的功能就是接收输入的信息,对输入的信息按照规定的方法归类、处理、存储,转变为所需要的信息,最后通过输出系统向用户输出所需求的信息。其中最核心的部分就是对信息(或者称作数据)的处理,因此不同的数据也就不决定了所需要的不同的处理方法和算法。数据流图也就是以图形的方式将系统中数据传递、转化的过程以直观的方式表述出来。下面是根据分析绘制出的机票预定信息系统的顶层数据流图:用户基于web机票预定信息系统管理员事务 结果图3.1 顶层数据流图上面较抽象的系统流图,接下来将介绍该系统的几个功能模块的数据流图,来说明相关部分的具体实现的功能。3.2.2订票查询D1 新用户信息旅客用户订票订票3.2.

26、1旅客登录旅客订票登录会员信息 D2 订票信息 图3.2 旅客订票数据流图3.3.4修改更新信息3.3.3后台处理3.3.2票价查询 3.3.1航线查询航班管理旅客事务事务 事务 结果D2 管理员登录 图3.3 航班管理数据流图3.2.2 数据字典数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义和集合。数据字典的最主要的用途是供人查阅对不了解的条目的解释,数据字典的作用也正是软件分析和设计的过程中给人提供关于数据的描述信息。数据流图和数据字典共同构成系统的逻辑模型,没有数据字典数据流图就不严格,然而没有数据流图数据字典也难于发挥作用。只有数据流图和对数据流图中每个元素的精

27、确定义放在一起,才能共同构成系统的规格说明。数据字典最重要的用途是作为分析阶段的工具。在数据字典中建立的一组严密一致的定义很有助于改进分析员和用户之间的通信,因此将消除许多可能的误解。对数据的这一系列严密一致的定义也有助于改进不同的开发人员或不同开发小组之间的通信。如果要求所有开发人员都根据公共的数据字典描述数据和设计模块,则能避免许多麻烦的接口问题。数据字典的内容一般包括:数据流、数据流分量、数据存储、处理。数据字典中包含的每个数据元素的控制信息是很有价值的。因为列出了使用一个给定的数据元素的所有程序模块,所以很容易估计改变一个数据将产生的影响,并且能对受影响的程序或模块作出相应的改变。所以

28、数据字典是开发数据库的第一步,而且是很有价值的一步。由于在开发本系统是没有数据字典处理程序,因此采用了卡片的形式书写数据字典。以下是本系统的数据字典:下面是机票预定信息的部分数据字典:表3.1 旅客信息的定义名称:旅客信息描述:用来记录旅客的相关信息。定义:旅客信息=姓名+密码+联系方式+主要内容。位置:旅客添加运行窗口表3.2 管理员信息的定义名称:管理员信息描述:用来记录管理员的相关信息。定义:管理员信息=姓名+密码+联系方式。位置:旅客添加运行窗口 表3.3数据元素旅客订票的定义名称:新用户订票描述:新用户注册进行订票及进行机票信息查询类型:字符型长度:10位置:新用户信息列表 表3.4

29、 数据元素客户留言的定义名称:客户留言描述:对订票的意见进行留言,管理员将会进行查看。类型:字符型长度:50位置:留言信息列表表3.5 数据元素票价查询的定义名称:票价查询描述:对各地机票的票价查询类型:字符型长度:50位置:票价查询信息列表表3.6 数据元素航班管理的定义名称:管理员航班管理描述:对国内,国际,座位以及数据库的更新维护进行管理类型:时间型长度:8位置:航班管理列表表3.7 数据元素退票的定义名称:退票描述:对临时换乘航班的或其他原因需要退票的旅客进行退票类型:文本型长度:16位置:退票信息列表表3.8 数据元素航线管理的定义名称:航线管理描述:对航线进行管理,管理员有权添加和

30、修改。类型:字符型长度:50位置:航线管理列表表3.9 数据元素订票查询的定义名称:订票查询描述:用户订票后进行查询自己是否订票成功,并可打印出报表。类型:字符型长度:50位置:订票查询信息列表表3.10 数据元素机票打印报表的定义名称:机票打印报表描述:用户订票后可进行打印凭证类型:字符型长度:50位置:机票打印列表数据字典最重要的用途是作为分析阶段的工具。在数据字典中建立的一组严密一致的定义很有助于改进分析员和用户之间的通信,因此将消除许多可能的误解。对数据的这一系列严密一致的定义也有助于改进在不同的开发人员和不同的开发小组之间的通信。第4章 总体设计4.1 总述经过需求分析阶段的工作,我

31、们已经清楚了系统必须“做什么” ,接下来应该确定我们应该“怎么做” 。总体设计的基本目的就是回答“概括的说,系统应该如何实现?”这个问题,因此,总体设计又称为概要设计或初步设计。通过这个阶段的工作将划分出组成系统的物理元素程序,文件,数据库,人工过程和文档等。总体设计阶段的另一项重要任务是设计软件结构,也就是要确定系统中每个程序是由哪些模块组成的,以及这些模块相互间的关系。层次模型很适用于本系统,利用层次模型可以很好地完成自上而下的软件设计。把模块组织成良好的层次系统,顶层模块调用它的下层模块以实现程序的完整功能,每个下层模块再调用更下层的模块,从而完成程序的一个子功能,最下层的模块完成最具体

32、的功能。软件结构可以通过层次图或结构图描绘。4.2 系统结构图4.2.1 系统总体结构图:登陆系统登录主界面会员管理航线航班机票服务客户留言退出系统图4.1系统总体结构图4.2.2 子功能模块结构图 系统管理模块结构图:会员管理用户添加用户删除权限设置退出系统修改密码图4.2系统管理模块结构图 航线航班管理模块结构图:航线航班航线管理航班管理添加航班添加航线删除航线删除航班航线修改图4.3航线航班管理模块结构图 机票服务模块结构图:机票服务客户订票国内航班国际航班航线航班查询票价查询航线航班查询票价查询图4.4机票服务模块结构图 客户留言

33、管理模块结构图客户留言客户意见留言客户留言查询图4.5客户留言管理模块结构图以上是本系统的主要功能,还有些附加功能暂不做阐述。第5章 数据库设计数据库在一个信息管理系统中占有非常重要的地位,数据库设计的好坏将直接影响系统的效率以及实现效果。合理的数据库设计可以提高数据存储的效率,保证数据的完整和一致。同时,合理的数据库结构也将有利于程序的实现。数据库除了用户的需求分析外,还包括概念、逻辑和物理设计三个阶段。5.1 概念设计数据库一般分为三级模式:外模式、概念模式和内模式。其中概念模式是数据库中全部数据的逻辑结构和特征的描述,通常以某种数据模型为基础。概念设计是对显示世界的一种抽象。所谓抽象是对

34、实际人、物、事和概念进行认为处理,抽取所关心的共同特征,忽略非本质的细节,并把这些特征用各种概念精确的假以描述,这些概念组成了某种模型。数据库的概念设计任务是依据需求分析的结果转换成一个独立于具体数据库管理系统(Database Management System,简称DBMS)的概念模型,即实体关系图(ER图)。在概念设计阶段就要开始设计数据库的完整性。通过对数据流图和数据字典的分析,可以得到如下E-R图:用户实体E-R图:用 户用户名密码权限图5.1用户实体E-R图(1) 机票实体联系图航 线票 价地点地座位航 程国 际状态机票国 内 图5.2 机票实体联系图(2) 旅客实体联系图姓 名旅

35、 客密码联系方式 图5.3 旅客实体联系图(3) 订票信息实体联系图订票信息票价座位航线目的地期订票日期订票数量图5.4 定票信息实体联系图(4) 定票费用实体联系图定票费用新用户会员定票价定票价航班类型座位需求图5.5 订票费用实体联系图(5)退票实体联系图预定编号退票日期数量票价退 票图5.6 退票实体联系图(6)实体间联系图用户退票查询用户订票用户票价用户管理票价MNMNMN图5.7 实体间联系图5.2 逻辑设计(一)转换原则逻辑结构设计的主要任务是,把由概念结构设计阶段得出的E-R图转换为相应的逻辑结构。所谓相应是指,转换后的逻辑结构要与开发者所选用的软硬环境相容,能被前台与后台工具所

36、支持。逻辑结构设计一般分为三步:(1) 将概念结构转换为一般的关系网状层次模型;(2) 将转换后的模型向特定的DBMS支持下的数据模型转换;(3) 对数据模型进行优化。将E-R图转换为关系模型实际上是要将实体实体的属性实体之间的联系转换为关系模式,这种转换一般遵循以下原则;(1) 一个实体型转换为一个关系模式。(2) 一个1:1的联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。(3) 一个1:n的联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。(4) 一个m:n 的联系转换为一个关系模式。(5) 三个或三个以上实体间的一个多元联系可以转换为一个关系模式。

37、(6) 具有相同码的关系模式可以合并。转换的难点在于属性的 转换,具体方法请参看有关数据库设计方面的书籍,这里不作详细分析。(二)解释设计 我所设计的机票预定信息系统包括四大方向:用户资料管理-基本信息管理-航线航班管理-机票打印管理。通过实际考察,我掌握了用户日常处理的大部分数据。我将需求分析阶段得到的数据进行了归类,并建立了初步的逻辑设计结果。(三)建立逻辑设计结果资料管理子系统 逻辑设计结果:由上面机票预订系统的E-R图得到的关系模型如下(关系的码由下划线标出):会员表(会员编号,姓名,身份证号,联系方式)管理员表(管理员编号,姓名,身份证号,密码)航线航班管理子系统 逻辑设计结果:航班

38、表(航班编号,航班票价)航线表(航线编号,航线名称)票价表(航班号,国内,国际)订票管理子系统 逻辑设计结果:订票表(订票编号,金额,日期)机票打印子系统 逻辑设计结果:机票表(机票编号,身份证编号,交费日期,票价)表4.1 所有用户列表字段类型长度NULL备注用户名Char10否无密码Char10否无表4.2 订票信息列表字段类型长度NULL备注航班号Char10否无日期Datetime8否无票价Char10否无身份证号Varchar50否无数量Char10否无表4.3 会员列表字段类型长度NULL备注会员编号Char10否无姓名Varchar50否无密码Char10否无表4.4 航线航班信

39、息列表 字段类型长度NULL备注国内航班Char10否无国际航班Char10否无订票日期Datetime8否无座位Char10否无票价Char10否无表4.5 退票表字段类型长度NULL备注退票编号Char10否无票价Char10否无退票意见Char10否无5.3 物理设计数据库在物理设备上的存储结构与存储方法称为数据库的物理结构,它依赖于给定的计算机系统。为一个给定逻辑数据模型选取一个最适合应用要求的物理结构的过程,就是数据库的物理设计。数据库的物理设计通常分为两步:1) 确定数据库的物理结构,在关系数据库中主要指存取方法和存储结构;2) 对物理结构进行评价,评价的重点是时间和空间效率。不同

40、的数据库产品所提供的物理环境、存取方法和存储结构有很大的差别,能供设计人员使用的设计变量、参数范围也很不相同,因此没有通用的物理设计方法可遵循,只能给出一般的设计内容和原则。希望设计优化的物理数据库结构,使得在数据库上运行的各种事务响应时间小、存储空间利用率高、事务吞吐率大。为此首先对要运行的事务进行详细分析,获得选择物理数据库设计所需要的参数。其次,要充分了解所用的RDBMS的内部特征,特别是系统提供的存取方法和存储结构。数据库物理设计过程中需要对时间效率、空间效率、维护代价和各种用户要求进行权衡,其结果可以产生多种方案,数据库设计人员必须对这些方案进行细致的评价,从中选择一个较优的方案作为

41、数据库的物理结构。评价物理数据库的方法完全依赖于所选用的DBMS,主要是从定量估算各种方案的存储空间、存取时间和维护代价入手,对估算结果进行权衡、比较,选择出一个较优的合理的物理结构。如果该结构不符合用户需求,则需要修改设计。 第6章 详细设计详细设计阶段的根本目的是确定应该怎样具体的实现所要求的系统,给出软件模块结构中各个模块的内部过程描述。经过这个阶段的设计工作,应该得出对目标系统的精确描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。6.1 菜单设计菜单中集成了用户在程序窗口中所完成的绝大部分操作,是程序开发中的核心元素。在设计窗口上适当的运用菜单,可以使生成的应

42、用程序更贴近用户,是命令项更加直观,便于用户识别。而且使用菜单有两个很突出的优点,一是节省屏幕的显示空间。几十甚至是上百种功能的选择集合到菜单中也只是占用一行的空间。二是对系统功能的分门别类,菜单可以一级一级地展开,形成树型结构,条理清晰,查找快捷。方便用户使用同时也方便了开发人员对系统功能的管理和设置。菜单有3种类型:下拉菜单、弹出式菜单和级联菜单。下拉菜单有菜单标题、菜单项组成。用户选择菜单标题后,该标题下的菜单即被弹出。弹出式菜单与对象关联,通常有称为上下文相关菜单。一般来说,当用户右击某个对象时,出现弹出式菜单。级联菜单可以出现在前两种菜单中,在其父菜单项的后面有个向右的箭头符号,指示

43、该菜单项后面有级联菜单。一般来说级联菜单不宜超过两层。在本系统中主要采用了下拉菜单,为了使使用者更了解本系统的功能还适当地采用了级联菜单。在本系统中为了方便使用主要以下拉菜单为主,有少量的级联菜单。本系统采用了ASP.NET作为开发环境,ASP.NET提供了很好的菜单控件及编辑工具。利用菜单控件编辑器可以很方便地编辑菜单内容,添加菜单内容对菜单进行编写代码,完成菜单的制作。如图所示是机票预订系统客户端的菜单界面,双击任何一个子菜单可以对其进行编程:图6.1 菜单控件MenuStrip.通过菜单控件制作的下拉菜单如图:图6.2通过菜单控件制作的下拉菜单6.2 模块设计详细设计阶段的根本目的是确定

44、应该怎样具体的实现所要求的系统,给出软件模块结构中各个模块的内部过程描述。经过这个阶段的设计工作,应该得出对目标系统的精确描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。按功能设计,本系统分:用户登录模块,用户查询订票模块,机票打印模块,系统更新维护管理模块,共四个模块。各个模块所完成的功能下面进行详细介绍。在设计各模块时,通过了解专业的.net程序员的开发经验知道,在设计时会用到很多数据控件,几乎每一个窗体至少有一两个,这样在设计时看到每一个窗体非常乱,为了美观和使用方便,建立一个数据模块Data module非常必要。而且我是采用配置文件(*.ini)来动态的连接

45、数据库的,这样系统的移植性更加强大,无论服务器的IP或者名称如何变化,无论登陆的用户名和密码如何变化,只要对配置文件的相关字段进行配置就能轻而易举的适应各种环境,增加的本软件的健壮性。用户登录流程图如下:开始用户名和密码是否为空?是提示:输入用户名和密码是输入信息是否正确?否提示:输入用户名或密码错误,重新输入退出系统进入系统结束图6.3系统登陆流程该登陆流程是对登陆系统的全部过程演示。在该过程中ip地址由管理端提供,用户只要有自己的用户名和密码就可以。当用户名和密码全输入后,再对他们进行判断,只有输入名称和密码全部正确,才能顺利登陆主系统。根据该设计思路,设计出的登陆界面如图所示:图6.4登

46、录界面首先创建窗体Form1,“Text”设置为“客户端” 。在窗体上添加Label1,Label2和Label3对其text属性分别设置为 “服务器地址”,“用户名”, “密码”和在窗体下方添加Button1 ,Button2和Button3,对其text属性分别设置为“确定”“关闭”和“注册” 。同时也可以在其属性中添加Image图片等内容,用于美化界面。双击确定按钮进行编写代码: conn con = new conn(this.textBox1.Text); SqlConnection sqlCon = con.createConn(); SqlCommand cmd = new Sq

47、lCommand("select * from login where name='" + this.textBox2.Text + "'",sqlCon); cmd.ExecuteNonQuery(); /这一小部分代码是连接号数据库后执行查询操作; SqlDataReader dr = cmd.ExecuteReader(); dr.Read(); string temp1 = dr.GetValue(1).ToString().Trim(); string temp = dr.GetValue(2).ToString().Trim(

48、); /这部分代码是从数据库中取值; if (this.textBox3.Text = temp && this.textBox2.Text = temp1) ip = this.textBox1.Text; main newfrm = new main(); newfrm.Show(); /这部分代码是转到main窗体; else MessageBox.Show("密码错误", "登陆错误"); this.textBox2.Text = "" this.textBox3.Text = "" /显示

49、相关错误提示; 通过登陆界面就能进入到系统操作界面。在操作界面中以菜单为主,通过菜单可以找到系统中的全部动能。该界面主要使用菜单控件MenuStrip. 这个控件使用起来相当方便,首先点击每个主目录修改完名称后,会弹出下拉菜单然后编写其他子功能的名称,依次这样进行便可以完成。系统在后面还多次使用了该控件,以后就不做仔细阐述。图6.5操作界面通过点选操作界面上方的菜单,可以选择具体的功能。当选择对应的功能项后,在操作界面上会弹出一个新的操作窗体,用户可以在这个新窗体中进行所需操作,并可以随时关闭窗体返回操作界面。在整个过程中,操作界面的大窗体并不关闭,这样可以方便用户的操作。在会员管理的菜单中包

50、括会员注册。在客户端这边只需要进行注册。会员的修改密码和其他信息等在服务器那边进行。会员注册的操作界面如图:图6.6注册新用户界面图服务器端管理员进行对会员的修改包括:密码修改,会员查询,删除会员。还有客户端的主要功能界面的各个显示界面如下,客户端代码这里就不写出来了。该窗体主要使用的控件有dataGridView,button,textbox,combo等。图6.7航班查询界面图图6.8用户订票界面图创建窗体dingpiao,“Text”设置为“订票” 。在窗体上添加combo1,combo2对其text属性分别设置为 “航班号”,“日期”,和在窗体下方添加Button1 ,Button2对

51、其text属性分别设置为“确定”“关闭”。同时添加打印机票按钮,点击后可进入打印界面。也可以在其属性中添加Image图片等内容,用于美化界面。双击确定按钮进行编写代码.这个窗体可是说是客户端中的突出主要功能页面,它的主要实现代码如下: private void dingpiao_Load(object sender, EventArgs e) boBox1.Text = "" this.textBox1.Text = "" this.textBox2.Text = "" /设置当前的文本框为空; SqlConnection Conn

52、= new SqlConnection(); Conn.ConnectionString = "workstation id="+Form1.ip+"Integrated Security=SSPI;database=机票" /定义连接数据库; SqlCommand cmd = new SqlCommand(); cmd.CommandText = "select * from 票价" cmd.Connection = Conn; Conn.Open(); cmd.ExecuteNonQuery(); /按照指定语句进行查询; private void button1_Click(object sender, EventArgs e) SqlConnection Conn = new SqlCo

温馨提示

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

评论

0/150

提交评论