摘要:
随着经济的日益增长,信息化时代已经到来,生活中各种信息趋向数字化、清晰化。公交车作为现代城市生活中一种重要的交通工具,其数量增多,车型也不再单一,雇用的司机增多,这样使得公交车公司的车辆信息管理复杂化。在这样的背景下,提出了计算机管理的公交车管理系统,辅助公交车运营公司对车辆进行管理,实现公交车、公交线路和司机管理科学化,更合理的利用资源。该系统主要根据实际的需求,以需求分析、系统的设计目标,并且重点进行系统功能模块的详细设计和实现,采用了Visual Studio .NET 2003开发平台和 SQL Server 2000数据库,实现了车辆信息管理、司机信息管理、线路信息管理和车辆分配线路管理等功能。在针对数据操作方面,主要通过存储过程的方式实现数据的添加、删除和查询等操作。通过系统测试,解决了公交车辆管理系统主要问题。

公交车管理系统是一个协助公交车运营商各单位对车辆进行全面的管理。在此之前,对于线路与车辆的管理采用的方式几乎都是手工管理,其中的弊端显而易见,即容易造成档案资料的遗失,控制不集中,管理不规范等等问题。因此,在管理系统的实现上应该满足以下需求:1.为保障系统的稳定性,对于可能发生问题的输入要进行检验,同时要给出合理的提示信息。2.在管理上满足公交车管理职能的基本需求,能够方便的进行司机信息管理、车辆信息管理、线路信息管理和车辆与线路的分配管理。4.与传统的手工管理相比,应该添加用户权限的管理机制。保证系统安全性。根据对上述管理系统的业务流程、要求以及所要实现的目标,可以拟出以下的需求目标:1.建立司机档案和车辆档案管理的管理和维护,在计算机的支持下快速的完成车辆信息的添加和删除。2.建立线路与车辆的设置管理,在计算机的管理下,可以实现方便的添加、删除、修改。3.建立车辆与司机的分配管理,在计算机的管理下,可以实现方便的添加、删除、修改。1.车辆信息的设置管理:系统合法用户可以根据公司具体情况设置关于车辆的具体资料档案。2.权限管理:为了很好的保证系统的安全性,公司相关负责人可以根据实际情况添加和删除系统用户。3.线路档案管理:一个城市的运营线路可能复杂且数据量极大,系统用户可以进行线路的规划管理。4.车辆与司机的分配管理:为了维护好车辆,要求司机做好车辆的日常维护工作,落实具体责任。5.车辆运行线路管理:实现对车辆和线路分配的管理,包括添加、修改和删除操作。目前,考虑到所开发系统主要应用在中小规模的公交车公司,因此,中等配置的计算机硬件就可以满足系统功能需求。考虑到公司规模的扩大和硬件价格的降低,为本系统配置在较优秀的服务器硬件上,可以充分发挥本系统的功能。l 处理器:Inter Pentium 4 1.8G或更高l 开发软件:Microsoft Visual Studio.NET 2003l 数据库:Microsoft SQL Server 2000
总体设计:
本系统采用面向对象进行分析和设计,在SQL Server 2000数据库上实现数据操作。使用了上文所介绍的完全面向对象的C#语言作为开发语言。使用Windows XP作为开发平台,能够很好地实现系统的基本开发和测试。系统的基本流程是:用户登录 主界面 选择各项子功能。“公交车管理系统”主要分为用户登录、车辆管理、司机管理、线路管理和车辆分配管理等6个主功能模块。系统主模块功能树如图1所示。

输入用户的名称和密码,如果用户名、密码正确,则进入主控制平台;否则给出错误提示。该模块的设计目的是用于用户录入与车辆有关的资料信息。比如车牌号、车辆拥有的座位数目和是否有人售票等信息。在该模块下包含两个子模块。其中一个用于对司机资料的录入操作;另一个模块提供给用户查询司机信息。该模块的功能同司机管理模块类似,同样包含两个子模块。一个用于录入线路信息;另一个用于查询线路信息。ADO.NET是ADO的改进版本。ADO.NET是与C#和.NET Framework一起使用的类集的名称,用于以关系型的、面向表的格式访问数据[1]。ADO.NET集成到.NET Framework中,可以用于任何.NET语言,尤其是C#。这也是该管理系统采用C#程序语言的原因。ADO.NET的作用与ADO(Active Data Objects)相同,提供易于使用的类集,以访问数据,ADO.NET的功能得到更新和增强,可以用于.NET编程环境。在使用SQL Server数据库时,通过SQL Server专用的内置.NET数据提供者可以获得最好的性能和对基础功能的最直接的访问。根据数据源不同,常用的.NET数据提供程序可以分为以3种:SQL Server数据提供程序、OLE DB数据源提供程序以及ODBC兼容的数据源提供程序。所有的数据提供程序都位于System.Data命名空间中。每种.NET数据提供程序都由4个主要组建组成。它们的功能如下:(2)Command对象:用于执行针对数据源的命令并且检索DataReader或者DataSet,或者用于针对数据源的一个INSERT、UPADTA或者DELETE命令。(3)DataReader对象:一个已连接的、前向只读结果集。(4)DataAdapter对象:用于从数据源产生一个DataSet,并且更新数据源。虽然数据库应用程序访问的数据库不通,实现的功能也不同,但其开发流程主要分为以下几个步骤:(2)使用Connection对象创建到数据库的连接。(3)使用Command对象对数据源执行SQL命令并返回数据。(4)利用DataReader和DataSet对象读取和处理数据源的数据。根据针对系统的需求分析,可以得到本系统对应的各实体以及实体之间的关系。其中包含有用户实体、司机实体、车辆实体、线路信息实体等。下面根据分析得出其中主要的E-R图,如图2和图3所示。


根据对各个实体的分析,可以进行数据库表的具体设计。下面给出两张具体表设计的实例,如表1和表2所示。
在该公交车管理系统的在数据的查询、添加和删除等操作上主要采用了存储过程。存储过程是编译好了的SQL语句。它类似于函数的使用,可以直接通过参数调用存储过程,所以效率比较高。存储过程是由一组为了完成特定功能的SQL语句集,经过编译和优化后存储在数据库服务器中,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它[2]。存储过程的能力大大增强了SQL语言的功能和灵活性。(1)允许标准组件式编程。在存储过程被创建以后,可以在程序中被多次调用,而不必重新编写该存储过程的SQL语句。(2)实现较快的执行速度。因为存储过程是预编译的,在首次运行前,查询优化器对其进行分析、优化,并给出了最终被存在系统中的执行计划[2]。(3)减少网络流量。在调用存储过程时,网络中传送的只是该调用语句,而不是多条SQL语句,从而大大减少了网络流量。







