可行性分析報(bào)告_第1頁
可行性分析報(bào)告_第2頁
可行性分析報(bào)告_第3頁
可行性分析報(bào)告_第4頁
可行性分析報(bào)告_第5頁
已閱讀5頁,還剩9頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、1 .背景1.1 項(xiàng)目背景軟件系統(tǒng)名稱:食物檢驗(yàn)分析系統(tǒng)提出者:某企業(yè)開發(fā)者:某軟件開發(fā)公司1.2 編寫目的現(xiàn)在的社會(huì)雖然經(jīng)濟(jì)發(fā)展了,科技提高了,但是伴隨著一系列的 問題也相繼出現(xiàn)了,比如人們的造假技術(shù),假的東西越來越多,人們 最關(guān)心的就是健康了,食品是人類生活必不可少的食物來源。近年來, 世界上發(fā)生的諸多危及人身健康的畜禽及其產(chǎn)品的安全事故,如瘋牛病、豬口蹄疫、禽流感等,不僅危害畜禽生產(chǎn),而且還感染了人,甚 至致人死亡。因此,食品的安全衛(wèi)士已成為世界性的重大課題。英國 發(fā)生的瘋牛病、豬瘟和比利時(shí)發(fā)生的二惡英污染事件, 不僅造成其生 產(chǎn)的動(dòng)物性食品被禁止上市并大量銷毀,而且導(dǎo)致世界各國禁止其動(dòng)

2、 物性食品的進(jìn)口,估計(jì)其經(jīng)濟(jì)損失高達(dá)13億元。從國際上的教訓(xùn)看, 食品安全問題的發(fā)生不僅使其在經(jīng)濟(jì)上受到損失,還可以影響到消費(fèi) 者對(duì)政府的信任,威脅社會(huì)和國家安全。比利時(shí)的二惡無污染事件不 僅使衛(wèi)生部部長(zhǎng)和農(nóng)業(yè)部長(zhǎng)下臺(tái),也使執(zhí)政達(dá) 40年之久的社會(huì)黨政 府倒臺(tái)。1999年馬來西亞流行豬病毒引起人日本腦炎,使 258人發(fā) 病,100人死亡,90萬頭豬被銷毀。食品安全成為現(xiàn)在國人最擔(dān)憂 的問題,一種有效的幫人們鑒別出有害化學(xué)物品的和分析食物成分的 軟件和機(jī)器勢(shì)必成為國人們現(xiàn)在的迫切需要。因此,當(dāng)今消費(fèi)者不僅word專業(yè)資料 要求食品美味可口,還要求衛(wèi)生、安全、技術(shù)等方面來促使食品向著 更安全更衛(wèi)生

3、的方向發(fā)展,必須對(duì)加工流程提出更高的標(biāo)準(zhǔn)和要求。 而且現(xiàn)代化城市發(fā)展進(jìn)程要求各檢驗(yàn)部門機(jī)構(gòu)等企事業(yè)單位要加強(qiáng) 工作效率,按時(shí)完成指標(biāo)任務(wù),盡量做到檢驗(yàn),核實(shí),審查無縫隙連 接,為客戶提供最詳細(xì)的檢驗(yàn)報(bào)告,故而一個(gè)可以自動(dòng)生成食品檢驗(yàn) 報(bào)告并且可以通過企業(yè)網(wǎng)實(shí)現(xiàn)全平臺(tái)共享數(shù)據(jù)的食品檢驗(yàn)軟件可以 大大幫助這些企業(yè)減少不必要的勞動(dòng)力,加強(qiáng)工作效率。1.3 需求分析功能需求功能說明職工信息管理用戶的創(chuàng)建、登錄、刪除和維護(hù)食品信息管理食品的編號(hào)、查詢和維護(hù)檢驗(yàn)信息管理檢驗(yàn)信息的錄入、查詢、刪除和維護(hù)非功能需求質(zhì)量屬性說明性能用戶訪問的系統(tǒng)應(yīng)該能在規(guī)定的時(shí)間內(nèi)做出響應(yīng),如果系統(tǒng)由于網(wǎng)絡(luò)或者數(shù)據(jù)庫原因不能在

4、規(guī)定時(shí)間內(nèi)做出響應(yīng),那么系統(tǒng)應(yīng)該提出警告,不能出現(xiàn) 用戶無故長(zhǎng)時(shí)間等待的情況。安全性在Web數(shù)據(jù)庫客戶端,Web服務(wù)器和數(shù)據(jù)庫服務(wù) 器之間,都應(yīng)該有防火墻保護(hù),防止網(wǎng)絡(luò)上的非法 數(shù)據(jù)請(qǐng)求。word專業(yè)資料易用性不同的用戶應(yīng)該能夠以不同的形式訪問不同的內(nèi)容??捎眯韵到y(tǒng)提供7*24小時(shí)的服務(wù),且很少停機(jī)??蓽y(cè)試性系統(tǒng)的各部分易于單獨(dú)測(cè)試,并能方便地進(jìn)行整體 測(cè)試。2 .架構(gòu)分析架構(gòu)設(shè)計(jì)是將需求內(nèi)容轉(zhuǎn)換成設(shè)計(jì)模型的雛形以及用戶體驗(yàn)?zāi)?型,其目的是建立整個(gè)系統(tǒng)初步的解決方案,為詳細(xì)活動(dòng)打下基礎(chǔ)。2.1 體系結(jié)構(gòu)的選擇決定采取分布式的還是集中式的體系架構(gòu),將是一個(gè)影響系統(tǒng)性 能、可縮放性、可靠性、易用性

5、及此應(yīng)用所能支持的客戶端類型的重 要決策問題。根據(jù)此前的需求得知,系統(tǒng)是為某食品檢驗(yàn)單位設(shè)計(jì)的, 考慮到后期的系統(tǒng)推廣應(yīng)用的可能性,采取分布式體系架構(gòu)更適應(yīng)今 后的變化。在J2EE開發(fā)中,搭配良好的框架可以降低開發(fā)人員解決復(fù)雜問題 的難度,而如何將框架整合起來,以使每一層都向另外的層次以松散 的方式來提供接口,同時(shí)讓組合的三個(gè)架構(gòu)在每一層都以一種松散的 方式彼此溝通,從而與底層的技術(shù)透明無關(guān),這就是架構(gòu)分析的目的 和要求。所以我們把Structs、Hibernate 和Spring組合起來的目標(biāo) 就是希望能實(shí)現(xiàn)系統(tǒng)的“低耦合、高內(nèi)聚”。也就是要求系統(tǒng)易于維 護(hù)、易于適應(yīng)變更、可重用性的特點(diǎn)。w

6、ord專業(yè)資料根據(jù)前期對(duì)需求的分析,決定采用基于SSH框架來構(gòu)建此分布式的信息管理系統(tǒng)。SSH多層的構(gòu)架模式,從上到下依次為視圖層、控制器層、模型層、持久化層和數(shù)據(jù)庫層,如下圖所示:依賴關(guān)系加強(qiáng)視圖層控制層模型層數(shù)據(jù)持久層數(shù)據(jù)庫層2.2 框架講解:word專業(yè)資料視圖層:職責(zé)是提供控制器,將頁面的請(qǐng)求委派給其它層進(jìn)行處理,為顯示提供業(yè)務(wù)數(shù)據(jù)模型??刂茖樱郝氊?zé)是按預(yù)定的業(yè)務(wù)邏輯處理視圖層提交的請(qǐng)求。(1)處理業(yè)務(wù)邏輯和業(yè)務(wù)校驗(yàn)(2)事務(wù)處理(3)管理業(yè)務(wù)層對(duì)象之間的依賴關(guān)系(4)向表示層提供具體業(yè)務(wù)服務(wù)的實(shí)現(xiàn)類模型層:職責(zé)是將模型的狀態(tài)轉(zhuǎn)交視圖層,以提供頁面給瀏覽器。數(shù)據(jù)持久層:職責(zé)是建立持久化

7、類及其屬性與數(shù)據(jù)庫中表及其字 段的對(duì)應(yīng)關(guān)系。提供簡(jiǎn)化SQL語句的機(jī)制。實(shí)現(xiàn)基本的數(shù)據(jù)操作(增、 刪、改、查)數(shù)據(jù)庫層:數(shù)據(jù)庫的建立與管理。2.3規(guī)則(約束)(1)系統(tǒng)各層次及層次內(nèi)部子層次之間不得跨層調(diào)傭(2)由bean傳遞模型狀態(tài)。(3)需要在表示層綁定到列表的數(shù)據(jù)采用基于關(guān)系的數(shù)據(jù)集傳 遞。(4)對(duì)于每一個(gè)數(shù)據(jù)庫表(Table )都有一個(gè)DB Entity class 與 之對(duì)應(yīng),由Hibernate 完成映射。(5)有些跨數(shù)據(jù)庫或跨表的操作(如復(fù)雜的聯(lián)合查詢)也需要由 Hibernate 來提供支持。(6)表示層和控制層禁止出現(xiàn)任何 SQL語句。word專業(yè)資料2.4 SHH框架介紹 S

8、pringSpring是一個(gè)解決了許多在J2EE開發(fā)中常見的問題的強(qiáng)大框架。 Spring提供了管理業(yè)務(wù)對(duì)象的一致方法并且鼓勵(lì)了注入對(duì)接口編程 而不是對(duì)類編程的良好習(xí)慣。Spring的架構(gòu)基礎(chǔ)是基于使用 JavaBean屬性的Inversion of Control 容器。然而,這僅僅是完整 圖景中的一部分:Spring在使用IoC容器作為構(gòu)建完關(guān)注所有架構(gòu) 層的完整解決方案方面是獨(dú)一無二的。Spring提供了唯一的數(shù)據(jù)訪問抽象,包括簡(jiǎn)單和有效率的JDBC框架,極大的改進(jìn)了效率并且減 少了可能的錯(cuò)誤。Spring的數(shù)據(jù)訪問架構(gòu)還集成了 Hibernate和其 他O/R mapping 解決方案

9、。Spring還提供了唯一的事務(wù)管理抽象, 它能夠在各種底層事務(wù)管理技術(shù),例如JTA或者JDBC事務(wù)提供一個(gè) 一致的編程模型。Spring提供了一個(gè)用標(biāo)準(zhǔn)Java語言編寫的AOP 框架,它給POJOs提供了聲明式的事務(wù)管理和其他企業(yè)事務(wù) -如果 你需要-還能實(shí)現(xiàn)你自己的aspects o這個(gè)框架足夠強(qiáng)大,使得應(yīng)用 程序能夠拋開EJB的復(fù)雜性,同時(shí)享受著和傳統(tǒng) EJB相關(guān)的關(guān)鍵服 務(wù)。Spring還提供了可以和IoC容器集成的強(qiáng)大而靈活的 MVC Web 框架。 STRUCTSStruts是一個(gè)基于 Sun J2EE平臺(tái)的MVC框架,主要是采用 Servlet和JSP技術(shù)來實(shí)現(xiàn)的。由于Strut

10、s能充分滿足應(yīng)用開發(fā)的需 求,簡(jiǎn)單易用,敏捷迅速,在過去的一年中頗受關(guān)注。Struts把word專業(yè)資料Servlet、JSP、自定義標(biāo)簽和信息資源(message resources) 整合到 一個(gè)統(tǒng)一的框架中,開發(fā)人員利用其進(jìn)行開發(fā)時(shí)不用再自己編碼實(shí)現(xiàn) 全套MVC模式,極大的節(jié)省了時(shí)間,所以說Struts是一個(gè)非常不錯(cuò) 的應(yīng)用框架。(3) HibernateHibernate 是一個(gè)開放源代碼的對(duì)象關(guān)系映射框架,它對(duì) JDBC 進(jìn)行了非常輕量級(jí)的對(duì)象封裝,使得 Java程序員可以隨心所欲的使 用對(duì)象編程思維來操縱數(shù)據(jù)庫。Hibernate 可以應(yīng)用在任何使用JDBC的場(chǎng)合,既 可以在 Ja

11、va的客戶端程序?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來進(jìn)行處理,通過下面 我們來看看如何通過Hibernate來滿足系統(tǒng)的質(zhì)量屬性需求。 Hibernate體系結(jié)構(gòu)概要圖:word專業(yè)資料應(yīng)用層層Hibernate配置文件 XML Moping數(shù)據(jù)庫從這個(gè)圖可以看出,Hibernate通過配置文件和映射文件來

12、實(shí)現(xiàn)與數(shù)據(jù)庫的交互及實(shí)現(xiàn)對(duì)象關(guān)系映射(Object RelationalMapping ,簡(jiǎn)稱ORM ),通過這種機(jī)制,將java程序中的對(duì)象自動(dòng) 持久化到關(guān)系數(shù)據(jù)庫中,對(duì)持久化對(duì)象的改動(dòng)都會(huì)反映到數(shù)據(jù)庫中。其中配置文件主要用來配置好數(shù)據(jù)庫連接的各種參數(shù)以及定義數(shù)據(jù)映射文件,通常以 hibernate.cfg.xml 或者 perties 形 式出現(xiàn);XML Mapping 配置文件是數(shù)據(jù)庫中表的數(shù)據(jù)映射文件,通 常以*hbm.xml形式出現(xiàn)。Hibernate滿足的質(zhì)量屬性需求如下表:目標(biāo)實(shí)現(xiàn)方式所米用的方法性能當(dāng)應(yīng)用程序需要在關(guān)聯(lián)關(guān)系間進(jìn)行導(dǎo)航的時(shí)彳由Hibern

13、ate 聯(lián)取關(guān)聯(lián)對(duì)象。同時(shí),Hibernate 的Session在事抓取策略緩存機(jī)制word專業(yè)資料務(wù)級(jí)別進(jìn)行持久化數(shù)據(jù)的緩存操作。安全性并發(fā)操作時(shí),保證數(shù)據(jù)的排他性使用鎖機(jī)制易用性用戶在進(jìn)行CRUD操作請(qǐng)求時(shí),可以得 到Hibernate的及時(shí)處理,迅速得到反 饋封裝JDBC(1)性能Hibernate本質(zhì)上是包裝了 JDBC來進(jìn)行數(shù)據(jù)操作的,由于 Hibernate 在調(diào)用JDBC上面是優(yōu)化了 JDBC調(diào)用,并且盡可能的 使用最優(yōu)化的,最高效的JDBC調(diào)用,所以性能令人滿意,同 時(shí)應(yīng)用程序需要在關(guān)聯(lián)關(guān)系間進(jìn)行導(dǎo)航的時(shí)候,由 Hibernate 獲取關(guān)聯(lián)對(duì)象,Hibernate提供的對(duì)持久化

14、數(shù)據(jù)的緩存機(jī)制也 對(duì)系統(tǒng)的性能的提高起了很大的作用。(2)安全性Hibernate提供的悲觀鎖/樂觀鎖機(jī)制,能夠在多個(gè)用戶進(jìn) 行并發(fā)操作時(shí)保持?jǐn)?shù)據(jù)庫中數(shù)據(jù)的一致性與完整性,避免了 對(duì)數(shù)據(jù)庫中數(shù)據(jù)的破壞。(3)易用性用戶在對(duì)食品信息進(jìn)行操作時(shí)都得到 Hibernate的支持。2.6 業(yè)務(wù)邏輯架構(gòu)設(shè)計(jì)業(yè)務(wù)邏輯層作為該系統(tǒng)的關(guān)鍵部分,對(duì)系統(tǒng)的靈活性實(shí)現(xiàn)起著決 定性的 作用。在本系統(tǒng)的業(yè)務(wù)邏輯層架構(gòu)層中,采取了 MVC模式, 下面簡(jiǎn)單介紹一 下MVC模式的好處:word專業(yè)資料(1)實(shí)現(xiàn)了客戶端表示層和業(yè)務(wù)邏輯層的完全分離(2)高效可靠的事務(wù)處理(3)具有良好的易用性,安全性MVC模式訪問流程:MVC

15、模式在本系統(tǒng)中應(yīng)用:當(dāng)客戶利用網(wǎng)頁瀏覽器,發(fā)出 HTTP請(qǐng)求時(shí),這通常會(huì)牽涉到送 出表單數(shù)據(jù),例如用戶名和密碼。Servlet收到這樣的數(shù)據(jù)并解析數(shù) 據(jù)。Servlet扮演控制器的角色,處理你的請(qǐng)求,通常會(huì)向模型(一 般是數(shù)據(jù)庫)發(fā)出請(qǐng)求。處理結(jié)果往往以 JavaBean的形式打包。視 圖就是JSP,而JSP唯一的工作就是產(chǎn)生頁面,表現(xiàn)模型的視圖以及 進(jìn)一步動(dòng)作所需要的所有控件。當(dāng)頁面返回瀏覽器作為視圖顯示出 來,用戶提出的進(jìn)一步請(qǐng)求,也會(huì)以同樣的方式處理。由于JSP繼承了 J2EE良好的易用性和安全性,從而為實(shí)現(xiàn)系統(tǒng) 的關(guān)鍵質(zhì)量屬性奠定了基礎(chǔ)。在 MVC模式中,視圖不再是經(jīng)典意義 上的模型的

16、觀察者。當(dāng)模型發(fā)生改變時(shí),視圖的確間接的從控制器收 到了相當(dāng)于通知的東西,控制器可以把 bean送給視圖,以使得視圖word專業(yè)資料 取得模型的狀態(tài)。所以,視圖在HTTP響應(yīng)返回到瀏覽器時(shí)只需要一 個(gè)狀態(tài)信息的更新。只有當(dāng)頁面被創(chuàng)建和返回時(shí),創(chuàng)建視圖并結(jié)合模 型狀態(tài)才有意義。這使得提升系統(tǒng)的系能成為可能。 只有當(dāng)相應(yīng)的操 作被執(zhí)行,系統(tǒng)才會(huì)去獲取關(guān)聯(lián)對(duì)象,并且視圖不會(huì)直接模型向注冊(cè) 去接受狀態(tài)信息,使得系統(tǒng)的安全性得到大大提高。業(yè)務(wù)邏輯層的框架:2.7 業(yè)務(wù)邏輯層架構(gòu)分析:該業(yè)務(wù)邏輯層的架構(gòu)是前面 MVC模式的一種變形,他繼承了 MVC模式的優(yōu)點(diǎn),同時(shí),具體到我們的架構(gòu)中,它又實(shí)現(xiàn)了表示層 與

17、業(yè)務(wù)層的完全分離。在業(yè)務(wù)邏輯層我們使用Spring框架作為容器, 以便實(shí)現(xiàn)業(yè)務(wù)層與表示層和數(shù)據(jù)層的松耦合。該業(yè)務(wù)邏輯層架構(gòu)具備 良好的易用性、安全性和性能。2.8 整體框架word專業(yè)資料3.可行性分析3.1 經(jīng)濟(jì)可行性3.1.1 投資成本本系統(tǒng)開發(fā)由一個(gè)項(xiàng)目總監(jiān)和一個(gè)測(cè)試人員一個(gè)高級(jí)軟件工程師,化學(xué)研究人員小組3人,營養(yǎng)師一人共7人組成的團(tuán)隊(duì),開發(fā)周期為45天,化學(xué)研究小組和營養(yǎng)師不是本公司費(fèi)用開銷范圍之內(nèi) 由項(xiàng)目提出者出資,公司投入的三個(gè)人,直接付7萬的工資及各種福 利待遇。在項(xiàng)目安裝以及調(diào)試階段,用戶培訓(xùn),員工出差等費(fèi)用需要2.5萬元,在項(xiàng)目維護(hù)階段預(yù)計(jì)需要投入 2萬,項(xiàng)目累計(jì)需要11.

18、5 萬元資金。1.1.2 預(yù)期收益word專業(yè)資料假設(shè)投入本系統(tǒng),效率可以提高 50% ,以現(xiàn)有的工作人員20人 計(jì)算,可減少10人,每人每月平均工資按2500元計(jì)算,每年節(jié)約 人員工資5X12X0.25=15萬元/年。按年利率5%計(jì)算,效益計(jì)算如 下表。系統(tǒng)收益總額為:64.9422萬元。1.1.3 成本收益分析改善了費(fèi)用過高的缺點(diǎn),在費(fèi)用支出方面有一個(gè)很好的改善,用 戶只需花費(fèi)一定的資金就可以實(shí)現(xiàn)自動(dòng)化開發(fā)方面。從經(jīng)濟(jì)上考慮, 開發(fā)本系統(tǒng)完全可行的。1.2 技術(shù)可行性食品檢測(cè)系統(tǒng)的實(shí)現(xiàn)技術(shù)有多種,可以采用傳統(tǒng)的客戶機(jī)/服務(wù)器 型的B/S型架構(gòu),即文件內(nèi)容放在遠(yuǎn)程的服務(wù)器上,用戶通過在其他計(jì) 算機(jī)上登陸服務(wù)器。進(jìn)入網(wǎng)絡(luò)硬盤系統(tǒng)。由于受條件所限制,數(shù)據(jù)庫 服務(wù)器端采用大型數(shù)據(jù)庫系統(tǒng),這有利于縮短大批量數(shù)據(jù)的吞吐時(shí)間, 使整個(gè)系統(tǒng)管理規(guī)范化,數(shù)據(jù)的完整性、安全性得到保障.應(yīng)用服務(wù)器 端采用中間件計(jì)算模式(IBMWebSphereApplicationServer), 分模塊層次結(jié)構(gòu),多模塊分立,允許系統(tǒng)的分布處理,以提高系統(tǒng)的工作效 率。所使用的技術(shù)主要是 S2SH (struts2、hibernate、sprin

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論