收藏 分享(赏)

航空信息管理系统毕业设计2014.doc

上传人:Facebook 文档编号:4358168 上传时间:2018-12-24 格式:DOC 页数:49 大小:1.74MB
下载 相关 举报
航空信息管理系统毕业设计2014.doc_第1页
第1页 / 共49页
航空信息管理系统毕业设计2014.doc_第2页
第2页 / 共49页
航空信息管理系统毕业设计2014.doc_第3页
第3页 / 共49页
航空信息管理系统毕业设计2014.doc_第4页
第4页 / 共49页
航空信息管理系统毕业设计2014.doc_第5页
第5页 / 共49页
点击查看更多>>
资源描述

1、毕业论文(设计)2014 年 04 月 30 日高等教育自学考试毕业论文(设计)目 录第 1 章 前言 11.1 航空信息管理的背景 .11.2 航空管理的现状 .11.3 航空信息管理系统设计意义 .21.4 航空信息管理系统的概述 .2第 2 章 系统开发技术 .42.1 Java 程序设计语言的介绍与特性 42.2 基于 Microsoft SQL Server 2005 的数据存储服务 .52.3 UML 建模工具 .5第 3 章 系统需求分析 .73.1 可行性分析 .73.1.1 经济可行性 .73.1.2 技术可行性 .73.1.3 操作可行性 .83.2 功能需求分析 .93.

2、3 功能需求建模 UML 用例建模 93.3.1 客户用例建模 .103.3.2 系统用例建模 .113.4 性能需求分析 .123.5 本章小结 .13第 4 章 系统设计 144.1 概要设计 .144.1.1 系统主要功能模块 .144.1.2 系统总体功能模块 .144.2 详细设计 .154.3 UML 建模 .164.3.1 UML 静态建模 .174.3.2 UML 动态建模 .184.4 数据库设计 .204.4.1 数据库需求分析 .204.4.2 数据库概念结构设计 .22I4.4.3 数据库逻辑结构设计 .224.5 本章小结 .24第 5 章 系统的实现 255.1 系

3、统登录页面实现 .255.2 总体功能模块 .265.2.1 客户信息管理 .275.2.2 航班信息管理 .305.2.3 订单信息管理 .335.2.4 修改密码 .365.2.5 退出系统 .365.3 本章小结 .36第 6 章 系统测试 .376.1 软件测试的目的与任务 .376.2 测试过程 .376.3 登录模块测试 .376.4 修改个人密码测试 .396.5 本章小结 .41第 7 章 小结与展望 42参考文献 .43致谢 44II摘 要随着人们生活水平上升,物质文化需求的提高,各类交通工具也应运而生。现阶段出外旅行的人越来越多,而飞机以其舒适、快速、便捷的优点开始成为越来

4、越多旅客的选择。从而一个好的航空信息管理系统变得越来越重要。信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。管理信息系统是一个不断发展的新型学科,任何一个单位想生存发展下去,就要高效率地把内部活动有机地组织起来,建立与自身特点相适应的管理信息系统。该系统具有很好的人机界面,基本上满足了航空服务业的安全机制,又满足了顾客对航空管理的要求,因此具有非常重要的实际应用价值。本系统根据航空公司管理的实际要求,经过实际的需求分析,采用 Java 做为开发工具,以 SQL server 2005做后台数据库,开发出来的航空信息管理系统。整个系统从符合操作简便、界面友好、灵活、

5、实用、安全的要求出发,完成航空公司管理的全过程,包括票务信息管理、客户信息管理、航线信息管理、以及系统管理等工作。关键词:信息管理;数据库;Java0第 1 章 前言在现代社会,人们的生活节奏越来越快,如何提高生产生活质量成为人们日益关注的话题。二十一世纪是一个信息化技术高度发达的时代,信息化技术已经深入社会生活的各个领域。因此,对航空公司进行信息化管理是非常有必要的。1.1 航空信息管理的背景航空信息管理系统是一个航空公司必不可少的部分,这对于航空公司的决策者和管理者来说都是至关重要的。航空信息管理系统应该能够为用户提供充足的信息和快捷的查询手段,也应该为管理者提供高效、便捷、可靠的管理方式

6、。对于需要购票的用户来说,最重要的问题是能够在最短的时间内解决自己的订票问题。这对于航空公司来说需要的是一个高效率的、规范化的管理系统的软件,因此,一个好的航空信息管理系统不仅有利于航空公司自身的发展,也为用户带来了极大的方便。这样,航空信息管理系统就应运而生了。数据库管理是计算机应用的重要方面,几乎所有计算机应用系统都离不开对数据库的管理和操作。由于数据库管理系统所广泛服务于不同的行业领域,因此需要开发通用的数据库管理系统,甚至一个领域需要不同的数据库系统。随着现代网络的发展速度之快,越来越多的用户想要通过更方便快捷的方式来完成自己的机票查询和购买。人工管理不同客户信息的工作也就越来越繁琐,

7、而且容易出现错误,为了解决这些问题,再此开发了航空信息管理系统。1.2 航空管理的现状 1从安全的角度看航空运行管理的现状据美国联邦航天局 FAA(Federal Aviation Administration)2004年的报告,全世界发生的有人员死亡的飞行事故率是每100万次航班0.73起,这个数据要低于其他任何交通工具。但是,由于飞机一旦发生机毁人亡的是故事时乘客几乎是毫无防范和逃生可能的。由于现有运行管理水平的不足,导致航空服务业的安全机制相对较低。 2从飞机正点的角度看航空运行管理现状航班延误不仅是国内民航界面临的难题,在全球民航业内也普遍存在。根据相关统计资料显示,每年航班正常率只有

8、不到80%,由航班不正常造成的损失占运行成本的2%3%,每年约有1000万以上的旅客遭遇过航班延误,而由于航班延误而引发的矛盾冲突更是时有发生。1目前,中国航空进入快速增长时期,客户量快速攀升。客户大量的加大给公司创造了巨大商机,但同时也增加了压力。在运输任务日益沉重,而造成航班延误的客观因素又无法在短期克服的情况下,航空公司进行航班调整就成为航班正点率的主要因素了。1.3 航空信息管理系统设计意义航空信息管理工作的成效,直接关系到飞机安全飞行、客户要求的满意程度以及航空公司的效益。本系统是一个非常通用的信息管理系统。通过数据库系统的设计,可以使我们熟练运用一门程序设计语言来掌握设计数据库的方

9、法和过程,以及为设计其他软件提供参考,进而提高我们的设计能力。一个功能齐全、简单易用的信息管理系统不但能有效的减轻航空公司工作人员的工作负担,它的内容对于航空公司的决策者和管理者来说都是至关重要的。系统能够为用户提供充足的票务信息和快捷的查询及订票等功能。但是一直以来人们通常使用人工的方式来管理文件档案、统计和查询数据,这种管理方式存在效率低、保密性差以及浪费大量人力等缺点;另外随着时间的推移,将产生大量的文件和数据,这对于查找、更新和维护各式各样的数据,特别是在要查找特别精准的数据时带来了很大的困难。随着现代科学技术的不断提高,计算机科学日渐成熟,其强大的功能已被人们深刻认识并重视,它已进入

10、现代社会的各个领域并发挥着越来越重要的作用。使用计算机对航空公司的各类信息进行管理,具有手工管理无法超越的优势,例如查询方便快速、效率高、存储量大、成本低等,这些优点能够极大的提高公司的效率,也是公司管理的科学化、正规化管理的重要条件。该系统是用于航空公司对各种信息进行管理的一种非常便利有效的工具,是针对管理员对航线、航班、客机、票务以及用户信息进行合理的统筹及管理,以便于让管理员用最短的时间来完成尽可能多的工作量,便于提高整个团队的效率。还能让不同的用户在最短的时间内查到自己所需的各种航班的相关信息,进而提前预定所需的机票。1.4 航空信息管理系统的概述一般来说,一个好的航空公司需要对客机的

11、信息、航线的信息、航班的信息、客户的信息等进行管理,更重要的是提供票务的管理。面对各种不同种类的信息,不仅需要合理的数据库结构来保存数据信息,还需要有效的程序结构支持各种数据的操作。本设计讲述如何建立一个航空公司的信息管理系统,系统开发的总体任务是实现各种信息的2系统化、规范化和自动化。该系统的主要用户是航空公司的管理员和所有乘客。在开发过程中利用 Java、面向对象的程序思想和软件工程的开发过程来进行需求分析和设计,其中是以 Java 中的Swing 思想为基础进行各个图形界面设计 1;MyEclipse 的开发环境使得本系统的开发简单节省时间,而且在运行测试以及维护等方面也不像其他的开发工

12、具那么繁琐,更将少了在维护方面的成本。对于各种数据的管理采用的是 SQL Server 的数据库管理系统进行的 2,连接数据库的时候采用的是 JDBC 的连接方法。该系统需要完成以下几个主要功能:实现对航班信息、航线信息、客机信息、票务信息以及客户信息的管理;管理员对用户的信息进行权限和折扣比例的修改;客户可以对航班的信息进行查询,如果想进一步完成自己的订票、退票、改签业务,就必须进行登录。在没有注册的情况下,要注册自己的相关信息,进而完成自己所需航班的订票业务;客户也可以对自己的注册信息进行修改。3第 2 章 系统开发技术对于一个系统的开发来说,拥有一系列成熟的、先进的开发技术是至关重要的。

13、本系统的开发主要应用了基于 Microsoft SQL Server 2005 的数据存储服务、Java 程序设计语言以及面向对象的 UML(Unified Modeling Language)统一建模语言。2.1 Java 程序设计语言的介绍与特性Java 是由 Sun Microsystems 公司于 1995 年 5 月推出的 Java 面向对象程序设计语言和 Java 平台的总称。用 Java 实现的 HotJava 浏览器(支持 Java Applet)显示了 Java 的魅力:跨平台、动态的 Web、Internet 计算。从此, Java 被广泛接受并推动了 Web 的迅速发展,

14、常用的浏览器均支持 Javaapplet。另一方面,Java 技术也不断更新。 与传统程序不同,Sun 公司在推出 Java 之际就将其作为一种开放的技术。全球数以万计的 Java 开发公司被要求所设计的 Java 软件必须相互兼容。 “Java 语言靠群体的力量而非公司的力量”是 Sun 公司的口号之一,并获得了广大软件开发商的认同。这与微软公司所倡导的注重精英和封闭式的模式完全不同 3。抽象类:规定一个或多个抽象方法的类别本身必须定义为 Abstract,抽象类只是用来派生子类,而不能用它来创建对象。Final 类:又称“最终类” ,它只能用来创建对象,而不能被继承,与抽象类刚好相反,而且

15、抽象类与最终类不能同时修饰同一个类。包:Java 中的包是相关类和接口的 集合,创建包须使用关键字 Package。多态类:在 Java 中,对象变量是多态的。而 Java 中不支持多重继承。接口:Java 中的接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能) 。封装:就是把数据和行为结合起在一个包中,并对对象使用者隐藏数据的实现过程,一个对象中的数据叫他的实例字段(Instance Field) 。重载:当多个方法具有相同的名字而含有不同的参数时,便发生重载。编译器必须挑选出调

16、用哪个方法进行编译。Class 类 Object 类中的 GetClass 方法返回 Class 类型的一个实例,程序启动时包含在main 方法的类会被加载,虚拟机要加载他需要的所有类,每一个加载的类都要加载它需要的类。42.2 基于 Microsoft SQL Server 2005 的数据存储服务Microsoft SQL Server 2005 是一个全面的数据库平台,使用集成的商业智能(BI)工具提供了企业级的数据管理。Microsoft SQL Server 2005 数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程

17、序。Microsoft SQL Server 2005 数据引擎是该企业数据管理解决方案的核心。此外 Microsoft SQL Server 2005 结合了分析、报表、集成和通知功能。这使您的企业可以构建和部署经济有效的 BI 解决方案,帮助您的团队通过记分卡、Dashboard、Web services 和移动设备将数据应用推向业务的各个领域。与 Microsoft Visual Studio、Microsoft Office Syste 以及新的开发工具包(包括 Business Intelligence Development Studio)的紧密集成使 Microsoft SQL

18、Server 2005 与众不同。无论开发人员、数据库管理员、信息工作者还是决策者,Microsoft SQL Server 2005 都可以提供创新的解决方案,从数据中更多地获益 4。目前,几乎各行各业都普遍建立了以数据库为核心的信息系统。图 2-1 数据库系统工作方式2.3 UML 建模工具UML(Unified Modeling Language) ,即统一建模语言或标准建模语言,是始于 1997年的一个 OMG 标准。它是一个支持模型化和软件系统开发的图形化语言,为软件开发的5所有阶段提供模型化和可视化支持,包括由需求分析到规格,到构造和配置。 面向对象的分析与设计方法的发展在 80

19、年代末至 90 年代中出现了一个高潮,UML 是这个高潮的产物。它不仅统一了 Booch、Rumbaugh 和 Jacobson 的表示方法,而且对其作了进一步的发展,并最终统一为大众所接受的标准建模语言。 UML 建模语言的特点:(1)UML 统一了各种方法对不同类型的系统、不同开发阶段以及不同内部概念的不同观点,从而有效的消除了各种建模语言之间不必要的差异。它实际上是一种通用的建模语言,可以为许多面向对象建模方法的用户广泛使用。(2)UML 建模能力比其它面向对象建模方法更强。它不仅适合于一般系统的开发,而且对并行、分布式系统的建模尤为适宜。(3)UML 是一种建模语言,而不是一个开发过程

20、。UML 描述软件的体系结构:UML 利用若干视图从不同角度来观察和描述一个软件系统的体系结构。一个软件系统往往可以从不同的角度对其进行观察,从某个角度观察到的系统就构成了系统的一个视图。每个视图都是整个系统描述的一个投影,说明了系统的一个特殊侧面,若干个不同的视图可以完整的描述出所建造的系统。每种视图用若干幅图来描述,一幅图包含了系统的某一特殊方面的信息,它阐明了系统的一个特定部分或方面。由于不同视图之间存在一些交叉,因此一幅图可以作为多个视图的一部分。利用 UML 来观察系统有 5 种视图表示:用例视图、逻辑视图、构建视图、进程视图以及部署视图。6第 3 章 系统需求分析需求分析简而言之就

21、是分析用户的要求。需求分析是设计数据库的起点,需求分析的结果是否准确的反映了用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用。下面先对系统的可行性进行分析,再从功能需求和性能需求两方面进行相应的分析。3.1 可行性分析可行性分析是通过对项目的主要内容和配套条件,如市场需求、资源供应、建设规模、工艺路线、设备选型、环境影响、资金筹措、盈利能力等,从技术、经济、工程等方面进行调查研究和分析比较,并对项目建成以后可能取得的财务、经济效益及社会环境影响进行预测,从而提出该项目是否值得投资和如何进行建设的咨询意见,为项目决策提供依据的一种综合性的系统分析方法。可行性分析具有

22、预见性、公正性、可靠性和科学性等特点。 3.1.1 经济可行性本系统所提供的功能较多,但是因为使用的是较成熟的 EA(Enterprise Architect) 、Microsoft SQL Server 2005 和 Java 程序设计语言等开发工具,从而大大降低了开发的成本。鉴于以往的航空信息管理系统还存在漏洞,本系统只是在原有系统的基础上加以修改,增加功能,使用户至于在较短的时间内就可以获得个人所需信息,使工作人员提高工作效率。这点与传统的人工服务相比,效率方面得到了很大的提升,无论对用户还是公司都节省了大量宝贵的时间。本系统所提供的功能具有通用性,可以被很多公司所接受,比较符合市场的需

23、求,系统软件的经济效益会大大超过它的成本,所以开发本软件在经济上是可行的。3.1.2 技术可行性软件工程的方法学分为面对过程方法学和面对对象方法学。本信息管理系统的设计采用面对对象方法学来设计。面对对象方法学而面向对象围绕现实世界的概念来组织模块,采用对象描述问题空间的实体,用程序代码模拟现实世界中的对象,使程序设计过程更自然、更直观。面向过程方法学是以功能为中心来描述系统,而面向对象方法学是以数据为中心来7描述系统。相对于功能而言,数据具有更强的稳定性。面向对象方法学模拟了对象之间的通信。就象人们之间互通信息一样,对象之间也可以通过消息进行通信。这样,我们不必知道一个对象是怎样实现其行为的,

24、只需通过对象提供的接口进行通信,并使用对象的行为功能。而面向过程则通过函数参数和全局变量达到各过程模块联系的目的。面向对象把一个复杂的问题分解成多个能够完成独立功能的对象(类) ,然后把这些对象组合起来去完成这个复杂的问题。采用面向对象模式就象在流水线上工作,我们最终只需将多个零部件(已设计好的对象)按照一定关系组合成一个完整的系统。这样使得软件开发更有效率。 本信息管理系统的程序代码用 Java 来编写,Java 是一种面对对象的程序设计语言。用 Java 实现的 Hot Java 浏览器(支持 Java Applet)显示了 Java 的魅力:跨平台、动态的Web、Internet 计算。

25、从此, Java 被广泛接受并推动了 Web 的迅速发展,常用的浏览器现在均支持 Java Applet。另一方面,Java 技术也不断更新。Java 平台由 Java 虚拟机和 Java 应用编程接口(Application Programming Interface、简称 API)构成。Java 应用编程接口为 Java 应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。在硬件或操作系统平台上安装一个 Java 平台之后,Java 应用程序就可运行。现在 Java 平台已经嵌入了几乎所有的操作系统。这样 Java 程序可以只编译一次,就可以在各种系统中运行。3.1.3 操作

26、可行性本系统采用的是直观的图形用户界面,具有很好的人机交互功能。用户进入航空信息管理系统的主界面之后,可以对注册、登录及航班搜索等操作按钮进行选择,各个界面简洁易懂,操作方便,还有提示信息。航班搜索只要在查询界面按提示输入信息,就会在界面中显示相应的结果;实现预订机票和退票功能要在登录情况下进行操作,如果预订数量超过余票量,系统会给出相应的提示,进行重新预定;退票只要选中所要退订的航班信息,系统核对正确之后,就可确认退票。管理员进入航空信息管理系统的主界面之后,进入登录界面,管理员需要输入正确的用户名和密码才能进入下一个界面,该界面使管理员对不同的功能进行管理,如航班、航线、客机及客户信息的管

27、理,每次选择相应的管理之后,界面中就会出现相应的管理信息和相应的操作按钮,总体来说,流程操作简单,数据显示比较直观。从法律的角度来看,该系统的开发不会对社会产生负面影响,因此它不存在法律的问题;从经济效益的角度来看,该系统的实施有利于管理员效益的提高和用户数量的增8加,从而可以提高航空公司的经济效益,随着时间的推移可以促进社会经济的发展。3.2 功能需求分析航空信息管理系统需要完成的主要功能有:客机信息的输入、修改和查询,包括客机编号、客机型号、购买时间、服役时间、各舱座位数量以及备注信息等。航线信息的输入、修改和查询,包括航线编号、出发城市、到达城市、航班日期、出发时间、到达时间、客机编号、

28、经济舱价格、公务舱价格、头等舱价格和备注信息等。客户等级信息的输入、修改,包括客户等级编号、客户等级名称、折扣比例和备注信息等。舱位信息的输入和修改,包括舱位等级编号、舱位等级名称、提供的各种服务类型以及备注信息等。客机维修信息的输入、修改和查询,包括客机编号、维修员姓名、维修员编号,故障原因以及维修计划等。客户信息的输入、修改和查询,包括客户编号、客户姓名、客户性别、身份证号码、联系电话、客户类型和备注信息等。订票信息的输入、查询和修改,包括订票编号、客户编号、客户姓名、客户类型、折扣比例、航线编号、出发城市、到达城市、出发时间、舱位类型、票价、结算金额和备注信息等。3.3 功能需求建模UM

29、L 用例建模所谓建模,就是通过将用户的业务需求映射为项目的系统架构、程序代码,同时保证程序代码能够满足和实现用户的需求,并且代码还能回溯需求的过程。一个系统越大,越复杂,建模的重要性就越大。通过建模可以更好的帮助开发人员理解正在开发的系统,同时也能够表达我们所渴望的系统结构和行为、展示和控制系统体系结构,最终达到风险控制的目的;通过建模可以实现把复杂的系统简单化,因为模型的作用就是使复杂的信息关联简单易懂,使我们能够洞察复杂堆砌而成的原始数据背后的规律,并能有效地使我们将系统需求映射到软件结构上;模型能够帮助我们按照实际情况或按照我们所需要的样式对系统进行可视化设计和构造,并达到把所要设计的结

30、构和系统行为沟通起来;模型同样也允许我们详细的说明系统的结构和行为;模型还能够给出一个构造系统的模版,也对我们的决策进9行文档化。用例建模是 UML 建模的一部分,也是 UML 里最基础的部分。用例建模的最主要功能就是用来表达系统的功能性需求或行为 5。UML 的用例图描述了系统提供的一个功能单元,提供系统高层次的用户视图,表示以外部活动者的角度看系统将是怎样使用的。用例图的主要目的是帮助开发团队以一种可视化的方式理解系统的功能需求,包括基于基本流程的“角色”关系,以及系统内用例之间的关系。本系统主要从客户和系统两方面进行用例建模。3.3.1 客户用例建模客户登录系统的用例图如下图 3-1 所

31、示,其中有一个外部行为者和八个用例:“客户”是外部行为者,直接参与了“注册/登录” 、 “查询” 、 “订票”和“退票”四个用例;“修改个人信息”和“余票查询”用例与“查询”用例之间存在扩展关联;“航班信息查询”用例与“查询”用例之间存在依赖关联;“改签”用例与“订票”之间存在扩展关联。 uc Use Case Model用 户 登 录 系 统 用 例 图客 户注 册 /登 录查 询订 票退 票修 改 个 人 信 息查 询 航 班 信 息余 票 查 询改 签extendi ncl udeextendextend图 3-1 用户登录系统用例图10在确定用例过后,需要使用用例描述来更详尽的描述用例

32、的功能。关于图 3-1 所示的“用户登录系统”用例图中的“查询用例”描述如下:用例编号:001用例名称:查询简要说明:客户登录系统界面对所需要的航班信息以及个人信息进行查询。事件流:基本事件流:1)用户向系统发出访问请求。2)系统提供详细的航班信息供用户查询,若用户需要订票,系统则显示注册/登录界面,让用户输入登录信息,没有注册的用户要先注册才能登录。3)用户根据系统提示进行操作。4)系统显示用户所需要的界面,如果用户修改个人信息,系统要要将用户最新信息存储建档。扩展事件流:1)如果用户输入信息错误或不合法,则返回不能应答请求。2)系统要求实名注册,对于内容虚假帐号进行注销。3)用户选择取消修

33、改个人信息,则用例结束,系统不做存储建档工作。非功能性需求:前置条件:用户进入航空信息管理系统后置条件:用户完成自己的操作,并由系统完成信息的存储建档。扩展点:无优先级:最高3.3.2 系统用例建模系统管理员用例图如图 3-2 所示,其中“管理员”是一个外部行为者,直接与“客户信息管理” 、 “票务信息管理” 、 “个人信息管理”以及“航班信息管理”四个用例存在联系;“客户信息管理”包括删除用户、修改客户信息和添加客户,它们之间是一种扩展11关联;“个人信息管理”与“修改密码”用例之间是一种包含关联;“航班信息管理”包含添加航班信息、修改航班信息和删除航班信息,它们之间是一种扩展关联;“票务信

34、息管理”包含票务信息统计、添加票务信息、修改票务信息和删除票务信息,它们之间是一种扩展关联。uc Use Case Model管 理 员客 户 信 息 管 理票 务 信 息 管 理个 人 信 息 管 理航 班 信 息 管 理添 加 客 户修 改 客 户 信 息删 除 客 户添 加 票 务 信 息修 改 票 务 信 息删 除 票 务 信 息票 务 信 息 统 计添 加 航 班 信 息修 改 航 班 信 息删 除 航 班 信 息修 改 密 码extendextendextendextendextendextendextendincludeextendextendextend图 3-2 系统管理员用

35、例图3.4 性能需求分析开发航空信息管理系统首要的是从安全、实用的角度出发,以确保顾客的安全。 121. 系统的稳定性和安全性系统的稳定性和安全性指保证数据存取和逻辑处理等不出现异常错误,确保系统的正常运转;对数据处理过程中可能出现的软硬件故障导致的数据处理中断,系统应及时进行数据回滚,保证数据的唯一性、准确性;在数据处理存储过程中确保数据不被篡改,对不同的功能进行权限的划分,对人为错误操作所导致的数据删除,系统应及时提供数据恢复,保证数据的完整性。2. 系统的可用性和可维护性本系统是直接面对使用人员的,这就要求系统能够提供良好的用户接口,易用的人机交互界面。对用户可能出现的使用问题,要提供足

36、够的在线帮助。系统还要提供方便的手段供维护人员进行数据备份以及日常的安全管理等工作。3. 系统的灵活性在进行业务流程设计时,尽量排除业务流程的复杂度,在流程之间通过业务对象的相互调用实现其他业务流程,提高系统的灵活性。4. 系统的开放性和可扩充性在系统设计时,要充分考虑到系统的通用性、扩展性。在技术方面要做到使用的技术可以适应不同情况下客户的需求,使系统能够运行在不同的平台上。同时还要考虑系统在发展中的业务扩展,功能扩展,这就要求本系统是一个有发展空间的系统,能够完成系统的升级和更新换代。3.5 本章小结所谓“需求分析” ,是指对要解决的问题进行详细的分析,弄清楚问题的要求,包括需要输入什么数

37、据,要得到什么结果,最后应输出什么。可以说,在软件工程当中的“需求分析”就是确定要计算机“做什么” ,要达到什么样的效果。可以说需求分析是做系统之前必做的。 本章主要从可行性分析、功能需求分析、性能分析以及功能需求建模四个方面对系统的需求进行分析。首先可行性分析从经济、技术和操作三个角度分析本系统的开发是否有价值;功能需求主要分析系统所能实现的功能以及各功能之间的模块关系;性能分析主要从系统的安全性、稳定性、可用性、维护性、灵活性、开放性以及可扩充性等方面进行分析。13第 4 章 系统设计系统设计是软件开发生命周期中非常重要的一个阶段,该阶段是将系统分析的结果用软件的形势予以实现,本阶段从物理

38、上实现目标系统。在这个阶段需要对软件进行概要设计、详细设计、数据库设计等工作。 4.1 概要设计4.1.1 系统主要功能模块在航空信息管理系统的分析与设计中,系统总模块分为四个主要功能模块,分别是:客户信息管理、航班信息管理、个人信息管理以及票务信息管理等模块。如图 4-1 所示:图 4-1 系统主要功能模块图4.1.2 系统总体功能模块系统总功能模块图如图 4-2 所示:图 4-2 系统总体功能模块图144.2 详细设计软件的详细设计又称过程设计,它的基本任务就是要在概要设计的基础上,对系统中的每个模块给出足够详细的过程性描述,以及局部数据结构的设计。软件详细设计的基本任务:(1)对每个模块

39、进行详细的算法设计。用某种图形、表格、语言等工具将每个模块处理过程的详细算法描述出来。(2)对模块内的数据结构进行设计。对于需求分析、概要设计确定的概念性的数据类型进行确切的定义。(3)对数据结构进行物理设计,即确定数据库的物理结构。物理结构主要指数据库的存储记录格式、存储记录安排和存储方法,这些都依赖于具体所使用的数据库系统。 用户登录系统流程图如图 4-3 所示,首先用户进入系统初始界面,如果用户没有注册,则不能进行登录操作,必须注册信息之后才能登录系统;如果用户已经注册,则需输入用户名以及密码,如果用户名和密码输入错误,则重新输入;如果输入正确,则进入系统界面进行一系列操作。开始结束登录

40、注册是否注册是否正确进入系统界面N YYN输入用户名和密码图 4-3 用户登录系统流程图用户进入系统初始界面之后,进行业务选择。具体流程如图 4-4 所示,当选择订票业15务后进行信息查询,这时可以选择航班信息查询和个人信息查询;在个人信息中,用户可以对自己的信息进行修改,只需输入要修改的信息后进行保存,然后退出系统;若用户选择航班查询,则输入航班信息,如果航班不存在,则重新输入;如果该航班存在,则输入用户信息进行订票,成功订票后,退出系统。当用户选择退票业务,则输入航班和订票日期,系统核对该航班是否符合退票要求,若不符合,则重新输入正确的信息;若正确,则输入个人信息进行退票,退票成功后退出系

41、统。开始结束进入系统界面选择订票修改信息退票输入个人信息输入日期和航班查询信息输入航班信息退出是否符合航班存在输入用户信息输入用户信息订票退票退出退出是是否否保存图 4-4 用户选择业务流程图4.3 UML 建模UML 是一种标准的图形化建模语言,用定义完善的符号来图形化地展示一个软件系统。UML 的使用可以贯穿于软件开发周期的每一个阶段。164.3.1 UML 静态建模静态视图是 UML 的基础。静态视图包括类图、对象图和包图。其中类图描述系统中的静态结构,在系统的整个生命周期都是有效的。静态视图捕获对象结构,面向对象的系统将数据结构和行为特性统一成单个的对象结构。它包括所有的传统数据结构内

42、容,以及数据上操作的组织。航空信息管理系统的各功能模块多构成的类图如图 4-5 所示, “客户信息”类中有客户 ID、客户编号、客户电话、客户类型以及客户性别等属性;“客户类型”类中有客户编号,客户姓名以及折扣比例等属性;“票务信息”类中有航班编号、机票价格、客户编号、客户类型以及票号等属性;“航线信息”类中有航线编号、出发城市、到达城市、出发时间以及到达时间等属性;“客机信息”类中有客机编号、客机类型、购买时间以及服役时间等属性。图 4-5 各功能模块类图包是 UML 的模型元素之一,包可以包含其他包和类。包之间也可以有关系,如依赖等。包是一种分组机制,它把一些模型元素组织成语义上相关的组,

43、包中拥有或涉及的所有模型元素叫做包的内容。作为模型组织的分组机制,包的实例是没有意义的。因此cl ass Cl ass Model客 户 信 息- 客 户 ID: int- 客 户 编 号 : int- 客 户 电 话 : long- 客 户 类 型 : String- 客 户 性 别 : String客 户 类 型- 客 户 编 号 : int- 客 户 姓 名 : String- 折 扣 比 例 : flot票 务 信 息- 航 班 编 号 : int- 机 票 价 格 : float- 客 户 编 号 : int- 客 户 类 型 : String- 票 号 : int客 机 信 息-

44、服 役 时 间 : Datetime- 购 买 时 间 : Datetime- 客 机 编 号 : int- 客 机 类 型 : String航 线 信 息- 出 发 城 市 : nvarchar- 出 发 时 间 : Datetime- 到 达 城 市 : nvarchar- 到 达 时 间 : Datetime- 航 线 编 号 : int17包仅在建模时有用,而不需要转换成可执行的系统。一个包可以拥有若干模型元素。图 4-6 用内嵌式表示法描述了系统模块之间的嵌套关系。在“航空信息管理系统”包中嵌套了 4 个子包,分别是:“客户信息管理”包、 “票务信息管理”包、 “航线信息管理”包以及

45、“系统管理”包。cl ass Cl ass Model航 空 信 息 管 理 系 统客 户 信 息 管 理 票 务 信 息 管 理系 统 管 理航 线 信 息 管 理图 4-6 包的嵌套表示系统模块4.3.2 UML 动态建模在面向对象系统分析与设计中,动态建模用来描述系统的动态行为,显示对象在系统运行期间不同时刻的动态交互。在 UML 中,采用时序图、协作图、状态图和活动图等来建立动态模型。时序图(Sequence Diagram)又称顺序图,是一种 UML 交互图。描述了对象之间动态的交互关系,着重体现对象间消息传递的时间顺序。系统的动态建模时序图如图 4-7 所示,该图描述了用户登录系统

46、的流程。首先用户在没有注册的情况下要进行注册才能登录系统,用户向“注册”对象发送注册请求, “注册”对象向用户返回注册消息;这时用户可以登录系统,向“登录”对象发送登录请求;如果用户已经注册,用户则直接向“登录”对象发送登录请求, “登录”对象对用户的用户名及密码等信息进行验证,核对正确则返回登录消息;用户登录系统后可以进行各种信息的查询,并对个人信息进行修改。用户向“查询信息”对象发送查询并修改个人信息请求, “查询信息”返回查询修改个人信息消息;用户再发送查询航班请求,若航班存在,则返回查询航班消息;如果用户想要订票,则向“订票”对象发送的订票请求,核对信18息后返回订票消息;用户完成所有

47、业务流程后,退出系统。 sd Mai nt enance Model客 户注 册 登 录 查 询 信 息 订 票个个个个个个()个个个个个个()个个个个个个()个个()个个个个个个个个()个个个个个个()个个()个个个个个个个个()个个个个个个个个个()个个个个个个个个()个个个个个个()个个个个个个()个个个个个个()个个个个个个()个个()图 4-7 用户登录系统时序图活动图是 UML 用于对系统的动态行为建模的另一种常用工具,它描述活动的顺序,展现从一个活动到另一个活动控制流。活动图本质上是一种流程图。活动图着重表现从一个活动到另一种活动的控制流,是内部处理驱动的流程。系统的动态建模活动

48、图如图 4-8 所示,该图同样描述了用户登录系统的流程,从图中可以清晰的看出活动与活动之间的控制流。用户在登录系统之后,进入分叉转换,可以选择查询个人信息和查询航班信息;在个人信息中可以进行信息的修改;在查询航班信息中有进入分叉转换,可以选择订票和退票业务;然后进入连接转换,更新操作之后的票务信息,最后退出系统。19act Cl ass Model起 点终 点登 录 系 统查 询 个 人 信 息 查 询 航 班 信 息修 改 个 人 信 息 订 票 退 票更 新 票 务 信 息图 4-8 用户登录系统活动图4.4 数据库设计 数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将

49、直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整性和一致性。设计数据库系统时应该首先充分了解用户各个方面的需求,包括现有的以及将来可能增加的需求。数据库设计一般包括如下几个步骤:数据库需求分析、数据库概念结构设计、数据库逻辑结构设计。4.4.1 数据库需求分析客户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输入和输出。收集基本数据、数据结构以及数据处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。航空公司信息管理系统的数据流程如图 4-9 所示:20图 4-9 航空公司信息管理系统的数据流程针对一般的航空公司信息管理系统的需求,通过对航空公司管理工作过程的内容和数据流程分析,设计如下面所示的数据项和数据结构:系统管理员的信息,包括的数据项有:管理员姓名、密码、管理员编号、管理员身份证号码、联系电话和备注信息等。客户的信息,包括的数据项有:客户编号、客户姓名、客户性别、身份证号码、联系电话、客户类型和备注信息等。航线的信息,包括的数据项有:航线编号、出发城市、到达城市、航班日期、出发时间、到达时间、客机编号、经济舱价格、公务舱价格、头等舱价格和备注信息等。航班的信息,包括的数据项有:

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 学术论文 > 论文指导/设计

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报