收藏 分销(赏)

机票预定系统的设计与实现.doc

上传人:丰**** 文档编号:5348973 上传时间:2024-10-30 格式:DOC 页数:56 大小:1.69MB 下载积分:14 金币
下载 相关 举报
机票预定系统的设计与实现.doc_第1页
第1页 / 共56页
机票预定系统的设计与实现.doc_第2页
第2页 / 共56页


点击查看更多>>
资源描述
机票预定系统的设计与实现 摘 要 随着社会的不断发展和计算机水平的不断提高,人们选择飞机外出工作、旅游变得相当普遍。为了给旅客提供方便,同时也为了便于民航部门的管理,各种机票预定系统应运而生。正因为有如此大的市场和前景,并且与人们日常生活的联系有如此之紧密,使得选择这样的一个毕业设计课题变得非常有意义和挑战。通过本课题的设计,不仅能对软件工程、程序设计语言、操作系统、数据库管理提供实践机会,同时对于即将步入社会的我也是一次锻炼。 本系统是以JBuilder2006为前端开发工具、SQL Server 2000为后台数据库的C/S二层模式系统。JBuilder2006以java语言为基础,之所以采用JAVA为系统开发语言,主要是JAVA语言开发出来的系统具有较强的平台移植性,同时java的类库非常标准且极其健壮,这为编写代码带来很多方便;SQL Server 2000作为微软公司开发的产品,其优越性自然就不言而喻了,一般的中小型系统大多以SQL Server 2000作为后台数据库。 本系统分为系统管理、旅行社管理、航空公司管理、旅客综合服务管理四大模块,每个模块具有不同的功能,使得整个系统的管理变得有条不紊,从而为管理提供了更多方便。 关键词 软件开发,开发工具,机票预定系统,打包 ABSTRACT As the society developed constantly and the level of computer raise with constant, people choose plane to go out , work and travel which become quite general。 In order to provide convenience for passengers, at the same time for the management of civil aviation's department, various ticket reservation systems arise at the historic moment. Just because there are so large a market and prospect , and the connection with people's daily life is so close, thus, it is very meaningful and challenge to choose such a graduation project subject. Though the design of this subject can not merely offer and create the practice chance to soft project , programming language , operating system , database administration , it is also a exercise to stepping into the society soon at the same time . This system to regard JBuilder2006 as front development tools ,and SQL Server 2000 as backstage database ,and it’s a C/S two models system.JBuilder2006 is based on java language, we adopt JAVA as the system develop languages, mainly because the system is developed out by Java has stronger platforms, at the same time one kind of storehouses of java is very standard and extremely stalwart, it is bring a lot if convenient for writing codes; as Microsoft developed products, SQL Server 2000 , the superiority on it’s self-evident naturally, the general medium and small-scale systems are mostly regarded SQL Server 2000 as backstage supporter's database This system is divided into four major modules: systems management, management of travel agency, airline's management, integrated service of visitor management. Each module has different functions, this make the management of the whole system orderly, thus it is more conveniently to offer for management. Keywords software development, development tools, air tickets reservation systems, packaging 目 录 摘 要 I ABSTRACT II 1 引 言 1 2 软件开发基础知识 2 2.1 软件开发过程 2 2.2 软件开发模型 3 2.3 C/S二层体系开发 4 2.3.1 C/S体系结构简介 4 2.3.2 有关C/S体系结构的讨论 5 3 开发工具简介 6 3.1 PowerDesigner11 简介 6 3.1.1 认识Power Designer 6 3.1.2 Power Designer分析过程 6 3.1.3 Power Designer的三级建模功能 6 3.2 JBuilder 简介 7 3.2.1 JDBC简介 7 3.2.2 通过JDBC连接SQL Server2000数据库参数 8 3.2.3 JDBC的Jbuilder开发 8 3.3 SQL Server 2000 简介 9 3.3.1 服务器组件 9 3.3.2 主要管理工具 9 3.3.2 数据完整性 10 3.3.3 数据库备份方法 10 3.3.4 SQLServer2000 的身份认证模式 10 3.4 其他工具简介 10 4 机票预定系统设计 11 4.1 系统分析 11 4.1.1 系统应用背景 11 4.1.2 业务流程分析 12 4.1.3 功能模块分析 14 4.2 数据库设计 15 4.2.1 数据库分析 15 4.2.2 数据模型图 17 4.2.3 数据库表及字段说明 18 4.3 我的模块设计与编码 23 4.3.1 JBuilder2006环境配置 24 4.3.2 Splash窗口设计 25 4.3.3 登录窗口设计 27 4.3.4 主窗口设计 31 4.3.5 用户角色模块设计 35 4.3.6 人员信息模块设计 39 4.3.7 修改密码模块设计 41 4.3.8 旅客信息模块设计 43 4.3.9 系统功能介绍模块设计 45 4.3.10 帮助文档制作 47 4.4 程序打包、生成以及部署 49 总结与体会 51 参考文献 52 致 谢 53 1 引 言 随着生活水平的日益提高,人们生活中可选择的交通工具也变得丰富多彩,外出度假、旅游除了要求方便、舒适的环境以外,在生活节奏如此之快的当今社会,是否节省时间将成为人们最为关心的话题,故人们会毫不犹豫地选择乘坐飞机出行,本系统也就应运而生了。 国外对于机票预定系统的研究已经达到了相当高的水平,在系统处理的准确性和及时性、系统的开放性和可扩充性、系统的易用性和易维护性、系统的标准性、系统的先进性、系统的响应速度以及系统的适时性和容错性方面都有很深的研究,相对而言系统也就比较成熟。当然,尽管我国在这方面的研究起步稍微有些晚,但就发展前景而言,我们还是有很大发展空间的。 当然,除了系统本身的意义之外,本课题对我们自己也是非常有意义的: ①通过毕业设计的实践及其前后的准备与总结,复习、领会、巩固和运用课堂上所学的软件开发方法和知识,比如,软件项目的完整设计与开发过程、结构化技术、快速原型法和面向对象方法等。特别是结构化分析、结构化设计、快速原型开发、面向对象分析与面向对象设计。 ②为自己适应毕业后团队合作开发规模稍大项目和综合应用本专业所学习的多门课程知识(例如,软件工程、程序设计语言、操作系统、数据库等)创造实践机会。为自己提供主动学习(比如,对Java开发环境、客户机/服务器技术、Visio、JBuilder、PowerDesigner软件工具以及SQLServer2000数据库等内容的学习)、积极探索与大胆创新的机会。 ③使自己通过参加小组团队的开发实践,了解项目管理、团队合作、文档编写、口头与书面表达的重要性。 ④使自己了解软件工具与环境对于项目开发的重要性,并且重点深入掌握好一、两种较新或较流行的软件工具或计算机应用技术、技能。 ⑤通过“稍大的”富有挑战性的软件实验项目开发实践,提高自己的自学能力、书面与口头表达能力、创造能力和与团队其他成员交往和协作开发软件的能力,提高自己今后参与开发稍大规模实际软件项目和探索未知领域的能力和自信心。 总之,本课题的研究对我今后在软件方面的发展将是非常有意义的! 2 软件开发基础知识 2.1 软件开发过程 软件开发过程以及各阶段的任务: ①计划: 对所要解决的问题进行总体定义,包括了解用户的要求及现实环境,从技术、经济和社会因素等3个方面研究并论证本软件项目的可行性,编写可行性研究报告,探讨解决问题的方案,并对可供使用的资源(如计算机硬件、系统软件、人力等)成本,可取得的效益和开发进度作出估计。制订完成开发任务的实施计划。 ②分析: 软件需求分析就是回答做什么的问题。它是一个对用户的需求进行去粗取精、去伪存真、正确理解,然后把它用软件工程开发语言(形式功能规约,即需求规格说明书)表达出来的过程。本阶段的基本任务是和用户一起确定要解决的问题,建立软件的逻辑模型,编写需求规格说明书文档并最终得到用户的认可。需求分析的主要方法有结构化分析方法、数据流程图和数据字典等方法。 ③设计: 本阶段的工作是根据需求说明书的要求,设计建立相应的软件系统的体系结构,并将整个系统分解成若干个子系统或模块,定义子系统或模块间的接口关系,对各子系统进行具体设计定义,编写软件概要设计和详细设计说明书,数据库或数据结构设计说明书,组装测试计划。 软件设计可以分为概要设计和详细设计两个阶段。实际上软件设计的主要任务就是将软件分解成模块。概要设计就是结构设计,其主要目标就是给出软件的模块结构,用软件结构图表示。详细设计的首要任务就是设计模块的程序流程、算法和数据结构,次要任务就是设计数据库,常用方法还是结构化程序设计方法。 ④编码: 软件编码是指把软件设计转换成计算机可以接受的程序,即写成以某一程序设计语言表示的"源程序清单"。充分了解软件开发语言、工具的特性和编程风格,有助于开发工具的选择以及保证软件产品的开发质量。 当前软件开发中除在专用场合,已经很少使用二十世纪80年代的高级语言了,取而代之的是面向对象的开发语言。而且面向对象的开发语言和开发环境大都合为一体,大大提高了开发的速度。 ⑤测试: 软件测试的目的是以较小的代价发现尽可能多的错误。要实现这个目标的关键在于设计一套出色的测试用例(测试数据和预期的输出结果组成了测试用例)。如何才能设计出一套出色的测试用例,关键在于理解测试方法。不同的测试方法有不同的测试用例设计方法。两种常用的测试方法是白盒法(白盒法测试对象是源程序,依据的是程序内部的的逻辑结构来发现软件的编程错误、结构错误和数据错误。结构错误包括逻辑、数据流、初始化等错误。用例设计的关键是以较少的用例覆盖尽可能多的内部程序逻辑结果)和黑盒法(黑盒法依据的是软件的功能或软件行为描述,发现软件的接口、功能和结构错误。其中接口错误包括内部/外部接口、资源管理、集成化以及系统错误。黑盒法用例设计的关键同样也是以较少的用例覆盖模块输出和输入接口)。 ⑥维护: 维护是旨在已完成对软件的研制(分析、设计、编码和测试)工作并交付使用以后,对软件产品所进行的一些软件工程的活动。即根据软件运行的情况,对软件进行适当修改,以适应新的要求,以及纠正运行中发现的错误。编写软件问题报告、软件修改报告。 一个中等规模的软件,如果研制阶段需要一年至二年的时间,在它投入使用以后,其运行或工作时间可能持续五年至十年。那么它的维护阶段也是运行的这五年至十年期间。在这段时间,人们几乎需要着手解决研制阶段所遇到的各种问题,同时还要解决某些维护工作本身特有的问题。做好软件维护工作,不仅能排除障碍,使软件能正常工作,而且还可以使它扩展功能,提高性能,为用户带来明显的经济效益。然而遗憾的是,对软件维护工作的重视往往远不如对软件研制工作的重视。而事实上,和软件研制工作相比,软件维护的工作量和成本都要大得多。 在实际开发过程中,软件开发并不是从第一步进行到最后一步,而是在任何阶段,在进入下一阶段前一般都有一步或几步的回溯。在测试过程中的问题可能要求修改设计,用户可能会提出一些需要来修改需求说明书等。 2.2 软件开发模型 软件开发模型(Software Development Model)是指软件开发全部过程、活动和任务的结构框架。软件开发包括需求、设计、编码和测试等阶段,有时也包括维护阶段。软件开发模型能清晰、直观地表达软件开发全过程,明确规定了要完成的主要活动和任务,用来作为软件项目工作的基础。    典型的开发模型有: ① 瀑布模型(waterfall model); ② 渐增模型/演化/迭代(incremental model); ③ 原型模型(prototype model); ④ 螺旋模型(spiral model); ⑤ 喷泉模型(fountain model); ⑥ 智能模型(intelligent model) ; ⑦ 混合模型(hybrid model) 每个软件开发组织应该选择适合于该组织的软件开发模型,并且应该随着当前正在开发的特定产品特性而变化,以减小所选模型的缺点,充分利用其优点,下表列出了几种常见模型的优缺点。 表2.1 主要开发模型比较 模 型 优 点 缺 点 瀑布模型 文档驱动 系统可能不满足客户的需求 快速原型模型 关注满足客户需求 可能导致系统设计差、效率低,难于维护 增量模型 开发早期反馈及时,易于维护 需要开放式体系结构,可能会设计差、效率低 螺旋模型 风险驱动 风险分析人员需要有经验且经过充分训练 2.3 C/S二层体系开发 2.3.1 C/S体系结构简介 ①C/S结构的数据库应用 最简单的C/S体系结构的数据库应用,由两部分组成,即客户应用程序和数据库服务器程序。二者可分别称为前台程序与后台程序。运行数据库服务器程序的机器,称为应用服务器,一旦服务器程序被启动,就随时等待响应客户程序发来的请求;客户程序运行在用户自己的电脑上,对应于服务器电脑,可称为客户电脑。当需要对数据库中的数据进行任何操作时,客户程序就自动地寻找服务器程序,并向其发出请求,服务器程序根据预定的规则作出应答,送回结果。 在典型的C/S数据库应用中,数据的储存管理功能,是由服务器程序独立进行的,并且通常把那些不同的(不管是已知还是未知的)前台应用所不能违反的规则,在服务器程序中集中实现,例如访问者的权限,编号不准重复、必须有客户才能建立定单这样的规则。所有这些,对于工作在前台程序上的最终用户,是“透明”的,他们无须过问(通常也无法干涉)这背后的过程,就可以完成自己的一切工作。在客户服务器架构的应用中,前台程序可以变的非常“瘦小”,麻烦的事情,都交给了服务器和网络。在C/S体系的下,数据库真正变成了公共、专业化的仓库,受到独立的专门管理。 ②非C/S结构的应用 与C/S体系形成对比,传统的数据库应用体系结构,例如基于主机-多终端的系统,或基于LAN上文件服务器运做的多用户系统,数据库是属于应用程序“私有的”,即使它也可以将数据文件放置在某台机器上供不同的用户共同访问(这种情形,称为“文件服务器”),但所有的操作、规则,都是在一个包罗万象的应用程序内部实现的。应用程序因此具有最大的复杂性,即使是原班开发人马,要想对已有功能加以扩充也是很困难的,当数据库稍具复杂性(比如有稍多相互关联的表与规则),其他的人员开发另外的程序共同操作这个数据库的数据,几乎不具可行性。 2.3.2 有关C/S体系结构的讨论 C/S结构是目前技术条件下,能较好适应不确定和变化的需求环境的比较现实的方案。它可以令我们以较低的投入,实现将易变与稳定的要素分离,快速地增添和替换“瘦小”而互相独立的前台应用,保持数据的连续性和继承性。以目前的技术看,先建立C/S结构的局域网络应用,再向企业网/互联网模式下数据库应用过渡,是比较现实,相对易于把握、成本较低的。即使是一次到位的开发,对于类似的环境和小型的应用而言,要想实现不同的人员,从不同的地点,以不同的接入方式(比如LAN,WAN,Internet/Intranet等)访问和操作共同的数据库,并有效地保证和管理数据的安全性、访问权限、完整性,采用C/S架构和支持C/S架构的数据平台,是必然选择。 C/S架构的数据库系统,由于数据库是建立在通用的平台之上,并且支持SQL这样的通用技术,对数据库的维护工作更加专业,但更为开放,这意味着维护和进一步开发对原设计开发者的依赖性可以降低。用户可以更好地适应人员的流动或服务/供应商的变更。对体系规划的合理性,和一些特殊技术的采用,例如后台服务器上的存储过程、触发器等,会影响到这个特点。出于这个理由,在C/S应用设计时,应尽可能采用规范的模式,标准化的技术。同样的努力,在其他架构中就相对难以实现或较少实际意义。 总之,支持采用C/S的理由主要有: ① 应用的不确定性,逐步开发和增加新应用的需要 ② 适应将来开放的异种网络环境中应用的需要 ③ 用户数、数据量增长的可能性 ④ 适应电脑开发、维护、供应商与相关技术人员变更的需要 ⑤ 有利于动态规划与动态开发过程,对系统可靠性的保证 此外,从用户的现有资源的延续利用与新增投入,及开发的成本和难度看,采用C/S结构,也是比较适中、现实的选择。 3 开发工具简介 3.1 PowerDesigner11 简介 3.1.1 认识Power Designer 过去的软件开发往往缺乏规范,开发的软件也没有详细的文档。为了提高软件质量,降低维护难度,加强重复使用率,开发人间、分析人员、测试人员、数据库管理人员、管理人员以及用户相互沟通,使系统发挥最大综合效率,世界各大数据库厂商和第三方合作开发了智能化的计算机辅助软件工程(CASE)工具,在此领域中,Rational公司的Rational Rose擅长以UML构造模型,具备严谨的方法论,但技术偏高。PLATUIM公司的Erwin擅长以E-R建立实体联系模型,并具有版本控制能力。Sybase公司的Power Designer则集UML与E-R精华于一体,更能迎合市场潮流。经过不断的更新,目前最新版本是Power Designer 11。 3.1.2 Power Designer分析过程 分析设计人员利用Power Designer可建立三类模型,即面向对象模型(Oriented Object Model,简称OOM)、概念数据模型(Conceptual Data Model,简称CDM)、物理数据模型(Physical Data Model,简称PDM),其中OOM包括用例图、时序图、类图,最终产生五中结果,即模型仓库(Repository)、模型报告(Report)、数据库SQL脚本、用户数据脚本、以及应用程序代码。程序开发人员利用模型报告(Report)、数据库SQL脚本、用户数据脚本、以及应用程序代码结合应用程序开发工具(如PB、VB、C++、C#、JAVA等)和数据库管理系统(Database Management System,简称DBMS)开发出符合要求的软件。 完成软件分析设计通常采用三种途径:一条是从面向对象分析设计开始,依次建立用例图、时序图、类图,由类图转化为CDM以及PDM;第二条路经是从结构化分析设计开始依次产生流程分析设计模型(Process Analysis Model,简称PAM)、CDM、PDM、以及类图;第三条路经是前两种途径的结合。 3.1.3 Power Designer的三级建模功能 ①面向对象建模 UML是一种标准的图形化建模语言,是面向对象分析设计的一种标准表示,并为不同领域的人们提供统一的交流标准,UML共有九种图,PD11支持其中重要的三种图形,这三种图形描述了系统的静态数据模型(CDM)或物理数据模型(PDM),为信息的存储建立了数据结构,同时,类图还可以转换为C#、C++、IDL-CORBA、JAVA、PB以及VB代码框架,为应用程序的编制奠定了良好的基础。 ②概念数据模型 概念数据模型是建模的重要阶段,它把现实世界中的信息抽象成实体和联系来产生实体联系图(E-R模型),这一阶段为高质量的应用提供坚实的数据结构基础。 概念数据模型通过实体和属性以及这些实体间的关系(E-R模型)表明系统内部抽象的数据结构、概念数据模型与模型的实现方法无关。 ③物理数据模型 物理数据模型把CDM与特定DBMS的特性结合在一起,产生PDM。同一个CDM结合不同的DBMS产生不同的PDM。PDM中包含了DBMS的特征,反映了主键(Primary Key)、外键(Foreign Key)、候选键(Alternative)、视图(View)、索引(Index)、触发器(Trigger)、存储过程(Stored Procedure)等特征。 物理数据模型是后台数据库应用蓝本,直接针对具体的DBMS(如Microsoft SQL Server 2000 ).PDM可由CDM转换得到,其中实体(Entity)变为表(Table),属性(Attribute)变为列(Column),同时创建主键和索引,CDM中的数据类型映射为具体DBMS中的数据类型。 3.2 JBuilder 简介 3.2.1 JDBC简介 ①什么是JDBC Java Database Connectivity(JDBC)是一项在Java中以面向对象的方法来连接数据库的技术。它是对ODBC API进行的一种面向对象的封装和重新设计,它易于学习和使用,并且能够使您编写不依赖供应商的代码,用于查询和操纵数据库。JDBC提供了一些相当低层的方法来存取数据库。同时也在高层提供了功能强大的对象来处理数据库。支持JDBC的所有数据库必须至少支持SQL-92标准,这在很大程度上实现的跨数据库和平台的可移植性。 ②JDBC驱动程序类型 1) 通过JDBC调用映射到其他关系数据库的CLI(Call Level Interface)调用来实现JDBC,使用由其他语言所写的二进制库,要求客户提供软件,如JDBC-ODBC桥驱动程序。 2) 驱动程序一部分由Java代码组成,另一部分由使用其他CLI的本地代码组成,要求客户端使用二进制代码。 3) 纯Java驱动程序,使用中间件(middleware)将JDBC调用转换成访问数据库所需的厂商相关的调度和协议。 4) 纯Java驱动程序,实现了本地协议,无需中间件或任何客户端二进制代码,需要时可下载到客户端。 这些驱动程序的不同主要在于驱动程序的组成部分、各个部分所处的位置以及用来开发这些组成部分的语言。每个数据库厂商都使用不同的调用和不同的网络协议来访问数据库。 ③JDBC API 接口 编写数据库应用程序,需要完成以下几件事: 1) 加载一个数据库驱动程序 2) 创建到数据库的连接,执行查询,如果查询有返回值,还要接受结果并对其进行处理。 JDBC API的目标是提供对关系数据库厂商无关的支持,通过它的使用,可以将使用的各种数据库实现上的不同都抽象出来,并且它分为两个层次,一是面向程序开发人员的JDBC API,另一是底层的JDBC Drive API.以下的类是常用的API: 1) DriverManager类:负责管理对JDBC应用加载的驱动程序的访问。 2) Connection类:主要用于创建Statement对象。 3) Statement类:用来在数据库上执行SQL语句,这里的语句可以使任何合法的SQL语句。 4) PrepareStatemen类:与Statement类相似,都是用开执行SQL语句的,但它能指定不同的参数。 5) ResultSet类:用于遍历SQL的Select语句执行后返回的结果。 3.2.2 通过JDBC连接SQL Server2000数据库参数 ①装载驱动程序: Class.forName(“com.microsoft.jdbc.sqlserver.SQLServerDriver”) ②建立连接: String connectionURL=”jdbc:Microsoft:sqlserver://localhost:1433;DataBaseName=ATBS;User=sa;Password=sa”; Connection con=DriverManeger.getConnection(connectionURl); 3.2.3 JDBC的Jbuilder开发 JBuilder的数据库应用程序可以连接到任何拥有JDBC驱动的数据库,在Jbuilder中常用的数据库组件是: ①Database组件: 通过JDBC来连接具体的数据库。 ②DataSet组件: 它是一个虚拟类,所有关于数据设置的导航、数据访问、更新的API的接口都在这个类中,支持主要细节关系、行排列、行筛选的接口都包含在这个类中,一些dbswing的组件也具有DataSet属性。 ③QueryDataSet组件: 它负责管理由JDBC提供的数据,它有一个query属性,用于定义一个SQL语句。 ④TableDataSet组件: 它是一个普通的DataSet组件,它没有内置提供器的机制。即便没有默认的提供器,它仍然可被用于恢复数据资源中的数据。 ⑤DataSetView组件: 这个组件用于提供对行排列以及行过滤得独立浏览。 ⑥StorageDataSet组件: 它可以使用内存空间来存储数据 当然,除了这些组件以外,JBuilder还提供了许多连接数据库的组件,然后将dbstring控件的DataSet属性设置为这些组件就能连接到具体的数据库,并对数据库表进行操作了。 3.3 SQL Server 2000 简介 3.3.1 服务器组件 ①SQL Server 2000 数据库引擎(MSSQL SERVER 服务) 在计算机上运行的每个SQL Server实例都有一个SQL SERVER服务,当有许多个sql server实例在同一台计算机运行时每个实例都有自己的sql server服务,默认实例的服务名称为Mssql server,命名实例的服务名称为mssql$instancename,instancename代表实例名 。 ②SQL Server代理程序(sql server Agent 服务) Sql server代理程序是实现运行调度的sql server管理任务的代理程序,在计算机上的每个sql server实例都有一个这个的代理服务。 ③Microsoft搜索服务 Microsoft搜索服务仅用于Windows NT和Windows 2000,实现全文检索引擎,无论计算机上有多少个SQL Server实例,都只有一个搜索服务。 ④分布式事务处理协调器(MS DTC服务) 分布式事务处理协调器仅用于Windows NT和Windows 2000,管理分布事务,无论计算机上有多少个SQL Server实例,都只有一个MS DTC服务。 3.3.2 主要管理工具 Sqlserver2000为数据库管理员提供了多个管理系统的工具,下面是常用的管理工具: ①企业管理器 企业管理器是管理控制台(MMC)的管理单元组件,MMC支持从单个控制台管理多种类型的服务器。 ②查询分析器 查询分析器用于交互式输入T-SQL语句和存储过程,可以以图形的形式提供图形查询分析功能,包含集成的T-SQL调试器、对象浏览器、可用于确定数据库中的表、视图、存储过程和其他对象的特性,并支持可用于加快复杂语句生产速度的模版。 ③服务器网络实用工具 ④客户端网络实用工具 3.3.2 数据完整性 所谓的数据完整性是指数据库中数据在逻辑上的一致性和准确性,包括域完整性(域完整性指列的输入有效性)、实体完整性(实体完整性指将行定义为特定表的唯一实体)、参考完整性(参考完整性确保维持主关键字和外部关键字) 3.3.3 数据库备份方法 设计数据库备份策略的指导思想是:以最小的代价恢复数据。 数据库备份常用的两种备份方法:完全备份和差异备份,它们又分为只备份数据库和备份数据库、事务日志两种。 3.3.4 SQLServer2000 的身份认证模式 ①Windows认证模式 ②混合认证模式 3.4 其他工具简介 Visio是微软公司开发的专业制图工具,利用它可以制作许多种比较专业的图形,比如流程图、电气图、网络拓扑图、项目计划图、组织结构图等等,一般制作规范一点的图形都要用到它。 此外,在程序制作Splash界面中还用到了Photoshop CS。 4 机票预定系统设计 4.1 系统分析 4.1.1 系统应用背景 本系统开发的基本内容是: 开发一个机票预定系统。旅行社把旅客信息输入系统,系统为旅客安排航班。旅客交付了预订金后,系统打印出取票通知和账单给旅客,旅客在飞机起飞前一天凭取票通知和账单交款取票,系统核对无误打印出机票。此外航空公司为随时掌握各个航班飞机的乘载情况,需要定期进行查询统计,以便适当调整。除此以外,还要求能满足一下基本要求: ①在分析系统功能时要考虑有关证件的合法性验证(如身份证、取票通知和交款发票)等。 ②对于本系统还应补充以下功能: 1) 旅客延误了取票时间的处理。 2) 航班取消后的处理。 3) 旅客临时更改航班的处理。 ③系统的外部输入项至少包括:旅客、旅行社和航空公司。 本系统对数据的需求应包括如下几点: 1) 数据录入和处理的准确性和实时性 数据的输入是否准确是数据处理的前提,错误的输入会导致系统输出的不正确和不可用,从而使系统的工作失去意义。数据的输入来源是手工输入。手工输入要通过系统界面上的安排系统具有容错性,并且对操作人员要进行系统的培训。在系统中,数据的输入往往是大量的,因此系统要有一定的处理能力,以保证迅速的处理数据。 2) 数据的一致性与完整性 由于系统的数据是共享的,在不同的旅行社中,机票是共享数据,所以如何保证这些数据的一致性,是系统必须解决的问题。要解决这一问题,要有一定的人员维护数据的一致性,在数据录入处控制数据的去向,并且要求对数据库的数据完整性进行严格的约束。对于输入的数据,要为其定义完整性规则,如果不能符合完整性约束,系统应该拒绝该数据。 3) 数据的共享与独立性 整个机票预定系统的数据是共享的。然而,从系统开发的角度上看,共享会给设计和调试带来困难。因此,应该提供灵活的配置,使各个分系统能够独立运行,而通过人工干预的手段进行系统数据的交换。这样,也能提供系统的强壮性。 另外,还应建立本系统的约束: 1) Client/Server结构总体设计方案对它的约束: 机票预定系统做为Client/Server 结构的一个应用系统,不可避免的要受到Client/Server结构的约束。在其实施的各个阶段都要服从它的一些规划,包括功能设计、系统配置和计划。同时,由于信息的共享,机票预定系统还受到其它系统的信息约束。 2) 人力、资金、时间的约束 机票预定工程实施的目标就是要带给航空公司看得出见的效益,其开发过程中也要考虑到人力、资金和时间的约束。因此,在设计中,重点是销售系统中的方便快捷,能提供给旅客以优质高效的服务,并提高销售的效率和便捷,为航空公司带来良好的效益。 3) 技术发展规律的约束 计算机技术和产品的发展日新月异,将会给信息处理带来更多的手段,同时也会带来更加丰富的信息表达形式。例如图象和语音技术的进步,多媒体技术的发展,这些都要求系统在设计时考虑技术变化的可能性,为可能的变化预留一定的系统处理能力。 4.1.2 业务流程分析 ①业务流程概述 通过系统应用背景的分析,我们可以得出系统的总目标: 在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的机票预定系统,实现航空公司的机票销售的自动化的计算机系统,为企业的决策层提供准确、精细、迅速的机票销售信息。 根据可行性研究的结果和客户的要求,分析现有情况及问题,采用Client/Server结构,将机票预定系统划分为两个子系统:客户端子系统和服务器端子系统。本系统中为了简化工作,将服务器端子系统的功能合并到客户端子系统中开发,这样,客户端就只需要对一些数据的有效性进行验证就能直接与SQL数据库服务器关联,从而大大降低了工作的复杂度。常规流程是:旅行社工作人员从客户端输入旅客基本信息和订票信息,旅行社存储旅客基本信息的同时将旅客的订票信息传输至航空公司,航空公司经过必要的处理(比如安排航班)后返回带确认信息的旅客订票信息给旅行社,旅行社经过核实旅客的订票信息后打印出机票给用户。 ②业务流程图 1) 旅客订票流程图: 1. 2 传给航空公司 1.1 旅客信息记录 2. 1 安排航班 2.2 传给旅行社 旅客清单 航班机票 旅客订票记录 机票信息 旅客 订票 1.3 产生取票通知 旅客 航班机票信息 航
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服