|
隨著信息技術(shù)與互聯(lián)網(wǎng)技術(shù)的高速發(fā)展,特別是李克強(qiáng)總理在政府工作報(bào)告中提出,制定“互聯(lián)網(wǎng)+”,推動(dòng)信息化社會(huì),信息技術(shù)正在各個(gè)行業(yè)被廣泛運(yùn)用,物流行業(yè)作為服務(wù)型行業(yè),信息技術(shù)對(duì)其的變革正變得越來(lái)越大。物流行業(yè)所處的競(jìng)爭(zhēng)環(huán)境正變得越來(lái)越激烈。鋼鐵物流行業(yè)正從過(guò)去單一的運(yùn)輸企業(yè),向功能完善、管理嚴(yán)格的物流企業(yè)過(guò)渡。在物流行業(yè)中,提高效率、加強(qiáng)管理,正成為各個(gè)企業(yè)亟需解決的難題。物流行業(yè)日常人員繁多,運(yùn)作的開(kāi)銷巨大,且項(xiàng)目很多。如何有效的記錄和跟蹤每筆運(yùn)單,并將責(zé)任細(xì)化到個(gè)人,是企業(yè)非常關(guān)心的問(wèn)題。在對(duì)每單業(yè)務(wù)的成本和收益了解之后,才能充分掌握企業(yè)的運(yùn)轉(zhuǎn)狀況。作為服務(wù)型行業(yè),客戶的滿意度是衡量一個(gè)企業(yè)服務(wù)質(zhì)量的重要標(biāo)志之一。在接收到客戶的委托后,實(shí)時(shí)反饋進(jìn)度,按時(shí)高效地完成任務(wù),是提升客戶滿意度的重要方式。只有將先進(jìn)的互聯(lián)網(wǎng)技術(shù)融入物流行業(yè),才能幫助企業(yè)高效率、低成本的運(yùn)營(yíng)日常業(yè)務(wù),最終達(dá)成和客戶的共贏。物流行業(yè)紛繁復(fù)雜,對(duì)承運(yùn)商的管理是非常重要的環(huán)節(jié),如何掌握鋼材的運(yùn)輸狀況,了解駕駛員的行程,以及貨物的狀態(tài)是企業(yè)面臨的重要難題。伴隨著企業(yè)的規(guī)模的壯大,業(yè)務(wù)量的增多,協(xié)調(diào)上層領(lǐng)導(dǎo)和基層員工之間的關(guān)系,需要處理信息量的加大,這些都是企業(yè)需要面臨的重大挑戰(zhàn)。TMS針對(duì)鋼材貨物,可以提供高效實(shí)時(shí)的物流解決方案,有效降低人工成本、提高工作效率,實(shí)現(xiàn)企業(yè)日常運(yùn)作的精細(xì)化管理。將顧客的需求作為第一重任,以業(yè)務(wù)作為主線,加強(qiáng)各個(gè)方面的質(zhì)量管理,對(duì)承運(yùn)商集中管理、實(shí)時(shí)高效反饋工作進(jìn)度、優(yōu)化運(yùn)輸線路,充分體現(xiàn)以服務(wù)、高效及誠(chéng)信來(lái)占領(lǐng)市場(chǎng)的策略。 第一章.緒論 本系統(tǒng)的設(shè)計(jì)是按物流運(yùn)輸管理業(yè)務(wù)的需求而進(jìn)行的,利用網(wǎng)絡(luò)代替?zhèn)鹘y(tǒng)的信息處理過(guò)程??蛻糁灰ㄟ^(guò)網(wǎng)站就能查看委托貨物的信息及進(jìn)程,并可以實(shí)現(xiàn)與運(yùn)輸管理系統(tǒng)進(jìn)行數(shù)據(jù)交互、信息的發(fā)布和反饋以及對(duì)個(gè)人事務(wù)進(jìn)行良好管理的運(yùn)輸管理系統(tǒng)。從所用技術(shù)層面,本系統(tǒng)采用Java語(yǔ)言作為開(kāi)發(fā)語(yǔ)言,后臺(tái)數(shù)據(jù)用oracle10g進(jìn)行存儲(chǔ)。利用Mybatis數(shù)據(jù)庫(kù)訪問(wèn)技術(shù)實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的各種操作。 1.1選題的依據(jù)及意義 隨著經(jīng)濟(jì)的持續(xù)快速發(fā)展,貨物運(yùn)輸在工農(nóng)業(yè)生產(chǎn)及日常生活中占據(jù)著越來(lái)越重要的地位,因此承運(yùn)方對(duì)貨物運(yùn)輸?shù)囊笠苍絹?lái)越高。貨物運(yùn)輸可以按交通工具分為陸、海、空三種,而在陸路運(yùn)輸中又以公路運(yùn)輸及鐵路運(yùn)輸為主,公路運(yùn)輸中的主要交通工具是汽車,這就要求運(yùn)輸方能夠科學(xué)合理的管理汽車及貨物運(yùn)輸。南京嘉益仕認(rèn)為對(duì)于個(gè)體戶,科學(xué)的管理汽車及貨物運(yùn)輸,會(huì)減少浪費(fèi),增加其收入;對(duì)于一個(gè)企業(yè),科學(xué)的管理汽車及貨物運(yùn)輸,就能夠提高運(yùn)輸?shù)男?,自然能提高企業(yè)的效益;同樣的,對(duì)于一個(gè)社會(huì),科學(xué)管理汽車及貨物運(yùn)輸,就會(huì)加速經(jīng)濟(jì)的發(fā)展,促進(jìn)社會(huì)的進(jìn)步。 信息產(chǎn)業(yè)的持續(xù)快速發(fā)展使得計(jì)算機(jī)被應(yīng)用在各個(gè)領(lǐng)域,自然有一些大型的企業(yè)使用計(jì)算機(jī)對(duì)車輛、貨物及貨物運(yùn)輸進(jìn)行管理,計(jì)算機(jī)的使用給用戶帶來(lái)了許多的好處,但是類似的管理系統(tǒng)要么只適合用于大型企業(yè)的車輛管理,要么用于大型配貨站的貨物管理等,還沒(méi)有專門(mén)面向小配貨站、小車隊(duì)的管理系統(tǒng)。這些小的個(gè)體配貨站,小車隊(duì)及個(gè)體運(yùn)輸戶他們的業(yè)務(wù)量固定,但是他們的客戶總是不確定的,業(yè)務(wù)非常零亂,在管理上更是非常的混亂。雖然他們都有計(jì)算機(jī)或有條件購(gòu)買(mǎi)計(jì)算機(jī),但大多數(shù)未使用計(jì)算機(jī)管理車輛及貨物運(yùn)輸,針對(duì)這種情況,TMS運(yùn)輸管理系統(tǒng)能做到合理管理車輛及貨物運(yùn)輸,而且功能要完善,容易學(xué)會(huì),使用方便。 TMS運(yùn)輸管理系統(tǒng)能夠切實(shí)地幫助用戶管理車輛及貨物運(yùn)輸情況,所以需要了解用戶現(xiàn)在和未來(lái)一段時(shí)間內(nèi)的使用需求,以確定系統(tǒng)的功能。運(yùn)輸管理系統(tǒng)的主要功能為管理汽車及貨物運(yùn)輸。用戶特點(diǎn)為在汽車及貨物運(yùn)輸上管理混亂,比如個(gè)體用戶所擁有的雖車輛少,但是業(yè)務(wù)零亂,配貨站規(guī)模雖小,可是業(yè)務(wù)繁多而且零亂。而TMS針對(duì)經(jīng)營(yíng)鋼鐵原料/成品的物流企業(yè),提供高效、實(shí)用的物流管理解決方案,為接單、調(diào)度、運(yùn)輸、跟蹤、結(jié)算、成本控制等過(guò)程提供信息支持。 TMS運(yùn)輸管理系統(tǒng)在供應(yīng)鏈協(xié)同應(yīng)用平臺(tái)中所扮演的角色及與其他系統(tǒng)的聯(lián)系以及TMS系統(tǒng)的特點(diǎn) 1.2系統(tǒng)特點(diǎn) TMS運(yùn)輸管理系統(tǒng)可以讓運(yùn)輸管理系統(tǒng)化、數(shù)字化、規(guī)范化、作業(yè)標(biāo)準(zhǔn)可視化工作指導(dǎo)盡收各崗眼底。通過(guò)動(dòng)態(tài)管理,正負(fù)面報(bào)導(dǎo),實(shí)現(xiàn)管理方法牽引,減少管理責(zé)任不清等現(xiàn)象。讓高層管理思路和卓越管理方法在中層、基層得以貫穿實(shí)現(xiàn)。實(shí)現(xiàn)自我管理運(yùn)營(yíng),把規(guī)范制度容入軟件來(lái)執(zhí)行到位,再通過(guò)企業(yè)內(nèi)部網(wǎng)站體現(xiàn);三者結(jié)合為一體,實(shí)現(xiàn)企業(yè)人人都是管理者與被管理者。更系統(tǒng)化、數(shù)字化、規(guī)范化、作業(yè)標(biāo)準(zhǔn)可視化工作指導(dǎo)盡收各崗眼底。TMS系統(tǒng)體現(xiàn)了“以提單為物流核心、信息協(xié)同為手段”的思想。從信息化的角度滿足鋼鐵物流企業(yè)業(yè)務(wù)需求,為多種的業(yè)務(wù)模式提供系統(tǒng)支持。本方案將調(diào)度、配車、跟蹤、結(jié)算信息緊密地連為一體,使信息流、物流、資金流有效地整合在一起。此外,TMS能夠擴(kuò)展與其他系統(tǒng)的接口,包括ERP、財(cái)務(wù)等系統(tǒng)。TMS是目前功能齊全、技術(shù)先進(jìn)的鋼鐵物流領(lǐng)域解決方案。TMS針對(duì)經(jīng)營(yíng)鋼鐵原料/成品的物流企業(yè),提供高效、實(shí)用的物流管理解決方案。為接單、調(diào)度、運(yùn)輸、跟蹤、結(jié)算、成本控制等過(guò)程提供信息支持。從系統(tǒng)層面支撐鋼鐵物流企業(yè)的日常運(yùn)營(yíng)活動(dòng),實(shí)現(xiàn)鋼鐵物流企業(yè)的精細(xì)化管理。 1.3系統(tǒng)開(kāi)發(fā)的目的 降低成本 信息化模式不但提高了企業(yè)的工作效率,而且減少了企業(yè)的軟硬件實(shí)施維護(hù)成本; 加強(qiáng)績(jī)效管理 監(jiān)控車輛的運(yùn)營(yíng)狀況,掌握駕駛員和業(yè)務(wù)員工作效率,提升公司管理精細(xì)水平和客戶滿意度水平; 提升業(yè)務(wù)效率 從信息化的角度滿足鋼材物流企業(yè)各方業(yè)務(wù)需求,為多種的運(yùn)輸方式提供系統(tǒng)支持,提升公司業(yè)務(wù)效率,有限的時(shí)間內(nèi)完成跟多的工作; 1.4系統(tǒng)研究?jī)?nèi)容 運(yùn)輸管理系統(tǒng)的定義和特點(diǎn)、運(yùn)輸管理系統(tǒng)的發(fā)展過(guò)程、運(yùn)輸管理系統(tǒng)的必要性、運(yùn)輸管理系統(tǒng)系統(tǒng)的一般功能; 研究基于Web的系統(tǒng)的開(kāi)發(fā)過(guò)程,運(yùn)用軟件工程的基本思想指導(dǎo)系統(tǒng)開(kāi)發(fā)實(shí)踐; 研究在運(yùn)輸管理系統(tǒng)開(kāi)發(fā)的過(guò)程中如何進(jìn)行數(shù)據(jù)庫(kù)設(shè)計(jì),包括需求分析、概念結(jié)構(gòu)設(shè)計(jì)、邏輯結(jié)構(gòu)設(shè)計(jì)、物理結(jié)構(gòu)設(shè)計(jì)等步驟; 研究用Java技術(shù)開(kāi)發(fā)Web動(dòng)態(tài)交互網(wǎng)頁(yè),包括使用Java來(lái)實(shí)現(xiàn)發(fā)送下載、上傳文件功能及用SpringMVC+Mybatis+Jsp架構(gòu)來(lái)設(shè)計(jì)能存取數(shù)據(jù)庫(kù)的網(wǎng)頁(yè),讀取、刪除與修改數(shù)據(jù)的系統(tǒng)。 1.5系統(tǒng)功能 1.5.1系統(tǒng)功能概述 本運(yùn)輸管理系統(tǒng)依托互聯(lián)網(wǎng)技術(shù),致力于鋼鐵運(yùn)輸資源的整合與優(yōu)化,以降低物流成本,管控過(guò)程風(fēng)險(xiǎn),節(jié)約車輛資源,降低返程空載率為目標(biāo),努力為鋼材生產(chǎn)商、交易商、承運(yùn)打造一個(gè)誠(chéng)信、安全、高效、便捷的鋼鐵物流運(yùn)輸平臺(tái)。主要包括:業(yè)務(wù)操作、車輛成本管理、業(yè)務(wù)工具、結(jié)算管理、基礎(chǔ)管理、系統(tǒng)管理等模塊。其中業(yè)務(wù)操作部分是針對(duì)客戶委托及承運(yùn)商的流程進(jìn)行管理,包括:客戶委托、提單配載、裝車返單管理、返單上傳、掃描返單、應(yīng)收費(fèi)用、應(yīng)付費(fèi)用、投訴管理、價(jià)格管理等環(huán)節(jié)。 1.5.2業(yè)務(wù)處理范圍 業(yè)務(wù)操作是系統(tǒng)的核心部分,對(duì)客戶的委托信息進(jìn)行處理。系統(tǒng)功能主要包括:業(yè)務(wù)操作、車輛成本管理、結(jié)算管理和基礎(chǔ)管理等方面。 業(yè)務(wù)主要包括:(產(chǎn)品樹(shù)) 表1-1 系統(tǒng)業(yè)務(wù)表 產(chǎn)品歸屬 | 產(chǎn)品種類 | 業(yè)務(wù)操作 | 客戶委托 | 提單配載 | 裝車返單管理 | 掃碼返單 | 返單上傳 | 批量掃碼返單 | 應(yīng)收費(fèi)用 | 應(yīng)付費(fèi)用登記 | 投訴管理 | 價(jià)格管理 | 車輛成本管理 | 車輛維修 | 油料管理 | 過(guò)路費(fèi)管理 | 結(jié)算管理 | 客戶結(jié)算單 | 車隊(duì)結(jié)算單 | 財(cái)務(wù)收款 | 開(kāi)票審核 | 付款審核 | 開(kāi)票申請(qǐng) | 結(jié)算管理 | 客戶管理 | 承運(yùn)商管理 | 車船管理 | 駕駛員管理 | 地址管理 | 系統(tǒng)管理 | 用戶管理 |
|
|
|
|
1.5.3功能結(jié)構(gòu)圖 TMS功能結(jié)構(gòu)圖 1.5.4專用名詞解釋 客戶委托:客戶在線提出需求或者給交易員打電話提出需求。 提單配載:接受客戶的委托后,交易員在后臺(tái),將客戶需要運(yùn)輸?shù)呢浳锓峙涞匠羞\(yùn)商。 應(yīng)收費(fèi)用:對(duì)客戶委托的貨物進(jìn)行費(fèi)用登記,收取客戶運(yùn)輸貨物的費(fèi)用。 應(yīng)付費(fèi)用:對(duì)承運(yùn)商運(yùn)輸貨物費(fèi)用的登記,支付承運(yùn)商運(yùn)輸貨物的費(fèi)用。 投訴管理:對(duì)客戶的投訴或建議進(jìn)行處理。 掃描返單:承運(yùn)商完成運(yùn)輸整個(gè)過(guò)程后,進(jìn)行裝車單號(hào)的填寫(xiě)完成。 第二章.系統(tǒng)分析與實(shí)現(xiàn) 2.1系統(tǒng)架構(gòu) 本系統(tǒng)中采用經(jīng)典MVC三層架構(gòu)模式,這種架構(gòu)模式的優(yōu)點(diǎn): MVC要求對(duì)應(yīng)用分層,雖然要花費(fèi)額外的工作,但產(chǎn)品的結(jié)構(gòu)清晰,產(chǎn)品的應(yīng)用通過(guò)模型可以更好地體現(xiàn)。采用合理的設(shè)計(jì)理念,與相關(guān)系統(tǒng)有良好的互聯(lián)與兼容能力,能適應(yīng)業(yè)務(wù)的擴(kuò)展和變化。此外,這種開(kāi)發(fā)技術(shù),使系統(tǒng)具備安全、可靠和穩(wěn)定的特性。立足實(shí)際業(yè)務(wù)特性和信息的高效流轉(zhuǎn),系統(tǒng)具備良好的操作性和實(shí)效性,最重要的是應(yīng)該有多個(gè)視圖對(duì)應(yīng)一個(gè)模型的能力。 這種劃分雖然看似多余,但是充分體現(xiàn)了“高內(nèi)聚低耦合”的設(shè)計(jì)理念 在目前用戶需求的快速變化下,可能有多種方式訪問(wèn)應(yīng)用的要求具體的框架為SpringMVC,其四大組件中央處理器、處理器映射器、處理器適配器、視圖解析器之間的關(guān)聯(lián)如下: 組件的功能如下: DispatcherServlet前端控制器 用戶請(qǐng)求到達(dá)前端控制器, dispatcherServlet是整個(gè)流程控制的中心,由它調(diào)用其它組件處理用戶的請(qǐng)求,dispatcherServlet的存在降低了組件之間的耦合性。 HandlerMapping:處理器映射器 HandlerMapping負(fù)責(zé)根據(jù)用戶請(qǐng)求找到Handler即處理器,springmvc提供了不同的映射器實(shí)現(xiàn)不同的映射方式,例如:配置文件方式,實(shí)現(xiàn)接口方式,注解方式等。 HandlAdapter:處理器適配器 通過(guò)HandlerAdapter對(duì)處理器進(jìn)行執(zhí)行,這是適配器模式的應(yīng)用,通過(guò)擴(kuò)展適配器可以對(duì)更多類型的處理器進(jìn)行執(zhí)行。 ViewResolver:視圖解析器 ViewResolver負(fù)責(zé)將處理結(jié)果生成View視圖,ViewResolver首先根據(jù)邏輯視圖名解析成物理視圖名即具體的頁(yè)面地址,再生成View視圖對(duì)象,最后對(duì)View進(jìn)行渲染將處理結(jié)果通過(guò)頁(yè)面展示給用戶。 springmvc框架提供了很多的View視圖類型,包括:jstlView、freemarkerView、pdfView等。 2.2系統(tǒng)開(kāi)發(fā)環(huán)境配置 2.2.1 Hardware (硬件) 硬件環(huán)境(訪問(wèn)者):建議用戶在允許的情況下采用較高配置硬件資源。 硬件環(huán)境(開(kāi)發(fā)者):奔騰4處理器,1G內(nèi)存,100G磁盤(pán)空間。 2.2.2 Software (軟件) 訪問(wèn)者:訪問(wèn)者可IE瀏覽器上來(lái)進(jìn)行瀏覽。 開(kāi)發(fā)者: 1).Operating System (操作系統(tǒng)):Windows7 2).Tools (工具):eclipse。 3).Database (數(shù)據(jù)庫(kù)):Oracle10g 4). Server (服務(wù)器) :Tomcat7.0 5).Run Circumstance (運(yùn)行環(huán)境) :安裝JDK1.7_0_65支持Java運(yùn)行。 6).Technic (技術(shù)):前臺(tái)網(wǎng)頁(yè)的設(shè)計(jì)采用JSP技術(shù)制作,其能夠結(jié)合JavaBeans技術(shù)來(lái)使網(wǎng)頁(yè)中程序的功能得到擴(kuò)充。實(shí)際上jsp程序就是我們所熟知的java程序,html文檔和jsp元素的混合體,其中jsp以java為腳本語(yǔ)言,幾乎可以說(shuō)是集成了java的所有的特點(diǎn)。 2.3系統(tǒng)實(shí)現(xiàn) 在開(kāi)發(fā)之前首先要考慮語(yǔ)言的選擇,Java語(yǔ)言作為當(dāng)下最流行的語(yǔ)言之一,其跨平臺(tái),且上手容易成為首選。要高效率開(kāi)發(fā)必須選擇合適的IDE,在IDE方面采用eclipse作為開(kāi)發(fā)工具,因?yàn)閑clipse軟件出過(guò)很多版本,而且開(kāi)源免費(fèi)。后臺(tái)數(shù)據(jù)用oracle10g進(jìn)行存儲(chǔ)。本系統(tǒng)采用的oracle數(shù)據(jù)庫(kù),在性能上由于其他小型數(shù)據(jù)庫(kù),一定程度上保證了數(shù)據(jù)庫(kù)的水平程度的增長(zhǎng)和垂直方向的增長(zhǎng),并且可以承受一定用戶的并發(fā)訪問(wèn)。在與數(shù)據(jù)交互時(shí),采用的是流行的mybatis持久層框架。mybatis并不是一個(gè)對(duì)象關(guān)系映射框架,在表字段很多的情況下,具有一定優(yōu)勢(shì),如果采用Hibernate,這種重量級(jí)的框架,由于是面向?qū)ο笏枷朐O(shè)計(jì)的,在軟件編寫(xiě)過(guò)程中很方便,但是,會(huì)加大數(shù)據(jù)庫(kù)的壓力,每次查詢的是一個(gè)對(duì)象的所有字段,會(huì)連帶著查詢出一些不必要的信息。而mybatis可以讓開(kāi)發(fā)人員自己編寫(xiě)sql語(yǔ)句,這種細(xì)粒度的變成,會(huì)很大程度上減少數(shù)據(jù)庫(kù)的壓力,而且自定義sql語(yǔ)句會(huì)讓程序?qū)崿F(xiàn)很復(fù)雜的功能。在前端,采用JSP技術(shù),JSP具有跨平臺(tái)性,一次編寫(xiě)可以在多平臺(tái)運(yùn)行此外,它還有很好伸縮性,只需要一個(gè)小的jar文件,即可運(yùn)行,不依賴其他組件,利于開(kāi)發(fā)。而且系統(tǒng)具有很高的實(shí)用性,對(duì)每一個(gè)功能,基本上都提供了查詢功能,用戶可以很方便的查詢到自己需要的信息。在新增時(shí),由于需要填寫(xiě)的信息很多,可以復(fù)制原有的一條記錄,只需要在原來(lái)的基礎(chǔ)上進(jìn)行修改即可,讓用戶有很好的體驗(yàn)效果修改后進(jìn)行保存即可提交到數(shù)據(jù)庫(kù)進(jìn)行存儲(chǔ)。修改一些記錄時(shí),用的和新增一樣的頁(yè)面,在一定程度上可以減少軟件的冗余,新增和修改的不同之處在于,修改是這個(gè)記錄已經(jīng)存在,所以id是已經(jīng)存在的,在保存時(shí),通過(guò)判斷是否有id即可知道用戶的操作是新增還是修改。 (1)基于B/S模式開(kāi)發(fā)TMS系統(tǒng)的實(shí)現(xiàn) B/S(Browser/Server)模式結(jié)構(gòu)即瀏覽器/服務(wù)器結(jié)構(gòu)。本系統(tǒng)基于B/S模式,伴隨著Internet技術(shù)的不斷高速發(fā)展,B/S結(jié)構(gòu)作為C/S架構(gòu)的補(bǔ)充和改進(jìn),用戶可以很方便的使用它是隨著Internet技術(shù)的興起,對(duì)C/S(客戶端/服務(wù)器)結(jié)構(gòu)的一種變化或者改進(jìn)的結(jié)構(gòu)[8]。在B/S結(jié)構(gòu)下,用戶工作界面通過(guò)WWW瀏覽器來(lái)實(shí)現(xiàn),極少部分事務(wù)邏輯在前端(Browser)實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端(Server)實(shí)現(xiàn),形成所謂三層結(jié)構(gòu)。這樣就大大簡(jiǎn)化了客戶端電腦載荷,減輕了系統(tǒng)維護(hù)與升級(jí)的成本和工作量,降低了用戶的總體成本。 (2)掌握網(wǎng)頁(yè)編輯,界面設(shè)計(jì)等有關(guān)工具 本系統(tǒng)采用Java框架中的MVC經(jīng)典架構(gòu)作為網(wǎng)站開(kāi)發(fā)工具,它具有功能強(qiáng)大、可視化、容易上手等優(yōu)點(diǎn)。通過(guò)本課題的研究可以進(jìn)一步提高網(wǎng)頁(yè)制作和網(wǎng)站開(kāi)發(fā)能力。 (3)掌握系統(tǒng)的開(kāi)發(fā)流程 本課題將軟件工程的基本原理與系統(tǒng)開(kāi)發(fā)的具體實(shí)踐相結(jié)合,加深對(duì)軟件工程思想的理解,并積累系統(tǒng)開(kāi)發(fā)的實(shí)踐經(jīng)驗(yàn)。 (4)掌握數(shù)據(jù)庫(kù)在Web上的應(yīng)用方法 本課題數(shù)據(jù)庫(kù)設(shè)計(jì)時(shí)采用的是Oracle 10g,它是一種可擴(kuò)展的、高性能的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)。通過(guò)本課題的研究可以加深對(duì)數(shù)據(jù)庫(kù)基本概念和基本技術(shù)的理解,并獲得數(shù)據(jù)庫(kù)開(kāi)發(fā)的實(shí)際經(jīng)驗(yàn)。 (5)掌握J(rèn)ava語(yǔ)言的使用方法 Java是Sun公司開(kāi)發(fā)的一套服務(wù)器端運(yùn)行的腳本平臺(tái),可以結(jié)合HTML網(wǎng)頁(yè)建立動(dòng)態(tài)、交互且高效的Web服務(wù)器應(yīng)用程序。Java具有簡(jiǎn)單易學(xué)、對(duì)服務(wù)器要求低、容易編寫(xiě)、易于維護(hù)、架構(gòu)清晰等優(yōu)點(diǎn),比較適合本課題研究的運(yùn)輸管理系統(tǒng)的開(kāi)發(fā)要求。 第三章.系統(tǒng)設(shè)計(jì) 3.1概述 完成軟件的需求分析后,就可以開(kāi)始軟件設(shè)計(jì)了。在軟件開(kāi)發(fā)時(shí)期,設(shè)計(jì)階段是最富有活力、最需要發(fā)揮創(chuàng)造精神的階段。系統(tǒng)的總體設(shè)計(jì)階段就是要把分析階段產(chǎn)生的軟件需求說(shuō)明轉(zhuǎn)換為用適當(dāng)手段表示的軟件設(shè)計(jì)的方案。 3.2數(shù)據(jù)庫(kù)概念設(shè)計(jì) 數(shù)據(jù)庫(kù)概念構(gòu)設(shè)計(jì)是將需求按照需求說(shuō)明書(shū)抽象成一個(gè)不依賴任何機(jī)器的數(shù)據(jù)模型,這種稱為概念模型。概念模型使設(shè)計(jì)者的注意力能夠不局限于細(xì)節(jié),而是重點(diǎn)關(guān)注最重要的信息的組織結(jié)構(gòu)和處理方式上。在分析系統(tǒng)設(shè)計(jì)時(shí),要按照一定的次序進(jìn)行,首先要進(jìn)行數(shù)據(jù)分析,抽象出實(shí)體,將其規(guī)劃好,建立模型[10]。 3.2.1定義實(shí)體集及屬性 (1) 用戶實(shí)體集t_03_user:用戶id(id)、用戶名稱(user_name)、登錄名(user_name)、密碼(password)、所屬客戶id(customer_id)、電話 (mobile)。 (2) 委托表實(shí)體集:品種(publish_type_name)、起點(diǎn) (shopsign)、終點(diǎn)(spec)、數(shù)量 (amount)、提貨日期(start_th_date)、委托類型(type)、訂單號(hào)(lading_bill)、客戶Id(customer_id) 、 要求到貨時(shí)間(other2)。 (3) 訂單主表實(shí)體集:訂單id(id)、貨物名稱 (huo_name)、貨物類型(huo_type)、貨物數(shù)量 (huo_number)、訂單日期(bill_date)、訂單狀態(tài)(bill_status)、客戶名稱(order_cust_trade_name)、毛重(gross_weight)、凈重(net_weight)、運(yùn)單號(hào)(waybill_id)、提單號(hào)(landing_bill)。 (4) 訂單子表實(shí)體集admin:訂單主表ID(bill_id)、委托ID (publish_id)、收貨客戶名稱(order_cust_receive_name)、起點(diǎn)(start_station_name)、終點(diǎn)(dest_station_name)、凈重(net_weight)、毛重(gross_weight)、貨物名(product_type_name)、創(chuàng)建時(shí)間(create_date) 、運(yùn)費(fèi)單價(jià)(unit_price)。 3.2.2 E-R 模型設(shè)計(jì) 用戶實(shí)體: 委托單實(shí)體: 訂單主表: 訂單子表: 3.2.3 實(shí)體聯(lián)系圖 3.3數(shù)據(jù)庫(kù)邏輯設(shè)計(jì) 用戶(用戶ID、姓名、登錄名、用戶密碼、所屬客戶ID、電話、客戶類型) 委托單(ID、委托類型、品種名稱、起點(diǎn)、品種類型、終點(diǎn)、提單號(hào)、提貨時(shí)間、客戶ID、數(shù)量、要求到達(dá)時(shí)間) 訂單(訂單ID、凈重、毛重、運(yùn)單號(hào)、運(yùn)費(fèi)單價(jià)、委托客戶ID、訂單日期、委托ID、訂單來(lái)源、創(chuàng)建人、備注) 訂單子表(品種、委托ID、訂單日期、提單號(hào)、起點(diǎn)、終點(diǎn)、凈重、毛重、訂單ID、委托客戶ID) 3.4數(shù)據(jù)庫(kù)實(shí)施 1).數(shù)據(jù)庫(kù)的實(shí)施主要是根據(jù)邏輯結(jié)構(gòu)設(shè)計(jì)和物理結(jié)構(gòu)設(shè)計(jì)的結(jié)果,新建數(shù)據(jù)庫(kù),建立數(shù)據(jù)庫(kù)對(duì)象,導(dǎo)入測(cè)試數(shù)據(jù),進(jìn)行相關(guān)各個(gè)方面的測(cè)試。此階段相當(dāng)于軟件工程中的代碼編寫(xiě)和程序調(diào)試的階段。 2).打開(kāi)數(shù)據(jù)庫(kù)并管理員登錄登陸 3).創(chuàng)建用戶并授權(quán)[11] create user hbwk identified by hbwk grant connect,resource,dba to hbwk; 4).創(chuàng)建表對(duì)象 第四章.系統(tǒng)實(shí)現(xiàn) 4.1登錄窗體 將項(xiàng)目發(fā)布到tomcat服務(wù)器中,啟動(dòng)tomcat服務(wù)器,在瀏覽器中輸入系統(tǒng)的地址,即可進(jìn)入到登錄頁(yè)面,如下所示: 4.2主界面 輸入正確的用戶名和密碼正常登陸進(jìn)入系統(tǒng)后可以看到主界面。 在頁(yè)面的左側(cè)是各種可以點(diǎn)擊的菜單,這些菜單對(duì)應(yīng)系統(tǒng)的所有業(yè)務(wù)操作,這些信息一目了然,可以提醒用戶進(jìn)行各種代辦事宜的操作,其中客戶委托顯示有系統(tǒng)中總的提單數(shù),有多少貨物還沒(méi)有下發(fā),用戶在看到相關(guān)信息后,可以及時(shí)對(duì)委托進(jìn)行下發(fā)處理。在提單配載中提示有提單數(shù),有多少貨物還沒(méi)有配載,還沒(méi)有進(jìn)行返單的提單數(shù)及貨物數(shù)量,已經(jīng)當(dāng)天配載的數(shù)量。費(fèi)用登記中顯示了系統(tǒng)中的提單數(shù)已經(jīng)還沒(méi)有進(jìn)行費(fèi)用登記的貨物的數(shù)量。結(jié)算開(kāi)票顯示了系統(tǒng)中還沒(méi)有進(jìn)行開(kāi)票申請(qǐng)的客戶結(jié)算單數(shù)量。 4.3業(yè)務(wù)操作模塊 進(jìn)入客戶委托管理頁(yè)面,輸入查詢條件,點(diǎn)擊“查詢”按鈕,系統(tǒng)將符合條件的查詢結(jié)果顯示在列表中。 點(diǎn)擊“新增”按鈕,系統(tǒng)彈出新增客戶委托明細(xì)頁(yè)面,用戶可以新增客戶委托的詳細(xì)信息。當(dāng)填寫(xiě)完詳細(xì)信息后,點(diǎn)擊保存該客戶委托但是沒(méi)有下發(fā),點(diǎn)擊保存并下發(fā),先保存,再下發(fā),點(diǎn)擊“X”返回上關(guān)閉新增頁(yè)面。選中某一條記錄可以進(jìn)行點(diǎn)擊“編輯”按鈕進(jìn)行編輯操作。選中某一條記錄查看詳情可以查看客戶委托的進(jìn)度,可以向客戶及時(shí)反饋貨物的信息。在客戶委托沒(méi)有下發(fā)的情況下,可以點(diǎn)擊撤銷委托,撤銷客戶的委托。 下發(fā)成功后,在提單配載頁(yè)面可以看到待配載的委托單: 輸入承運(yùn)商的關(guān)鍵字,系統(tǒng)會(huì)列出所有承運(yùn)商的信息供用戶選擇承運(yùn)商,同樣的方式可以選擇車牌號(hào)和駕駛員,成功填完相關(guān)信息后,點(diǎn)擊下一步即可成功配載并且彈出提示是否需要打印回單。 待貨物到達(dá)卸貨點(diǎn),可以在裝車返單管理頁(yè)面進(jìn)行系列操作: 當(dāng)點(diǎn)擊追加提單頁(yè)面時(shí),列出當(dāng)前提單的信息,并可以輸入其他提單號(hào),將其追加到所選提單下。 可以選中某條記錄進(jìn)行撤銷返單操作或者撤銷裝車操作,可以打印回單讓收貨人確認(rèn)收貨并核查貨物種類和數(shù)量??梢跃庉媯渥⒂涗浵卵b車返單過(guò)程中需要記錄的事件。 到達(dá)卸貨點(diǎn)后,可以點(diǎn)擊達(dá)到卸貨點(diǎn)??梢渣c(diǎn)擊掃描返單,輸入裝車單號(hào)后,可以進(jìn)行返單處理。 在投訴管理頁(yè)面可以對(duì)承運(yùn)商進(jìn)行相關(guān)評(píng)價(jià)或者投訴建議,并且可以對(duì)投訴建議進(jìn)行跟蹤處理。知道客戶滿意為止。這種方式可以讓企業(yè)不斷地提升自身的業(yè)務(wù)水準(zhǔn),做到讓客戶滿意放心。 第五章.程序的測(cè)試 5.1 測(cè)試的重要性及目的 1.測(cè)試的重要性 在一些軟件業(yè)較發(fā)達(dá)的國(guó)家,因?yàn)樵谙到y(tǒng)工程中軟件開(kāi)發(fā)占據(jù)的比重較大,因此軟件測(cè)試也成為了開(kāi)發(fā)過(guò)程中的一個(gè)有機(jī)組成部分。在以往,軟件測(cè)試是產(chǎn)品交付之前保證軟件質(zhì)量的一個(gè)手段,大多用于運(yùn)行之前?,F(xiàn)在,大家都開(kāi)始覺(jué)得軟件測(cè)試不應(yīng)僅僅在產(chǎn)品運(yùn)行維護(hù)之前,軟件的每一個(gè)階段都應(yīng)該要測(cè)試,以此來(lái)檢驗(yàn)各個(gè)子階段是否達(dá)到了預(yù)期效果,從而方便能更早的發(fā)現(xiàn)錯(cuò)誤并糾正 ,以免錯(cuò)誤留在后面更加難改。 我們?cè)趯?shí)踐中,軟件測(cè)試的困難會(huì)經(jīng)常使人望而卻步,其實(shí)主要是因?yàn)楹芏嗳藢?duì)測(cè)試依舊存在一些不正確的看法。這包括: 測(cè)試工作很枯燥,很多人不敢興趣,而且很多人認(rèn)為測(cè)試的工作沒(méi)有編碼之類的工作能給人成就感。其次是有些認(rèn)對(duì)自己編寫(xiě)的程序太過(guò)于自信,而導(dǎo)致在發(fā)現(xiàn)錯(cuò)誤后,會(huì)覺(jué)得別人能力不夠。最后,測(cè)試也是一個(gè)艱苦而細(xì)致的工作,所以有些人往往會(huì)難以堅(jiān)持下去[12]。 我們必須正確的認(rèn)識(shí)了解軟件測(cè)試,這樣才能把設(shè)計(jì)做的更好,才能使做出來(lái)的東西更加的完美。 2.測(cè)試的目的 很多人可能會(huì)覺(jué)得軟件測(cè)試的目的無(wú)非就是找出錯(cuò)誤來(lái),其實(shí)也不僅僅局限于此,軟件測(cè)試的目的大致有三點(diǎn): (1) 確認(rèn)軟件的質(zhì)量。軟件做了之后,我們要對(duì)其之類進(jìn)行測(cè)試,確認(rèn)該軟件用正確的方式達(dá)到了預(yù)期的要求。 (2) 提供信息。測(cè)試應(yīng)能夠給開(kāi)發(fā)人員或經(jīng)理提供反饋信息。 (3) 軟件測(cè)試不僅是在測(cè)試軟件產(chǎn)品的本身,而且還包括軟件開(kāi)發(fā)的過(guò)程。 一個(gè)軟件不僅僅只需要做完就可以,還要能夠保證軟件的質(zhì)量,如果完成之后發(fā)現(xiàn)有錯(cuò)誤也是有缺陷的,所以測(cè)試還應(yīng)該在開(kāi)發(fā)過(guò)程中也測(cè)試。 當(dāng)然,測(cè)試除了找出錯(cuò)誤來(lái),還能夠分析錯(cuò)誤的原因,以便能更有針對(duì)性的修改。其次,若是測(cè)試中沒(méi)有發(fā)現(xiàn)錯(cuò)誤,這個(gè)測(cè)試的成本也是值得的,評(píng)定一個(gè)設(shè)計(jì)的好壞,就必須要有一個(gè)完整的測(cè)試流程。 5.2 測(cè)試的步驟 測(cè)試的步驟與開(kāi)發(fā)的過(guò)程也比較類似,必須按照步驟進(jìn)行,通常一些較大型的軟件系統(tǒng)大多右若干個(gè)子系統(tǒng)組成的,所以,一些較大型的軟件系統(tǒng)的測(cè)試基本上也都是由以下的幾個(gè)步驟來(lái)組成的。 (1)模塊測(cè)試:這個(gè)步驟在測(cè)試過(guò)程中往往是發(fā)現(xiàn)一些編碼和詳細(xì)設(shè)計(jì)的錯(cuò)誤。 (2)子系統(tǒng)測(cè)試:這個(gè)步驟主要的目的是來(lái)測(cè)試一些模塊的接口。 (3)系統(tǒng)測(cè)試:這個(gè)步驟在測(cè)試中主要是發(fā)現(xiàn)一些軟件設(shè)計(jì)中的錯(cuò)誤,或者找尋一些需求說(shuō)明中的一些錯(cuò)誤。 (4) 驗(yàn)收測(cè)試:這個(gè)步驟在測(cè)試中大多是發(fā)現(xiàn)一些系統(tǒng)需求說(shuō)明書(shū)中的一些錯(cuò)誤。 5.3 測(cè)試的主要內(nèi)容 在大多數(shù)情況下,為了保證測(cè)試的質(zhì)量,我們大致將測(cè)試過(guò)程分為代碼審查,單元測(cè)試 ,集成測(cè)試,確認(rèn)測(cè)試和系統(tǒng)測(cè)試等5個(gè)步驟。 (1)代碼審查 代碼審查主要是針對(duì)一些語(yǔ)法語(yǔ)義上面的,比如語(yǔ)句的完整性,數(shù)據(jù)定義的準(zhǔn)確性等。 (2)單元測(cè)試 單元測(cè)試主要是檢查系統(tǒng)的一些最小單位模塊,我們可以通過(guò)測(cè)試來(lái)發(fā)現(xiàn)一些功能不符或一些編碼時(shí)候的錯(cuò)誤。 比如我們?cè)谳斎胧謾C(jī)號(hào)的時(shí)候要保證在以下輸入情況系統(tǒng)能正常運(yùn)行: 1).輸入號(hào)碼的時(shí)候輸入非法字符:如¥@等。 2).輸入的號(hào)碼不存在。 3).輸入的信息超過(guò)規(guī)定長(zhǎng)度。 4).輸入的信息為空。 (3)集成測(cè)試 其主要目標(biāo)是發(fā)現(xiàn)與接口有關(guān)的問(wèn)題,比如兩個(gè)模塊之間有可能由于疏忽而造成一些有害的影響,有些模塊看起來(lái)是可以接受的誤差,但是這些誤差累積起來(lái)可能會(huì)達(dá)到一個(gè)不能接受的程度,有些子功能可能是符合要求的,但是組合起來(lái)就有可能達(dá)不到預(yù)期的效果,以及可能會(huì)有其它一些錯(cuò)誤等。 (4)確認(rèn)測(cè)試 確認(rèn)測(cè)試的主要目的是像用戶表明系統(tǒng)能夠像預(yù)定的那樣工作。在集成測(cè)試后,大多數(shù)錯(cuò)誤也排除了,要做的就是對(duì)軟件有效性的驗(yàn)證,確認(rèn)軟件最終的功能能像用戶預(yù)期的那樣。 (5)系統(tǒng)測(cè)試 在軟件開(kāi)發(fā)完成以后,最終還要與系統(tǒng)中其他部分配套運(yùn)行,進(jìn)行系統(tǒng)測(cè)試。主要是測(cè)試這個(gè)設(shè)計(jì)是否滿足用戶需求,安全性是否可靠,以及在一些超負(fù)荷情況,軟件能否正常工作等。 在講過(guò)上述的這些測(cè)試之后,軟件測(cè)試的過(guò)程也算是大致完成了,所開(kāi)發(fā)出來(lái)的軟件也大致上滿足了客戶的一些需求,從而也宣告測(cè)試結(jié)束。 總結(jié) 經(jīng)過(guò)三個(gè)月的不懈努力,在老師及同學(xué)幫助下,終于完成本系統(tǒng)的開(kāi)發(fā),任何事情只有自己親身經(jīng)歷才知道不易,在這份不易中,自己得到的更多是收獲。本次畢業(yè)設(shè)計(jì)我體驗(yàn)到了項(xiàng)目的開(kāi)發(fā)樂(lè)趣,充分重視到了基礎(chǔ)的重要性。很多時(shí)候?qū)Υa錯(cuò)誤的調(diào)試,讓我學(xué)會(huì)到了很快定位bug,解決bug。而且,不僅僅是設(shè)計(jì)能力而且是動(dòng)手能力的提升。同時(shí)對(duì)數(shù)據(jù)庫(kù)理論知識(shí)有了更深一層的認(rèn)識(shí)。對(duì)數(shù)據(jù)庫(kù)的創(chuàng)建過(guò)程更加透徹的了解,我越來(lái)越感覺(jué)到基礎(chǔ)的重要性,這不光來(lái)源于我在第一階段的辛苦,更加體會(huì)深刻的是我在后面的實(shí)訓(xùn)中,不斷發(fā)現(xiàn)不足,不斷的更改以前一階段的相關(guān)內(nèi)容,同時(shí),由于編程水平有限。所以我不斷的努力,努力做到自己的想象的成果。只要學(xué)習(xí)就會(huì)有更多的問(wèn)題,有更多的難點(diǎn),但也會(huì)有更多的收獲,只要不斷學(xué)習(xí),善于總結(jié),相信在以后的工作中一定會(huì)收獲很大。
信息發(fā)布:廣州名易軟件有限公司 http://www.jetlc.com
|