1、城市綠色蔬菜配送系統需求分析說明書目錄1引言31.1編寫目的31.2開發背景31.3項目目標31.4參考資料32系統概述32.1項目名稱32.2項目計劃32.2.1可行性分析&成本估算32.2.2人員安排32.2.3日程安排32.3系統的應用范圍32.4用戶溝通32.4.1 第三方會談32.4.2客戶交流32.5 確定系統參與者32.6捕捉功能性需求33系統分析33.1用例分析(Use Case View)33.1.1頂級用例分析33.1.2個人信息管理子用例33.1.3菜籃子(在線購買)子用例33.1.4用戶留言子用例33.1.5訂單處理子用例33.1.6商品信息管理子用例33.1.7新聞公
2、告維護子用例33.1.8留言板管理子用例33.1.9用戶管理子用例33.1.10系統維護子用例33.1.11身份驗證子用例33.2活動分析33.2.1用戶留言活動圖33.2.2選購商品活動圖:33.2.3菜籃子管理活動圖33.2.4身份驗證1(注冊)33.2.5身份驗證2(登陸)33.2.6身份驗證3(取回密碼)33.2.7個人信息管理33.2.8訂單處理33.2.9用戶信息管理1(用戶信息更改)33.2.10用戶信息管理2(角色增加)33.2.11用戶信息管理3(刪除用戶)33.2.12商品信息管理33.2.13系統維護活動圖33.2.14用戶留言管理活動圖33.3結構化需求33.3.1概念
3、數據模型33.3.2對象關系模型33.3.3類發現33.4業務實現分析(順序圖)33.4.1身份驗證順序圖33.4.2訂單管理順序圖33.4.3商品選購順序圖33.4.4商品管理順序圖33.4.5用戶信息管理順序圖33.5類分析33.6狀態分析34系統設計策略34.1開發工具的選擇34.2系統部署34.3體系結構的選擇34.4系統實現組件34.5系統功能實現34.5.1后臺管理類設計34.5.2商品購買類設計34.5.3新聞公告管理的實現34.5.4留言交互的實現34.5.5商品購買的實現34.5.6蔬菜配送的實現34.5.7代碼重用的設計思想34.6用戶界面的設計35系統移交和后期維護36領
4、域擴展構想31 引言1.1 編寫目的本文編寫目的在于規定和控制項目開發的內容,保證本項目的需求分析活動在受控狀態下進行,在進行軟件開發前,明確本系統應達到的目標,對系統目標做出完整、準確、清晰、具體的要求。保證本需求分析的結果能夠完整、無遺漏地反映待開發系統的要求。預期讀者是所有參與者(stakeholder)包括項目經理、技術人員項目組的所有成員。1.2 開發背景 21世紀以來,電子商務的發展為蔬菜的銷售和配送提供了更廣闊的平臺。如今,發達國家在基于電子商務平臺的城市蔬菜配送服務方面已發展得較為成熟,我國現代物流業的發展正處在起步階段,與發達國家相比尚有很大差距,但市場潛力和發展前景十分廣闊
5、。伴隨著城市化蔬菜消費需要由“數量型”向“質量型”轉變,供大于求的買方市場格局也逐漸成型。德國蔬菜配送企業歷年發展情況調查1987199619971998199920012003Delivery Company0168102312Average Customers1661812553272541我國城市社區蔬菜配送服務業雖然經過20多年的快速發展,但是仍存在許多現實問題,嚴重阻礙了我國城市社區蔬菜配送服務業的健康發展。1 以分散型配送為主,蔬菜配送的整體功能難以發揮2 蔬菜的“配”與“送”相互脫節,未能形成有機結合3 蔬菜配送服務的質量有待優化,服務的類型有待豐富4 蔬菜配送服務中管理的集約化
6、和產品的標準化程度低在社會生活向城市化和網絡化進步的今天,如果能抓住機遇,從這些問題中提取潛在的需求,進而去著手解決這些問題,就能獲得一個可開發的市場1.3 項目目標您還在為上班沒有時間買菜而煩惱嗎?您還在為買不到實惠新鮮的蔬菜而憂慮嗎? 您還在為根莖上附著的泥土弄臟地板而發怒嗎?您還在為農貿市場上死魚爛蝦的惡臭而無奈嗎?您還在為錢包在擁擠的采購人群中被竊而沮喪嗎?您還在為市場管理不規范而感嘆嗎?您還在為缺斤少兩事件頻發而義憤填膺嗎?那么,就請你們請加入我們菜籃子工程大家庭吧!您只需一個電話,或者鼠標輕輕一點,所需所求就能夠按時送貨上門,為您居家飲食竭誠服務。新鮮的農家蔬菜直接供貨,減少了中轉
7、交易過程中的成本消耗;最周到熱忱的服務,及時確保用戶所需;實惠而低廉的價格,竭誠促進商業自動化的發展,讓市民感受到互聯網給我們帶來的巨大便宜。1.4 參考資料 面向對象分析與設計 清華大學出版社 物流服務營銷 北京交通大學出版社我國配送企業服務體系 *博客Team Software Process 人民郵電出版社 Object-Oriented System Analysis And Design,Second Edition 清華大學出版社2 系統概述 2.1 項目名稱城市綠色蔬菜配送系統2.2 項目計劃2.2.1 可行性分析&成本估算用來決定項目是否可以實現,有無商業利益(設計到項目管理規
8、劃和成本統計科學,暫無)2.2.2 人員安排姓名角色分工職責楊 賀(8000107040)組長需求分析、系統設計、類實現、文檔撰寫模型構建與可行性分析、項目進度跟蹤任彥斌(8000107029)組員需求分析、數據建模從數據建模到分析類,到實現過程黃 斌(8000107014)組員需求分析、UML建模系統流程描繪,繪制UML Diagram2.2.3 日程安排2-1甘特圖2.3系統的應用范圍任何系統都不可能包羅萬象,蔬菜配送平臺主要解決的是及時送上最新鮮的蔬菜,它負責調度連鎖的商場,及時采購,及時配送,為用戶提供最優質的服務。系統主要面向的服務對象有:白領一族、行動不便的老人或不方便出行的人們、
9、需求量比較大的酒店賓館等。為他們提供信息查詢、蔬菜配送、營養搭配以及個性化推薦服務,通過良好的服務為市民做出自己最大的貢獻。在以后城市化發展到一定程度的時候,足不出戶,一應俱全。2.4 用戶溝通2.4.1 第三方會談通過對市民的抽樣調查結果匯總,在城市化日益加劇的今天,傳統的購買蔬菜方式存在有如下幾個缺點:(1) 耽誤大量時間(2) 買不到最新鮮的蔬菜(3) 蔬菜價格容易受到惡劣天氣的影響(4) 受到惡劣天氣影響(5) 很難照顧到特殊群體,比如老人、殘疾人(6) 市場管理不規范,欺詐現象時有發生同時,他們希望現代生鮮蔬菜購買方式應該能朝著如下幾個方面改進:(1) 可以方便實惠地買到自己想要的菜
10、(2) 新鮮的蔬菜可以每天準時送貨到門,并提供禮物贈送功能(3) 可以了解一些最新的營養健康方面的資訊(4) 可以多得到一些個性化的營養飲食方面的建議2.4.2客戶交流通過和客戶的溝通,我們了解到網絡蔬菜配送平臺以“健康食品送到家,餐餐都吃自己做”為服務宗旨,為廣大用戶提供最好、最方便、最快捷、最安全的網上買菜服務??蛻粢笕缦拢海?) 符合商業運營的基本流程(2) 自動化辦公提高工作效率(3) 可以進行信息統計,根據統計結果制定營銷策略2.5 確定系統參與者考慮到B2C電子商務系統的運營模式,結合用戶溝通的中的意見,參與到系統的角色以及對應的權限如下(用戶之間應用等級不同,同類權限基本上是向
11、下兼容的):匿名游客:匿名游客不具備任何操作權限,只能瀏覽網站基本信息和最新飲食資訊以及通過留言進行問題咨詢和提出意見注冊會員:注冊會員除擁有匿名游客所有的權限外,還可以將在線選購的生鮮蔬菜放入菜籃子,確認下訂單、在線付款、個人信息的管理 以及給予評價和建議(對選購的生鮮蔬菜進行評價、對我們的系統給予評價、對配送情況給予評價)普通員工:為了保證責任細化和分工合作的明確性,普通員工所擁有的權限僅僅是業務交流和個人信息的管理。業務交流就是查看和處理用戶確認的訂單,安排下一步的生鮮蔬菜的配送活動流程普通管理員:普通管理員作為低級的管理員,能夠進行基本的系統管理,這其中包括生鮮蔬菜的上市下架管理、生鮮
12、蔬菜的價格編輯、發布最新的健康咨詢和特價優惠信息、對會員提出的留言進行回復超級管理員:超級管理員是系統內最高權限的管理員,只能夠由他進行高級系統運行管理,這其中包括用戶管理、系統維護和數據安全性管理表2-1用戶角色和權限角色權限超級管理員人員管理,商品管理,公告管理,訂單管理,留言板管理,系統維護普通管理員商品管理,公告管理,訂單管理,留言板管理普通員工處理訂單、維護個人信息注冊會員在線購買、在線付款、個人信息的管理 、留言評價游客瀏覽資訊,查看生鮮列表信息2.6 捕捉功能性需求任何解決方案的設計都要從業務邏輯開始分析,然后得到業務用例,最后從用例模型中得到表達分析設計的手段。通過我們和用戶方
13、面的交流和對電子商務領域的了解,為了方便系統的管理,根據不同的分工將人員大體分成5類,游客,注冊會員,普通員工,普通管理員和超級管理員。對于未注冊的游客:(1) 游客可以瀏覽生鮮列表信息(2) 游客可以瀏覽前沿健康資訊對于已注冊的會員:(1) 會員可以瀏覽生鮮列表信息(2) 會員可以瀏覽前沿健康資訊(3) 會員可以在線選購生鮮蔬菜并確認下訂單(4) 會員可以在線付款(5) 會員可以進行個人信息的管理(6) 會員可以對各種服務進行評價(7) 特別會員還可以享受個性化智能推薦服務對于普通員工:(1) 普通員工可以處理訂單(2) 普通員工可以維護個人信息對于普通管理員:(1) 普通管理員可以進行商品
14、管理(2) 普通管理員可以進行公告管理(3) 普通管理員可以進行留言板管理對于超級管理員:(1) 超級管理員可以進行人員管理(2) 超級管理員還應該負責系統維護工作和數據安全性工作3 系統分析3.1 用例分析(Use Case View)在用例建模的過程中,我們通過繪制用例圖來解析系統的功能性需求,即系統的關鍵行為和系統的核心價值等內容,以進行下一步基于用例驅動的系統設計。用例圖包括參與者和用例(參與者之間為實現某一功能而進行的信息交互)。3.1.1 頂級用例分析3-1頂級用例圖用例列表參與者(Actor)用例子用例備注注冊會員S3: 留言查看回復查看管理員對給出問題或意見的回復編輯留言在留言
15、未被管理員處理前,可以編輯留言查看留言查看留言信息頁面瀏覽N/A基本的瀏覽功能S10: 身份驗證登陸當密碼忘記時候,擴展為找回密碼用例注冊匿名游客注冊為會員S2:在線選購菜籃子管理包括添加和刪除生鮮兩個底層用例查看生鮮信息對感興趣的生鮮進行詳細的信息查看搜索生鮮蔬菜搜索自己想要購買的商品,快速選購S1:個人信息管理個人信息修改由于時間等原因導致個人信息變更密碼更改安全性考慮更改個人密碼普通員工S4: 訂單處理查看訂單查看訂單的詳細信息,以便后期處理生成交易清單打印小票等事件配送安排合理調度配送順序,制定參考配送計劃普通管理員S5:商品信息管理查看生鮮信息查看訂單的詳細信息,以便后期處理搜索生鮮
16、蔬菜快速鎖定特定商品編輯生鮮信息生鮮上市下架、以及隨著市場動態產生的價格編輯貨架統計統計生鮮蔬菜的情況S6: 新聞公告維護查看新聞公告同商品信息管理搜索新聞公告編輯公告添加公告S7: 留言板管理查看用戶留言N/A刪除無效留言N/A回復顧客問題給出答復個性化推薦N/A根據會員信息給出購買建議超級管理員S8: 用戶管理用戶管理、角色分配N/AS9:系統維護恢復還原數據、日志維護3.1.2 個人信息管理子用例表3-2個人信息管理用例說明用例名稱個人信息管理用例編號1用例等級White創建時間2010/5/23最后修改時間作者楊 賀測試者版本號1用例描述注冊會員進行個人信息的更改、完善以及更改密碼等操
17、作主要參與者注冊會員用例觸發事件當會員點擊個人信息系管理選項是觸發前置條件 會員登錄后置條件 用戶操作反映到數據庫的更改上被包含的用例 個人信息修改、個人信息完善、密碼更改被擴展的用例 無用例事件流會員系統1.用戶進入個人信息管理3.提出修改(完善)個人信息5.修改個人信息7.提出更改密碼9.填寫驗證信息(原始密碼等)11.填寫新密碼2.系統轉到個人信息管理頁面4.訪問數據庫、返回修改頁面6.檢查信息并修改數據庫,用例結束8.返回更改密碼頁面10.檢索條件、查找數據庫返回驗證結果信息12.修改數據庫信息,用例結束事件流擴展6a系統提示所提交信息不合法 6a1事務回卷,會員根據錯誤提示重新提交合
18、法信息 6a2用戶取消修改,或退出登錄,或關閉頁面10a系統提示驗證信息錯誤(密碼錯誤、密碼保護問題錯誤) 10a1事務回卷,會員根據錯誤提示重新填寫驗證信息 10a2用戶取消更改,或退出登錄,或關閉頁面非功能性需求根據人的心理等待能力,要求系統的每個業務響應時間不超過2s3.1.3 菜籃子(在線購買)子用例表2-3在線選購用例說明用例名稱在線選購用例編號2用例等級Sea創建時間2010/5/23最后修改時間作者楊 賀測試者版本號1用例描述登陸的會員在線選購目標生鮮蔬菜放入菜籃子,同意購買條約并在線確定購買,主要參與者注冊會員用例觸發事件點擊購買選項時觸發用例前置條件 會員登錄后置條件 訂單表
19、當中數據增加,操作結果反映到數據庫信息的增加被包含的用例 搜索商品、查看生鮮信息、菜籃子管理、確認支付被擴展的用例 修改收貨信息用例事件流會員系統1.顧客請求查看生鮮蔬菜3.確定搜索條件、輸入搜索關鍵字,進行搜索請求5.瀏覽生鮮列表,提出查看生鮮蔬菜基本信息申請7.確定選購生鮮,放入菜籃子9.完成挑選過程,確認支付11.提交支付和收貨信息2.系統轉到生鮮顯示列表4.系統根據關鍵字查詢數據庫并返回顯示列表6.系統驗證選中商品種類和數量是否有效并返回商品信息8.系統修改數據庫信息10.系統檢測支付控件安全信息,返回訂單列表12.修改賬戶信息,生成訂單,用例結束事件流擴展 4a 查詢無結果,系統返回
20、相關搜索提示 4a1事務回卷,重新輸入搜索關鍵字進行搜索4a2用戶取消選擇,進入訂單確認4a3用戶取消購買,或退出登錄,或關閉頁面7a 用戶選擇繼續購買商品 7a1事務回卷,繼續瀏覽生鮮蔬菜列表步驟512a系統提示支付失敗 12a1密碼錯誤,事務回卷,提示會員重新提交支付信息 12a2賬戶余額不足,轉到充值 或者代支付頁面 12a3用戶取消購買,或退出登錄,或關閉頁面非功能性需求 根據人的心理等待能力,要求系統的每個業務響應時間不超過2s 在用戶選擇生鮮蔬菜后,未確認訂單時,菜籃子當中信息處于凍結狀態,在一定時間內不可剝奪(比如1小時) 超過規定時間,為保證效益,自動刪除未確認的訂單3.1.4
21、 用戶留言子用例表2-4用戶留言用例說明用例名稱用戶留言用例編號3用例等級Kite創建時間2010/5/23最后修改時間作者楊 賀測試者版本號1用例描述會員登陸后,可以對不熟悉的問題或流程提問,也可以對我們的運營方案和服務提出建設性的意見,在管理員沒有回復之前還可以修改意見主要參與者注冊會員用例觸發事件點擊在線留言時觸發用例前置條件 無后置條件 留言表內信息增加,結果反映到數據庫,等待管理員給出回復被包含的用例 無被擴展的用例 查看留言、修改留言、查看回復用例事件流用戶系統1.用戶提出在線留言申請3.用戶輸入留言信息并提交5.會員對留言不滿意,提出編輯留言申請7.會員編輯留言并提交9.會員提出
22、查看回復申請2.系統返回留言初始化界面4.系統驗證留言有效性和合理性,存入數據庫,返回成功,用例結束6.系統驗證留言是否處于已處理狀態,返回留言編輯頁面8.系統驗證留言有效性和合理性,存入數據庫,返回成功,用例結束10系統查詢數據庫,返回管理員的回復事件流擴展 4a 用戶留言含有非法信息,系統返回相關提示 4a1事務回卷,返回編輯留言界面 4a2事務回卷,返回留言初始化界面重新留言 4a3用戶取消留言,或退出登錄,或關閉頁面6a 系統驗證留言處于已處理狀態,不可被編輯 6a1用戶取消編輯,或退出登錄,或關閉頁面6a2用戶查看回復8a 用戶編輯的留言含有非法信息,系統返回相關提示 4a1事務回卷
23、,返回重新編輯留言界面 4a3用戶取消留言,或退出登錄,或關閉頁面10a系統提示留言未處理,無回復 10a1用戶查看留言 10a2用戶取消查看,或退出登錄,或關閉頁面非功能性需求 根據國家相關法律和政策的敏感度規定,屏蔽和拒絕一些有反動意圖的言論 根據人的心理等待能力,要求系統的每個業務響應時間不超過2s3.1.5 訂單處理子用例表2-5訂單處理用例說明用例名稱訂單處理用例編號4用例等級Sea創建時間2010/5/23最后修改時間作者楊 賀測試者版本號1用例描述普通員工查看系統內會員提交的訂單,進行實際交易確認和處理,以及調度安排人員進行生鮮蔬菜的配送主要參與者普通員工用例觸發事件普通員工點擊
24、訂單處理選項時觸發用例前置條件 普通員工登陸系統后臺,在工作時間內后置條件 訂單表信息被提取處理,生成交易清單和配送清單,反映到數據庫的修改被包含的用例 查看訂單列表、生成交易清單、配送安排被擴展的用例 無用例事件流普通員工系統1.提出處理請求3.提出查看訂單列表內容請求,鍵入處理意見和配送安排5.員工核實訂單處理無誤,確認進行訂單處理 2.系統驗證工作時間有效,返回訂單處理界面4.系統驗證處理意見的有效性,有效性通過后,系統返回訂單信息6.系統將處理結果放入數據庫中,返回處理成功提示,用例結束事件流擴展 2a 當前不在工作時間內,給出警告提示 2a1員工取消請求,轉到個人信息管理2a2員工取
25、消請求,或退出登錄,或關閉頁面4a 處理意見非法,給出非法提示 4a1事務回卷,根據錯誤提示重新鍵入處理意見 4a1員工取消處理,或退出登錄,或關閉頁面5a員工發現訂單中存在操作失誤,或因工作疏忽鍵入錯誤信息 5a1事務回卷,員工重新修改該處理意見 5a2事務回卷,員工取消該處理意見 5a3用戶取消處理,或退出登錄,或關閉頁面非功能性需求 根據人的心理等待能力,要求系統的每個流程響應時間不超過2s 不在工作時間內不能進行業務處理,以避免非法操作 在員工進行處理過程中,未確認的處理,自動視為未處理3.1.6 商品信息管理子用例表2-6商品信息管理用例說明用例名稱商品信息管理用例編號5用例等級Se
26、a創建時間2010/5/23最后修改時間作者楊 賀測試者版本號1用例描述普通管理員瀏覽生鮮蔬菜信息,根據市場行情對生鮮蔬菜價格進行編輯,或者進行生鮮蔬菜的上市下架操作主要參與者普通管理員用例觸發事件普通管理員選擇管理商品信息選項觸發用例前置條件 普通管理員登陸系統后臺,在工作時間內后置條件 生鮮蔬菜信息列表中的部分內容被修改或者刪除,其結果反映到數據庫的修改被包含的用例 查看生鮮蔬菜信息、生鮮蔬菜搜索、編輯生鮮蔬菜信息、生鮮蔬菜信息統計被擴展的用例 無用例事件流普通管理員系統1.根據工作要求,提出瀏覽商品列表請求3.鍵入關鍵詞,搜索商品5.提出查看商品信息請求,即信息編輯請求(可以不編輯)7.
27、輸入要更改的信息(或刪除商品),提交更改請求9.確認編輯信息11.提出增加商品請求13.輸入新品的基本信息,增加申請15.確認增加商品17.提出商品信息統計請求19.填寫統計條件(按什么統計)2.系統驗證工作時間有效,返回商品信息列表4.系統根據關鍵詞檢索數據庫,返回查詢結果6.返回商品詳細信息(可編輯狀態)8.系統驗證提交信息的合法性,并返回驗證結果10.系統將更改寫入數據庫,返回成功信息,用例結束12.系統返回增加商品初始化頁面14.系統驗證提交信息的合法性,并返回驗證結果16.系統將增加請求寫入數據庫,返回成功信息,用例結束18.系統返回統計初始化頁面20.驗證統計條件有效性,返回統計結
28、果,用例結束事件流擴展2a 當前不在工作時間內,給出警告提示 2a1管理員取消請求,轉到其他活動2a2管理員取消請求,或退出登錄,或關閉頁面4a 搜索出錯,給出操作提示 4a1事務回卷,管理員重新鍵入搜索關鍵字,進行搜索4a2管理員取消搜索請求,或退出系統,或關閉頁面 7.a 用戶取消查看 7a1或退出登錄,或關閉頁面,或轉向其他操作8a 提交信息非法,給出非法提示 8a1事務回卷,根據錯誤提示重新提交信息 8a1管理員取消提交請求,或退出登錄,或關閉頁面14a 增加信息不符合要求,返回錯誤提示 14a1管理員根據提示修改不合法的信息 14a2事務回卷,管理員重新增加修改信息 14a3管理員取
29、消增加,或退出登錄,或關閉頁面非功能性需求 根據人的心理等待能力,要求系統的每個流程響應時間不超過2s為了將系統內無用信息率降低到最低,定期刪除過期信息,以保證系統響應時間最短不在工作時間內不能進行業務處理,以避免非法操作 在管理員進行處理過程中,未確認的處理,自動視為未處理3.1.7 新聞公告維護子用例表2-7新聞公告維護用例說明用例名稱新聞公告維護用例編號6用例等級Sea創建時間2010/5/23最后修改時間作者楊 賀測試者版本號1用例描述普通管理員瀏覽新聞公告信息,根據市場信息和社會動態發布最新的健康資訊,添加最新的特色和特價優惠信息主要參與者普通管理員用例觸發事件普通管理員選擇新聞公告
30、維護選項觸發用例前置條件 普通管理員登陸系統后臺,在工作時間內后置條件 新聞公告被更新,其結果反映到數據庫的修改被包含的用例 查看資訊信息、刪除資訊信息、編輯資訊信息、增加資訊信息、搜索特定公告信息被擴展的用例 無用例事件流普通管理員系統1.根據工作要求,提出瀏覽公告列表請求3.鍵入關鍵詞,搜索特定信息5.提出查看公告信息請求,即信息編輯請求(可以不編輯)7.輸入要更改的信息(或刪除資訊信息),提交更改請求9.確認編輯信息11.提出增加新公告請求13.輸入新公告的基本信息,增加申請15.確認增加新的公告2.系統驗證工作時間有效,返回公告信息列表4.系統根據關鍵詞檢索數據庫,返回查詢結果列表6.
31、返回公告詳細信息(可編輯狀態)8.系統驗證提交信息的合法性,并返回驗證結果10.系統將更改寫入數據庫,返回成功信息和最新公告列表,用例結束12.系統返回增加初始化頁面14.系統驗證提交信息的合法性,并返回驗證結果16.系統將增加請求寫入數據庫,返回成功信息和最新公告列表,用例結束事件流擴展2a 當前不在工作時間內,給出警告提示 2a1管理員取消請求,轉到其他活動2a2管理員取消請求,或退出登錄,或關閉頁面4a 搜索出錯,給出操作提示 4a1事務回卷,管理員重新鍵入搜索關鍵字,進行搜索4a2管理員取消搜索請求,或退出系統,或關閉頁面8a 提交信息非法,給出非法提示 8a1事務回卷,根據錯誤提示重
32、新提交信息 8a1管理員取消提交請求,或退出登錄,或關閉頁面14a 增加信息不符合要求,返回錯誤提示 14a1管理員根據提示修改不合法的信息 14a2事務回卷,管理員重新增加修改信息 14a3管理員取消增加,或退出登錄,或關閉頁面非功能性需求 根據人的心理等待能力,要求系統的每個流程響應時間不超過2s不在工作時間內不能進行業務處理,以避免非法操作 為了將系統內無用信息率降低到最低,定期刪除過期信息,以保證系統響應時間最短 在管理員進行處理過程中,未確認的處理,自動視為未處理3.1.8 留言板管理子用例表2-8留言板管理用例說明用例名稱留言板管理用例編號7用例等級Sea創建時間2010/5/23
33、最后修改時間作者楊 賀測試者版本號1用例描述普通管理員瀏覽用戶提出的留言信息,刪除一些無效的信息,并對用戶的問題進行回復主要參與者普通管理員用例觸發事件普通管理員選擇留言板管理選項觸發用例前置條件 普通管理員登陸系統后臺,在工作時間內后置條件 無效留言被刪除,合理留言給予回復,其結果反映到數據庫的修改被包含的用例 查看用戶留言、刪除無效留言、回復用戶留言被擴展的用例 無用例事件流普通管理員系統1.留言管理請求3.瀏覽列表,提出查看某條留言詳細信息的申請5.提出刪除無效的信息請求7.確認刪除留言9.提出回復留言請求13.輸入要回復的內容,提交回復申請15.確認增加回復2.系統查詢數據庫,自動返回
34、待處理的留言列表4.返回留言的詳細信息6.系統驗證刪除請求的合法性8.系統將刪除反映到數據庫,返回成功信息,用例結束10.返回回復初始化界面12.系統返回增加初始化頁面14.系統驗證提交信息的合法性,并返回驗證結果16.系統將增加請求寫入數據庫,返回成功信息和新的留言詳細信息,用例結束事件流擴展6a 當前留言有效,需要給出回復,并給出警告提示 6a1管理員根據提示,進行回復步驟136a2管理員取消請求,或退出登錄,或關閉頁面14a 增加信息不符合要求,返回錯誤提示 14a1管理員根據提示修改不合法的信息 14a2事務回卷,管理員重新增加修改信息 14a3管理員取消增加,或退出登錄,或關閉頁面非
35、功能性需求 根據人的心理等待能力,要求系統的每個流程響應時間不超過2s 用戶的每一份留言都是對我們系統工作的最好肯定,為了保證業務真實性,不能刪除合理的留言。同時,必須刪除無效的空留言和帶有危害國家安全和社會和諧的敏感字的留言 不在工作時間內不能進行業務處理,以避免非法操作 在管理員進行處理過程中,未確認的處理,自動視為未處理3.1.9 用戶管理子用例表2-9用戶管理用例說明用例名稱用戶管理用例編號8用例等級Sea創建時間2010/5/24最后修改時間作者楊 賀測試者版本號1用例描述超級管理員瀏覽所有用戶信息,分配用戶權限(角色)和添加刪除用戶主要參與者超級管理員用例觸發事件超級管理員選擇用戶
36、管理選項觸發用例前置條件 超級管理員登陸系統后臺后置條件 添加某些系統用戶,修改和刪除某些用戶信息,角色分配變更,某些用戶權限改變,其結果反映到數據庫的修改被包含的用例 添加用戶、更改用戶信息、查看用戶信息、刪除用戶信息、添加角色、修改角色、刪除角色、修改用戶權限被擴展的用例 無用例事件流超級管理員系統1.用戶管理請求3.查看某個用戶詳細信息5.提交編輯請求(修改、刪除用戶或角色信息)7.確認編輯操作9.提出增加(用戶或角色)請求11.輸入新增的信息,提交新增申請13.確認增加回復2.數據庫查詢,返回用戶信息列表4.系統查詢數據庫,返回詳細信息(可編輯狀態)6.系統驗證請求的合法性,并返回結果
37、8.系統將編輯反映到數據庫,返回成功信息,用例結束10.返回增加初始化界面12.系統驗證提交信息的合法性,并返回驗證結果16.系統將增加請求寫入數據庫,返回成功信息和新的列表信息,用例結束事件流擴展6a 修改信息非法,并給出警告提示 6a1管理員根據提示,重新編輯信息6a2管理員取消編輯請求,或退出登錄,或關閉頁面14a 增加信息不符合要求,返回錯誤提示 14a1管理員根據提示修改不合法的信息 14a2事務回卷,管理員重新增加修改信息 14a3管理員取消增加,或退出登錄,或關閉頁面非功能性需求 根據人的心理等待能力,要求系統的每個流程響應時間不超過2s 用戶的每一份留言都是對我們系統工作的最好
38、肯定,為了保證業務真實性,不能刪除合理的留言。同時,必須刪除無效的空留言和帶有危害國家安全和社會和諧的敏感字的留言 在管理員進行處理過程中,未確認的處理,自動視為未處理3.1.10 系統維護子用例表2-10系統維護用例說明用例名稱系統維護用例編號9用例等級Fish創建時間2010/5/24最后修改時間作者楊 賀測試者版本號1用例描述超級管理員進行數據庫的安全維護操作,包括日志管理、數據庫備份更新和系統參數設置主要參與者超級管理員用例觸發事件超級管理員選擇系統管理選項觸發用例前置條件 超級管理員登陸系統后臺后置條件 系統日志被維護,系統安全性得到保障,系統從故障中恢復被包含的用例 日志管理,數據
39、庫備份,數據庫更新,版面更新,系統參數設置被擴展的用例 無用例事件流超級管理員系統1.數據庫管理請求3.提出具體請求(備份?)5.確認備份7.提交還原請求9.確認還原11.提出系統日志查看13.管理員結束日志查看15.管理員提出參數設置17.填寫系統參數,并提交設置申請19.確認設置參數2.系統返回操作選項界面4.系統返回數據庫備份界面6.系統開始備份,并返回結果,用例結束8.系統返回數據庫還原界面10.系統開始還原,并返回結果,用例結束12.系統返回系統日志14.用例結束16.返回參數設置頁面18.系統驗證參數是否合法,并返回驗證結果20.系統將設置請求寫入數據庫,返回成功信息,用例結束事件
40、流擴展6a 數據庫備份出錯,并給出警告提示 6a1管理員根據提示,重新進行備份6a2管理員取消備份,或退出登錄,或關閉頁面 10a 數據庫還原出錯,并給出警告提示 10a1管理員根據提示,重新進行還原10a2管理員取消還原,或退出登錄,或關閉頁面 18a 參數設置不合法,并給出警告提示 18a1管理員根據提示,修改系統參數18a2管理員取消設置,重新進行設置請求18a3管理員取消設置,或退出登錄,或關閉頁面非功能性需求無3.1.11 身份驗證子用例3.2 活動分析活動圖是事件流的另外一種建模方式,所以可在業務模型中用活動圖描述業務過程的工作流。3.2.1 用戶留言活動圖3.2.2 選購商品活動
41、圖:3.2.3 菜籃子管理活動圖3.2.4 身份驗證1(注冊)3.2.5 身份驗證2(登陸)3.2.6 身份驗證3(取回密碼)3.2.7 個人信息管理3.2.8 訂單處理3.2.9 用戶信息管理1(用戶信息更改)3.2.10 用戶信息管理2(角色增加)3.2.11 用戶信息管理3(刪除用戶)3.2.12 商品信息管理3.2.13 系統維護活動圖3.2.14 用戶留言管理活動圖3.3 結構化需求3.3.1 概念數據模型該系統是應用到商業領域的,首先建立系統行為的概念數據模型,然后轉變為對象關系模型,最終表述為實體的靜態屬性和實體之間的業務關系,這樣做的好處是:1 為數據庫的物理設計構建數據結構2
42、 找出實體類和邊界類、控制類以及類之間的關系3 強化和最終確定數據模型中的屬性圖3.1 數據建模在系統分析當中的的作用3.3.2 對象關系模型由于篇幅的原因,這個過程只是以核心用例生鮮選購進行說明。根據業務用例的描述,蔬菜生鮮選購過程有關的實體類包括客戶、訂單、商品1 將蔬菜選購用例中的實體轉換為關系數據對象實體類屬性(下劃線表示主鍵)會員會員ID、姓名、地址、多值聯系電話、登錄名、密碼訂單訂單號、創建時間、Derived商品總價、運費、Derived總計,蔬菜商品號、商品名、詳細介紹、價格、庫存數量表3-12 添加外鍵來表示1:N的關系此時將會員ID作為外鍵加入到訂單類的屬性3 將訂單和蔬菜
43、之間的聯系轉化成蔬菜列表實體,最后得到四個對象之間的關系實體類屬性(下劃線表示主鍵)會員會員ID、姓名、地址、多值聯系電話、登錄名、密碼訂單訂單號、創建時間、Derived商品總價、運費、Derived總計,會員ID蔬菜商品號、商品名、詳細介紹、價格、庫存數量蔬菜列表訂單號,產品號、數量、實際價格、總價格圖3.2在線購買用例的對象關系模型(不是類圖)3.3.3 類發現從對象關系模型中透過事件流找出所有的類,并確定其類型(包括實體類、控制類和邊界類):在尋找類的時候需要注意類和用例之間是m:n的關系。不用例可以組合做一件事情,實現一個功能;一個用例也可以在多個類當中有所體現。圖3.3在線購買用例
44、的中的類在確定了系統的用例之后,就可以用它們來指導對系統的進一步設計。用例的實現描述了相互影響的對象的集合,這些對象將支持用例所要求的功能。給出系統用例的實現,是從外部視圖轉到內部結構的第一步。下面用交互圖來說明用例的實現,并通過顯示對象之間的關系和對象之間處理的消息來對系統的動態特性建模,為進行類的設計抽取方法。3.4 業務實現分析(順序圖)3.4.1 身份驗證順序圖3.4.2 訂單管理順序圖3.4.3 商品選購順序圖3.4.4 商品管理順序圖3.4.5 用戶信息管理順序圖3.5 類分析下面是城市綠色蔬菜配送系統的分析類圖,我們在分析階段為了后期設計的方便,將它分為在線購買和后臺管理兩個部分
45、進行分析l User類:定義了一些基本的屬性和方法,Customer,StandardAdmin,SuperAdmin繼承它以便實現代碼的重用。l StandardAdmin:普通管理員類他的職責有個人信息管理、留言板管理、新聞公告管理、新聞公告維護、商品信息管理、個性化推薦l SuperAdmin:超級管理員類他負責系統維護和用戶管理l Order:訂單類,它是顧客利用系統生成的一張蔬菜配送清單。l ItemList類:訂單項類,一個訂單可有多個訂單項組成l NewsBoard類:新聞公告類,由普通管理員創建,用于發布新聞l CustomerMessage類:顧客通過系統所發表的留言l Fr
46、esh類:蔬菜l Control:控制類,調用實體類的業務,向外界提供業務,這樣比較安全l Customer:顧客類,即本系統的客戶端的主要使用者3.6 狀態分析4 系統設計策略4.1 開發工具Myeclipse 它是功能豐富的JavaEE集成開發環境,包括了完備的編碼、調試、測試和發布功能,完整支持HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。4.2 服務器Tomcat 它運行時占用的系統資源小,擴展性好,支持負載平衡與郵件服務等開發應用系統常用的功能4.3 數據庫Mysql 它體積小、速度快、放源碼,許多中小型網站為了降低網站總體擁有
47、成本而選擇了MySQL作為網站數據庫。4.4 編程語言 java 用java編寫軟件簡單、安全、穩定,可移植性非常 強,適合為大中型企業編寫軟件。java有個缺點就是編寫的軟件速度有點慢,編寫桌面軟件如游戲軟件不如C+更有優勢。4.5 腳本語言JavaScript JavaScript非常簡單,而且具有動態性,可以直接對用戶的輸入做出響應,從而大大減輕了服務器的壓力。它是一種基于瀏覽器的語言,所以于操作環境無關,只要能運行瀏覽器的環境就能運行JavaScript語言。4.6 網頁編寫語言jsp jsp所有的應運都是都是基于服務器的,所以它可以保證所有的數據都是數據庫里最新的,而且它的客戶端的接
48、口都比較簡單,易于對各種應運進行部署、維護和修改。4.7 系統部署4.8 體系結構的選擇為了更好的實現用戶和系統的交互,為用戶提供友好的操作界面,系統采用三層架構,將整個業務應用劃分為表現層、業務邏輯層和數據訪問層。其中表示層的功能是提供用戶一個良好的交互界面;業務邏輯層是系統結構的核心價值體現部分,它嚴格遵循層與層之間的松耦合,提供一個安全可靠的數據交互集;數據訪問層主要負責數據庫的訪問4.9 系統實現組件三層架構下,系統內數據的操作不是直接的,我們將所有對數據源的訪問操作抽象封裝在一個公共API的中,并在接口當中定義所有要實現的方法,因此需要在類的設計中構造一個control類和Form類
49、來實現三層架構4.10 系統功能實現4.10.1 后臺管理類設計4.10.2 商品購買類設計4.10.3 新聞公告管理的實現4.10.4 留言交互的實現4.10.5 商品購買的實現4.10.6 蔬菜配送的實現4.10.7 代碼重用的設計思想4.11 用戶界面的設計無5 系統移交和后期維護無6 領域擴展構想系統分析和設計的主要目的是為了通過軟件來改善某個機構的組織結構,幫助員工輕便而高效的完成核心的商業任務。蔬菜配送系統采用B2C運行模式,借助于網絡平臺來給市民提供蔬菜選購和配送服務的。然而,企業管理人員更需要對系統內的數據信息進行分析處理,從數據的角度分析企業的營銷情況,并制定下一步的管理營銷策略來提高企業利潤。出于這方面的考慮,我們把管理信息系統擴展成以下三個子系統:1. Transaction Processing System2. Management Information 3. Decision supporting System(未實現)在城市綠色蔬菜配送系統設計的時候,我們盡可能的考慮參與者的實際情況,根據不同需求和類別,選擇合適的領域模型,再進一步進行特定領域問題分析,以抽象出領域中通用的解決方案。以后,如果再進行領域內不同應用的系統設計時,可以根據該通用解決方案具體化出面向不同應用的解決方案,來減少系統開發的時間和金錢成本。