学 士 学 位 论 文
THESIS OF BACHELOR
(2003—2007年)
题 目 物流运输管理系统的设计与开发
学 院: 专 业: 班 级: 学 号: 学生姓名: 指导教师: 起讫日期:
文本信息来源:http://www.fspoloo.com/
物流运输管理系统的设计与开发
摘 要
随着中国经济的快速发展,中国的物流业也正在迅速发展,成为广受关注的一个经济热点。中国的运输、仓储等传统物流业务虽然已运行多年,然而现代物流业仍处在发展初期,尚未达到其成熟阶段。但是它的发展潜力已经显现出来,物流理论研究与实践都取得长足的进步。我们完全有理由相信:中国现代物流业的兴盛将指日可待。在“物流热”过程中,前些时候一度出现的“虚热”现象有所减退,中国物流业趋向于更加理性、稳健、务实的发展运输是物流中必不可少的一部分,因此本系统主要针对物流的运输开展分析设计,开发了一套方便快捷的物流运输管理系统。本文在总结系统需求分析的基础上,提出系统的总体设计目标、系统总体架构和功能模块的详细设计。
关键字:物流热;物流运输管理系统;需求分析。
I
Design and Development about the Logistics Transportation
Management System
Abstract
As the economic developed in china, the Logistics, it has been looked as the economic focus by many people. Though transportation and store are carrying on many years in china , up to now the Logistics developed is in the elementary period. however, the potentiality of it is appeared ,the research and the practice of the Logistics theory are progressing. we must believe that the Logistics will coming . in the process of “ the Logistics hot ”, the virtual hot is descending and its prosperity phenomenon will tend to intellectual 、steady、practical situation .transportation will become the necessary part of the Logistics .thus , I am based on the transportation to design a convenient and quick management system. This document is recorded the requirement analysis、the whole detailed designing of system.
Keywords: the Logistics hot; Logistics transportation management system; requirement analysis.
II
目 录
摘 要 ....................................................................................................................................................... I Abstract .................................................................................................................................................. II 第一章 绪论 ........................................................................................................................................... 1
1.1 选题的依据及意义: ............................................................................................................. 1 1.2 国内外研究现状及发展趋势 ................................................................................................. 1 1.3 课题研究内容、要求及目标 ................................................................................................. 2
1.3.1 研究内容 ..................................................................................................................... 2 1.3.2 要求 ............................................................................................................................. 2 1.3.3 目标 ............................................................................................................................. 2 1.4 可行性分析 ............................................................................................................................. 3 第二章 系统开发模式、工具及环境 ................................................................................................... 4
2.1 系统开发模式 ......................................................................................................................... 4
2.1.1 Client/Server模式及其特点 .................................................................................. 4 2.1.2 Brower/Server模式及其特点 .................................................................................. 5 2.1.3 本系统的开发模式及其特点 ..................................................................................... 6 2.2 开发环境的选择 ..................................................................................................................... 7 2.3 编译环境的选择 ..................................................................................................................... 8 2.4 数据库工具的选择 ................................................................................................................. 8 第三章 需求分析 ................................................................................................................................. 10
3.1 引言 ....................................................................................................................................... 10
3.1.1 编写目的 ................................................................................................................... 10 3.1.2 读者对象 ................................................................................................................... 10 3.2 信息描述 ............................................................................................................................... 10 3.3 功能描述 ............................................................................................................................... 10 3.4 系统用例图 ........................................................................................................................... 11 3.5 系统部分类/对象图 ............................................................................................................. 12 3.6 功能结构图 ........................................................................................................................... 13 第四章 系统的总体设计 ..................................................................................................................... 14
4.1 概述 ....................................................................................................................................... 14 4.2 数据库设计 ........................................................................................................................... 14
4.2.1 E-R图 ........................................................................................................................ 14 4.1.2 系统联系图 ............................................................................................................... 17 4.1.3 数据表设计 ............................................................................................................... 18 4.3 系统业务流程 ....................................................................................................................... 20 第五章 系统的详细设计与实现 ......................................................................................................... 24
5.1 javaBeans的编写 ................................................................................................................ 24 5.2 页面之间的调用关系 ........................................................................................................... 25 5.3 JSP页面的设计与说明 ........................................................................................................ 25 第六章 系统维护 ................................................................................................................................. 35
6.1 系统维护 ............................................................................................................................. 35
6.1.1系统维护的重要性 .................................................................................................... 35 6.1.2系统维护应注重的地方 ............................................................................................ 35
结论 ...................................................................................................................................................... 37 参考文献............................................................................................................................................... 38 致谢 ...................................................................................................................................................... 39
第一章 绪论
1.1 选题的依据及意义:
随着市场经济的飞速发展,市场格局已发生了根本性的变化,即由卖方市场转变为买方市场。面对越来越精明的消费者,质量、价格已不仅仅是市场决胜的惟一因素,也不再是衡量“客户满意度”的惟一标准 ,“服务”已成为现代企业最为重视的课题之一。谁能为客户提供更好的服务,谁就能获得更高的客房满意度,也就能赢得更多的市场。物流运输业也规属于服务,而且越来越多的书籍及网络都提到区域物流这一理论,它就是指在一定的区域地理环境中,以大中型城市为中心,以区域经济规模和范围为基础,结合物流辐射的有效范围,将区域内外的各类物品从供应地向接受地进行有效的实体流动,根据区域物流基础设施条件,将公路、铁路、航空、水运及管道运输等多种运输方式及物流节点有机衔接,并将运输、储存、装卸、搬运、包装、流通加工、配送及信息处理等物流基本活动有机集成,以服务于本区域的经济发展,提高本区域物流活动的水平和效率,扩大物流活动的规模和范围,辐射其他区域,提高本区域的综合经济实力。为实现区域物流所要达到的目的开展构建了物流运输管理系统,也可以称之为物流平台系统。
1.2 国内外研究现状及发展趋势
世界银行2000年研究报告《中国:服务业发展和中国经济竞争力》的研究结果表明,在中国有4个服务性行业对于提高生产力和推动中国经济增长具有重要意义,它们是物流服务、商业服务、电子商务和电信。其中,物流服务占1997年服务业产出的42.4%,是比重最大的一类。进入21世纪,中国要实现对WTO缔约国全面开放服务业的承诺,物流服务作为在服务业中所占比例较大的服务门类,肯定会首先遭遇国际物流业的竞争。
物流的配送方式从手工下单、手工核查的方式慢慢转变成现今的物流平台电子信息化管理方式,从而节省了大量的人力,使得配送流程管理自动化、一体化。
当今出现一种智能运输系统,即是物流系统的一种,也是我国未来大力研究的方向。它是指采用信息处理、通信、控制、电子等先进技术,使人、车、路更加协调地结合在一起,减少交通事故、阻塞和污染,从而提高交通运输效率及生产率的综合系统。我国是从70年始注意电子信息技术在公路交通领域的研究及应用工
1
作的,相应建立了电子信息技术、科技情报信息、交通工程、自动控制等方面的研究机构。迄今为止以取得了以道路桥梁自动化检测、道路桥梁数据库、高速公路通信监控系统、高速公路收费系统、交通与气象数据采集自动化系统等为代表的一批成果。尽管如此,由于研究的分散以及研究水平所限,形成多数研究项目是针对交通运输的某一局部问题而进得的,缺乏一个综全性的、具有战略意义的研究项目恰恰是覆盖这些领域的一项综合性技术,也就是说可以通过智能运输系统将原来这些互不相干的项目有机的联系在一起,使公路交通系统的规划、建设、管理、运营等各方面工作在更高的层次上协调发展,使公路交通发挥出更大的效益。[5]
1.3 课题研究内容、要求及目标 1.3.1 研究内容
通过前期构想决定采用JSP+JAVABEAN+MYSQL完成本课题的设计,另外采用dreamweaver做为界面设计工具,jdk+tomcat做为编译环境。按照如上构想具体做到如下几方面的研究:
(2) (4) (6) (9)
搜集有关物流方面的知识,详细了解物流配送流程。 了解所要使用的开发工具,掌握其使用方法。
按照软件工程理论,做出需求分析、概要设计、详细设计等。 为保证系统的安全性,做出安全分析,决定采用身份验证的方式实现系统的安全保障。
1.3.2 要求
该软件要求采用JSP+JAVABEAN+MYSQL方式实现。要求熟练掌握JSP+JAVABEAN的组合使用;在代码的编写上要考虑代码重用的思想等;在设计上,要考虑到易用性,操作简单,交互性好。
1.3.3 目标
本课题最终将达到如下几个目标:
(1)功能齐全 (2)操作简单 (3)灵活通用
2
(4)界面美观易用
1.4 可行性分析
物流网为各类物流企业提供了物流动态信息、供求信息浏览、查询等功能,全面的为物流企业提供服务,帮助企业更多的了解行业的动态信息,提高企业的运营效率。物流信息网的强大功能越来越被物流行业内的相关人士所重视,通过网站行业企业能够更及时调整企业的发展趋势以适应市场的变化。物流信息网的全面的、周到的信息服务使之逐渐成为物流行业发展前进的风向标。
物流运输管理系统做为物流网的一种,主要用于货物运输,可以即方便安全又高效的将客户所要运输的货物运到目的地,使公司运输往来更加简单快捷。
3
第二章 系统开发模式、工具及环境
2.1 系统开发模式
进入 90年代以来,计算机系统的发展出现两个显著的特点:计算机系统由封闭系统走向开放系统;计算机系统由集中式系统向分布式系统过渡。客户机 /服务器 (Client/ Server)模式和 Intrant(Brower/ server)就是这两种趋势的代表。
2.1.1 Client/Server模式及其特点
计算机技术的飞速发展使得计算机系统功能越来越强,体积越来越小,价格也越来越便宜。与此同时,网络技术也日臻完善,特别是局域网的广泛应用,使用户能跨越空间的,实现资源共享。这些因素都促进计算机系统向分布式系统过渡,客户机/服务器模式正好满足这种需要。
客户机/服务器技术的基本原理就是把数据处理与应用程序分开,分别交给数据库(server)和工作站(client)执行。数据库服务器上的数据仅需一次性存贮后可以被很多不同的应用软件存取。数据库服务器处理的仅仅是数据请求,并将所请求的数据(而非整个文件)传送给应用程序。因此,对数据库服务器来说,它的功能主要是:维护数据的完整性和安全性,错误恢复以及改善用户并发存取和修改数据。而客户机就集中在用户和应用程序之间的交互性作业。与其它类型的系统比较,Client/Server方式主要有以下一些特点: (1)具有更高的效率。
它通过一种有效的任务分割,使服务器和工作站各司其职,极大地提高了整个计算机系统的性能,同样的设备,运用不同的组合方式,就会得到完全不同的效果。同时,由于大部分数据处理工作都转给了数据库服务器,网络上传输的主要是数据请求和少量的特定数据,因此网络拥挤状况也得到很大的改善。 (2)具有更灵活的扩展性。
这种方式为用户的设备更新提供了便利的途径。因为系统的功能被一分为二,从理论上讲,当基本的软、硬件设备更新时,如果不改变服务器的配置,就不会对前端产生任何影响。对用户的应用开发和培训方面的投资也进行了最大程度的保护。 (3)工作站具有更大的性。
用户不必局限于一种类型的系统和平台。在一个以SQL Server为基础的客户机/服务器系统中,其工作站可以是IBM兼容的PC机,Machintosh,Unix工作站或它们的
4
任意组合。此外,它们可以运行若干种操作系统中的任意一种,如MS-DOS或PC- DOS,Microsoft windows,IBMOS/2或 Apple System7。这种工作站的性的必然结果是应用程序的性,因为各种工作站并不都需要去使用相同的数据库管理系统应用软件,用户可以继续使用他所熟悉的软件去访问数据库。 (4)数据具有更高的安全性。
因为所有的数据处理工作都交给了数据库管理系统,它可以提供保护数据的任何服务,诸如加密文件的存储,访问数据库时的实时磁带备份,磁盘镜象等等。它还可以提供某种类型的事务处理,去保持对数据库修改的跟踪和纠正服务器崩溃情况下所出的问题。客户机/服务器技术的出现对信息技术具有巨大的影响,它促进了分布式系统的发展,为异构系统间的互连和互操作提供了良好的途径,又更好地满足联机事务处理系统的需要。目前因特网上的网站大多采用这种方式未组建计算机系统。
但是,在C/S结构中应用系统被一分为二,前台客户机用于完成用户的交互任务,后台服务器负责数据处理。C/S结构是基于局域网环境的,具有较强的数据操纵和事务处理能力,对数据的安全性和完整性要求较高。但存在封闭性强,兼容性差,扩展性差,升级及维护性差的缺陷。[2]
2.1.2 Brower/Server模式及其特点
近年来,互联网迅猛发展,基于图形化的网络测览器的开发,更加推动了环球信息网的发展。随着 Internet用户数的迅速增加,TCP/IP协议已被各计算机与网络厂商以及广大用户普遍接受。同时各单位内部局域网普遍应用,它们都想与 Internet连接以获得更多的资源来满足其经营和发展的需要。从Client/ Server到Brower/Server已成为一种必然的趋势。Brower/Server的基本思想是在内部网络上采用Internet的TCP/IP作为通讯协议,并以Internet的 Web模型作为标准平台,通过简单的浏览界面,方便地提供电子邮件,文件传输,电子公告和新闻数据查询等服务,还可以通过防火墙或代理服务器等方式与Intrnet连接以实现企业内部网上的用户对Internet进行浏览查询,同时对外提供信息服务。主要由三部分组成:浏览器,WWW服务器和后台参数据库服务器。浏览器是一个标准的客户端应用软件,为各种操作系统提供统一的操作界面;WWW服务器既可作测览服务器,也可用作应用服务器:作为浏览服务器时,用来存储HTML文件,并通过HTTP协议在浏览器和服务器之
5
间的连接,供用户浏览;作为应用服务器时,它存储可执行的应用程序,并嵌套HTML文件,由用户在客户机上启动,在服务器上执行,并通过标准的通用网关接口程序(CGI)或各厂商提供的专用API访问后台数据库运行结果,再通过浏览器输出,后台数据库则用来存取数据信息。这种方式具有如下的基本特征:
(1)以目标为中心,实现各类信息的包容与广泛的信息共享。因为它突破传统结构的,人们可以轻易地以共同的兴趣,共同的利益,共同的范围,共同的工作目标为中心组织信息交流,实现广泛的信息共享。信息的提供者和使用者融为一体。技术的开放性它所基于的标准是开放的,非专用的,是经过标准化组织制定的。以Web为核心的技术构成了与平台无关的统一而简单的交流方式。
(2)较低的管理成本客户机/服务器模式中,开发人员必须处理多种平台,每个平台上有不同的软件和文件,必须在每一台客户机上进行维护和升级,需要较高的成本。Web应用具有较低维护费用,允许在中心服务器上安装应用程序,需要时可将它下载到客户机,管理费用低。另外由于这种技术简明易用,培训费用也很低。
(3)自我服务。每个人都在这种信息系统上各取所需,无需他人帮助说明或解释,能够实现客户化的自我服务。
在B/S结构中以WEB为中心,基于TCP协议和HTTP协议,改变了传统C/S结构下的客户机/服务器的二层结构,形成客户机/应用服务器/数据服务器的三层结构。客户端通过浏览器发出WEB的HTTP请求,有WEB服务器接受客户请求,通过接口访问后台数据库服务器,数据库服务器处理查询请求,并将结果返回WEB服务器,最后由WEB服务器将结果转化为HTML文档及各种脚本传回客户端浏览器。B/S结构大大减轻了客户端的负担。由于基于TCP/IP协议和HTTP协议,很好的解决了跨平台问题,系统的开放性,通用性强,扩展性强,易于维护。但当HTML文档量大,将导致数据的传输效率降低。同时HTML文档难以加密,安全性较差。[2]
2.1.3 本系统的开发模式及其特点
通过对C/S与B/S的比较,本系统采用B/S开发模式。B/S系统的三层结构即把程序按照内部分工及业务逻辑分割成几个相对的程序,一般划分为界面层、业务处理层、数据存储层。面业务处理怪根据需要又可以再进一步分割,使程序之间的关系变得清晰、耦合小。由于程序进行了分割,它们就可以安装在不同的机器上。一般情况下,界面层的程序安装在客户机上,业务处理层安装在应用程序服务器上,
6
数据存储层安装大数据库服务器上。而工作实际中,界面层的程序也是从应用程序服务器上下载。
2.2 开发环境的选择
在进行开发之前,首先决定的第一个问题就是,该使用什么开发环境来编写该系统? 以目前常见的网络程序语言来说,主要有JSP、ASP、PHP、.NET几种。还有Eclipse,、Borland JBuilder等,这些并不是程序语言,而是程序语言在建构程序时的“集成开发工具”,不过它们在设计的过程中也占有相当重要的角色,因为选用正确的集成开发工具,可以加速程序设计的进行、测试与排错,因而对整体进度具有决定性的影响。
选择程序语言为JSP。基于以下几点:
1. 就执行平台而言,必须考虑的问题之一是用户可能使用的操作系统。用户可能使用的是Windows? Linux?。JSP是一种跨平台的语言。
2. 将内容的产生和显示进行分离
使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP标识或者小脚本来产生页面上的动态内容。产生内容的逻辑被封装在标识和JavaBeans群组件中,并且捆绑在小脚本中,所有的脚本在服务器端执行。如果核心逻辑被封装在标识和Beans中,那么其它人,如Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的产生。在服务器端,JSP引擎解释JSP标识,产生所请求的内容并且将结果以HTML页面的形式发送回浏览器。这有助于作者保护自己的代码,而又保证任何基于HTML的Web浏览器的完全可用性。
3.强调可重用的组件
绝大多数JSP页面依赖于可重用组件(如:JavaBeans或者Enterprise JavaBeans)来执行应用程序所要求的更为复杂的处理。开发人员能够共享和交换执行普通操作的组件,或者使得这些组件为更多的使用者或者用户团体所使用。基于组件的方法加速了总体开发过程,并且使得各种群组织在他们现有的技能和优化结果的开发努力中得到平衡。 4.采用标识简化页面开发
Web页面开发人员不会都是熟悉脚本语言的程序设计人员。JavaServer Page技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容产生所
7
需要的。作为采用Java技术家族的一部分,以及J2EE的一个成员,JSP技术能够支持高度复杂的基于Web的应用。由于JSP页面的内置脚本语言是基于Java程序设计语言的,而且所有的JSP页面都被编译成为Java Servlet,JSP页面就具有Java技术的所有好处,包括健壮的存储管理和安全性。作为Java平台的一部分,JSP拥有Java程序设计语言“一次编写,各处执行”的特点。越来越多的供货商将JSP支持加入到他们的产品中。 [2]
2.3 编译环境的选择
Tomcat服务器是一个免费的开放源代码的Web应用服务器,它是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet和JSP规范总是能在Tomcat中得到体现,Tomcat5支持最新的Servlet 2.4和JSP 2.0规范。因为Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。
2.4 数据库工具的选择
MysQL是瑞典的T.c.X公司负责开发和维护的,它是一个真正的多用户、多线程SQL数据库服务器。MysQL是以一个客户机/服务器结构实现其功能的,它由一个服务器守护程序mysqld和很多不同的客户程序和库组成。SQL是一种标准化的语言,它使得存储、更新和存取信息更容易。 MySQL主要特点是快速、健壮和易用。MySQL的官方发音是“My Ess Que Ell”(不是MY-SEQUEL)。[6] 选择MYSQL做为数据库基于以下几点:
1.它使用的核心线程是完全多线程,支持多处理器。
2.有多种类型:有符号/无符号整数、FLOAT、DOUBLE、CHAR、VARCHAR、TEXT、BLOB、DATE、TIME、DATETIME、TIMESTAMP、YEAR、和ENUM类型。
3.它通过一个高度优化的类库实现SQL函数库并像他们能达到的一样快速,通常在查询初始化后不该有任何内存分配。没有内存漏洞。
4.全面支持SQL的GROUP BY和ORDER BY子句,支持聚合函数(COUNT()、COUNT(DISTINCT)、AVG()、STD()、SUM()、MAX()和MIN())。你可以在同一查询中混来自不同数据库的表。
8
5.支持ANSI SQL的LEFT 0UTER JOIN和ODBC。
6.所有列都有缺省值。你可以用INSERT插入一个表列的子集,那些没用明确给定值的列设置为他们的决省值。
7. MySQL可以工作在不同的平台上。支持C、C++、Java等。
9
第三章:需求分析
3.1 引言 3.1.1 编写目的
软件需求分析是软件是软件开发期的第一个阶段,也是关系到软件开发成败的关键步骤。需求分析阶段要解决的问题,是让用户和开发者共同明确将要开发的是一个什么样的系统,准确、完整和规范化的软件需求是软件开发成功的关键,软件项目中%40—%60的问题都是在需求阶段埋下的祸根,因此,需求分析在软件开发中占有非常重要的地位。
本文通过详细描述物流运输系统的功能需求、性能需求、质量属性需求、安全需求以及其它需求,为后续概要设计、整体设计、软件(系统)测试、用户文档等工作提供基础与约束。
3.1.2 读者对象
本文档的读者对象包括:
1 用户 2 需求分析人员 3 软件设计人员 4 软件测试人员 5
3.2 信息描述
某运输公司需要一个只限于本公司管理人员使用的物流运输系统,主要特点是:此运输公司的所有运输地点能够共享系统信息,要求使用jsp做前台,mysql做后台处理数据存储。
3.3 功能描述
本系统将实现如下七个功能:
(1) (2) (3) (4)
有权限的用户登录功能
交易信息管理功能:包括送货地点、收货地点 货物是否收到的报告信息管理功能 货物信息管理功能
10
(5) (6) (7)
支付情况管理功能 运输工具管理功能 交易地点信息管理功能
3.4 系统用例图
用列图是OOA(Object-Oriented Analysis)方法的第一步,通过定义用例建立需求模型,使得系统需求一目了然,为开发系统提供很大帮助,下面是系统的用例图。
图3-1系统用例图
11
3.5 系统部分类/对象图
用例定义好后,还需定义系统的类,以方便系统重复利用这些类来开发系统。 1.管理员类与对象
2.车辆类与对象
管理员 songzhuo管理员 用户名 用户名songzhuo 密码 密码:songzhuo 货物信息维护 货物信息维护 支付情况统计 支付情况统计 车辆信息维护 车辆信息维护 类图 对象图
图3-2 管理员类与对象图
车 辆 车 辆 : 东风 车辆号码 车辆号码:G231 所属公司 所属公司:华奥 地址 地址:江西 电话 电话:984561268 司机名 司机名:mark 驾照号 驾照号:265234512 货车类型 货车类型:卡车 最大载重量 最大载重量:20吨 运输货物 运输货物 类图 对象图
图3-3 车辆类与对象图
12
3.6 功能结构图
通过需求分析的调查与研究,将系统的大体功能定义如下图所示。 发 货 地 基 本 信息 收货地基本信息 交易地 点信息 货 物 信 息 车 辆 信 息 货物价格设置 交易信息管理 支付情况信息 已收到货物 未收到货物 相关基本数据 管 理 员 登 录 物 流 运 输 系 统
图3-4 系统功能结构图
功能需求具体描述
交易信息模块:包括发货地与收货地两个模块的基本信息的添加、修改、删除、查询,并且要求在添加信息时货物信息、车辆信息、交易地点等信息均来自基本数据模块的相应模块。
支付情况信息模块:首先显示所有的交易记录,当有支付过的交易时将其自行删除。 已到货物模块:显示已到货物的所有信息 未到货物模块:显示未到货物的所有信息
相关基本数据模块:包括货物数据信息、车辆信息、交易地点、货物价格设置四个模块,可以实现其基本数据的添加、修改。
13
第四章 系统的总体设计
4.1 概述
完成软件的需求分析后,就可以开始软件设计了。在软件开发时期,设计阶段是最富有活力、最需要发挥创造精神的阶段。系统的总体设计阶段就是要把分析阶段产生的软件需求说明转换为用适当手段表示的软件设计的方案。
4.2 数据库设计
一个较好的系统在设计时要做好分析工作,并且要按照一定的次序将其完成,首先做好数据的分析,设计好数据库。在分析数据库的建设问题时,首先就要从需求分析中获取系统中要用的数据,将其规化好,抽取实体及其属性,建立模型。以下为系统所有要使用的数据,以E-R图的形式表示如下。
4.2.1 E-R图 1.送货地点实体
交易ID 送货日期 送货时间 货车ID 货物重量 送货地点ID 执照号 送货地点 收货地点ID 司机出车费 空车重量 油费 加油信息 装货后总重量 货物ID 图4-1 送货地点E-R图
14
2.收货地点实
交易ID 收货日送货凭据票号 货车返回日期 货车返回时间 收货地点 货物重量 车与货物总重量 3.货物实体
空车重量 收货时间 图4-2 收货地点E-R图
损失量
货物ID 货物名称 货物 图4-3 货物E-R图
4.用户实体
用户名 用户密码 用户 图4-4 用户E-R图
15
5.货车实体 货车号所属公司 地址 _name 电话 货车 司机名 驾照号 货车型号 最大载重量
图4-5 货车E-R图
6.费用实体
每吨货物价格 服务费 联系货车费 费用
图4-6 费用E-R图
7.帐目实体
交易ID 支付日期 帐 目 货物吨数 损失量 货物数量
图4-6 帐目E-R图
16
4.1.2 系统联系图
当所有的E-R图模型建好后,就应该考虑所有实体之间的联系,只有联系建立好,才能建立好数据库,同时也可以提高系统的开发效率。
管 理 员 1 1 维护 1 维护 N N
发货信息 1 收货信息 管理 N 包含
N N 1
货物信息 车辆信息 货物价格 支付情况
N
提供
M 司 机
图4-7 系统联系图
17
4.1.3 数据表设计
由前面的数据分析可建立如下几张表,各表详细信息描述如下: 1. 送货地点信息表
字 段 Challan_no Loading_date Loadint_time Vehicle_no Material_id Loading_id Unloading_id T_weight G_weight N_weight Gf_no Cash_adv Hsd_adv P_pump 类 型 Int(6) date Char(8) Int(6) Int(6) Int(6) Int(6) Double(12,3) Double(12,3) Double(12,3) Varchar(20) Double(12,3) Double(12,3) Varchar(30) 描 述 是否允许为空 交易ID 否 送货日期 是 送货时间 否 货车ID 否 货物ID 否 送货地点ID 否 收货地点ID 否 空车重量 否 装货后总重量 否 货物重量 否 执照号 是 司机出车费 否 油费 否 加油信息 是 表4-1送货地点信息表
是否为主键 是 否 否 否 否 否 否 否 否 否 否 否 否 否
2. 收货地点信息表 字 段 Challan_no Ticket_no Unloading_date Unloadint_time Out_date Out_time T_weiight G_weight N_weight sleepage
类 型 Int(6) Varchar(15) Date Varchar(8) date Varchar(8) Double(12,3) Double(12,3) Double(12,3) Double(12,3) 描 述 交易ID 送货凭据票号 收货日期 收货时间 货车返回日期 货车返回时间 空车重量 车与货物总重量 货物重量 损失量 是否允许为空 否 是 否 否 是 是 否 否 否 否 是否为主键 是 否 否 否 否 否 否 否 否 否 表4-2 收货地点信息表
3. 货物信息表 字 段 类 型 描 述 是否允许为空 Material_id Int(6) 货物ID 否 Material_name Varchar(30) 货物名称 否 表4-3货物信息表
是否为主键 是 否 18
4. 交易地点信息表
字 段 类 型 描 述 是否允许为空 Location_id Int(6) 交易地点ID 否 Location_name Varchar(30) 交易地点名称 否 是否为主键 是 否 表4-4 交易地点信息表
5. 用户信息表
字 段 User_id User_name User_pw
类 型 Int(6) Varchar(20) Varchar(20) 描 述 用户ID 用户名 用户密码 是否允许为空 否 否 否 是否为主键 是 否 否 表4-5 用户信息表
6. 货车信息表
字 段 Vehicle_id Vehicle_no Owner_name address Phone_no Driver_name Dlno No-of-wheel Max_weight
类 型 Int(6) Varchar(15) Varchar(30) Varchar(150) Varchar(30) Varchar(30) Varchar(15) Varchar(15) Double(12,3) 描 述 货车ID 货车号 所属公司 地址 电话 司机名 驾照号 货车型号 最大载重量 是否允许为空 否 否 否 是 是 否 否 否 否 是否为主键 是 否 否 否 否 否 否 否 否 表4-6 货物信息表
7. 费用信息表
字 段 rate tds challanfee
类 型 Double(12,3) Double(12,3) Double(12,3) 描 述 每吨货物价格 服务费 联系货车费 是否允许为空 否 否 否 是否为主键 否 否 否 表4-7 费用信息表
19
8. 支付信息表
字 段 Challan_no Paydate ton sleepage amount 类 型 Int(6) Date Double(12,3) Double(12,3) Double(12,3) 描 述 交易ID 支付日期 货物吨数 损失量 货物数量 是否允许为空 否 否 否 否 否 是否为主键 是 否 否 否 否 表4-8 支付信息表
4.3 系统业务流程
在数据库设计过后,接着就应该考虑功能实现,通过功能描述的分析,构思出系统整体结构,采用业务流程图的方式具体介绍系统大概的处理方式,以下为系统的业务流程.
1.系统总体业务流程
系统管理员通过登录,经核查为合法用户后进入系统,进入系统后即可对相应的功能模块进行操作,具体的操作流程用下图表示。
20
管理员 输入用户名、密码 N 判断合法? Y 登录 基本信息管到货信息管未到货信息管支付情况管 交易信息管 理 理 理 理 理 货物信息管车辆信息管交易地点信价格信息管 理 理 息 理 发货信息管收货信息管 理 理 物流运输管理系 统 数据库
图4-8 系统总体业务流程
21
2.货物信息添加处理流程
货物信息管理是物流系统的主要功能模块之一,通过填写货物信息,发货信息管理才可能有效进行填报。
管理员
货物信息管理模块
物流运输管理系统
数据库
图4-9 货物信息添加处理流程图
3.车辆信息添加处理流程
车辆信息管理模块中的信息同样也是发货信息管理信息来源的重要依据。
管理员 车辆信息管理模块 物流运输管理系统
数据库
图4-10 车辆信息添加处理流程
22
4.交易地点信息添加处理流程
管理员
交易地点信息管理 模块 物流运输管理系统
数据库
图4-11交易地点信息添加处理流程图
5.发货信息添加流程 管理员 货物信息管理 车辆信息管理 交易地点管理
发货信息管理 物流运输管理系统
数据库
图4-12 发货信息添加流程图
23
第五章 系统的详细设计与实现
5.1 javaBeans的编写
javaBeans是用java语言编写的可重用的软件组件。使用javaBeans组件,以使用可视的应用程序开发工具将它们编写到java程序中。javaBeans规范为java开发人员提供了一种“组件化”其java类的方法,是实现代码重用的一个很好的机制。同时它也被广泛地应用到jsp技术中实现代码的重用,还可以实现显示和逻辑的一定程度上的分离,在实际应用中得到广泛的应用。
在本系统中通过分析研究,最终编写如下6个javaBeans。
1. DBConnection.java—用于数据库连接,在页面中通过调用此javaBeans完成页面与数据库的连接,从而使得数据可以动态处理。
2. Locate.java—用于对交易地点的操作,它的作用包括,交易地点编者号的读取、交易地点名称的读取。
3. Material.java—用于对货物的操作,基本作用同上。
4. Vehicle.java—用于对车辆信息的操作,基本作用同上。
5. Loadp.java—用于loading point操作,此javaBeans主要用于发货信息页面中要获取的相关信息,如:交易号、发货时间、发货日期等。
6. DBUtil.java对所有数据的添加、删除、修改进行操作,此javaBeans是一个主要的javaBeans,它包含所有要动态处理的数据处理方法,使得数据可以通过页面动态的和数据库打交道
24
5.2 页面之间的调用关系
一个系统包含多张页面,而其中的页的面的逻辑组织形式将成为决定功能实现的重要依据,下面即为系统中页面之间的调用关系。
Index.html Index2.jsp default.jsp Tree.html loading.jsp material.jsp location3.jsp vehicle.jsp rate.jsp payment.jsp 图5-1 页面调用关系图
5.3 JSP页面的设计与说明
1. index2.jsp----用户登录核查页面
此页面为合法用户的核查页面,即起到index.html页面与数据库之间的一个桥梁作用,将index.html页面中输入的用户名、密码送入到index2.jsp中通过sql语句与数据库中的用户名、密码进行对比,找到后即为合法用户,说明可以进入系统,在此页面中需要引入一个Bean,DBConnection,它起到连接数据库的作用。
下面为系统的登录界面,用户就是通过index2.jsp经核查合法后进入系统的。
25
图5-1 管理员登录界面
下面为核查是否为合法用户的主要代码:
<%
String user_name=request.getParameter(\"user_name\"); String user_pw=request.getParameter(\"user_pw\");
String sql=\"select * from user_info where user_name='\"+user_name+\"' and user_pw='\"+user_pw+\"'\";
ResultSet rs= db.getRs(sql);
if(!rs.next())
out.print(\"\"); else
out.print(\"\"); %>
26
2.default.jsp----载入框架页面
本页面为系统的主页面,采用框架技术将功能按钮和显示区分开分为两个部分,左侧为树型功能按钮,控制所要显示的内容,右侧则为显示区。
图5-2 系统主界面
载入框架的主要代码如下:
3.location3.jsp----交易地点处理页面
本页面需要引用两个Bean:Locate、DBUtil,Locate用于处理交易地点信息、DBUtil用于与数据库打交道,存储、读取信息等操作都将由此Bean完成,下图为交易地点的添加页面。
27
图5-3 交易地点添加界面
当页面中内容添加成功后会返回如下图的提示框。
图5-4 添加成功提示界面
实现此提示框的主要代码如下所示: if(db.addLocation(location)){
out.print(\"\"); }
内容添加后返回到如下图所示的页面。
28
图5-5 添加成功后显示界面
以下的几张页面基本原理与location3.jsp基本相同
4.material.jsp----货物信息处理页面
一个物流运输系统主要为经营货物运输,因此货物的管理相当重要,下图为货物的添加界面,相应可以实现货物的添加与修改功能。
29
图5-6 货物信息添加界面
图5-7 货物信息添加后的显示界面
30
如果货物添加错误,系统还提供修改功能,例如将已填好的第3条信息修改,操作如下图所示。
图5-8 货物信息修改界面
货物经修改成功后同样会出现ok提示界面,并返回到如下图所示的界面。
图5-9 货物信息修改后显示界面
31
5.vehicle.jsp----车辆信息处理页面
此页面的基本原理同上面的货物信息管理功能相似,界面如下图所示。
图5-10 车辆信息添加界面
图5-11 车辆信息添加后的显示界面
32
6.loading.jsp----发货方信息处理页面
此页面为发货方信息录入处理页面,由于它将包括车辆信息、货物信息、交易地点、还有其它的一些相关信息的录入,所以需用要引用如下四个Bean: Vehicle、Material、Locate、Loadp,同时对这些信息又要进行处理,所以还将引用DBUtil。下图即为发货信息的添报页面,在其中货物信息、车辆信息、交易地点信息均来自已经添报好的页面,如货物信息可以通过下拉框选择,其它两种信息原理同货物信息的添加。
图5-12 发货信息添加界面
当发货信息添写好后同样会返回ok的提示框,然后显示如下图所示的界面。
33
图5-13 发货信息添加后的显示界面
此外,发货信息管理界面中还提供删除功能,点击信息删除。如要实现代码如下所示。
if(\"del\".equals(action)){ //deleting
if(db.del(Integer.parseInt(id)))
out.print(\"\");
else
out.print(\"\"); }
按扭即可将一行的发货
34
第六章
6.1 系统维护
6.1.1系统维护的重要性
系统维护
在软件的生存期中,维护工作是不可避免的,按照不同的目标,维护活动可以分为4类:以加强软件功能为目标的完善性维护;为了适应运行环境变化而进行的适应性维护;以及为改进软件的可维护性、减小将来的维护工作量而进行的预防性维护。花在维护上的费用,通常要占软件总费用的一半以上。对于大型和复杂的软件,维护费用可以达到开发费用的十至数十倍。
软件可维护性,主要决定于开发时期的活动。用软件工程方法来开发软件,编制齐全的文档,严格进行软件测试和阶段复审,是改善软件可维护性、降低维护费用的关键。每个开发人员都应经常想到维护工作的需要,在开发中尽力提高软件的可维护性,而不是相反。
维护工作是开发工作的缩影,但又有自己的特点。要缩小维护的副作用,尽量避免在维护中引入新错误降低软件的质量;要加强对维护的管理尤其是配置管理,有效地对办件配置进行跟踪和控制,避免造成文档的混乱。维护人员须知,不适当和不充分的维护,能够把一个原来好端端的软件变成一个不可维护的软件,造成灾难性的后果。明白了这个道理,即使对于“微小的修改”,也要严格遵守规定的步骤和标准,决不能掉以轻心。
6.1.2系统维护应注重的地方
一个工程:系统安全工程是涉及到可信产品或者系统整个生命期的安全工程活动,其中包括概念定义、需求分析、设计、开发、集成、安装、运行、维护和终止。首先要对威胁、系统脆弱性和事件影响进行分析,并将其引向对系统风险的分析,从而使用安全机制将系统中遗留的风险控制在可接受的程度内。之后,根据风险分析的结果,以及有关系统需求、可应用的法律法规、方针等信息,安全工程人员同客户一起定义识别系统的安全需求,包括成本、性能、技术风险及使用难易程度等各种因素和各种替代方案之后,制定出问题的解决方案;最后,还要通过对现有系统安全机制正确性和有效性的测试及验证,建立系统安全保证的证据,强调对于安全工程过程结果质量可重复性的保证。在系统的安全工程实施过程中,应该严格按照国家有关主管部门的规定执行,在具体实施过程中,可以参照SSE-CMM
35
的11个安全风险过程域以及组织保障和项目保障过程域的要求进行过程管理。
双因素保护:在组织的信息化过程中,信息需求是组织的激励因素,它给组织带来效益和效率;同时信息安全是需求的保健因素,它虽然从某种意义上来讲并不能提高组织的效率(往往安全与效率是一对矛盾),但离开安全却是不行的。准确把握信息需求和信息安全的双因素关系保障了组织高效和可靠地运作。而在信息安全中,信息安全服务对象的安全需求与信息安全法律法规又以双因素关系共同保障了信息安全系统工程的实施。
三类措施:安全工程应该包含三类措施:安全技术措施、安全运行措施和安全管理措施。安全运行措施包括网段划分维护、身份鉴别与访问控制、日常入侵监测与安全审计、防病毒跟踪与升级、备份与恢复、应用系统安全、网络中心安全、防火墙维护、日常安全运行计划等多方面内容;安全管理措施包括组织管理、人员管理、技术安全管理、涉密便携机管理、场地设施安全管理等等。通过一系列的系统性安全措施,为系统提供一套纵深的系统性防御体系。
四大工具:安全测评是安全系统工程中的基础,也是量化安全服务的重要内容。为了更准确地得出测评结果报表以供选择风险策略和做好安全规划,我们针对不同组织的具体情况,准备各种管理类问询表、技术类检查表并完成调查,同时使用漏洞扫描工具及扫描分析工具检查系统的技术漏洞,评测过程利用了专利的测评分析引擎,集中分析从问询类结果处理模块、技术分析模块、标准处理模块和威胁处理模块这四大工具处理的数据,具有一定的客观性和科学性。
五级层面:我们将系统性安全结构分成五个层面,方、体系结构、基础标准、条块或等级管理和自主保护目标函数。以威胁树体系带权重模型为基础,结合模糊数学方法、AHP方法、工程经验数据方法、问询表方法和技术性测评工具,建立综合考虑安全因素、安全功能和安全过程的体系结构,并参考和结合BS7799、BSI手册、ISO13335、SSE-CMM和CC等标准,从条块和功能两个方面入手,针对用户特定的安全现状和需求,建立基于个性化应用的系统性安全量化服务。[7]
36
结论
通过近两个月的毕业设计,使我深深体会到程序开发的不易,它不仅仅是要求扎实的基础知识,更注重的是动手能力,并且在程序开发过程中需要有超乎寻常的耐力,因为对于一个经验尚浅的人来说,在做系统编码的时候是会出现相当一部分的错误,所以耐力不够的人是很难坚持到最后的。在此次设计当中无论是基础知识,还是动手能力,对于我都有了进一步的提高,尤其是对于开发系统的相关技术有了更深刻的认识,同时也对系统开发有了一个系统的认识,除此之外,通过对物流信息的搜集与查阅,对物流在管理方面的知识也有了一定的认识,相信这次的毕业设计不仅是对于我大学四年知识的汇总,也是对于我今后在选择工作道路的指南针。
37
参考文献
[1]刘军,数据库应用系统开发技术[M],北京:机械工业出版社,2003 [2]张洪伟,JSP网络开发技术与整合应用,北京:清华大学出版社,2006 [3]塞奎春,JSP信息系统开发实例精选丛书,北京:机械工业出版社,2006 [4] 蔡临宁著,《物流系统规划—建模及实例分析》,机械工业出版社,2003 [5] 鲍新中,程国全,王转编著《物流营运管理体系规划》,中国物资出版社,2004 [6] Raghu Ramakrishnan, Database Management Systems,2003 [7] 韩柯,软件维护:概念与实践(第二版),电子工业出版社,2004
38
致谢
毕业设计是一项道路艰辛而又漫长的工程,其中会出现种种的障碍,如果没有同学的互相帮助与鼓励,单凭一个人的力量是很难完成的,尤其是我的导师在我毕业设计初期对我的启发与帮助使我受益匪浅,在论文的的书写上出现的错误,老师更是给予悉心的教导。如今毕业设计已经接近尾声,我忘不了在困难出现的时候给予援助的手,更忘不了在耳边不断给予鼓励的声音。为此我对于在这期间给予我帮助与鼓的广大同学和老师表示衷心的感谢。
39
外文资料原文
Database
The history of database system research is one of exceptional productivity and startling economic impact.barely 20 year old as a basic science research field, database research has fueled an information services industry estimated at $10billion per year in the U.S. alone. Achievements in database research underpin fundamental advances in communications systems, transportation and logistics, financial management, knowledge-based systems, accessibility to scientific literature, and a host of other civilian and defense applications. They also serve as the foundation for considerable progress in the basic science fields ranging from computing to biology.
The database is now such an integral part of our day-to-day life that often we are not aware we are using one. to start our discussion of databases, for the purposes of this discussion, we consider a database to be a collection of related data and the database management system to be the software that manages and controls access to the database. a database application use the term database system to include a collection of application programs that interact with the database.
Let us examine the definition of database to understand the concept fully. the database is a single, large repository of data which can be used simultaneously by many departments and users. instead of disconnected files with redundant data, all data items are integrated with a minimum amount of duplication .the database is no longer owned by one department but is a shared corporate resource. the database holds not only the organization‟s operational data but also a description of this data. for this reason, a database is also defined as a self-describing collection of integrated records. the description of the data is known as the system catalog(or data dictionary or meta-data –the „data about data‟).it is the self-describing nature of a database that provides program-data independence.
The approach taken with database systems, where the definition of data is separated from the application programs, is similar to the approach taken in modern software development, where an internal definition of an object and a separate external definition are provided. the users of an object see only the external definition and are unaware of how the object is defined and how it functions. one advantage of this approach, known as data abstraction, is that we can change the internal definition of an object with out affecting the users of the object, provided the external definition remains
1
the same. in the same way, the database approach separates the structure of the data from the application programs and stores it in the database. if new data structures are added or existing structures are modified then the application programs are unaffected, provided they do not directly depend upon what has been modified. for example, if we add a new field to a record or create a new file, existing applications are unaffected. However , if we remove a field from a file that an application program uses, then that application program is affected by this change and must be modified accordingly.
The final term in the definition of a database that we should explain is „ logically related‟ when we analyze the information needs of an organization, we attempt to identify entities, attributes and relationships. an entity is a distinct object(a person, place , thing , concept , or event) in the organization that is to be represented in the database. an attribute is a property that describes some aspect of the object that we wish to record and a relationship is an association between entities.
History of database management systems
We have already seen that the predecessor to the DBMS was the file-based system. However , there was never a time when the database approach began and the file-based system ceased. in fact, the file-based system still exists in specitic areas. it has been system ceased. in fact ,the file-based system still exists in specific areas. it has been suggested that the DBMS has its roots in the 1960s Apollo moon-landing project, which was initiated in response to president kennedy‟s objective of landing a man on the moon by the end of that decade. at that time there was no system available that would be able to handle and manage the vast amounts of information that the project would generate.
As a result, north American Aviation, the prime contractor for the project, developed software known as GUAM.GUAM was based on the concept that smaller components come together as parts of larger components, and so on, until the final product is assembled. this structure, which conforms to an upside-down tree, is also known as a hierarchical structure. in the mid-1960s,IBM joined NAA to develop GUAM into what is now known as IMS(Information Management System).The reason why IBM restricted IMS to the management of hierarchies of records was to allow the use of serial storage devices, most notably magnetic tape, which was a market requirement at that time. this restriction was subsequently dropped. Although one of the earliest commercial DBMS,IMS is still the main hierarchical DBMS used by most large mainframe installations.
2
In the mid-1960s,another significant development was the emergence of IDS(Information Data Store) from General Electric. This development led to a new type of database system known as the net work DBMS, which had a profound effect on the information systems of that generation. the network database was developed partly to address the need to represent more complex data relationships than could be modeled with hierarchical structures, and partly to impose a database standard. to help establish such standards, the conference on Data Systems Languages, comprising representatives of the US government and the world of business and commerce, formed a List processing Task Force of reference for the DBTG were to define standard specifications for an environment that would allow database creation and data manipulation .A draft report was issued in 1969 and the first definitive report in 1971.the DBTG proposal identified three components:
The network schema-the logical organization of the entire database as seen by the DBA-which includes a definition of the database name, the type of each record, and the components of each record type;
The subschema- the part of the database as seen by the user or application program; A data management language to define the data characteristics and the data structure, and to manipulate the data.
For standardization ,the DBTG specified three distinct languages:
A schema Data Definition Language ,which enables the DBA to define the schema; A subschema DDL, which allows the application programs to define the parts of the database they require;
A data Manipulation Language, to manipulate the data.
Although the report was not formally adopted by the American National Standards Institute, a number of systems were subsequently developed following the DBTG proposal. These systems are now known as CODASYL or DBTG systems. The CODASYL and hierarchical approaches represented the first –generation of DBMSs, however , these two models have some fundamental disadvantages;
Complex programs have to be written to answer even simple queries based on navigational record-oriented access;
There is minimal data independence;
There is no widely accepted theoretical foundation.
In 1970 E.F.Codd of the IBM Research Laboratory produced his highly infuential
3
paper on the relational data model. this paper was very timely and addressed the disadvantages of the former approaches. Many experimental relational DBMSs were implemented there after, with the first commercial products appearing in the late 1970s and early 1980s.of particular note is the System R project at IBM‟s San Jose Research Laboratory in California, which was developed during the late 1970s.this project was designed to prove the practicality of the relational mode by providing an implementation of its data structures and operations, and let to two major development:
1.The development of a structured query language called SQL, which has since become the standard language for relational DBMSS.
2.The production of various commercial relational DBMS products during the 1980s,for example DB2 and SQL/DS from IBM and Oracle from oracle corporation .
Now there are several hundred relational DBMSs for both mainframe and PC environments, though many are stretching the definition of the relational model. other examples of multi-user relational DBMSs are INGES II from computer associates ,and Informix from Informix software, Inc. Examples of PC-based relational DBMSs are Access and FoxPro from Microsoft ,Paradox from Corel Corporation, Inter Base and BDE from Borland ,and R:Base from R:Base Technologies. Relatoional DBMSs are referred to as second-generation DBMSs.
The relational model is not without its failings, and in particular its limited modeling capabilities. There has been much research since then attempting to address this problem .In 1976,Chen presented the Entity-Relationship model. In 1979, Codd himself attempted to address some of the failings in his original work with an extended version of the relational mode called RM/T and subsequently RM/V2.The attempts to provide a data model that represents the “real word” more closely have been loosely classified as semantic data modeling.
In response to the increasing complexity of database applications, two „new‟ systems have emerged: the Object-Oriented DBMS and the Object-Relational DBMS. However , unlike previous models, the actual composition of these models is not clear. this evolution represents third-generation DBMS.
The database management system(DBMSs): it is a software system that enables users to define, create, maintain, and control access to the database.The DBMS is the software that interacts with the users‟ application programs and the database. typically, a DBMS provides the following facilities: 1.It allows users to define the database, usually through a data definition language. the DDL allows users to specity the data types and
4
structures and the constraints on the data to be stored in the database.2.It allows users to insert, update, delete, and retrieve data from the database, usually through a data manipulation language. having a central repository for all data and data descriptions allows the dml to provide a general inquiry facility to this data, called a query language. the provision of a query language alleviates the problems with file-based systems where the user has to work with a fixed set of queries or there I a prolifeation of programs, giving major software management problems.
the most common query language is the structured Structured Query Language, which is now both the formal and deffacto standard language for relational DBMSs. It provides controlled access to the database. for example, it may provide:
- - - - -
Database design
Until now ,we have taken it for granted that there is a structure to the data in the database .for example, we have identified many tables. but how did we get this structure? the answer is quite simple: the structure of the database is determined during database design. However , carrying out database design can be extremely complex. to produce a system that will satisfy the organization‟s information needs requires a different approach from that of file-based systems, where the work was driven by the application needs of individual departments. for the database approach to succeed, the organization now has to think of the data first and the application second. this change in approach is sometimes referred to as a paradigm shift. for the system to be acceptable to the end-users, the database design activity is crucial. a poorly designed database will generate errors that may lead to bad decisions being made, which may have serious repercussions for the organization. On the other , a well-designed database produces, in an efficient way , a system that provides the correct information for the decision –making process to succeed.
Unfortunately, database design methodologies are not very popular . most
a security system, which prevents unauthorized users accessing the database;
an integrity system, which maintains the consistency of stored data; a concurrency control system, which allows shared access of the database; a recovery control system, which restores the database to a previous consistent state following a hardware or software failure;
a user-accessible catalog, which contains descriptions of the data in the database.
5
organizations and individual designers rely very little on methodologies for conducting the design of databases, and this is commonly considered a major cause of failure in the development of database applications. owing to the lack of structured approaches to database design, the time or resources required for a database project are typically underestimated, the databases developed are inadequate or inefficient in meeting demands of applications documentation is limited, and maintenance is difficult.
In one word , database design is good or bad ,which is the most important reason whether the later work is smooth or not.
6
外文资料译文
数据库
数据库系统研究的历史是一个非常特殊的生产力与惊人的经济影响.仅20年,作为一个基础科学的研究领域, 数据库的研究, 仅在美国就激发了信息服务业估计达六十亿美元,数据库研究的成功使在通信系统中基本的优势更加牢固,运输及物流管理,财务管理,以知识为基础的系统, 获取科学文献,以及其他一系列的民用和国防应用. 它们还可以作为基础,取得相当大的进展,在基础科学领域从计算机学到生物学.
数据库现在是我们日常的生活中的一个组成部分, 我们常常不知道我们在用它. 我们认为一个数据库将收集相关的数据和数据库管理系统的软件管理和管制进入数据库. 一个数据库应用系统的使用术语数据库系统,将收集的应用程序与数据库相互作用.
让我们学习数据库定义的概念并使其充分理解. 数据的大量存储可以同时由多个部门和用户的受益. 而删除档案的冗余数据, 所有数据项都将以最少的重复数量一体化. 该数据库已不在被一个部门所独占,而是被整个企业共享. 该数据库不仅持有该组织的业务数据,而且也描述了这些数据. 基于这个原因,一个数据库也被界定为一种自我描述收集综合记录. 描述的数据被称为系统目录(或者数据字典或元数据-数据的相关数据'). 这是提供程序数据性的自我描述性质的数据库.
数据库系统采取的做法,那里定义的数据是被分开的应用程式, 与在现代软件开发中采取的做法相似,提供一个对象内部定义和一个分开的外部定义.用户的一个对象只看到外部定义,而往往不知道对象是怎样被定义的并且是如何实现其功能的. 此方式的一个优点,被称为数据抽象,就是我们可以改变一个对象的内部定义,而不影响了用户的对象, 提供了外部定义仍然是一样的. 同样的, 采用数据库的方法可以从应用程序中分离数据结构并储存在数据库中. 如果新的数据结构添加或删除结构被修改,但应用程序并不受影响, 只要不直接取决于那些已经被修改了的应用程序. 举例来说,如果我们加上一个新值到一条记录或一个新文件,应用程序不受影响. 但是,如果我们从一个文件移除一个应用中用到的值, 那么这个应用程序将会受到影响并必须进行相应修改.
在数据库定义中我们必须了解的最后一个素语是'逻辑关系'当我们分析一个组织的信息需要时,我们试图找出实体,属性和关系. 一个实体是一个截然不同的对象
7
(人,地方,事物,观念 或活动)的组织,即有代表在数据库中. 一个属性是一种性质,描述了一个对象的一些方面,我们要记录和关系是实体之间的一个联系. 数据库管理系统的历史
我们已经看到了DBMS的文件系统. 但是,从来没有数据库系统的开始和文件系统停止的说法. 事实上,文件系统仍然存在于特定的区域. 曾有人建议说,dbms的根源是在1960阿波罗月球登陆计划 该项目是针对总统肯尼迪目标,它是人类能够登陆月球的在十年中. 当时并没有任何制度可供选择,将能够处理和管理大量信息.
因此,北美航空的主要承包商,为该项目开发些软件并取名为GUAM. GUAM是基于一个概念,该概念就是较小的部件一起作为大的组件 等等,直至最终产品的组装. 这种结构顺应了倒树概念,它同时又被称为层级结构. 在60年代中期,IBM公司加入了NAA为了将GUAM开发成现在广为人知的IMS(信息管理系统). 这就是为什么IBM IMS的管理层次纪录被允许使用串行存储设备、最值得注意的磁带,在那个时候这是一种市场需求。虽然它是最早的商业DBMS, 此项后来也开始下跌。IMS的仍是主要的DBMS层次用大部分大型主机设备.
在60年代中期,另一项重要的发展是出现通用电气公司的IDS(信息存储)由. 这一发展导致了一种新型的数据库系统称为网络数据库, 其中在信息系统中具有深远影响. 网络数据库的开发,部分是为了满足比设计同层次结构的更为复杂的数据系的需要,并部分征收标准数据库. 帮助建立这种标准,在数据系统语言的会议中,是由美国和世界的商业和贸易的代表组成的, 形成了一个清单处理专责小组参考依据DBTG为一个环境定义一个标准规格,此环境将允许数据库建立和数据操纵. 一份发表于1969年和在1971第一个定义的报告DBTG,该报告由三部分组成:
网络图示-整个数据库的内容被被视做DBA的逻辑组织-其中包括定义数据库名字,每条记录的类型,每个记录型的组件; subschema-被看做用户或应用程序的数据库部分;
一个数据管理语言定义数据的特点和数据结构,并操纵数据. 为了标准化,DBTG指定的三种不同的语言:
模式数据定义语言,它使DBA能够定义模式; DDL,它允许应用程序去定义它们所要求的数据库定义的部分; 数据操纵语言,用行操作数据.
报告虽然没有正式通过了美国国家标准研究所的多项制度,但大量的系统最终还是依照DBTG计划被开发. 这些系统现称为CODASYL 或DBTG系统. 该CODASYL及
8
分级办法作为第一代DBMS的代表。不过, 这两种模式有一些根本性的弊端 复杂的程序都必须以书面形式答复甚至是基于航行纪录对象存取的简单的疑问;最小的数据的性; 没有被广泛接受的理论基础.
1970年IBM公司研究实验室的E.F.Codd制作了他的关于关系数据模型的高效文件. 这篇文章是非常及时关且处理了前者做法的弊端.许多实验性的DBMSs随之得以实施, 关且第一个商业产品出现在70年代末和80年代早其.特别需要注意的是在IBM的圣约瑟研究实验室在美国加州开发的系统R项目, 它是70年代后期就已被于发了的.这个项目被设计是为了要证明通过提供数据结构操作与控制的现实的关系模式,并得到两个重要发展: 1.开发一个结构化称为SQL语言的查询语言,它现在已经成为关系数据库的标准语言. 2.在八十年代生产出各种商业关系DBMS产品, 例如IBM公司的DB2和SQL/DS和Oracle公司的Oracle.
现在已经有几百种关系数据库面向主机与PC机环境 虽然其中许多是延伸的关系模型的定义. 还有其他的一些例子关于多用户关系数据库管理系统,它是计算机协会的INGES II,informix软件,等等. 基于PC机的关系数据库管理系统的例子有微软的Access和Foxpro,corel公司的Paradox、Borland的Inter Base和R:Base的R:Base等. 关系数据库管理系统被称为是第二代数据库管理系统.
关系模型并不是没有弱点,尤其是其有限的建模能力. 最近有不少研究自此设法解决这一问题. 1976年,Chen提出了实体-关系模型. 1979年 Codd自己试图解决的一些在他初期工作中开发的一个延伸版的叫作RM/T和一个RM/V2的软件中出现的失误,这个偿试提供一个代表真正词语的数据模型,这种模型更松散的被列为语义数据模型.
针对日趋复杂的数据库应用,两个'新'系统已经出现: 面向对象的DBMS和对象-关系DBMS. 不过,有别于以往的型号,这些模式的实际组成并不清楚. 这种演变代表第了三代的DBMS的产生.
数据库管理系统(DBMSs):这是一个软件系统,能使用户定义、建立、维护、和控制数据的库的通道. 该数据库的软件,结合用户的应用程序和数据库. 典型的,一个数据库提供了下列便利:1.它允许用户通过数据定义语言定义一个数据库,数据定义语言允许用户定义特殊类型的数据和结构并存储在数据库中.2.它允许用户在数据库中通过数据操作语言插入、更新、删除、和撤消数据.为所有的数据和数据说明设立一个资料库,允许DML为数据提供一般性调查设施,称为查询语言. 提供一个
9
查询语言这一问题是基于文件系统的,在那里用户不得不用一套固定的查询语句工作,或激增大量的程序,对软件的管理带来了大量的麻烦。
最常见的查询语言是结构化结构查询语言,它是现在既正规又规范的关系数据库的标准语言. 它为数据库提供数据通道. 例如,它可提供:
— 一个安全体系,从而防止无权限的用户进入数据库; — 一个完整的体系,保持一致性存储数据; — 一个并发控制系统,允许共享的数据库;
— 一个恢复控制系统,当硬件或软件发生故障时可以恢复数据库到以前的状态;
— 一个使用者检索目录,包含描述数据库中的数据. 数据库设计
直到现在,我们可以设计的数据库必然是有结构的数据, 譬如说,我们已经确定了许多张表. 但为什么会得到引起结构呢? 答案很简单:在数据库设计时数据库的结构是确定的, 然而,进行数据库的设计,可能非常复杂. 为了开发一个系统满足该组织的信息需求,要求采取不同办法在文件系统中, 那里的工作为个别部门推动了应用的需要. 为了数据库的方法取得成功,该组织目前不得不考虑数据第一应用第二的办法有什么样的数据. 在方法中的这种改变被子称为模式转变. 为了使系统可以被用户最终接受,数据库的设计活动是至关重要的. 一个没设计好的数据库中会产生错误, 这可能造成严重后果的组织.另一方面, 以有效的方式精心设计制作的数据库, 可以提供正确的资料.
不幸的是,数据库设计的方法是不很受欢迎. 大多数组织和个人设计人员在方法中依赖很少, 而这通常被认为是未能在数据库的开发应用的主要的原因. 由于缺乏有条理的方法库设计, 时间和所需资源的数据库项目通常都被低估, 数据库开发的不足或低效满足要求的申请文件是有限的,并且维护也较难.
总之,在数据库开发中,设计的好坏是决定后续工作顺得与否的关键.
10
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- banwoyixia.com 版权所有 湘ICP备2023022004号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务