小型購(gòu)物系統(tǒng)需求分析_第1頁(yè)
小型購(gòu)物系統(tǒng)需求分析_第2頁(yè)
小型購(gòu)物系統(tǒng)需求分析_第3頁(yè)
已閱讀5頁(yè),還剩15頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、1. 引言2編寫(xiě)目的22. 綜合描述2產(chǎn)品的技術(shù)2產(chǎn)品的功能6開(kāi)發(fā)及運(yùn)行環(huán)境63. 系統(tǒng)功能需求7系統(tǒng)需求分析7系統(tǒng)流程圖94. 其他功能需求15性能需求15開(kāi)放性要求16安全性要求165. 數(shù)據(jù)詞典16訂單(ORDERS16買(mǎi)家(GUES)17商品(SP)176. 特定問(wèn)題列表181. 引言編寫(xiě)目的隨著信息化產(chǎn)業(yè)越來(lái)越發(fā)達(dá),人們的生活節(jié)奏越來(lái)越快,需求越來(lái)越多,越 來(lái)越多的人喜歡上了足不出戶的消費(fèi)方式。 因此,網(wǎng)上商城應(yīng)運(yùn)而生。本次課程 設(shè)計(jì)目的主要是開(kāi)發(fā)一套符合生活實(shí)際的 B2C網(wǎng)上商城,其次是為了通過(guò)此次課 程設(shè)計(jì)增加小組成員間的團(tuán)隊(duì)合作能力, 提高實(shí)戰(zhàn)水平,強(qiáng)化所學(xué)的知識(shí),掌握 更新的

2、技術(shù)。2. 綜合描述產(chǎn)品的技術(shù)技術(shù)的名稱該項(xiàng)目使用SSH2框架+jQuery+ExtJs+MySql數(shù)據(jù)庫(kù)+MyEclipse開(kāi)發(fā)環(huán)境技術(shù)的介紹1、SSHSSH為struts+spri ng+hibernate的一個(gè)集成框架,是目前較流行的一種Web應(yīng)用程序開(kāi)源框架。集成SSH框架的系統(tǒng)從職責(zé)上分為四層:表示層、業(yè)務(wù)邏輯層、數(shù)據(jù)持久層 和域模塊層,以幫助開(kāi)發(fā)人員在短期內(nèi)搭建結(jié)構(gòu)清晰、可復(fù)用性好、維護(hù)方便的 Web應(yīng)用程序。其中使用Struts作為系統(tǒng)的整體基礎(chǔ)架構(gòu),負(fù)責(zé)MVC勺分離,在 Struts框架的模型部分,利用Hibernate框架對(duì)持久層提供支持,業(yè)務(wù)層用 Spring支持。具體做法

3、是:用面向?qū)ο蟮姆治龇椒ǜ鶕?jù)需求提出一些模型,將這些模型實(shí)現(xiàn)為基本的Java對(duì)象,然后編寫(xiě)基本的DA取口,并給出Hibernate 的DAC實(shí)現(xiàn),采用Hibernate架構(gòu)實(shí)現(xiàn)的DAC類來(lái)實(shí)現(xiàn)Java類與數(shù)據(jù)庫(kù)之間的 轉(zhuǎn)換和訪問(wèn),最后由Spring完成業(yè)務(wù)邏輯。系統(tǒng)的基本業(yè)務(wù)流程是:在表示層中,首先通過(guò)JSP頁(yè)面實(shí)現(xiàn)交互界面,負(fù)責(zé)傳送請(qǐng)求(Request)和接收響應(yīng)(Response),然后Struts根據(jù)配置文件將 ActionServlet 接收到的Request委派給相應(yīng)的Action處理。在業(yè)務(wù)層中,管理 服務(wù)組件的Spring loC容器負(fù)責(zé)向Action提供業(yè)務(wù)模型(Model)組

4、件和該組件 的協(xié)作對(duì)象數(shù)據(jù)處理(DAO組件完成業(yè)務(wù)邏輯,并提供事務(wù)處理、緩沖池等容器 組件以提升系統(tǒng)性能和保證數(shù)據(jù)的完整性。而在持久層中,則依賴于Hibernate的對(duì)象化映射和數(shù)據(jù)庫(kù)交互,處理DAOS件請(qǐng)求的數(shù)據(jù),并返回處理結(jié)果。采用上述開(kāi)發(fā)模型,不僅實(shí)現(xiàn)了視圖、控制器與模型的徹底分離,而且還實(shí) 現(xiàn)了業(yè)務(wù)邏輯層與持久層的分離。這樣無(wú)論前端如何變化,模型層只需很少的改 動(dòng),并且數(shù)據(jù)庫(kù)的變化也不會(huì)對(duì)前端有所影響,大大提高了系統(tǒng)的可復(fù)用性。而 且由于不同層之間耦合度小,有利于團(tuán)隊(duì)成員并行工作,大大提高了開(kāi)發(fā)效率。2、StrutsStruts 對(duì)Model,View和Controller 都提供了對(duì)

5、應(yīng)的組件。ActionServlet,這個(gè)類是Struts的核心控制器,負(fù)責(zé)攔截來(lái)自用戶的請(qǐng)求。Action,這個(gè)類通常由用戶提供,該控制器負(fù)責(zé)接收來(lái)自Actio nServlet的請(qǐng)求,并根據(jù)該請(qǐng)求調(diào)用模型的業(yè)務(wù)邏輯方法處理請(qǐng)求,并將處理結(jié)果返回給 JSP頁(yè)面顯示。Model部分:由ActionForm 和JavaBean組成,其中ActionForm用于圭寸裝用戶的請(qǐng)求參 數(shù),封裝成 ActionForm 對(duì)象,該對(duì)象被 ActionServlet 轉(zhuǎn)發(fā)給Action ,Action 根據(jù)ActionFrom里面的請(qǐng)求參數(shù)處理用戶的請(qǐng)求。JavaBean則封裝了底層的業(yè)務(wù)邏輯,包括數(shù)據(jù)庫(kù)訪

6、問(wèn)等。View 部分:該部分采用JSP (或HTML PHP)實(shí)現(xiàn)。Struts提供了豐富的標(biāo)簽庫(kù),通過(guò)標(biāo)簽庫(kù)可以減少腳本的使用,自定義的標(biāo)簽庫(kù)可以實(shí)現(xiàn)與Model的有效交互,并增加了現(xiàn)實(shí)功能。對(duì)應(yīng)上圖的JSP部分。Co ntroller 組件:Co ntroller 組件有兩個(gè)部分組成系統(tǒng)核心控制器,業(yè)務(wù)邏輯控制器。系統(tǒng)核心控制器,對(duì)應(yīng)上圖的 ActionServlet 。該控制器由Struts框架提 供,繼承HttpServlet類,因此可以配置成標(biāo)注的 Servlet。該控制器負(fù)責(zé)攔截 所有的HTTP請(qǐng)求,然后根據(jù)用戶請(qǐng)求決定是否要轉(zhuǎn)給業(yè)務(wù)邏輯控制器。業(yè)務(wù)邏輯控制器,負(fù)責(zé)處理用戶請(qǐng)求,本

7、身不具備處理能力,而是調(diào)用Model 來(lái)完成處理。對(duì)應(yīng)Action部分。3、SpringSpring是一個(gè)開(kāi)源框架,它由Rod Johnson創(chuàng)建。它是為了解決企業(yè)應(yīng)用開(kāi) 發(fā)的復(fù)雜性而創(chuàng)建的。Spring使用基本的JavaBean來(lái)完成以前只可能由EJB完 成的事情。然而,Spring的用途不僅限于服務(wù)器端的開(kāi)發(fā)。從簡(jiǎn)單性、可測(cè)試性 和松耦合的角度而言,任何Java應(yīng)用都可以從Spring中受益。目的:解決企業(yè)應(yīng)用開(kāi)發(fā)的復(fù)雜性功能:使用基本的JavaBean代替EJB,并提供了更多的企業(yè)應(yīng)用功能范圍:任何Java應(yīng)用簡(jiǎn)單來(lái)說(shuō),Spring是一個(gè)輕量級(jí)的控制反轉(zhuǎn)(loC)和面向切面(AOP)的容

8、器框 架。輕量從大小與開(kāi)銷兩方面而言Spring都是輕量的。完整的Spring框架可以在一個(gè)大小只有1MB多的JAR文件里發(fā)布。并且Spring所需的處理開(kāi)銷也 是微不足道的。此外,Spring是非侵入式的:典型地,Spring應(yīng)用中的對(duì)象不 依賴于Spring的特定類。控制反轉(zhuǎn)Spring通過(guò)一種稱作控制反轉(zhuǎn)(IoC)的技術(shù)促進(jìn)了松耦合。當(dāng)應(yīng)用了 IoC,一個(gè)對(duì)象依賴的其它對(duì)象會(huì)通過(guò)被 動(dòng)的方式傳遞進(jìn)來(lái),而不是這個(gè)對(duì)象自己創(chuàng)建或者查找依賴對(duì)象。你可以認(rèn)為IoC與JNDI相反一一不是對(duì)象從容器中查找依賴,而是容器在對(duì)象初始化時(shí)不等對(duì) 象請(qǐng)求就主動(dòng)將依賴傳遞給它。面向切面Spring提供了面向切

9、面編程的豐富支持,允許通過(guò)分離應(yīng)用 的業(yè)務(wù)邏輯與系統(tǒng)級(jí)服務(wù)(例如審計(jì)(auditing )和事務(wù)(transaction )管理) 進(jìn)行內(nèi)聚性的開(kāi)發(fā)。應(yīng)用對(duì)象只實(shí)現(xiàn)它們應(yīng)該做的一一完成業(yè)務(wù)邏輯一一僅此而 已。它們并不負(fù)責(zé)(甚至是意識(shí))其它的系統(tǒng)級(jí)關(guān)注點(diǎn),例如日志或事務(wù)支持。容器一一Spring包含并管理應(yīng)用對(duì)象的配置和生命周期, 在這個(gè)意義上它是 一種容器,你可以配置你的每個(gè) bean如何被創(chuàng)建基于一個(gè)可配置原型(prototype ),你的bean可以創(chuàng)建一個(gè)單獨(dú)的實(shí)例或者每次需要時(shí)都生成一個(gè)新的實(shí)例一一以及它們是如何相互關(guān)聯(lián)的。然而,Spring不應(yīng)該被混同于傳統(tǒng)的重量級(jí)的EJB容器,它們

10、經(jīng)常是龐大與笨重的,難以使用??蚣?Spring可以將簡(jiǎn)單的組件配置、組合成為復(fù)雜的應(yīng)用。在 Spring 中,應(yīng)用對(duì)象被聲明式地組合,典型地是在一個(gè)XML文件里。Spring也提供了很 多基礎(chǔ)功能(事務(wù)管理、持久化框架集成等等),將應(yīng)用邏輯的開(kāi)發(fā)留給了你。所有Spring的這些特征使你能夠編寫(xiě)更干凈、更可管理、并且更易于測(cè)試 的代碼。它們也為Spring中的各種模塊提供了基礎(chǔ)支持。4、HibernateHibernate是一個(gè)開(kāi)放源代碼的對(duì)象關(guān)系映射框架,它對(duì)JDBC進(jìn)行了非常輕 量級(jí)的對(duì)象封裝,使得Java程序員可以隨心所欲的使用對(duì)象編程思維來(lái)操縱數(shù) 據(jù)庫(kù)。Hibernate可以應(yīng)用在任何

11、使用JDBC的場(chǎng)合,既可以在Java的客戶端程序 使用,也可以在Servlet/JSP的Web應(yīng)用中使用,最具革命意義的是,Hibernate 可以在應(yīng)用EJB的J2EE架構(gòu)中取代CMP完成數(shù)據(jù)持久化的重任。Hibernate 的核心接口一共有 5個(gè),分別為:Session、SessionFactory、Transaction、Query和Configuration 。這5個(gè)核心接口在任何開(kāi)發(fā)中都會(huì)用到。通過(guò)這些接口,不僅可以對(duì)持久化對(duì)象進(jìn)行存取,還能夠進(jìn)行事務(wù)控制。下面對(duì) 這五個(gè)核心接口分別加以介紹。Session接口 :Session接口負(fù)責(zé)執(zhí)行被持久化對(duì)象的 CRU操作(CRUD勺任務(wù)

12、是完成與數(shù)據(jù)庫(kù)的交流,包含了很多常見(jiàn)的SQL語(yǔ)句。)。但需要注意的是Session 對(duì)象是非線程安全的。同時(shí), Hibernate的session不同于JSP應(yīng)用中的HttpSession。這里當(dāng)使用session這個(gè)術(shù)語(yǔ)時(shí),其實(shí)指的是 Hibernate中的 session,而以后會(huì)將HttpSession對(duì)象稱為用戶session。SessionFactory 接口 :SessionFactory 接口負(fù)責(zé)初始化 Hibernate。它充當(dāng)數(shù)據(jù)存儲(chǔ)源的代理,并負(fù)責(zé)創(chuàng)建 Session對(duì)象。這里用到了工廠模式。需要注意 的是SessionFactory并不是輕量級(jí)的,因?yàn)橐话闱闆r下,一個(gè)項(xiàng)目

13、通常只需要 一個(gè)SessionFactory就夠,當(dāng)需要操作多個(gè)數(shù)據(jù)庫(kù)時(shí),可以為每個(gè)數(shù)據(jù)庫(kù)指定 一個(gè) SessionFactory。Configuration 接口 :Configuration 接口負(fù)責(zé)配置并啟動(dòng) Hibernate,創(chuàng)建 SessionFactory 對(duì)象。在Hibernate 的啟動(dòng)的過(guò)程中,Configuration 類的實(shí)例 首先定位映射文檔位置、讀取配置,然后創(chuàng)建 SessionFactory對(duì)象。Transaction接口 :Transaction接口負(fù)責(zé)事務(wù)相關(guān)的操作。它是可選的,開(kāi)發(fā)人員也可以設(shè)計(jì)編寫(xiě)自己的底層事務(wù)處理代碼。Query和Criteria接口 :

14、Query和Criteria接口負(fù)責(zé)執(zhí)行各種數(shù)據(jù)庫(kù)查詢。它可以使用HQL語(yǔ)言或SQL語(yǔ)句兩種表達(dá)方式。產(chǎn)品的功能4、查看訂單5、確認(rèn)收貨6管理員查看所有訂單7、分類查詢訂單。開(kāi)發(fā)及運(yùn)行環(huán)境硬件平臺(tái)CPU1GHz以上內(nèi)存512MB以上軟件平臺(tái)操作系統(tǒng)Win dows 71數(shù)據(jù)庫(kù)1開(kāi)發(fā)環(huán)境JDK-7開(kāi)發(fā)工具M(jìn)yEclipse 10開(kāi)發(fā)語(yǔ)言JAVA語(yǔ)言£_服務(wù)器Tomcat瀏覽器以上J_分辨率最佳效果1024*7683. 系統(tǒng)功能需求系統(tǒng)需求分析將訂單模塊分成管理員和顧客兩個(gè)管理部分:1、管理員:可以查看所有的訂單,對(duì)已付款的訂單進(jìn)行發(fā)貨,查看訂單詳情,按不同方式查詢訂單。2、顧 客:可以

15、對(duì)購(gòu)物車中的商品進(jìn)行下單,對(duì)未付款的訂單進(jìn)行刪除、修改,對(duì)已收到貨的訂單進(jìn)行確認(rèn)收貨,可以對(duì)確認(rèn)收貨的訂單進(jìn)行評(píng)論。顧客模塊(1) 注冊(cè)功能。顧客首先要注冊(cè)為網(wǎng)上商城的用戶。注冊(cè)時(shí)只要填寫(xiě)登錄用戶名、 密碼、聯(lián)系電子信箱3項(xiàng)信息即可。注冊(cè)后,用戶可繼續(xù)如實(shí)填寫(xiě)詳細(xì)個(gè)人信息 及收貨人信息,同時(shí)可修改密碼、查詢及修改訂單。(2) 選擇產(chǎn)品功能。顧客瀏覽網(wǎng)上商城,將自己需求的產(chǎn)品放入到購(gòu)物車中() 可連續(xù)添加商品。 管理購(gòu)物車。顧客選擇完商品后可進(jìn)入購(gòu)物車頁(yè)面,查看自己要購(gòu)買(mǎi)的商品, 可修改某一商品數(shù)量、取消購(gòu)買(mǎi)某商品和清空整個(gè)購(gòu)物車。(4)訂單功能。顧客確定購(gòu)物車中的商品后提交訂單,如顧客已填寫(xiě)收

16、貨人信息, 則頁(yè)面顯示該信息并由顧客確認(rèn)。如尚未填寫(xiě)則顯示相應(yīng)表單請(qǐng)其填寫(xiě),系統(tǒng)記 錄顧客提交的收貨人信息以便其下次購(gòu)物時(shí)使用。顧客提交訂單后可在網(wǎng)上商城 查詢?cè)撚唵?,并可?duì)尚未處理的訂單進(jìn)行取消、修改等操作。(5)付款功能。顧客在訂單被銷售方確認(rèn)后,要選擇付款方式,并付款給銷售方, 然后才可以收到貨。管理員模塊1)管理人員部分。該部分的用戶有一個(gè)超級(jí)管理員以及若干個(gè)普通管理員,超 級(jí)管理員擁有最高權(quán)限,可訪問(wèn)所有訂單,可瀏覽、查詢訂單,可瀏覽、修改普 通管理員和會(huì)員的資料。(2)管理訂單功能。顧客可通過(guò) Web方式取消、修改自己提交的訂單(在管理員確認(rèn)前),查詢自己提交的訂單(隨時(shí))。如訂單

17、的狀態(tài)在一定時(shí)限(如12個(gè)小 時(shí))后仍沒(méi)有發(fā)生變化(“訂單關(guān)閉”狀態(tài)除外),系統(tǒng)自動(dòng)提醒管理員(如該訂 單變色,彈出提醒窗口等方式。訂單狀態(tài)發(fā)生變化,系統(tǒng)自動(dòng)發(fā)E-mail給顧客,“無(wú)效訂單”、“訂單關(guān)閉”狀態(tài)除外)。(3)管理商品功能。管理員可以添加、修改、刪除商品。系統(tǒng)流程圖系統(tǒng)模塊圖會(huì)員模塊會(huì)員登錄會(huì)員注冊(cè)H修改信息訂單查詢fT|1.賬戶管理_J1*1取消訂單 1購(gòu)物網(wǎng)站購(gòu)物車模塊確認(rèn)收貨J1增加管理員管理員模塊"1 1管理員登陸1商品上架商品下架 商品管理模塊IT商品搜索 商品分類1 14公告查詢公告添加公告管理模塊J公告刪除公告修改系統(tǒng)用例圖呆*A輸入登錄信息勰 驗(yàn)證 /系

18、統(tǒng)流程圖程帛奈程圉I首貢1I-創(chuàng) I:>1歡據(jù)庫(kù)卜證咸珈I斗商(55®取消訂單兩物車認(rèn)購(gòu)耳f生訂單"重諭選擇商品I已鷗買(mǎi)商品d發(fā)貨(戲詣品取消訂單、退蕩)確認(rèn)再款I(lǐng)r系統(tǒng)狀態(tài)圖用戶狀態(tài)圖管理員狀態(tài)圖管理員V登陸 J系統(tǒng)活動(dòng)圖用戶購(gòu)買(mǎi)活動(dòng)活動(dòng)圖系続L._7T驗(yàn)證用戶信息1 i失敗消息H楸/1111r1*11I選釋的商晶長(zhǎng)確認(rèn)畫(huà)買(mǎi) W-忖剽踴認(rèn)坡貨驗(yàn)證成功消息y ±® 1L商品信息廢熒退出I IV正確在勒堆庫(kù)查詢商品信慝»數(shù)據(jù)障存祐訂單管理員管理活動(dòng)圖4. 其他功能需求性能需求數(shù)據(jù)精確度價(jià)格單位保留到分適應(yīng)性、可移植性購(gòu)物流程要簡(jiǎn)單明了,產(chǎn)品圖片要清楚,產(chǎn)品信息描述準(zhǔn)確。開(kāi)放性要求系統(tǒng)應(yīng)該具有較強(qiáng)的靈活性,以適應(yīng)經(jīng)來(lái)功能擴(kuò)展的需求。安全性要求系統(tǒng)有嚴(yán)格的權(quán)限管理功能,各個(gè)功能模塊需要相應(yīng)的權(quán)限才能進(jìn)入。

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論