




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、寵物商店詳細說明書寵物商店詳細設(shè)計說明書目錄目錄2i.引言41.1 編寫目的41.2背景41.3項目訓(xùn)練的技能點41.4專業(yè)知識41.5整體的開發(fā)思路41.6界面交互設(shè)計4ii.總體設(shè)計42.1需求規(guī)定42.1.1項目管理42.2.1項目要求概述:42.2.2其他要求42.3接口42.4基本設(shè)計概念和流程42.4.1設(shè)計原則42.4.2設(shè)計概念4iii.系統(tǒng)功能設(shè)計43.1結(jié)構(gòu)43.2類設(shè)計43.2.1總體結(jié)構(gòu)43.3 主要功能設(shè)計及詳細設(shè)計43.3.1系統(tǒng)啟動43.3.2登錄43.3.3寵物主人購買庫存寵物43.3.4寵物主人購買新培育寵物43.4主要的類設(shè)計43.4.1根據(jù)數(shù)據(jù)庫表創(chuàng)建實體
2、類43.4.2創(chuàng)建DAO接口和實現(xiàn)類43.4.3創(chuàng)建業(yè)務(wù)接口和實現(xiàn)類43.4.4優(yōu)化業(yè)務(wù)接口4iv.概念結(jié)構(gòu)設(shè)計44.1庫表關(guān)系圖44.1.1 庫表描述44.1.2 數(shù)據(jù)庫腳本4v.維護與擴展430i. 引言1.1 編寫目的本詳細設(shè)計說明書是針對項目案例寵物商店編寫的. 計算機技術(shù)發(fā)展日新月異,在各行各業(yè)應(yīng)用越來越廣泛。人們越來越多的在網(wǎng)上購物,開發(fā)網(wǎng)上寵物購買可以使寵物買賣方便、快捷、費用低等有點,將人們從傳統(tǒng)的寵物買賣方式中解脫出來,提高效率,幫助了解更多寵物的信息。1.2背景此項目由13屆軟件工程一班,實訓(xùn)時完成。軟件是基于實訓(xùn)內(nèi)容java和數(shù)據(jù)庫。軟件目前只能運行在Windows平臺下
3、。軟件用于方便人們快捷的從逛街式,轉(zhuǎn)變成網(wǎng)上購買寵物,不僅可以避免外出,還可以具體了解寵物的信息。1.3項目訓(xùn)練的技能點 面向?qū)ο蟪绦蛟O(shè)計的思想 使用類圖設(shè)計系統(tǒng) Java集合存儲和傳輸數(shù)據(jù) Java異常處理 JDBC操作數(shù)據(jù)庫 Oracle存儲數(shù)據(jù) DAO層的應(yīng)用1.4專業(yè)知識面向?qū)ο蟮某绦蛟O(shè)計:即(Object-OrientedProgramming,簡記為OOP)立意于創(chuàng)建軟件重用代碼,具備更好地模擬現(xiàn)實世界環(huán)境的能力,這使它被公認(rèn)為是自上而下編程的優(yōu)勝者。它通過給程序中加入擴展語句,把函數(shù)“封裝”進編程所必需的“對象”中。面向?qū)ο蟮木幊陶Z言使得復(fù)雜的工作條理清晰、編寫容易。Java:J
4、ava是一個由Sun公司開發(fā)而成的新一代編程語言。使用它可在各式各樣不同機器、不同操作平臺的網(wǎng)絡(luò)環(huán)境中開發(fā)軟件。Java正在逐步成為Internet應(yīng)用的主要開發(fā)語言。JDBC:JDBC(JavaDataBaseConnectivity,java數(shù)據(jù)庫連接)是一種用于執(zhí)行SQL語句的JavaAPI,可以為多種關(guān)系數(shù)據(jù)庫提供統(tǒng)一訪問,它由一組用Java語言編寫的類和接口組成。JDBC提供了一種基準(zhǔn),據(jù)此可以構(gòu)建更高級的工具和接口,使數(shù)據(jù)庫開發(fā)人員能夠編寫數(shù)據(jù)庫應(yīng)用程序,同時,JDBC也是個商標(biāo)名。DAO層:DAO(DataAccessObjects)數(shù)據(jù)訪問對象是第一個面向?qū)ο蟮慕涌?,它顯露了M
5、icrosoftJet數(shù)據(jù)庫引擎(由MicrosoftAccess所使用),并允許VisualBasic開發(fā)者通過ODBC象直接連接到其他數(shù)據(jù)庫一樣,直接連接到Access表。DAO最適用于單系統(tǒng)應(yīng)用程序或小范圍本地分布使用。1.5整體的開發(fā)思路系統(tǒng)開發(fā)步驟: 明確需求 設(shè)計數(shù)據(jù)庫 設(shè)計技術(shù)框架 Java技術(shù) 數(shù)據(jù)訪問層 編碼順序1) 系統(tǒng)啟動2) 登錄功能3) 各種寵物主人操作 4) 各種寵物商店操作1.6界面交互設(shè)計界面交互設(shè)計的原則:(1)統(tǒng)一性原則 界面風(fēng)格統(tǒng)一 用相同方式展現(xiàn)相同類型的數(shù)據(jù),如:日期類型 交互風(fēng)格統(tǒng)一 用相同方式完成相同類型的操作,如:錄入日期(2)美觀性原則 界面美
6、觀大方(3)易用性原則 操作方式自然、易理解系統(tǒng)功能結(jié)構(gòu): ii. 總體設(shè)計2.1需求規(guī)定2.1.1項目管理1、項目基礎(chǔ)信息項目名稱:寵物商店項目小組:孫明,黃慧芳,鄭露,沈憲陽,鄭鑫鑫,孫俊杰,季兵,葉浩東;項目時間:2016/1/1-2016/1/3項目承擔(dān):項目小組成員2、項目相關(guān)文檔文檔:詳細設(shè)計說明書、實訓(xùn)課程報告;2.2系統(tǒng)概述2.2.1項目要求概述:l 在寵物商店里,寵物主人可以出賣、購買寵物l 每一筆買入、賣出的業(yè)務(wù),店家都會記錄在賬l 商店可以根據(jù)需求自己培育寵物品種l 系統(tǒng)角色:寵物、主人、寵物商店、賬目總體業(yè)務(wù)流程圖2.2.2其他要求1、先進性:采用先進成熟的技術(shù),確保系
7、統(tǒng)的先進性、經(jīng)濟性和實用性。2、安全可靠:平臺提供的應(yīng)用框架及平臺本身提供應(yīng)用安全保證,并可以和第三方安全手段,如認(rèn)證、加密、電子簽名等進行集成。必須保證數(shù)據(jù)的安全性和保密性。3、規(guī)范性:開發(fā)過程控制、開發(fā)技術(shù)、系統(tǒng)編碼、文檔應(yīng)規(guī)范化,并遵循相應(yīng)的國內(nèi)外標(biāo)準(zhǔn)。開發(fā)結(jié)束時,提供必要的文檔資料。4、可靠性:保證系統(tǒng)的可靠運行和在升級過程中的方便快捷。5、可擴充性:系統(tǒng)應(yīng)當(dāng)可以根據(jù)需求的變化,方便地進行功能的調(diào)整、增減,模塊的升級和系統(tǒng)架構(gòu)的逐步完善。提交相應(yīng)的系統(tǒng)規(guī)范文檔,應(yīng)用單位能夠進行必要的二次開發(fā)。6、界面友好、操作方便:操作界面要直觀、簡單、貼近實際,操作過程應(yīng)當(dāng)盡量簡化,符合實際過程。身
8、份認(rèn)證過程即要保證安全,也要盡量簡化認(rèn)證過程。7、可維護性:系統(tǒng)維護應(yīng)當(dāng)簡單。8、集成性:平臺應(yīng)對基于平臺開發(fā)的應(yīng)用模塊、權(quán)限控制、界面進行集成。9、操作系統(tǒng):本軟件支持Windows系統(tǒng)。2.3接口程序中實現(xiàn)的接口有:Accountable、Breadable、Buyable、PetFactory、PetOwnerService、PetStoreFactory、PetStoreService、Sellable、PetDao、PetOwnerDao、PetStoreDao、AccountDao2.4基本設(shè)計概念和流程2.4.1設(shè)計原則1、采用面向?qū)ο蠹夹g(shù)進行設(shè)計和開發(fā)。2、應(yīng)用中間件技術(shù),保證
9、系統(tǒng)的開放性和對技術(shù)發(fā)展的適應(yīng)性。3、采用組件技術(shù)進行開發(fā),提高系統(tǒng)可擴展性。4、科學(xué)劃分信息塊,方便快速查詢,提高使用性。2.4.2設(shè)計概念(1) 在寵物商店里,寵物主人可以出賣、購買寵物(2) 每一筆買入、賣出的業(yè)務(wù),店家都會記錄在賬(3) 商店可以根據(jù)需求自己培育寵物品種iii. 系統(tǒng)功能設(shè)計3.1結(jié)構(gòu)本系統(tǒng)主要實現(xiàn)在線電子寵物商店的前臺功能,可分為會員服務(wù)、寵物信息查詢、寵物分類(新培育的寵物和庫存寵物)、用戶登陸、用戶購買寵物、用戶賣出寵物、交易賬目等主要的功能模塊。下圖是系統(tǒng)流程圖: 3.2類設(shè)計3.2.1總體結(jié)構(gòu)總體類圖3.3 主要功能設(shè)計及詳細設(shè)計3.3.1系統(tǒng)啟動 當(dāng)我們進入
10、寵物商店時,我們有一個系統(tǒng)啟動模塊:在系統(tǒng)啟動時,顯示所有的寵物信息、寵物主人信息、寵物商店信息。系統(tǒng)啟動后,提示選擇登錄模式 。(1)思路分析:DAO代碼:PetDao:getAllPet() 查詢所有寵物信息PetOwnerDao:getAllOwner() 查詢所有寵物主人信息PetStoreDao:getAllStore() 查詢所有寵物商店信息測試類startPetShop():獲取相關(guān)信息并輸出,提示選擇登錄模式main():調(diào)用startPetShop(),啟動程序(2)重點使用JDBC訪問Oracle數(shù)據(jù)庫獲取相關(guān)信息并遍歷輸出 如下圖: 圖 3-03.3.2登錄在登陸這塊模塊
11、,輸入用戶名和密碼,判斷登錄是否成功,如果成功,輸出主人基本信息并提示選擇相應(yīng)操作。如果登錄失敗,提示確認(rèn)用戶名和密碼后重新輸入。我們以成功為例,主人成功登錄后,可選擇購買庫存寵物,顯示所有庫存寵物列表供主人選擇,輸入寵物編號完成購買,購買成功將顯示提示信息 。(1)思路分析DAO代碼PetOwnerDao:selectOwner() 根據(jù)查詢條件查詢寵物主人信息Service代碼PetOwnerService:login() 寵物主人登錄測試類ownerLogin() :寵物主人登錄startPetShop():如果選擇主人登錄,調(diào)用ownerLogin()main():調(diào)用startPet
12、Shop(),啟動程序如下圖:圖 3-13.3.3寵物主人購買庫存寵物主人成功登錄后,可選擇購買庫存寵物,顯示所有庫存寵物列表供主人選擇,輸入寵物編號完成購買,購買成功將顯示提示信息。(1)思路分析DAO代碼Service代碼查詢所有庫存寵物根據(jù)主人選擇實現(xiàn)購買測試類ownerBuy():寵物主人購買寵物ownerLogin() :如果主人購買寵物,調(diào)用ownerBuy()(2)重點更新寵物信息:指定ownerid更新寵物主人信息:減少更新寵物商店信息:增加更新賬目信息:添加新賬目如下圖: 圖 3-23.3.4寵物主人購買新培育寵物主人成功登錄后,可選擇購買新培育寵物,顯示所有新培育寵物列表主
13、人選擇,輸入寵物編號完成購買,購買成功將顯示提示信息。思路分析實現(xiàn)步驟與購買庫存寵物相同 購買庫存寵物和新培育寵物屬于兩種不同的業(yè)務(wù),在業(yè)務(wù)接口和實現(xiàn)類中應(yīng)該定義不同的方法重用數(shù)據(jù)訪問層代碼寵物主人賣出寵物給商店顯示主人的寵物列表,選擇要賣出的寵物序號,確認(rèn)賣出寵物,顯示寵物商店列表,選擇買家序號完成交易,交易成功將顯示提示信息。1、思路分析(1)DAO代碼(2)Service代碼獲得指定ID的寵物主人的所有寵物信息寵物主人向?qū)櫸锷痰曩u出自己寵物(3)測試類ownerSell():寵物主人賣出寵物ownerLogin() :如果主人賣出寵物,調(diào)用ownerSell()2、重點根據(jù)主人選擇實現(xiàn)購
14、買更新寵物信息:刪除ownerid更新寵物主人信息:增加更新寵物商店信息:減少更新賬目信息:添加新賬目如下圖:圖 3-33.4主要的類設(shè)計3.4.1根據(jù)數(shù)據(jù)庫表創(chuàng)建實體類實體類一般和數(shù)據(jù)庫表對應(yīng),實體類的屬性對應(yīng)于表的字段,為四個數(shù)據(jù)庫表分別創(chuàng)建實體類,實現(xiàn)數(shù)據(jù)庫數(shù)據(jù)在各個層次的傳輸,四個實體類的名稱可以定義為Pet、PetOwner、PetStore、Account。 寵物商店實體類:PetStore 寵物主人實體類:PetOwner 寵物實體類:Pet 寵物商店賬目類:Account 圖 3-53.4.2創(chuàng)建DAO接口和實現(xiàn)類采用面向接口編程的思想設(shè)計數(shù)據(jù)訪問層,定義DAO接口和實現(xiàn)類,為
15、四個數(shù)據(jù)庫表分別創(chuàng)建DAO接口和實現(xiàn)類,為了重用建立和關(guān)閉數(shù)據(jù)庫的代碼,創(chuàng)建BaseDao作為四個實現(xiàn)類的父類圖3-63.4.3創(chuàng)建業(yè)務(wù)接口和實現(xiàn)類 寵物主人實現(xiàn)類:PetOwnerServiceImpl 寵物工廠實現(xiàn)類:PetFactoryImpl 寵物商店實現(xiàn)類:PetStoreServiceImpl 寵物商店工程實現(xiàn)類:PetStoreFactoryImpl圖 3-73.4.4優(yōu)化業(yè)務(wù)接口 我們按照“單一職能原則” 對業(yè)務(wù)接口定義進行優(yōu)化,抽取出Buyable、Sellable、Breedable、Accountable等接口,PetOwnerService、PetStoreServic
16、e接口根據(jù)自身功能繼承其中的一個或多個接口。寵物商店數(shù)據(jù)庫操作類:PetStoreDaoImpl寵物主人數(shù)據(jù)庫操作類:PetOwnerDaoImpl寵物數(shù)據(jù)庫操作類:PetDaoImpl寵物商店賬目信息數(shù)據(jù)庫操作類 :AccountDaoImpliv. 概念結(jié)構(gòu)設(shè)計4.1庫表關(guān)系圖4.1.1 庫表描述名稱實現(xiàn)寵物表Pet用戶表PetOwner商店表PetStore1. 寵物表2. 主人表3商店表 4.1.2 數(shù)據(jù)庫腳本CREATE TABLE PET(ID NUMBER,NAME VARCHAR2(50);TYPENAME VARCHAR(20);HEALTH NUMBER,LOVE NUMB
17、ER, BIRTHDAY DATE,OWNER_ID NUMBER,STORE_ID NUMBER);CREATE SEQUENCE SEQ_NAMESTATR 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-
18、02-14','yyyy-mm-dd'),361,985);insert into pet(ID,NAME,TYPENAME,LOVE,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,'小環(huán)',
19、39;企鵝',98,100,to_date('2015-08-08','yyyy-mm-dd'),363,212);insert 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_I
20、D,STORE_ID)values(655,'愛麗絲','倉鼠',100,95,to_date('2015-10-01','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(
21、ID,NAME,TYPENAME,LOVE,BITHDAY,OWNER_ID,STORE_ID)values(657,'小白','蛇',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,P
22、ASSWORD,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 int
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《七 小小運動會:7、6加幾》(教案)-一年級上冊數(shù)學(xué) 青島版
- 五年級下冊數(shù)學(xué)教案-4.2 分?jǐn)?shù)加減法的簡算 ︳西師大版
- 勞動合同管理臺賬(2025年版)
- 二年級下冊數(shù)學(xué)教案-4.1 《長方形和正方形的特征》 ︳西師大版
- 一年級上冊數(shù)學(xué)教案-4 14,15減幾 ︳西師大版
- 二年級下冊數(shù)學(xué)教案-租船3 北師大版
- 模擬試卷一(原卷版+解析版)-三年級語文上學(xué)期期末全真模擬卷(部編版五四制)
- 人教版三年級上冊期末考試數(shù)學(xué)試卷-
- 《十一月四日風(fēng)雨大作》歷年中考古詩欣賞試題匯編(截至2023年)
- 2025屆黑龍江佳木斯一中高三上學(xué)期五調(diào)地理試題及答案
- 客家童謠活動課件
- 四川省成都市2023年中考道德與法治真題試卷(含答案)
- 【初中生物】病毒課件2024-2025學(xué)年人教版生物七年級上冊
- 企業(yè)愿景和未來三年規(guī)劃
- 發(fā)酵饅頭課件教學(xué)課件
- YAMAHA(雅馬哈)貼片機編程培訓(xùn)教材
- JGJ162-2014建筑施工模板安全技術(shù)規(guī)范-20211102195200
- 公司解散清算的法律意見書、債權(quán)處理法律意見書
- 2024-2025學(xué)年初中信息技術(shù)(信息科技)七年級下冊蘇科版(2023)教學(xué)設(shè)計合集
- 中華小廚神(教學(xué)設(shè)計)-五年級下冊勞動人教版1
- 世界建筑史學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
評論
0/150
提交評論