基于java的出租车管理系统设计与实现(程序代码+任务书+说明书+外文翻译+演示文稿)_第1页
基于java的出租车管理系统设计与实现(程序代码+任务书+说明书+外文翻译+演示文稿)_第2页
基于java的出租车管理系统设计与实现(程序代码+任务书+说明书+外文翻译+演示文稿)_第3页
基于java的出租车管理系统设计与实现(程序代码+任务书+说明书+外文翻译+演示文稿)_第4页
基于java的出租车管理系统设计与实现(程序代码+任务书+说明书+外文翻译+演示文稿)_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

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

文档简介

基于JAVA的出租车管理系统设计与实现摘要本文采用结构化系统分析的方法,阐述了出租车管理系统的开发过程、操作流程及其一些核心的技术。本文首先进行了项目概述,简单介绍了项目开发的背景、项目开发的目的和项目开发的意义;接下来是系统规划阶段,通过实际的业务流程的调研,分析了系统的组织结构,具体完成了出租车管理系统的需求分析、可行性分析、现行业务流程分析,并通过对现行业务流程的优化,得出了系统的业务流程;之后是系统分析,具体完成了数据流分析和数据字典;系统设计阶段主要完成了功能模块的划分、数据库的设计和系统界面设计。该阶段对各个模块的功能进行了详细设计,形成了本系统的功能模块图,在此基础上选择了合适的开发模式;数据库的设计先进行了概念结构设计,之后进行了逻辑结构设计,最后完成了数据库表的设计。根据前几个阶段的分析和设计,该系统决定采用B/S结构,JSP作为开发技术,数据库采用MicrosoftSQLServer2000,完成了系统的程序实施。本系统的设计实施为出租车管理系统的运行做基础,为出租车公司出租车的管理提供良好的条件。关键词:出租车;管理系统;结构化分析iTheDesignandImplementoftaximanagementsystemAbstractInthispaper,structuredsystemsanalysis,describestheprocessofthetaximanagementsystemdevelopment,operationalprocessesandsomeofitscoretechnology.Thispapercarriedouttheprojectoverview,abriefbackgroundofprojectdevelopment,projectdevelopmentandprojectdevelopmentobjectiveofthemeaning;followedbythesystemplanningstage,theactualbusinessprocessesthroughresearchandanalysisofthesystemsorganizationalstructure,specificallythecompletionofthetaximanagementsystemrequirementsanalysis,feasibilityanalysis,theexistingbusinessprocessanalysis,andoptimizationofexistingbusinessprocesses,businessprocesses,thesystemobtained;followedbysystematicanalysisofthespecificcompletionofthedataflowanalysisanddatadictionary;systemcompletedthedesignphasethemainfunctionalmodulesofthedivision,thedatabasedesignandsysteminterfacedesign.Thisphaseofthefunctionofeachmoduleindetailthedesign,formingafunctionalblockdiagramofthesystem,onthisbasis,havechosentherightdevelopmentmodel;databasedesignfirsttestedtheconceptdesign,followedbyalogicdesign,andfinallycompletedthedesignofthedatabasetable.Accordingtopreviousanalysisanddesignphase,thesystemdecidedtouseC/Sstructure,C+asthedevelopmentoftechnology,thedatabaseusesMicrosoftSQLServer2000,completedasystematicprocesstoimplement.Designandimplementationofthissystemfortheoperationofthetaximanagementsystemasafoundationforthemanagementofthetaxicarrentalcompaniesprovidegoodconditions.KeyWords:taxi;ManagementSystem;StructuredAnalysii目录摘要.iAbstract.ii1引言.21.1项目开发的背景.21.2项目开发的目的.22可行性分析及总体设计原则.22.1可行性分析.22.1.1技术可行性.22.1.2经济可行性.22.1.3社会可行性.22.2总体设计原则.23系统分析.23.1业务流程分析.23.2数据流图.23.3数据字典.24系统设计.24.1系统设计及接口设计.24.2系统数据库设计.24.2.1概念结构设计.24.2.2数据库表设计.24.3系统开发工具与开发模式.24.3.1JSP简介.24.3.2JSP运行原料.24.3.3JSP页面组成.24.3.4JSP运行环境.24.3.5SQLserver2000.24.3.6系统开发模式.25系统实现.25.1登录模块.25.1.1登录界面.25.1.2登录流程图.25.2出租公司管理界面.25.3出租车管理界面.25.4经营许可证打印界面.25.5投诉管理界面.25.6投诉信息添加界面.25.7员工添加界面.26软件测试与分析.26.1系统测试的定义.2iii6.2系统测试的目的及意义.26.3系统测试的重要性.26.4系统测试的常用方法.26.5测试环境与测试条件.26.6系统运行情况.26.7测试总结.2总结与展望.2参考文献.2致谢.2外文原文.2中文翻译.201引言1.1项目开发的背景随着经济的发展,出租车的数量不断增加,出租车已经成为人们日常生活中必不可少的一部分,出租车公司的管理日益繁重,从而对出租车的管理要求也更加严格。在传统的手工管理时期,出租车公司出租车的各方面的管理都需要耗费大量纸张的精力,且由于业务量的日益增多,出车记录及出车预约等任务非常复杂,都严重的影响了出租车公司的发展。经常造成出租车信息记录丢失,极大地影响了出租车公司的管理。出租车公司要生存发展,就必须在各个方面加强管理,并要求出租车公司有更高的信息化集成,能够对出租车公司的整体资源进行集成管理以及计算机化的管理。现代出租车公司已意识到,出租车公司间的竞争是综合实力的竞争,要求出租车公司有更强的资金实力,更快的市场响应速度。这就要求出租车公司统一计划,协调生产步骤,汇总信息,调配出租车公司内部资源,实现既要独立又要统一的资源共享管理。随着信息技术的发展,出租车公司为提高出租车管理的效率,加快出租车公司的运转速度,决定开发“出租车管理系统”。1.2项目开发的目的出租车管理系统的开发目的是使出租车公司出租车的管理模式从手工记录转变成信息管理,为其出租车管理提供方便条件。对出租车公司的实际情况进行调研之后,进行详细的需求分析,对现有的管理模式进行改进,开发出一套新型的管理系统,从中领悟系统开发的思想,掌握系统开发的流程和方法。随着信息系统的不断完善,出租车公司的管理将越来越依赖于信息化的管理。所以系统开发将围绕出租车公司的实际情况,使之能迅速适应出租车公司的需要。随着出租车公司的规模不断变大,管理系统也将不断完善,使其能更加适合出租车公司的发展需求。出租车管理系统的实施具有如下现实意义:第一,节省出租车管理的管理人员;第二,出租车公司管理人员可以随时浏览查看,而且更加直观;第三,改变了以前工资手工记账的方式,电脑录入更加方便快捷;第四,实现了出租车管理的计算机化;第五,对不同信息进行分类和管理。12可行性分析及总体设计原则2.1可行性分析为避免投资失误,保证新系统的成功开发和运行,从技术、经济和社会三方面对本系统的可行性进行了分析和研究。可行性分析是通过对项目的主要内容和配套条件,如市场需求、资源供应、建设规模、工艺路线、设备选型、环境影响、资金筹措、盈利能力等,从技术、经济、工程等方面进行调查研究和分析比较,并对项目建成以后可能取得的财务、经济效益及社会环境影响进行预测,从而提出该项目是否值得投资和如何进行建设的咨询意见,为项目决策提供依据的一种综合性的系统分析方法。可行性分析应具有预见性、公正性、可靠性、科学性的特点。可行性研究主要内容是要求以全面、系统的分析为主要方法,经济效益为核心,围绕影响项目的各种因素,运用大量的数据资料论证拟建项目是否可行。对整个可行性研究提出综合分析评价,指出优缺点和建议。为了结论的需要,往往还需要加上一些附件,如试验数据、论证材料、计算图表、附图等,以增强可行性报告的说服力软件可行性分析最根本的任务是对以后的行动方针提出建议。如果问题没有可行的解释,分析员应该建议停止这项开发工程,以避免时间、资源、人力和金钱的浪费;如果问题值得解,分析员应该推荐一个较好的解决方案,并且为工程制定一个初步的计划。2.1.1技术可行性本系统的开发基于JSP和SQLServerExpress2000数据库技术。SQLServer2000与JSP集成在一起,可以轻松开发功能丰富、存储安全、可快速部署的数据驱动应用程序5。出租车管理系统是一个基于数据库管理和查询的系统,现有的技术已较为成熟,硬件、软件的性能要求、环境条件等各项条件良好,利用现有技术条件可以达到该系统的功能目标6。本人在学校期间已经掌握JSP和SQLServer2000的设计思想和代码编写。同时,考虑给予的开发期限也较为充裕,预计系统是可以在规定期限内完成开发的。JavaServerPage简介:JavaServerPage或简称为JSP是由Sun公司在Java语言上开发出来的一种动态网页制作技术,它提供了一种建立动态网页的简单方法,并为开发人员提供了一个Server端框架,基于这个框架,开发人员可以综合使用HTML,XML,JAVA语言以及其他脚本语言,灵活,快速地创建和维护动态网页,特别是目前的商业系统。作为JavaTM技术的一部分,JSP能够快速的开发出基于所有Web服务器和应用服务器环境,独立于平台的应用程序,而且具有非常强的可伸缩性。同时,JSP把用户界面从系统内容中分离开来,使得设计人员能够在不改变底层动态内容的前提下改变祖国网页布局。用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面,并使用JSP标识或者小脚本来生成页面上的动态内容(内容是根据请求变化的,例如请求账户信息或者特定的一瓶酒的价格等)。生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在脚本中,所有的脚本在服务器端运行。由于核心逻辑被封装在标识和JavaBeans中,所以Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生成。2在服务器端,JSP引擎解释JSP标识和脚本,生成所请求的内容(例如,通过访问JavaBeans组件,使用JDBC技术访问数据库或者包含文件),并且将结果以HTML(或者XML)页面的形式发送回浏览器。这既有助于作者保护自己的代码,又能保证任何基于HTML的Web浏览器的完全可用性。这样跨平台的特性己包含了目前大部份网站服务器配置环境,再加上它的语法写作方式可媲美ASP般的易学易懂,而且在网络安全技术方面甚至已超越ASP技术。所以,相信很快的时间内极有可能取代现有网页编译技术,而成为商业网站的新标准。在本节中我们将会讨论JSP技术的特性,让您更加了解这项新技术。MicrosoftSQLServer2000简介:SQLServer2000是一个基于关系型数据库模型建立的数据库管理系统软件(DBMS)。它帮助用户方使地得到所需信息,并提供强大的数据处理工具。它可以帮助用户组织和共享数据库信息,以便于根据数据库信息作出有效的决策。另外,仅有这样个数据库管理系统软件(DBMS),则只能进行一些信息系统所需要的简单数据处理,且对操作者有较高的操作技能要求。因此,信息系统的开发者都是在某种数据库管理系统软件DBMS环境下编写相应的应川程序,以形成一个能够满足应用需求且操作尽可能简单的应用型信息系统,这被称之为二次开发。SQLServer2000还具有以下特点:1使信息更易于查找和使用SQLServer2000继续为简便地查找信息提供易于使用的工具。2支持Web功能的信息共享SQLServer2000可以通过企业内部网络Internet很简便地实现信息共享,而且它可以很容易地将数据库定位到浏览器中,它将桌面数据库的功能和网站的功能结合在一起。3用于信息管理的强大解决方案高级用户和开发人员可以创建那些将SQLServer2000界面(客户端)的易用性和SQL服务器的可扩展性和可靠性结合在一起的解决方案。4改变了数据库窗口可在SQLServer2000容纳并显示新的对象,增强了SQLServer2000数据库的易用性。5提供名称自动更正功能自动解决当用户重新命名数据库对象时出现的常见负面效应。例如,当用户重命名表中的字段时,将自动在诸如查询的相关对象中进行相应的更改。6具有子数据表功能子数据表在同一窗口中,提供了嵌套式的视图,这样就可以在同一窗口中专注于相关的数据并对其进行编辑。7用户只需简单地将SQLServer2000对象(表、查询等)从数据库放到ODBC数据源中,即可从MicrosoftSQLServer2000中将数据导出到MicrosoftACCESS2000。8数据访问页功能该功能可使用户快捷方便地创建数掂HTML页,并通过数据HTML页,将数据库应用扩展到企业内部网络Internet上。这将帮助用户比以往更快捷、高效的方式共享信息。39共享组件的集成SQLServer2000利用新的Web组件和位于浏览器中的COM控件,为用户提供了多种查看和分析数据的方式。10MicrosoftSQLServer交互性MicrosoftSQLServer2000支持OLEDB,使用户可以将SQLServer2000界面的易用性与诸如MicrosoftSQLServer的后端企业数据库的可升级性相结合。JavaBeans简介JSP作为一个很好的动态网站开发语言得到了越来越广泛的应用,在各类JSP应用程序中,JSP+JavaBean的组合成为了一种事实上最常见的JSP程序的标准.JavaBean是描述Java的软件组件模型,有点类似于Microsoft的COM组件概念。在Java模型中,通过JavaBean可以无限扩充Java程序的功能,通过JavaBean的组合可以快速的生成新的应用程序。对于程序员来说,最好的一点就是JavaBean可以实现代码的重复利用,另外对于程序的易维护性等等也有很重大的意义。JavaBean通过Java虚拟机(JavaVirtualMachine)可以得到正确的执行,具有平台无关性。一个JavaBean有三个部分组成:1.属性(Property)Bean的属性就是对象的属性,但提供了属性读取和设置的接口支持。例如一个时钟Bean可以有时区和镇铃属性,日历Bean可以有年份和月份属性。每个属性通常遵守简单的方法命名规则。这样可以很方便的找出Bean提供的属性,然后查询属性值或改变属性值,对Bean进行操作。2.方法(Method)由于Bean本身是Java对象,调用这个对象的方法是与其交互作用的唯一途径。JavaBean严格遵守面向对象的类设计逻辑,不让外界访问其任何实例字段(没有Public字段)。这样,方法调用的是接触Bean的唯一途径。3.事件(Event)Bean与其他软件组件交流信息的主要方式是发送和接收事件。这与对象之间通过消息通信类似。JavaBean传统的应用在于可视化的领域,如AWT下的应用。自从JSP诞生后,JavaBean更多的应用在非可视化领域,在服务器端应用方面表现出来了越来越强的生命力。利用非可视化JavaBean,来封装事务逻辑、数据库操作等等,可以很好地实现业务逻辑和前台程序(如JSP)的分离,使得系统具有更好的健壮性和灵活性。JAVA简介Java是一种真正的面向对象的语言,即使是开发简单的程序,必须设计对象。Java的源代码在传递到客户端执行之前,必须经过编译,因而客户端上必须具有相应平台上的仿真器或解释器,它可以通过编译器或解释器实现独立于某个特定的平台编译代码的束缚。Java采用强类型变量检查,即所有变量在编译之前必须声明。Java是一种与HTML无关的格式,必须通过像HTML中引用外媒体那么进行装载,其代码以字节代码的形式保存在独立的文档中。Java采用静态联,即Java的对象引用必须在编译时的进行,以使编译器能够实现强类型检查。Java语言是一种与平台无关的编程语言,它具有“一次编写,随处运行”的特点,所以,非常适合于分布式的网络编程。随着Internet网络在我国的迅速普及,参与和从事网络编程的人员也在不断地增加,同时,也将有更多的网络开发者选用Java语言作为编程工具,而一些C和C+程序员也在逐步转向应用Java语言编写程序。4JDBC驱动程序简介:从编程的角度出发,有两个主要的类负责建立与数据库的连接。第一个类DriverManager是在JDBCAPI中提供的为数不多的实际类。DriverManager负责管理已注册驱动程序的集合,实质上就是提取使用驱动程序的细节,这样程序员就不必直接处理它们。第二个类是实际的JDBCDriver类。JDBC驱动程序有四种类型。第一种驱动程序:它们都使用JDBC-ODBC桥,这是作为JDK的一个标准部分包括的。第一种驱动程序通过附加在JDBC-ODBC桥的“开放式数据库连接性”(OpenDataBaseConnectivity(ODBC)驱动程序来区分。要连接到一个不同的数据源,您只需要使用ODBC管理员注册(或有效地绑定)一个不同的ODBC数据源到合适的数据源名称即可。第二种驱动程序也称为部分Java驱动程序,因为它们直接将JDBCAPI翻译成具体数据库的API。对于分布式应用程序,这种需求会产生额外的许可证问题,还可能带来可怕的潜在代码分布问题。第三种驱动程序是纯Java驱动程序,它将JDBCAPI转换成独立于数据库的协议。JDBC驱动程序并没有直接和数据库进行通讯;它和一个中间件服务器通讯,然后这个中间件服务器和数据库进行通讯。这种额外的中间层次提供了灵活性:可以用相同的代码访问不同的数据库,因为中间件服务器隐藏了Java应用程序的细节。要转到不同的数据库,您只需在中间件服务器上改变参数。第四种驱动程序是纯Java驱动程序,它直接与数据库进行通讯。很多程序员认为这是最好的驱动程序,因为它通常提供了最佳的性能,并允许开发者利用特定数据库的功能。当然,这种紧密耦合会影响灵活性,特别是如果您需要改变应用程序中的底层数据库时。这种驱动程序通常用于applet和其它高度分布的应用程序。JDBC是Java的开发者Sun的JavaSoft公司制定的Java数据库连接JavaDataBaseConnectivity技术的简称,是为各种常用数据库提供无缝联接的技术。JDBC在Web和Internet应用程序中的作用和ODBC在Windows系列平台应用程序中的作用类似。JDBC有一个非常独特的动态连接结构,它使得系统模块化。使用JDBC来完成对数据库的访问包括以下四个主要组件:Java的应用程序、JDBC驱动器管理器、驱动器和数据源。简单地说,JDBC能完成下列三件事:1.同一个数据库建立连接;2.向数据库发送SQL语句;3.处理数据库返回的结果。JDBC是一种可用于执行SQL语句的JavaAPI(ApplicationProgrammingInterface,应用程序设计接口)。它由一些Java语言写的类、界面组成。JDBC给数据库应用开发人员、数据库前台工具开发人员提供了一种标准的应用程序设计接口,使开发人员可以用纯Java语言编写完整的数据库应用程序。通过使用JDBC,开发人员可以很方便地将SQL语句传送给几乎任何一种数据库。也就是说,开发人员可以不必写一个程序访问Sybase,写另一个程序访问Oracle,再写一个程序访问Microsoft的SQLServer。用JDBC写的程序能够自动地将SQL语句传送给相应的数据库管理系统(DBMS)。不但如此,使用Java编写的应用程序可以在任何支持Java的平台上运行,不必在不同的平台上编写不同的应用。Java和JDBC的结合可以让开发人员在开发数据库应用时真正实现“WriteOnce,RunEverywhere!”5Java具有健壮、安全、易用等特性,而且支持自动网上下载,是一种很好的与数据库线连接而使用的编程语言。它所需要的是Java应用如何同各种各样的数据库连接,JDBC正是实现这种连接的关键。JDBC扩展了Java的能力,如使用Java和JDBCAPI就可以公布一个Web页,页中带有能访问远端数据库的Applet。或者企业可以通过JDBC让全部的职工(他们可以使用不同的操作系统,如Windwos,Machintosh或UNIX)在Intranet上连接到几个全球数据库上,而这几个全球数据库可以是不相同的。所有的数据库的对象和方法都在java.sql.*里面,所以首先要importjava.sql.*,要想连接数据库,首先要将驱动程序调入。Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);这是JDBC-ODBC的驱动程序。要想连接一个指定的数据库,必须创建Connection类的一个实例。Stringurl=jdbc:odbc:Groceryprices;Connectioncon=DriverManager.getConnection(url);注意在此用到的数据库名称是在ODBC设置控制面板中输入的数据资源名。URL语法对于不同类型的数据库会很不一样。语法是这样的:jdbc:subprotocol:subname开头都是JDBC,后面是子协议,然后是ODBC名称。若要使用纯JDBC驱动程序,必须安装第三方软件提供的驱动程序,一般在数据库的官方网站上可以找到这里不做讨论。本系统采用JDBC-ODBC的驱动程序连接数据库,并使用JavaBean组件,有效的避免了代码的重复,具体过程如下:packageexam;importjava.sql.*;publicclassExamBeanStringstrDBDriver=sun.jdbc.odbc.JdbcOdbcDriver;StringstrDBUrl=jdbc:odbc:exam;privateConnectionconn=null;privateStatementstmt=null;ResultSetrs=null;publicExamBean()publicResultSetexecuteQuery(Stringsql)rs=null;tryconn=DriverManager.getConnection(strDBDriver);/创建数据库连接对象stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);/支持数据回滚rs=stmt.executeQuery(sql);catch(SQLExceptionex)System.err.println(aq.executeQuery:+ex.getMessage();returnrs;publicvoidexecuteUpdate(Stringsql)6stmt=null;tryconn=DriverManager.getConnection(strDBDriver);stmt=conn.createStatement();stmt.executeUpdate(sql);stmt.close();catch(SQLExceptionex)System.err.println(aq.executeQuery:+ex.getMessage();publicvoidcloseStmt()trystmt.close();catch(SQLExceptione)e.printStackTrace();publicvoidcloseConn()tryconn.close();catch(SQLExceptione)e.printStackTrace();2.1.2经济可行性出租车公司具有信息化的处理设施,并且拥有支持本系统的应用平台。因此无需再投入资金购买其他设施。系统的开发基于本人对程序开发的实践学习而来,无需资金投入,并且软件开发过程投入的成本不高,因此开发经费完全可以接受。系统开发成功后将大大提高出租车管理方面的效率,使其管理走向正规化、信息化、工资核算“无纸化”,是其发展强大的必经之路。因此,出租车管理系统也具有经济可行性。2.1.3社会可行性本系统的社会可行性主要从法律因素、用户使用可行性两方面进行研究。1.法律因素本系统是根据出租车管理的实际工作情况开发研制的,是通过大量的调研得出的,系统的软件设计是在独立的环境下完成的,无可供抄袭的软件产品。2.用户使用可行性7本系统对用户的要求,除了需要具备在MicrosoftWindows平台上使用个人电脑的知识外,并不需要特别的技术能力。使用系统的管理员,在投入使用前,无需对操作系统的人员进行培训。这样既减少投入成本又简化了操作环节。因此,出租车管理系统具有社会可行性。2.2总体设计原则本系统为了设计、实现和后期维护的方便,以及系统用户使用的便利,所以必须采取一定的设计原则3。其主要设计原则有:简单性:在实现系统的功能的同时,尽量让系统操作简单易懂,这对于一个系统来说是非常重要的。针对性:本系统设计是针对出租车管理的需求定向开发设计,所以具有专业突出和很强的针对性。实用性:要求本系统能够满足出租车管理的需要,因此具有良好的实用性。一致性:页面整体设计风格以及命名规则的一致性:整体框架和用图用色风格及变量、类名和其他元素的命名规则保持一致。功能一致性:完成同样的功能应该尽量使用同样的元素。元素风格一致性:界面元素的美观风格、摆放位置在同一个界面和不同界面之间都应该是一致的。变量命名规则的一致性:变量应该用统一的规则进行命名,做到任意变量均能从上下文推断其义。先进性:本系统采用JSP、SQLServer2000作为系统开发工具和数据库,两个软件具有良好的兼容性和系统稳定性。因此本设计具有良好的先进性7。83系统分析3.1业务流程分析在进行业务流程分析时,需要按照原有信息流动过程,逐个地调查分析所有环节的处理业务、处理内容、处理顺序和对处理时间的要求,弄清各个环节需要的信息、信息来源、流经去向、处理方法、计算方法、提供信息的时间和信息形态(报告、报单、屏幕显示)等4。业务流程分析可以帮助开发者了解该业务处理过程,发现和处理系统调查工作中的错误和疏漏。业务流程分析是通过业务流程图来进行,即用一些规定的符号及连线来表示某个具体业务处理过程5。具体的流程如图3-1所示。图3-1业务流程图93.2数据流图数据流程是指数据在系统中产生、传输、加工处理、使用、存储的过程6。数据流程分析是把数据在现行系统内部的流动抽象的独立起来,舍去了具体组织机构、信息载体、处理工具、物质、材料等,单从数据流动过程来考查实际业务的数据处理模式。数据流图是结构化分析方法中使用的工具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型。在结构化开发方法中,数据流图是需求分析阶段产生的结果。数据流图英文缩写DFD(DataFlowDiagram)它是描绘信息流和数据从输入移动到输出的过程中所经受的变换。数据流图从数据传递和加工的角度,以图形的方式刻画数据流从输入到输出的移动变换过程。数据流程图包括:1.指明数据存在的数据符号,这些数据符号也可指明该数据所使用的媒体;2.指明对数据执行的处理的处理符号,这些符号也可指明该处理所用到的机器功能;3.指明几个处理和(或)数据媒体之间的数据流的流线符号;4.便于读、写数据流程图的特殊符号。数据流程与数据流程分析是今后建立数据库系统和设计功能模块处理过程的基础。描述数据流程的工具是数据流程图以及其附带的数据字典、处理逻辑等图表。其中数据流程图是描述系统逻辑模型的主要工具,它以少数几种符号综合地反映出信息在系统中的流动、存储和传递7。在业务流程分析的基础上,对数据流进行了分析,从数据流动过程考察了实际业务的数据处理模式。该系统的数据流图分为顶层、一层、二层12。现行的顶层数据流图如图3-2所示。图3-2顶层DFD具体分析第一层数据流图,该层数据流图如图3-3所示。10图3-3第一层DFD由于论文的篇幅限制不能一一列举数据流图,只给出了一部分比较重要的,其他都是按照此方法绘制的。3.3数据字典系统数据流程的分析完成后,接下来用数据字典描述数据流图中一些主要的数据元素条目、数据流、处理过程、数据存储和外部实体13。数据元素条目如表3-1所示。表3-1数据元素11数据元素条目总编号:1-101编号:101名称:管理员编号说明:管理员的编号数据值类型:离散长度:50有关数据结构:管理员表如:10001数据结构条目如表3-2所示。表3-2数据结构数据结构条目名称:管理员信息表说明:创建管理员信息记录时的数据总编号:2-01结构:编号:01管理员编号有关数据流、数据存储:用户名密码数量:每月约20份数据流条目如表3-3所示。表3-3数据流数据流条目名称:修改密码总编号:3-10说明:将修改后的密码信息记录存储到管理员信息表中编号:10数据流来源:数据流去向:P6修改密码流通量:10份/周包含的数据结构:管理员信息数据存储条目如表3-4所示。表3-4数据存储12数据存储条目名称:管理员信息表总编号:4-03说明:存储管理员的相关信息标号:D6结构:管理员编号用户名密码有关的数据流:P6D6信息量:2份/年处理过程条目如表3-5所示。表3-5处理过程处理过程条目名称:出租车管理总编号:5-15说明:将出租车信息进行管理编号:P2输入:P2出租车管理输出:D2出租车信息处理:P2外部实体条目如表3-6所示。表3-6外部实体外部实体条目名称:管理员总编号:6-001说明:管理员编号:001输入数据流:个数:1个输出数据流:由于论文篇幅的限制,不在此一一列举,其他所有的数据字典条目都是根据数据流图绘制的。134系统设计4.1系统设计及接口设计通过对出租车管理系统进行全面的调查分析的基础上,制定出出租车管理系统的系统总体规划。系统设计包括系统总体设计、系统详细设计、系统数据库设计、系统开发工具、开发技术和开发模式等14。出租车管理系统前台功能模块图如图4-1所示。出租车管理系统的前途功能模块与后台功能模块大体相同,区别在于管理系统后台具有超级管理员功能,可对管理员进行管理。图4-1前台功能模块图出租车管理系统后台功能模块图如图4-2所示。图4-2后台功能模块图4.2系统数据库设计数据库设计是系统设计中非常重要的一个环节15。数据是一切系统设计的基础,通俗地说,数据库设计就像高楼大厦的根基一样,如果设计的不合理、不完善,将在系统开发过程中,甚至到后期的系统维护、功能变更和功能扩充时,引起较多问题,严重时甚至要重新设计,重做大量已完成工作。144.2.1概念结构设计根据系统分析的结果,具体分析不同实体用户,描述不同实体之间的关系,得出系统数据实体图和E-R图。管理员实体属性图如图4-2所示。图4-2管理员实体属性图投诉实体属性图如图4-3所示。图4-3投诉实体属性图出租车实体属性图如图4-4所示。15图4-4出租车实体属性图司机实体属性图如图4-5所示。图4-5司机实体属性图出租公司实体属性图如图4-6所示。图4-6出租公司实体属性图员工公司实体属性图如图4-7所示。16图4-7员工公司实体属性图E-R模型的组成元素有:实体、属性、联系。E-R模型用E-R图表示。实体是用户工作环境中所涉及的事务,属性是对实体特征的描述11。1.模型中的实体相当于实体集、一个表,而不是单个实体或表中的一行。实体用矩形框表示,实体名称标注在矩形框内。用菱形表示实体间的联系,菱形框内写上联系名,用无向边把菱形分别与有关实体相连接,在无向边旁标上联系的类型12。2.属性是实体的性质。用椭圆框表示,与实体之间用一条线相连表的主码是关键属性,关键属性项加下划线。3.各子系统模块中主键相同的字段之间存在着相互关联的关系。4.在程序中实现对他们的完整性和一致性控制。从数据需求分析中得出系统的实体属性图,遵循三范式原则,对实体之间的依赖关系进行了整合,得出系统E-R图,如下图所示。图4-8系统E-R图174.2.2数据库表设计表4-1管理员信息表说明:用于存放管理员的信息。表4-2出租车信息表说明:用于存放出租车的基本信息。表4-3司机信息表说明:用于存放司机的基本信息。表4-4出租车公司信息表18说明:用于存放出租车公司的基本信息。表4-5投诉信息表说明:用于存放投诉的基本信息。表4-6员工信息表说明:用于存放员工的基本信息。194.3系统开发工具与开发模式4.3.1JSP简介JSP(JavaServerPages)是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。用JSP开发的Web应用是跨平台的,即能在Linux下运行,也能在其他操作系统上运行。JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。JSP与JavaServlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。JSP的1.0规范的最后版本是1999年9月推出的,12月又推出了1.1规范。目前较新的是JSP1.2规范,JSP2.0规范的征求意见稿也已出台。JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。JavaServlet是JSP的技术基础,而且大型的Web应用程序的开发需要JavaServlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、Oracle、Bea公司等,所以JSP迅速成为商业应用的服务器端语言。JSP编程技术的优势在于:1.一次编写,到处运行。在这一点上Java比PHP更出色,除了系统之外,代码不用做任何更改。2.系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比ASP/PHP的局限性是显而易见的。3.强大的可伸缩性。从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。4.多样化和功能强大的开发工具支持。这一点与ASP很像,Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。JSP编程技术的缺点在于:1.与ASP一样,Java的一些优势正是它致命的问题所在。正是由于为了跨平台的功能,为了极度的伸缩能力,所以极大的增加了产品的复杂性。202.Java的运行速度是用class常驻内存来完成的,所以它在一些情况下所使用的内存比起用户数量来说确实是“最低性能价格比”了。从另一方面,它还需要硬盘空间来储存一系列的.java文件和.class文件,以及对应的版本文件。4.3.2JSP运行原料在JSP第一次获得来自于客户端浏览器的请求时,JSP文件将被JSP引擎(JSPengine)转换成一个Servlet,即将”.jsp”文件编译成JavaClass文件。当Servlet引擎接收到请求后,如果设置了使用最新的JSP,它就会去找JSP文件,检查该文件在上次编译后是否改动过。如果改动过,就会重新编译生成新的Servlet,最终将请求转交给编译好的Servlet引擎执行。利用JSP技术,动态信息由JSP页面来表现,JSP页面由安装在Web服务器或者使用JSP的应用服务器上的JSP引擎执行。JSP引擎接受客户端对JSP页面的请求

温馨提示

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

评论

0/150

提交评论