版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、公交查询系统设计与实现论文1引言随着城市经济的发展、规模的扩大以及人口的增长,城市交通问题日益突出。降低出行时间将使所有的公交利用者产生效益,快速的交通、更好的信息及更好的市场可以提高公交的形象,能够增加公交乘坐者。城市公共交通运输以其覆盖面广、经济、快捷的特点,成为绝大多数出行者的首选方式,也是各地城市政府大力发展的一种交通方式。本地市民特别是外来旅游、出差、就医等急需了解本地道路情况的人可以利用本系统方便快捷的查询出所有符合他们要求的公交路线,对他们的出行和生活提供帮助。我国城市公交乘客信息系统的发展处于一个落后的水平,广大乘客可以获得信息的方式很少,公交信息的完整性和准确性得不到保证,而
2、且还没有专门的机构负责信息的发布和管理。出于这个目的,在老师的指导下,我设计了这个城市公交线路查询系统。在对公交乘客出行心理特征进行分析的基础上,考虑乘客选择公交线路决策的因素,进行程序关键部分的框架设计。现阶段,人们的出入方式主要还是来源于城市公交,特别是对于那些到外地出差、打工,进行商业有关或其他事情需要在外地进行短暂停留的人而言,公交对他们是必不可少的,但是对于那个不属于自己所熟悉的城市,坐公交也是一个很大的难题,因此,开发一个公交查询系统就显得非常的重要。本系统的核心是对选择好的车次进行路线的查询,或者输入所要查询的车站名,点击“查询”按钮,查询所有含有该站的车次及相应的停靠站。此处既
3、可以“精确查询”也可以是“模糊查询”,“模糊查询”主要方便那些对站名不是很清楚,但知道其中的一部分的乘客,系统可以帮助他们快速的查出。1.1论文的研究内容 公交查询系统是一个取代过去由人工查询的查询系统。本论文论述了一个基于浏览器/服务器(BB/Srowser/Server)模式的公交查询系统的研究和实现的过程. 论文从开发平台和工具谈起,对ASP.NET服务器所提供的组件及其属性和方法做了一般介绍,更重要的是阐述了ASP.NET的数据库访问组件ADO.NET的使用方法。最后,详细介绍了如何创建“公交查询系统”的全部过程。2 系统的开发工具与环境2.1ASP.NET简介ASP.NET是一种建立
4、在通用语言上的程序构架,能被用于一台Web务器来建立强大的应用程序。ASP.NET提供许多比现在的开发模式强大的的优势。AS.PNET建立在.NET Framework的编程类之上,它提供了一个web应用程序模型,并且包含使生成web应用程序变得简单的控件集和结构。ASP.NET包含封装公共用户界面元素(如文本框和下拉菜单)的控件集。但这些控件在务器上运行,并以HTML的形式将它们的用户界面推送到浏览器。在服务器上,这些控件公开一个面向对象的编程模型,为web开发人员提供了面向对象的编程的丰富性。ASP.NET还提供结构服务(如会话状态管理和进程回收),进一步减少了开发人员必须编写的代码量并提
5、高了应用程序的可靠性。另外,ASP.NET 使用这些同样的概念使开发人员能够以服务的形式交付软件。使用ML webservices功能ASP.NET开发人员可以编写自己的业务逻辑并使ASP.NETT结构通过SOAP交付该服务。Visual Studio .NET是一套完整的开发工具,用于生成应用程序、XML Web services、桌面应用程序和移动应用程序。Visual Basic .NET、Visual C+ .NET、Visual C# .NET和VisualJ# .NET全都使用相同的集成开发环境(IDE),该环境允许它们共享工具并有助于创建混合语言解决方案。另外,这些语言利用了.N
6、ET Framework的功能,此框架提供对简化应用程序和XML Web services 开发的关键技术的访问。 2.1.1ASP.NET技术的优点 ASP.NET是一种将各种Web元素组合在一起的服务器技术,是一个统一的Web开发平台,它提供了生成一个完整的Web应用程序所必须要的各种服务。与以前的开发模型相比较,它提供了以下数个重要的优点:(1) 增强的性能。ASP.NET是在服务器上运行的编译好的公共语言运行库代码。与被解释的前辈不同,.NET可利用早期绑定、实时编译、本机优化和盒外缓存服务。这相当于在编写代码之前便显著提高了性能。(2) 世界级的工具支持。ASP.NET框架补充了Vi
7、sual Studio集成开发环境中的大量工具箱和设计器。WYSIWYG编辑、拖放服务器控件和自动部署只是这个强大的工具所提供功能中的少数几种(3) 威力和灵活性。由于ASP.NET基于公共语言运行库,因此应用程序开发人员可以利用整个平台的威力和灵活性。.NET框架类库、消息处理和数据访问解决方案都可从 Web 无缝访问。ASP.NETT也与语言无关,所以可以选择最适合应用程序的语言(如C#),或是跨多种语言分割应用程序。另外,公共语言运行库的交互性保证在迁移到ASP.NET时保留基于COM的开发中的现有投资。(4) 简易性。ASP.NET使执行常见任务变得容易,从简单的窗体提交和客户端身份验
8、证到部署的站点配置。(5)可管理性。ASP.NET采用基于文本的分层配置系统,简化了将设置应用于服务器环境和Web应用程序。由于配置信息是以纯文本形式存储的,因此可以在没有本地管理工具帮助的情况下应用新设置。此“零本地管理”哲学也扩展到了ASP.NET框架应用程序的部署。只需将必要的文件复制到服务器,即可将ASP.NET框架应用程序部署到服务器。不需要重新启动服务器,即使是在部署或替换运行的编译代码时。(6)可缩放性和可用性。ASP.NET在设计时考虑了可缩放性,增加了专门用于在聚集环境和多处理器环境中提高性能的功能。另外,进程受到ASP.NET 运行库的密切监视和管理,以便当进程行为不正常(
9、泄漏、死锁)时,可就地创建新进程,以帮助保持应用程序始终可用于处理请求。2.1.2 .NET Framework概述NET Framework是用于生成、部署和运行XML Web services 和应用程序的多语言环境。它由以下几个主要部分组成: 公共语言运行库运行库实际上在组件的运行时和开发时操作中都起到很大的作用,尽管名称中没有体现这个意思。在组件运行时,运行库除了负责满足此组件在其他组件上可能具有的依赖项外,还负责管理内存分配、启动和停止线程和进程,以及强制执行安全策略。在开发时,运行库的作用稍有变化;由于做了大量的自动处理工作(如内存管理),运行库使开发人员的操作非常简单,尤其是与今
10、天的COM相比。特别是反射等功能显著减少了开发人员为将业务逻辑转变为可重用组件而必须编写的代码量。 统一编程类 该框架为开发人员提供了统一的、面向对象的、分层的和可扩展的类库集(API)。目前,C+开发人员使用Microsoft基础类,而Java开发人员使用Windows 基础类。框架统一了这些完全不同的模型并且为Visual Basic和JScript程序员同样提供了对类库的访问。通过创建跨所有编程语言的公共API 集,公共语言运行库使得跨语言继承、错误处理和调试成为可能。从JScript到C+的所有编程语言具有对框架的相似访问,开发人员可以自由选择它们要使用的语言。2.2 ADO.NET概
11、述 ADO.NET并不是ADO的升级版本,它是全新的面向对象模型。比ADO更适应于分布式及Internet等大型应用程序环境,为了多人同时存取更具扩展性,ADO.NET的数据存取采用的是离线存取模式,可说是专门为.NET台设计的数据存取结构。它具有简单地访问关系数据、可扩展性、支持多层应用程序、统一XML和关系数据访问的特点。ADO.NET的主要目标是提供对关系数据的简单访问功能。坦白的说,易于使用的类描述关系数据库中的表、列和行。另外,ADO.NET引入了DataSet类,它代表来自封装在一个单元中的关联表中的一组数据,维持他们之间完整的关系。这是在ADO.NET中的新概念,可以显著的扩展数
12、据访问接口的功能。ADO.NET可以扩展它为插件.NET数据提供者(也称为可管理提供者)提供了框架,这些提供者被构建,以便从任何数据源读取和写入数据。ADO.NET提供了两种内置的.NET数据提供者,一种用于OLE DB数据源,另一种用于Microsoft SQL Server。可以通过OLE DB访问数据格式(比如Microsoft Access)、第三方数据库和非关系数据另外,Microsoft最近预演了用于ADO.NET的ODBC.NET数据提供者,它允许.NET访问更多的旧的数据格式和第三方数据库。ADO.NET用于多层应用程序。这是当今商业和电子商务应用程序最常见的体系结构。在多层体
13、系结构中,应用逻辑的不同部5分1运a行s在p多x个服务器或进程中,每一部分就称为一层。ADO.NET使用开放的Internet标准XML格式在层之间通信,允许数通过Internet防火来传递,并允许以非Microsoft技术来实现一层或多层。那么在Visual Studio.NET中ADO.NET访问数据库分为二种。一种是SQL Server数据库,另一种是其任何类型的数据库。本系统的后台数据库为SQL Server2005,因此是通过SQLConnection、SqlCommandSqlDataAdapter、DataSet等几个主要的数据访问对象来访问数据的.3 需求分析 3.1系统需求分
14、析随着我国经济的高速发展,人们生活水平的提高,越来越多的人开始热衷于到外地旅游。那么对于这些外来旅游者,首先搞清这个城市的公交路线显的很重要!我的家乡沈阳,作为一个旅游城市,每年都要吸引大量的游客,为了满足这些游客熟悉公交路线的需求,特以公交查询系统为设计课题。本软件不仅能给游客带来方便,也能给广大市民提供方便。我认为这样的系统应该具有很好的实用性!开发本系统的目标就是立足广大乘客的实际,着眼于公交业的未来发展,规范公交管理,提高服务质量,方便乘客查询,并为此设计该系统。人们生活水平的提高,越来越多人喜欢旅游,但是第一次来一个陌生的城市,肯定对公交路线不熟悉,所以必定需要一个能查看具体公交线路
15、的公交系统。有些只知道一个站的某几个字或一个车次的某几个数字,所以本系统将给出站点的模糊查询,方便用户的查询,有些只知道车次或某个站点,本系统也给出了公交线路查询、公交站点查询、公交换乘查询,进一步方便大家的出行,但也有用户什么都查不到,想留言问问人,所以再搞个留言板很有必要,方便大家交流以及解答各种疑难问题! 本系统采用结构化设计的方法来实现系统总体功能,提高系统的各项指标,即将整个系统合的划分成各个功能模块,正确地处理模块之间和模块内部的联系以及和数据库的联系,定义各模块的内部结构,通过对模块的设计和模块之间关系的系统来实现整个系统的功能前台主要有3个模块,线路查询、站点查询、公交换乘模块
16、和后台管理模块 功能名称:线路查询 功能概述:可以获得要查询公交所通过的各个站点。 功能名称:站点查询 功能概述:通过输入的指定站点查询经过该站点的公交。 功能名称:公交换乘查询 功能概述:分为公交直达、公交一次换乘,主要体现那些不可直达需要转车的路线的所有换法。(如果用户输入的起始点和终点,有一条及一条以上的公交线可以直达的,则为公交直达;如果输入的起始点和终点,没有一条公交线可以直接到的,系统将会给出一次换乘的方案,则为公交一次换乘) 功能名称:后台管理功能概述:用于管理员登陆,添加、修改、删除公交线路,修改信息资料、安全密码,回复留言板等功能。 本系统提供了的车次查询功能、路5线1查A询
17、S功P能X。乘客可以方便的进行查询,以防乘错车次。当然有些功能的智能化不是很强,系统有待进一步来完善。3.2 数据库需求分析数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。 数据库技术是由传统的文件系统发展而来的,从层次模型、网状模型发展到关系模型。数据库技术是数据管理的最新技术,是计算机科学的一个重要分支,它能指导我们正确地设计数据库系统,它的出现极大地促进了计算机应用的发展。采用数据库技术的原理和方法可以有效地设计实用的数据库系统。一个完整的数据库系统包括数据库
18、管理系统(DBMS),数据库管理员(DBA)、数据库(DB)、应用程序和相应的硬件设施。 目前许多数据库管理系统都基于关系模型,关系模型的主要特点是用表格结构表达实体,用键表示实体与实体之间的联系。与层次模型和网状模型相比,关系模型比较简单,容易为初学者接受。关系模型是由若干个关系模式组成的集合,关系模式相当于记录类型,它的实例称为关系。每个关系是一张表格。表格简单,用户易懂,用户只需用简单的查询语句就可以对数据库进行数据操作,并不涉及到存储结构,访问技术等细节。关系模型是数学化的模型,要用到集合论,离散数学等知识。SQL语言是关系数据库的代表性语言,已经得到广泛应用。 在设计数据库时,应注意
19、数据的安全性,保证数据的安全,防止非法用户访问数据库,以免泄露重要信息,同时也能51防A止s非法用户的蓄意破坏,有许多保护数据的方法,如采用用户标识,口令密码或访问控制等方法。一个成功的数据库应用系统应具有用户标识,每一个合法用户具有一个用户名和相应的口令,进入数据库应用系统前必须输入正确的口令,否则无法进入系统,这就保证了只有合法的用户才能操作数据库系统。为了保证数据的合法语义,必须对数据库的数据进行完整性约束,即防止用户输入不合语义的数据。 在设计应用软件时,应严格按照软件工程学的方法进行设计,传统的方法采用瀑布模型,从问题定义、可行性分析、需求分析、概念设计、总体设计、系统实现、编码和软
20、件测试、运行和维护等软件生命周期内,每一阶段均在前一阶段的基础上进行设计,并在每一阶段有相应的文档资料。设计数据库系统时应该首先充分了解用户各个方面的需求,包括现有的以及将来可能增加的需求。数据库设计一般包括如下几个步骤:数据库需要分析,数据库概念结构设计,数据库逻辑结构设计。 4系统概要设计4.1概述本阶段设计的基本目标是解决系统如何实现问题,也叫做概要设计,本阶段主要任务是划分出系统的物理元素及设计软件的结构,完成软件定义时期的任务之后就应该对系统进行总体设计,即根据系统分析产生的分析结果来确定这个系统由哪些系统和模块组成,这些系统和模块又如何有机的结合在一起,每个模块的功能如何实现。系统
21、设计的目标是使系统实现拥有所要求的功能,同时,力争达到高效率、高可靠性、可修改性,并且容易掌握和使用。模块化的依据是:把复杂问题分解成许多容易解决的小问题。原来的问题也就变得容易解决。模块化设计是把大型软件按照一定的原则划分成一个较小的相对功能独立又相关联的模块。每个模块完成一个特定的子功能。把这些模块结合起来组成一个整体。完成指定的功能,满足问题的要求。采用模块化原理的优点在于可以使软件结构清晰,容易测试和调试。从而提高软件的可靠性,可修改性。有助于软件开发的组织管理。一个大型软件可分别编写不同的模块。4.2功能模块划分查询系统模块该模块实现公交查询功能。可实现按线路查询、站点查询和起点终点
22、查询三种查询方式。录入系统模块该模块实现数据的新增、修改、删除功能。4.3.1 数据库概念结构设计在系统设计的开始,我首先考虑的是如何用数据模型来数据库的结构与语义,以对现实世界进行抽象。目前广泛使用的数据模型可分为两种类型,一种是独立于计算机系统的“概念数据模型”,如“实体联系模型”;另一种是直接面向数据库逻辑结构的“结构数据模型”。在本系统中我采用“实体联系模型”(ER模型)来描述数据库的结构与语义,以对现实世界进行第一次抽象。ER模型直接从现实世界抽象出实体类型及实体间联系然后用ER图来表示数据模型。它有两个明显的优点:接近于人的思维,容易理解;与计算机无关,用户容易接受。但它只是数据库
23、设计的第一步。E-R图是直观表示概念模型的工具,它有三个基本成分:(1)矩形框,表示实体类型(考虑问题的对象)。(2)菱形框,表示联系类型(实体间的联系)。(3)椭圆形框,表示实体的属性。实体和属性的定义如下:管理员表(登陆ID,登录姓名,登录密码)站名表(站名编号,站名)车辆线路编号表(车次,车线类型) 线路表(线路编号,车次,站名,次序) 车辆表(车辆编号,车次,车辆类型,服务类型,票价,IC卡类型,运行区间) 冬季发车时间表(车次,编号,首班时间,末班时间) 夏季发车时间表(车次,编号,首班时间,末班时间)4.3.2数据库逻辑结构设计本系统创建的SQL数据库名称为城市公交查询系统。并将数
24、据文件和日志文件保存在公交查询系统APP_DATA文件夹中。管理员表(LoginTable) 管理员表存放登陆系统所需要的用户名和密码,登录后台时需要访问此表。站名表 站名表存放站名等数据,修改站名需要访问此表。车辆线路编号表 车辆线路编号表存放线路编号等数据,修改车辆线路编号将要访问此表。线路表 线路表存放公交车线路的数据,修改车辆线路需要访问此表。 5详细设计与实现5.1.连接数据库的包含文件 在动态网站中,调用数据库中的数据是十分频繁的,为了避免编写重复的代码。编写一个数据库连接文件是非常重要的。DB.cs文件中包含了本系统中的数据库的连接代码。本系统的数库的连接代码如下:public
25、static SqlConnection createConnection() SqlConnection con=new SqlConnection("server=.;database=城市公交查询系统;uid=sa;pwd=;"); return con; 5.1.1新增车次线路此模块为管理员操作,如当地出现新的公交线路,或原有公交车线路有新的站点加入,管理员可以登录此表,及时添加线路和站点的信息,以保证车次线路的及时更新,方便用户查询。添加车次的界面如图所示。在输入相关车次信息后便进入站名添加过程如图5.1.2新增车次线路 此模块为管理员操作,如当地出现新的公交线路
26、,或原有公交车线路有所变动是,管理员可以登录此模块,及时添加相关的线路图,以保证车次线路图的及时更新,方便用户查询。添加的界面如图5.1.3删除车次以及无效站点 此模块同样为管理员操作,如当地哪个公交线路已经被废除,或原有公交车线路有哪个站点被删除,管理员可以登录此表,及时删除线路和站点的信息,以保证车次线路的及时更新,方便用户查询。删除的界面如图5.1.4删除线路图该模块在管理员系统中实现,如当地哪个公交线路已经改变,管理员可以登录此模块,及时删除线路图信息,以保证车次线路图的及时更新,方便用户查询。删除的界面如图 6测试与维护6.1 创建和测试应用程序 为了确保本系统能够正常运行,需要在发
27、布之后做一次较全面的测试。现将具体操作及过程举例说明如下:创建和测试应用程序应是交替进行的,既要注意开发的效率也要注意它的稳定性。每编写一个模块,就要对这个模块进行测试,看它能否根据特定的要求工作。及早发现问题,及早解决,否则到最后再来测试的话,难度会大大增加。6.2测试项目 在MIS开发过程中采用了多种措施保证软件质量,但是实际开发过程中还是不可避免地会产生差错,系统中通常可能隐藏着错误和缺陷,不经周密测试的系统投入运行,将会造成难以想象的后果,因此系统测试是MIS开发过程中为保证软件质量必须进行的工作。大量统计资料表明,系统测试的工作量往往占MIS开发总工作量的40%以上。因此,我们必须重
28、视测试工作。由于程序中隐藏的缺陷只在特定的环境下才有可靠显露,系统缺陷通常是由于对某些特定情况考虑不周造成的。因此测试不是为了表明程序正确;成功的测试也不是没有发现错误的测试。有意义的软件测试应该是从“破坏”软件系统的角度出发,精心设计最有可以暴露程序系统缺陷的测试方案。因此软件测试的目标应该是以尽可能少的代价和时间找出软件系统中潜在的错误和缺陷。总结在公交数字化的时代,公交系统的设计者应当以乘客需求为首位,调整服务策略,满足社会的需要和乘客的需要,充分发挥公交系统交通中心的作用。本系统基本达到了预定的设计目标,但是在系统的实际化应用中仍需要改进和提高公交查询系统的服务职能。系统的不足与改进方案: 在数据库设计方面,还有待改进,数据库设计也可采用别的形式,比如:可以用一个字段作为站点字段,另一个字段作为经过该站点的车次字段,只要找到经过某个站点最多的车次,就可以设计该字段的类型以及长度。其次,系统的实际应用化欠缺,可以通过使用根
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2022-2023学年山东省济南市钢城区九年级上学期数学期末试题及答案2
- 2025年人民版九年级历史上册阶段测试试卷含答案
- 2025年粤教版高一地理下册月考试卷含答案
- 机器设备抵押借款合同(2篇)
- 2025年中图版九年级地理上册月考试卷
- 2025年浙教新版八年级历史下册阶段测试试卷
- 2025年外研版三年级起点七年级历史上册阶段测试试卷
- 2025年唐山工业职业技术学院高职单招高职单招英语2016-2024历年频考点试题含答案解析
- 2025至2031年中国聚四氟乙烯衬里阀门行业投资前景及策略咨询研究报告
- 2025至2031年中国牛仔布涂金行业投资前景及策略咨询研究报告
- 人教版八年级英语上册期末专项复习-完形填空和阅读理解(含答案)
- 一例蛇串疮患者个案护理课件
- 低压电工理论考试题库低压电工考试题
- 骆驼祥子选择题100道及答案
- 2024年公务员考试题库附答案【完整版】
- T-GDWCA 0019-2018 辐照工艺操作规范
- 司机考核管理制度
- 出差报销单-中英对照版
- 【学前教育小学化成因分析及其对策10000字(论文)】
- 腕管综合征课件
- 事业单位工作人员年度考核登记表(通用模板)
评论
0/150
提交评论