



版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、.1. 背景1.1 項目背景軟件系統(tǒng)名稱:食物檢驗分析系統(tǒng)提出者:某企業(yè)開發(fā)者:某軟件開發(fā)公司1.2 編寫目的現(xiàn)在的社會雖然經(jīng)濟發(fā)展了,科技提高了,但是伴隨著一系列的問題也相繼出現(xiàn)了,比如人們的造假技術(shù),假的東西越來越多,人們最關(guān)心的就是健康了, 食品是人類生活必不可少的食物來源。 近年來,世界上發(fā)生的諸多危及人身健康的畜禽及其產(chǎn)品的安全事故, 如瘋牛病、豬口蹄疫、禽流感等,不僅危害畜禽生產(chǎn),而且還感染了人,甚至致人死亡。因此,食品的安全衛(wèi)士已成為世界性的重大課題。英國發(fā)生的瘋牛病、 豬瘟和比利時發(fā)生的二惡英污染事件, 不僅造成其生產(chǎn)的動物性食品被禁止上市并大量銷毀, 而且導(dǎo)致世界各國禁止其動
2、物性食品的進口, 估計其經(jīng)濟損失高達 13 億元。從國際上的教訓(xùn)看,食品安全問題的發(fā)生不僅使其在經(jīng)濟上受到損失, 還可以影響到消費者對政府的信任, 威脅社會和安全。 比利時的二惡無污染事件不僅使衛(wèi)生部部長和農(nóng)業(yè)部長下臺,也使執(zhí)政達 40 年之久的社會黨政府倒臺。 1999 年馬來西亞流行豬病毒引起人日本腦炎,使 258 人發(fā)病,100 人死亡, 90 萬頭豬被銷毀。食品安全成為現(xiàn)在國人最擔(dān)憂的問題,一種有效的幫人們鑒別出有害化學(xué)物品的和分析食物成分的軟件和機器勢必成為國人們現(xiàn)在的迫切需要。 因此,當(dāng)今消費者不僅要求word 專業(yè)資料.食品美味可口,還要求衛(wèi)生、安全、技術(shù)等方面來促使食品向著更安
3、全更衛(wèi)生的方向發(fā)展, 必須對加工流程提出更高的標(biāo)準(zhǔn)和要求。而且現(xiàn)代化城市發(fā)展進程要求各檢驗部門機構(gòu)等企事業(yè)單位要加強工作效率,按時完成指標(biāo)任務(wù),盡量做到檢驗,核實,審查無縫隙連接,為客戶提供最詳細(xì)的檢驗報告, 故而一個可以自動生成食品檢驗報告并且可以通過企業(yè)網(wǎng)實現(xiàn)全平臺共享數(shù)據(jù)的食品檢驗軟件可以大大幫助這些企業(yè)減少不必要的勞動力,加強工作效率。1.3 需求分析功能需求功能說明職工信息管理用戶的創(chuàng)建、登錄、刪除和維護食品信息管理食品的編號、查詢和維護檢驗信息管理檢驗信息的錄入、查詢、刪除和維護非功能需求質(zhì)量屬性說明性能用戶訪問的系統(tǒng)應(yīng)該能在規(guī)定的時間做出響應(yīng),如果系統(tǒng)由于網(wǎng)絡(luò)或者數(shù)據(jù)庫原因不能在
4、規(guī)定時間做出響應(yīng),那么系統(tǒng)應(yīng)該提出警告, 不能出現(xiàn)用戶無故長時間等待的情況。安全性在 Web 數(shù)據(jù)庫客戶端,Web 服務(wù)器和數(shù)據(jù)庫服務(wù)器之間,都應(yīng)該有防火墻保護, 防止網(wǎng)絡(luò)上的非法數(shù)據(jù)請求。word 專業(yè)資料.易用性不同的用戶應(yīng)該能夠以不同的形式訪問不同的容??捎眯韵到y(tǒng)提供 7*24 小時的服務(wù),且很少停機??蓽y試性系統(tǒng)的各部分易于單獨測試, 并能方便地進行整體測試。2. 架構(gòu)分析架構(gòu)設(shè)計是將需求容轉(zhuǎn)換成設(shè)計模型的雛形以及用戶體驗?zāi)P?,其目的是建立整個系統(tǒng)初步的解決方案,為詳細(xì)活動打下基礎(chǔ)。2.1 體系結(jié)構(gòu)的選擇決定采取分布式的還是集中式的體系架構(gòu),將是一個影響系統(tǒng)性能、可縮放性、 可靠性、易
5、用性及此應(yīng)用所能支持的客戶端類型的重要決策問題。根據(jù)此前的需求得知,系統(tǒng)是為某食品檢驗單位設(shè)計的,考慮到后期的系統(tǒng)推廣應(yīng)用的可能性, 采取分布式體系架構(gòu)更適應(yīng)今后的變化。在 J2EE 開發(fā)中,搭配良好的框架可以降低開發(fā)人員解決復(fù)雜問題的難度,而如何將框架整合起來, 以使每一層都向另外的層次以松散的方式來提供接口, 同時讓組合的三個架構(gòu)在每一層都以一種松散的方式彼此溝通, 從而與底層的技術(shù)透明無關(guān), 這就是架構(gòu)分析的目的和要求。所以我們把 Structs 、Hibernate 和 Spring 組合起來的目標(biāo)就是希望能實現(xiàn)系統(tǒng)的“低耦合、高聚” 。也就是要求系統(tǒng)易于維護、易于適應(yīng)變更、可重用性的
6、特點。根據(jù)前期對需求的分析, 決定采用基于 SSH 框架來構(gòu)建此分布式word 專業(yè)資料.的信息管理系統(tǒng)。 SSH 多層的構(gòu)架模式,從上到下依次為視圖層、控制器層、模型層、持久化層和數(shù)據(jù)庫層,如下圖所示:依賴關(guān)系加強視圖層控制層模型層數(shù)據(jù)持久層數(shù)據(jù)庫層2.2 框架講解:視圖層:職責(zé)是提供控制器,將頁面的請求委派給其它層進行處word 專業(yè)資料.理,為顯示提供業(yè)務(wù)數(shù)據(jù)模型??刂茖樱郝氊?zé)是按預(yù)定的業(yè)務(wù)邏輯處理視圖層提交的請求。(1 )處理業(yè)務(wù)邏輯和業(yè)務(wù)校驗(2 )事務(wù)處理(3 )管理業(yè)務(wù)層對象之間的依賴關(guān)系(4 )向表示層提供具體業(yè)務(wù)服務(wù)的實現(xiàn)類模型層:職責(zé)是將模型的狀態(tài)轉(zhuǎn)交視圖層,以提供頁面給瀏
7、覽器。數(shù)據(jù)持久層:職責(zé)是建立持久化類及其屬性與數(shù)據(jù)庫中表及其字段的對應(yīng)關(guān)系。提供簡化 SQL 語句的機制。實現(xiàn)基本的數(shù)據(jù)操作(增、刪、改、查)數(shù)據(jù)庫層:數(shù)據(jù)庫的建立與管理。2.3 規(guī)則(約束)(1 )系統(tǒng)各層次及層次部子層次之間不得跨層調(diào)傭(2 )由 bean 傳遞模型狀態(tài)。(3 )需要在表示層綁定到列表的數(shù)據(jù)采用基于關(guān)系的數(shù)據(jù)集傳遞。(4 )對于每一個數(shù)據(jù)庫表( Table )都有一個 DB Entity class 與之對應(yīng),由 Hibernate 完成映射。(5)有些跨數(shù)據(jù)庫或跨表的操作 (如復(fù)雜的聯(lián)合查詢) 也需要由 Hibernate 來提供支持。(6 )表示層和控制層禁止出現(xiàn)任何S
8、QL 語句。2.4 SHH框架介紹word 專業(yè)資料.(1 )SpringSpring 是一個解決了許多在J2EE開發(fā)中常見的問題的強大框架。Spring提供了管理業(yè)務(wù)對象的一致方法并且鼓勵了注入對接口編程而不是對類編程的良好習(xí)慣 。 Spring的架構(gòu)基礎(chǔ)是基于使用JavaBean 屬性的 Inversion of Control容器。然而,這僅僅是完整圖景中的一部分: Spring 在使用 IoC 容器作為構(gòu)建完關(guān)注所有架構(gòu)層的完整解決方案方面是獨一無二的。 Spring 提供了唯一的數(shù)據(jù)訪問抽象,包括簡單和有效率的 JDBC 框架,極大的改進了效率并且減少了可能的錯誤。 Spring 的
9、數(shù)據(jù)訪問架構(gòu)還集成了 Hibernate 和其他 O/R mapping 解決方案。 Spring 還提供了唯一的事務(wù)管理抽象,它能夠在各種底層事務(wù)管理技術(shù), 例如 JTA 或者 JDBC 事務(wù)提供一個一致的編程模型。 Spring 提供了一個用標(biāo)準(zhǔn) Java 語言編寫的 AOP框架,它給 POJOs 提供了聲明式的事務(wù)管理和其他企業(yè)事務(wù) - 如果你需要 - 還能實現(xiàn)你自己的 aspects 。這個框架足夠強大,使得應(yīng)用程序能夠拋開 EJB 的復(fù)雜性,同時享受著和傳統(tǒng) EJB 相關(guān)的關(guān)鍵服務(wù)。Spring 還提供了可以和 IoC 容器集成的強大而靈活的 MVC Web 框架。(2 )STRUC
10、TSStruts 是一個基于 Sun J2EE 平臺的 MVC 框架,主要是采用 Servlet 和 JSP技術(shù)來實現(xiàn)的。 由于 Struts 能充分滿足應(yīng)用開發(fā)的需求,簡單易用,敏捷迅速,在過去的一年中頗受關(guān)注。Struts把Servlet 、JSP、自定義標(biāo)簽和信息資源(message resources)整合到word 專業(yè)資料.一個統(tǒng)一的框架中, 開發(fā)人員利用其進行開發(fā)時不用再自己編碼實現(xiàn)全套 MVC 模式,極大的節(jié)省了時間, 所以說 Struts 是一個非常不錯的應(yīng)用框架。(3 )HibernateHibernate是一個開放源代碼的對象關(guān)系映射框架,它對JDBC進行了非常輕量級的對
11、象封裝,使得Java 程序員可以隨心所欲的使用對象編程思維來操縱數(shù)據(jù)庫。Hibernate可以應(yīng)用在任何使用JDBC 的場合,既 可以在 Java 的客戶端程序?qū)嵱茫?也可以在 Servlet/JSP 的 Web 應(yīng)用中使用,最具革命意義的是, Hibernate可以在應(yīng)用 EJB 的 J2EE架構(gòu)中取代 CMP ,完成數(shù)據(jù)持久化的重任。,Hibernate可以在應(yīng)用 EJB 的 J2EE 架構(gòu)中取代 CMP ,完成數(shù)據(jù)持久化的重任。2.5數(shù)據(jù)持久層架構(gòu)分析在數(shù)據(jù)持久層,我們使用Hibernate來進行處理,通過下面我們來看看如何通過Hibernate來滿足系統(tǒng)的質(zhì)量屬性需求。Hibernat
12、e體系結(jié)構(gòu)概要圖:word 專業(yè)資料.從這個圖可以看出, Hibernate通過配置文件和映射文件來實現(xiàn)與數(shù)據(jù)庫的交互及實現(xiàn)對象關(guān)系映射(Object RelationalMapping,簡稱 ORM ),通過這種機制,將java 程序中的對象自動持久化到關(guān)系數(shù)據(jù)庫中,對持久化對象的改動都會反映到數(shù)據(jù)庫中。其中配置文件主要用來配置好數(shù)據(jù)庫連接的各種參數(shù)以及定義數(shù)據(jù)映射文件,通常以或者 perties形式出現(xiàn); XML Mapping配置文件是數(shù)據(jù)庫中表的數(shù)據(jù)映射文件,通常以形式出現(xiàn)。Hibernate滿足的質(zhì)量屬性需求如下表:目標(biāo)實現(xiàn)方式所采用的方法性能當(dāng)應(yīng)用程序需要
13、在關(guān)聯(lián)關(guān)系間進行導(dǎo)抓取策略航的時候,由 Hibernate獲取關(guān)聯(lián)對緩存機制象。同時, Hibernate的 Session 在事word 專業(yè)資料.務(wù)級別進行持久化數(shù)據(jù)的緩存操作。安全性并發(fā)操作時,保證數(shù)據(jù)的排他性使用鎖機制易用性用戶在進行 CRUD 操作請求時,可以得封裝 JDBC到 Hibernate的及時處理,迅速得到反饋(1) 性能Hibernate本質(zhì)上是包裝了JDBC 來進行數(shù)據(jù)操作的,由于Hibernate在調(diào)用 JDBC 上面是優(yōu)化了JDBC 調(diào)用,并且盡可能的使用最優(yōu)化的,最高效的JDBC 調(diào)用,所以性能令人滿意,同時應(yīng)用程序需要在關(guān)聯(lián)關(guān)系間進行導(dǎo)航的時候,由Hiberna
14、te獲取關(guān)聯(lián)對象, Hibernate提供的對持久化數(shù)據(jù)的緩存機制也對系統(tǒng)的性能的提高起了很大的作用。(2) 安全性Hibernate提供的悲觀鎖 / 樂觀鎖機制,能夠在多個用戶進行并發(fā)操作時保持?jǐn)?shù)據(jù)庫中數(shù)據(jù)的一致性與完整性,避免了對數(shù)據(jù)庫中數(shù)據(jù)的破壞。(3) 易用性用戶在對食品信息進行操作時都得到Hibernate的支持。2.6 業(yè)務(wù)邏輯架構(gòu)設(shè)計業(yè)務(wù)邏輯層作為該系統(tǒng)的關(guān)鍵部分,對系統(tǒng)的靈活性實現(xiàn)起著決定性的作用。在本系統(tǒng)的業(yè)務(wù)邏輯層架構(gòu)層中,采取了MVC 模式,下面簡單介紹一下 MVC 模式的好處:word 專業(yè)資料.(1) 實現(xiàn)了客戶端表示層和業(yè)務(wù)邏輯層的完全分離(2) 高效可靠的事務(wù)處理
15、(3) 具有良好的易用性,安全性MVC 模式訪問流程:MVC 模式在本系統(tǒng)中應(yīng)用:當(dāng)客戶利用網(wǎng)頁瀏覽器,發(fā)出 HTTP 請求時,這通常會牽涉到送出表單數(shù)據(jù),例如用戶名和密碼。 Servlet 收到這樣的數(shù)據(jù)并解析數(shù)據(jù)。 Servlet 扮演控制器的角色,處理你的請求,通常會向模型(一般是數(shù)據(jù)庫)發(fā)出請求。處理結(jié)果往往以 JavaBean 的形式打包。視圖就是 JSP,而 JSP 唯一的工作就是產(chǎn)生頁面, 表現(xiàn)模型的視圖以及進一步動作所需要的所有控件。當(dāng)頁面返回瀏覽器作為視圖顯示出來,用戶提出的進一步請求,也會以同樣的方式處理。由于 JSP 繼承了 J2EE良好的易用性和安全性,從而為實現(xiàn)系統(tǒng)的
16、關(guān)鍵質(zhì)量屬性奠定了基礎(chǔ)。在 MVC 模式中,視圖不再是經(jīng)典意義上的模型的觀察者。 當(dāng)模型發(fā)生改變時, 視圖的確間接的從控制器收到了相當(dāng)于通知的東西,控制器可以把 bean 送給視圖,以使得視圖word 專業(yè)資料.取得模型的狀態(tài)。 所以,視圖在 HTTP 響應(yīng)返回到瀏覽器時只需要一個狀態(tài)信息的更新。 只有當(dāng)頁面被創(chuàng)建和返回時, 創(chuàng)建視圖并結(jié)合模型狀態(tài)才有意義。 這使得提升系統(tǒng)的系能成為可能。 只有當(dāng)相應(yīng)的操作被執(zhí)行,系統(tǒng)才會去獲取關(guān)聯(lián)對象, 并且視圖不會直接模型向注冊去接受狀態(tài)信息,使得系統(tǒng)的安全性得到大大提高。業(yè)務(wù)邏輯層的框架:2.7 業(yè)務(wù)邏輯層架構(gòu)分析:該業(yè)務(wù)邏輯層的架構(gòu)是前面MVC 模式的
17、一種變形,他繼承了MVC 模式的優(yōu)點,同時,具體到我們的架構(gòu)中,它又實現(xiàn)了表示層與業(yè)務(wù)層的完全分離。在業(yè)務(wù)邏輯層我們使用Spring 框架作為容器,以便實現(xiàn)業(yè)務(wù)層與表示層和數(shù)據(jù)層的松耦合。該業(yè)務(wù)邏輯層架構(gòu)具備良好的易用性、安全性和性能。2.8 整體框架word 專業(yè)資料.3. 可行性分析3.1 經(jīng)濟可行性投資成本本系統(tǒng)開發(fā)由一個項目總監(jiān)和一個測試人員一個高級軟件工程師,化學(xué)研究人員小組3 人,營養(yǎng)師一人共7 人組成的團隊,開發(fā)周期為 45 天,化學(xué)研究小組和營養(yǎng)師不是本公司費用開銷圍之由項目提出者出資, 公司投入的三個人, 直接付 7 萬的工資及各種福利待遇。在項目安裝以及調(diào)試階段,用戶培訓(xùn),
18、員工出差等費用需要2.5萬元,在項目維護階段預(yù)計需要投入2 萬,項目累計需要11.5 萬元資金。預(yù)期收益word 專業(yè)資料.假設(shè)投入本系統(tǒng),效率可以提高 50% ,以現(xiàn)有的工作人員 20 人計算,可減少 10 人,每人每月平均工資按 2500 元計算,每年節(jié)約人員工資 5×12 ×0.25=15 萬元 / 年。按年利率 5% 計算,效益計算如下表。系統(tǒng)收益總額為: 64.9422 萬元。成本 收益分析改善了費用過高的缺點,在費用支出方面有一個很好的改善,用戶只需花費一定的資金就可以實現(xiàn)自動化開發(fā)方面。從經(jīng)濟上考慮,開發(fā)本系統(tǒng)完全可行的。3.2 技術(shù)可行性食品檢測系統(tǒng)的實現(xiàn)技術(shù)有多種,可以采用傳統(tǒng)的客戶機/ 服務(wù)器型的 B/S 型架構(gòu) ,即文件容放在遠(yuǎn)程的服務(wù)器上,用戶通過在其他計算機上登陸服務(wù)器。進入網(wǎng)絡(luò)硬盤系統(tǒng)。由于受條件所限制,數(shù)據(jù)庫服務(wù)器端采用大型數(shù)據(jù)庫系統(tǒng) ,這有利于縮短大批量數(shù)據(jù)的吞吐時間 ,使整個系統(tǒng)管理規(guī)化 ,數(shù)據(jù)的完整性、安全性得到保障 .應(yīng)用服務(wù)器端采用中間件計算模式(IBMWebSphereApplicationServer),分模塊層次結(jié)構(gòu) ,多模塊分立 ,允許系統(tǒng)的分布處理 ,以提高系統(tǒng)的工作效率。所使用的技術(shù)主要是S2SH ( struts2 、 hiberna
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 東莞正規(guī)購房合同范本
- 公司用車租賃合同范本
- 加入合作社合同范本
- 儲蓄存款合同范本
- 關(guān)于旅游合作合同范本
- 分包價格合同范本
- 養(yǎng)雞養(yǎng)殖服務(wù)合同范本
- 書寫墻體大字合同范本
- 勞務(wù)合同范本工人
- 保時捷卡宴保護膜施工方案
- 2024-2025學(xué)年初中信息技術(shù)(信息科技)七年級下冊蘇科版(2023)教學(xué)設(shè)計合集
- 中華小廚神(教學(xué)設(shè)計)-五年級下冊勞動人教版1
- 世界建筑史學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 公路橋梁工程施工安全風(fēng)險評估指南
- 重度哮喘診斷與處理中國專家共識(2024版)解讀
- 《齊桓晉文之事》+課件+2023-2024學(xué)年統(tǒng)編版必修下冊+
- 社會變革中的民事訴訟讀書筆記
- 《創(chuàng)傷失血性休克中國急診專家共識(2023)》解讀課件
- 八年級美術(shù)下冊第1課文明之光省公開課一等獎新名師課獲獎?wù)n件
- 2024年全國體育單招英語考卷和答案
- 食品安全管理制度可打印【7】
評論
0/150
提交評論