寵物商店詳細設計說明書_第1頁
寵物商店詳細設計說明書_第2頁
寵物商店詳細設計說明書_第3頁
寵物商店詳細設計說明書_第4頁
寵物商店詳細設計說明書_第5頁
已閱讀5頁,還剩25頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、寵物商店詳細說明書寵物商店詳細設計說明書目錄目錄2i.引言41.1 編寫目的41.2背景41.3項目訓練的技能點41.4專業知識41.5整體的開發思路41.6界面交互設計4ii.總體設計42.1需求規定4項目管理4項目要求概述:4其他要求42.3接口42.4基本設計概念和流程4設計原則4設計概念4iii.系統功能設計43.1結構43.2類設計4總體結構43.3 主要功能設計及詳細設計4系統啟動4登錄4寵物主人購買庫存寵物4寵物主人購買新培育寵物43.4主要的類設計4根據數據庫表創建實體類4創建DAO接口和實現類4創建業務接口和實現類4優化業務接口4iv.概念結構設計44.1庫表關系圖4 庫表描

2、述4 數據庫腳本4v.維護與擴展430i. 引言1.1 編寫目的本詳細設計說明書是針對項目案例寵物商店編寫的. 計算機技術發展日新月異,在各行各業應用越來越廣泛。人們越來越多的在網上購物,開發網上寵物購買可以使寵物買賣方便、快捷、費用低等有點,將人們從傳統的寵物買賣方式中解脫出來,提高效率,幫助了解更多寵物的信息。1.2背景此項目由13屆軟件工程一班,實訓時完成。軟件是基于實訓內容java和數據庫。軟件目前只能運行在Windows平臺下。軟件用于方便人們快捷的從逛街式,轉變成網上購買寵物,不僅可以避免外出,還可以具體了解寵物的信息。1.3項目訓練的技能點 面向對象程序設計的思想 使用類圖設計系

3、統 Java集合存儲和傳輸數據 Java異常處理 JDBC操作數據庫 Oracle存儲數據 DAO層的應用1.4專業知識面向對象的程序設計:即(Object-OrientedProgramming,簡記為OOP)立意于創建軟件重用代碼,具備更好地模擬現實世界環境的能力,這使它被公認為是自上而下編程的優勝者。它通過給程序中加入擴展語句,把函數“封裝”進編程所必需的“對象”中。面向對象的編程語言使得復雜的工作條理清晰、編寫容易。Java:Java是一個由Sun公司開發而成的新一代編程語言。使用它可在各式各樣不同機器、不同操作平臺的網絡環境中開發軟件。Java正在逐步成為Internet應用的主要開

4、發語言。JDBC:JDBC(JavaDataBaseConnectivity,java數據庫連接)是一種用于執行SQL語句的JavaAPI,可以為多種關系數據庫提供統一訪問,它由一組用Java語言編寫的類和接口組成。JDBC提供了一種基準,據此可以構建更高級的工具和接口,使數據庫開發人員能夠編寫數據庫應用程序,同時,JDBC也是個商標名。DAO層:DAO(DataAccessObjects)數據訪問對象是第一個面向對象的接口,它顯露了MicrosoftJet數據庫引擎(由MicrosoftAccess所使用),并允許VisualBasic開發者通過ODBC象直接連接到其他數據庫一樣,直接連接到

5、Access表。DAO最適用于單系統應用程序或小范圍本地分布使用。1.5整體的開發思路系統開發步驟: 明確需求 設計數據庫 設計技術框架 Java技術 數據訪問層 編碼順序1) 系統啟動2) 登錄功能3) 各種寵物主人操作 4) 各種寵物商店操作1.6界面交互設計界面交互設計的原則:(1)統一性原則 界面風格統一 用相同方式展現相同類型的數據,如:日期類型 交互風格統一 用相同方式完成相同類型的操作,如:錄入日期(2)美觀性原則 界面美觀大方(3)易用性原則 操作方式自然、易理解系統功能結構: ii. 總體設計2.1需求規定2.1.1項目管理1、項目基礎信息項目名稱:寵物商店項目小組:孫明,黃

6、慧芳,鄭露,沈憲陽,鄭鑫鑫,孫俊杰,季兵,葉浩東;項目時間:2016/1/1-2016/1/3項目承擔:項目小組成員2、項目相關文檔文檔:詳細設計說明書、實訓課程報告;2.2系統概述2.2.1項目要求概述:l 在寵物商店里,寵物主人可以出賣、購買寵物l 每一筆買入、賣出的業務,店家都會記錄在賬l 商店可以根據需求自己培育寵物品種l 系統角色:寵物、主人、寵物商店、賬目總體業務流程圖2.2.2其他要求1、先進性:采用先進成熟的技術,確保系統的先進性、經濟性和實用性。2、安全可靠:平臺提供的應用框架及平臺本身提供應用安全保證,并可以和第三方安全手段,如認證、加密、電子簽名等進行集成。必須保證數據的

7、安全性和保密性。3、規范性:開發過程控制、開發技術、系統編碼、文檔應規范化,并遵循相應的國內外標準。開發結束時,提供必要的文檔資料。4、可靠性:保證系統的可靠運行和在升級過程中的方便快捷。5、可擴充性:系統應當可以根據需求的變化,方便地進行功能的調整、增減,模塊的升級和系統架構的逐步完善。提交相應的系統規范文檔,應用單位能夠進行必要的二次開發。6、界面友好、操作方便:操作界面要直觀、簡單、貼近實際,操作過程應當盡量簡化,符合實際過程。身份認證過程即要保證安全,也要盡量簡化認證過程。7、可維護性:系統維護應當簡單。8、集成性:平臺應對基于平臺開發的應用模塊、權限控制、界面進行集成。9、操作系統:

8、本軟件支持Windows系統。2.3接口程序中實現的接口有:Accountable、Breadable、Buyable、PetFactory、PetOwnerService、PetStoreFactory、PetStoreService、Sellable、PetDao、PetOwnerDao、PetStoreDao、AccountDao2.4基本設計概念和流程2.4.1設計原則1、采用面向對象技術進行設計和開發。2、應用中間件技術,保證系統的開放性和對技術發展的適應性。3、采用組件技術進行開發,提高系統可擴展性。4、科學劃分信息塊,方便快速查詢,提高使用性。2.4.2設計概念(1) 在寵物商店

9、里,寵物主人可以出賣、購買寵物(2) 每一筆買入、賣出的業務,店家都會記錄在賬(3) 商店可以根據需求自己培育寵物品種iii. 系統功能設計3.1結構本系統主要實現在線電子寵物商店的前臺功能,可分為會員服務、寵物信息查詢、寵物分類(新培育的寵物和庫存寵物)、用戶登陸、用戶購買寵物、用戶賣出寵物、交易賬目等主要的功能模塊。下圖是系統流程圖: 3.2類設計3.2.1總體結構總體類圖3.3 主要功能設計及詳細設計3.3.1系統啟動 當我們進入寵物商店時,我們有一個系統啟動模塊:在系統啟動時,顯示所有的寵物信息、寵物主人信息、寵物商店信息。系統啟動后,提示選擇登錄模式 。(1)思路分析:DAO代碼:P

10、etDao:getAllPet() 查詢所有寵物信息PetOwnerDao:getAllOwner() 查詢所有寵物主人信息PetStoreDao:getAllStore() 查詢所有寵物商店信息測試類startPetShop():獲取相關信息并輸出,提示選擇登錄模式main():調用startPetShop(),啟動程序(2)重點使用JDBC訪問Oracle數據庫獲取相關信息并遍歷輸出 如下圖: 圖 3-03.3.2登錄在登陸這塊模塊,輸入用戶名和密碼,判斷登錄是否成功,如果成功,輸出主人基本信息并提示選擇相應操作。如果登錄失敗,提示確認用戶名和密碼后重新輸入。我們以成功為例,主人成功登錄后

11、,可選擇購買庫存寵物,顯示所有庫存寵物列表供主人選擇,輸入寵物編號完成購買,購買成功將顯示提示信息 。(1)思路分析DAO代碼PetOwnerDao:selectOwner() 根據查詢條件查詢寵物主人信息Service代碼PetOwnerService:login() 寵物主人登錄測試類ownerLogin() :寵物主人登錄startPetShop():如果選擇主人登錄,調用ownerLogin()main():調用startPetShop(),啟動程序如下圖:圖 3-13.3.3寵物主人購買庫存寵物主人成功登錄后,可選擇購買庫存寵物,顯示所有庫存寵物列表供主人選擇,輸入寵物編號完成購買,

12、購買成功將顯示提示信息。(1)思路分析DAO代碼Service代碼查詢所有庫存寵物根據主人選擇實現購買測試類ownerBuy():寵物主人購買寵物ownerLogin() :如果主人購買寵物,調用ownerBuy()(2)重點更新寵物信息:指定ownerid更新寵物主人信息:減少更新寵物商店信息:增加更新賬目信息:添加新賬目如下圖: 圖 3-23.3.4寵物主人購買新培育寵物主人成功登錄后,可選擇購買新培育寵物,顯示所有新培育寵物列表主人選擇,輸入寵物編號完成購買,購買成功將顯示提示信息。思路分析實現步驟與購買庫存寵物相同 購買庫存寵物和新培育寵物屬于兩種不同的業務,在業務接口和實現類中應該定

13、義不同的方法重用數據訪問層代碼寵物主人賣出寵物給商店顯示主人的寵物列表,選擇要賣出的寵物序號,確認賣出寵物,顯示寵物商店列表,選擇買家序號完成交易,交易成功將顯示提示信息。1、思路分析(1)DAO代碼(2)Service代碼獲得指定ID的寵物主人的所有寵物信息寵物主人向寵物商店賣出自己寵物(3)測試類ownerSell():寵物主人賣出寵物ownerLogin() :如果主人賣出寵物,調用ownerSell()2、重點根據主人選擇實現購買更新寵物信息:刪除ownerid更新寵物主人信息:增加更新寵物商店信息:減少更新賬目信息:添加新賬目如下圖:圖 3-33.4主要的類設計3.4.1根據數據庫表

14、創建實體類實體類一般和數據庫表對應,實體類的屬性對應于表的字段,為四個數據庫表分別創建實體類,實現數據庫數據在各個層次的傳輸,四個實體類的名稱可以定義為Pet、PetOwner、PetStore、Account。 寵物商店實體類:PetStore 寵物主人實體類:PetOwner 寵物實體類:Pet 寵物商店賬目類:Account 圖 3-53.4.2創建DAO接口和實現類采用面向接口編程的思想設計數據訪問層,定義DAO接口和實現類,為四個數據庫表分別創建DAO接口和實現類,為了重用建立和關閉數據庫的代碼,創建BaseDao作為四個實現類的父類圖3-63.4.3創建業務接口和實現類 寵物主人實

15、現類:PetOwnerServiceImpl 寵物工廠實現類:PetFactoryImpl 寵物商店實現類:PetStoreServiceImpl 寵物商店工程實現類:PetStoreFactoryImpl圖 3-73.4.4優化業務接口 我們按照“單一職能原則” 對業務接口定義進行優化,抽取出Buyable、Sellable、Breedable、Accountable等接口,PetOwnerService、PetStoreService接口根據自身功能繼承其中的一個或多個接口。寵物商店數據庫操作類:PetStoreDaoImpl寵物主人數據庫操作類:PetOwnerDaoImpl寵物數據庫操

16、作類:PetDaoImpl寵物商店賬目信息數據庫操作類 :AccountDaoImpliv. 概念結構設計4.1庫表關系圖4.1.1 庫表描述名稱實現寵物表Pet用戶表PetOwner商店表PetStore1. 寵物表2. 主人表3商店表 4.1.2 數據庫腳本CREATE TABLE PET(ID NUMBER,NAME VARCHAR2(50);TYPENAME VARCHAR(20);HEALTH NUMBER,LOVE NUMBER, BIRTHDAY DATE,OWNER_ID NUMBER,STORE_ID NUMBER);CREATE SEQUENCE SEQ_NAMESTATR

17、 WITH 1INCREMENT BY 1NOMAXVALUE CACHE 10;select to_char(BIRTHDAY,'mm-dd-yyyy')from pet;insert into pet(ID,NAME,TYPENAME,LOVE,BITHDAY,OWNER_ID,STORE_ID)values(651,'小花','狗狗',90,89,to_date('2015-02-14','yyyy-mm-dd'),361,985);insert into pet(ID,NAME,TYPENAME,LOVE,

18、BITHDAY,OWNER_ID,STORE_ID)values(652,'貝貝','喵咪',100,95,to_date('2015-05-05','yyyy-mm-dd'),362,211);insert into pet(ID,NAME,TYPENAME,LOVE,BITHDAY,OWNER_ID,STORE_ID)values(653,'小環','企鵝',98,100,to_date('2015-08-08','yyyy-mm-dd'),363,212);in

19、sert into pet(ID,NAME,TYPENAME,LOVE,BITHDAY,OWNER_ID,STORE_ID)values(654,'麥克','鸚鵡',100,100,to_date('2015-09-09','yyyy-mm-dd'),364,213);insert into pet(ID,NAME,TYPENAME,LOVE,BITHDAY,OWNER_ID,STORE_ID)values(655,'愛麗絲','倉鼠',100,95,to_date('2015-10-01&

20、#39;,'yyyy-mm-dd'),365,214);insert into pet(ID,NAME,TYPENAME,LOVE,BITHDAY,OWNER_ID,STORE_ID)values(656,'旺財','狗狗',100,85,to_date('2015-11-11','yyyy-mm-dd'),366,215);insert into pet(ID,NAME,TYPENAME,LOVE,BITHDAY,OWNER_ID,STORE_ID)values(657,'小白','蛇&#

21、39;,100,75,to_date('201512-12','yyyy-mm-dd'),367,216);SELECT * FROM PET;DELETE PET;create table Petowner(ID NUMBER,NAME VARCHAR2(50),PASSWORD VARCHAR2(50),MONEY NUMBER(10,2);insert into Petowner(ID,NAME,PASSWORD,MONEY)values(361,'小紅','6661',150);insert into Petowner(ID,NAME,PASSWORD,MONEY)values(362,'前前','6662',200);insert into Petowner(ID,NAME,PASSWORD,MONEY)values(363,'小靜','6663',80);insert into Petowner(ID,NAME,PASSWORD,MONEY)values(364,'菲菲','6664',163);insert into Petown

溫馨提示

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

評論

0/150

提交評論