軟件工程課程設(shè)計小case_第1頁
軟件工程課程設(shè)計小case_第2頁
軟件工程課程設(shè)計小case_第3頁
軟件工程課程設(shè)計小case_第4頁
軟件工程課程設(shè)計小case_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、沈陽理工大學(xué)課程設(shè)計專用紙 no 18摘要【摘要】隨著小超市規(guī)模的發(fā)展不斷擴(kuò)大,商品數(shù)量急劇增加,有關(guān)商品的各種信息量也成倍增長。超市時時刻刻都需要對商品各種信息進(jìn)行統(tǒng)計分析。而大型的超市系統(tǒng)功能過于強大而造成操作繁瑣降低了小超市的工作效率。虛擬超市購物系統(tǒng)由delphiaccess實現(xiàn),主要包含以下幾個模塊:登錄模塊、購物管理模塊、用戶管理模塊、貨物管理模塊、數(shù)據(jù)備份模塊等。從而,實現(xiàn)對購物及客戶信息等實現(xiàn)動態(tài)、及時的管理。全文共分六部分:第一部分主要是可行性研究;第二部分主要是系統(tǒng)需求分析;第三部分主要是總體設(shè)計;第四部分是主界面及購物管理模塊的設(shè)計及編碼;第五部分主要是軟件測試;第六部分

2、是對課程設(shè)計的總結(jié)?!娟P(guān)鍵詞】虛擬超市購物系統(tǒng),購物車,delphi,access目錄摘要 1第1章可行性研究 3第2章系統(tǒng)需求分析 421系統(tǒng)功能結(jié)構(gòu) 422系統(tǒng)數(shù)據(jù)庫設(shè)計和狀態(tài)圖 523數(shù)據(jù)流圖 624數(shù)據(jù)字典 7第3章總體設(shè)計 831設(shè)計思想 832設(shè)計原則 833功能劃分 9第4章窗體設(shè)計及編碼(主界面及購物模塊) 1041主界面設(shè)計 1042購物管理模塊設(shè)計 10第5章軟件測試 1451模塊測試 1452整體測試 17第6章課程設(shè)計總結(jié) 17參考文獻(xiàn) 18第1章 可行性研究可行性研究是為了弄清楚系統(tǒng)開發(fā)的項目是不是可以實現(xiàn)和值得進(jìn)行研究的過程,實際上是一次大大簡化系統(tǒng)分析和系統(tǒng)設(shè)計的

3、過程,所以,進(jìn)行可執(zhí)行性的分析是非常必要的,也是很重要的。經(jīng)濟(jì)可行性:超市有能力承擔(dān)系統(tǒng)開發(fā)費用。開發(fā)新系統(tǒng)的工作是一項間距復(fù)雜的工作,它的投資主要是人力和物力的投資。對于本系統(tǒng)的開發(fā)者來說,其主要投資還是在人力和物力兩個方面。如果是企業(yè)自己安排人手開發(fā)系統(tǒng)的話,其主要的投資還是在人力資源上,從系統(tǒng)的業(yè)務(wù)需求調(diào)查到系統(tǒng)的分析編碼制作都是需要巨大的人力投入的。軟件企業(yè)作為一個簡短的高科技產(chǎn)業(yè),其員工要求都比一般企業(yè)的要求要高,而且對系統(tǒng)開發(fā)及軟件產(chǎn)業(yè)了解比較多,所以在自我開發(fā)管理系統(tǒng)的過程中,企業(yè)自己比較容易安排人手,這樣就可以為企業(yè)借閱大部分的額外開支。同時軟件就其它產(chǎn)品來說,屬于高端行業(yè),無

4、論是產(chǎn)品的價格還是質(zhì)量都比較高,而經(jīng)營產(chǎn)品的經(jīng)銷商或者是商家都要求有雄厚的資金支持。所以,在系統(tǒng)的開發(fā)過程中,企業(yè)完全有能力承擔(dān)開發(fā)費用。 技術(shù)可行性:在it行業(yè)中從業(yè)的工作人員一般都要求掌握計算機技術(shù),具有一定的軟硬件基礎(chǔ),會使用各種管理軟件,熟悉it產(chǎn)品。因為,有的超市對員工的素質(zhì)要求比較高,從管理層到下面的銷售人員,都要求具有一定的計算機基礎(chǔ),所以在新系統(tǒng)投入使用時,只要對員工進(jìn)行少量的培訓(xùn),系統(tǒng)的功能和使用方法就基本上能夠掌握。 運行可行性:本系統(tǒng)采用基于windows的圖形用戶界面,而該系統(tǒng)是大家熟悉的操作系統(tǒng),對于那些有一般的計算機知識的人員就可以輕松上手。而整個虛擬超市購物系統(tǒng)采

5、用友好的交互界面,簡介明了,不需要對數(shù)據(jù)庫進(jìn)行深入的了解。由此,該系統(tǒng)的操作是可行的,有必要開發(fā)該系統(tǒng)。綜合以上三方面,該系統(tǒng)具有很高的開發(fā)可行性,無論是從技術(shù)上或者經(jīng)濟(jì)上還是操作上。因此,可以設(shè)計該系統(tǒng)的數(shù)據(jù)流圖,建立數(shù)據(jù)字典。第2章系統(tǒng)需求分析21系統(tǒng)功能結(jié)構(gòu)虛擬超市購物系統(tǒng),實現(xiàn)兩個方面的需求,分別是商品購買者和購物系統(tǒng)管理人員。商品購買者的需求是查詢購物系統(tǒng)所存的商品、個人購買情況及個人信息的修改;購物系統(tǒng)管理人員的功能較為復(fù)雜,包括對購買者、商品信息進(jìn)行管理和維護(hù)等。商品購買者可直接查看商品情況,如果商品購買者根據(jù)本人用戶名和密碼登錄系統(tǒng),還可以進(jìn)行本人購物情況的查詢和維護(hù)部分個人信

6、息。一般情況下,商品購買者只應(yīng)該查詢和維護(hù)本人的購物情況和個人信息。購物系統(tǒng)管理人員功能的信息量大,數(shù)據(jù)安全性和保密性要求很高。本功能實現(xiàn)對商品信息、購買者信息管理和查看及維護(hù)。購物系統(tǒng)管理員可以瀏覽、添加、刪除商品的基本信息;瀏覽、添加、刪除、修改用戶信息,但不能添加、刪除和修改購買信息。整個虛擬超市購物系統(tǒng)的功能結(jié)構(gòu)如圖21所示:圖21系統(tǒng)的功能結(jié)構(gòu)圖22系統(tǒng)數(shù)據(jù)庫設(shè)計圖22虛擬超市購物系統(tǒng)er圖利用access 2003進(jìn)行數(shù)據(jù)庫的設(shè)計,er圖如圖22所示,其基本表如下:用戶表(sysuser),見表21:表21用戶表中文字段名英文字段名字段類型主鍵/外鍵用戶名name文本p密碼pass

7、ward文本性別sex文本電子郵件email文本用戶組group文本商品表(commodity),見表22:表22商品表中文字段名英文字段名字段類型主鍵/外鍵編號id文本p名稱name文本p/f庫存數(shù)量amount數(shù)字售價price貨幣購物車表(cart),見圖23:表23購物車表中文字段名英文字段名字段類型主鍵/外鍵商品名稱name文本p購買數(shù)量amount數(shù)字p/f狀態(tài)圖見圖23:圖23狀態(tài)轉(zhuǎn)換圖23數(shù)據(jù)流圖數(shù)據(jù)流圖是一種圖形化技術(shù),它描繪信息流和數(shù)據(jù)從輸入移動到輸出的過程中所經(jīng)受的變換。虛擬超市購物系統(tǒng)的系統(tǒng)模型,如圖24所示:圖24虛擬超市購物系統(tǒng)的系統(tǒng)模型功能級數(shù)據(jù)流圖,見圖25:圖

8、25功能級數(shù)據(jù)流圖24數(shù)據(jù)字典數(shù)據(jù)字典是關(guān)于數(shù)據(jù)的信息的集合,也就是對數(shù)據(jù)流圖中包含的所有元素的定義的集合。一般說來,數(shù)據(jù)字典應(yīng)該由對下列4類元素的定義組成:(1) 數(shù)據(jù)流(2) 數(shù)據(jù)流分量(即數(shù)據(jù)元素)(3) 數(shù)據(jù)存儲(4) 處理購物單的數(shù)據(jù)字典如下:名字:購物單別名:購物信息描述:客戶已購買的貨物列表。定義:購物單商品名稱購買數(shù)量位置:購物車第3章總體設(shè)計此系統(tǒng)分為前臺管理和后臺管理。前臺管理是友好的操作界面,供用戶瀏覽、查詢使用。包括:瀏覽、添加、刪除商品、購物車、用戶維護(hù)等功能;后臺管理是提供給管理員的,其中包括:貨物管理、用戶管理等。3.1 設(shè)計思想(1)系統(tǒng)分成幾個相對獨立的模塊,

9、但這些模塊都進(jìn)行集中式管理。(2)分層的模塊化程序設(shè)計思想,整個系統(tǒng)采用模塊化結(jié)構(gòu)設(shè)計。作為應(yīng)用程序有較強的可操作性和擴(kuò)展性。(3)合理的數(shù)據(jù)流設(shè)計,在應(yīng)用系統(tǒng)設(shè)計中,相對獨立的模塊間以數(shù)據(jù)流相互連接,使各模塊間的耦合性較低,方便系統(tǒng)運行,提高系統(tǒng)安全性。3.2 設(shè)計原則為了使本系統(tǒng)功能齊全完備,操作簡便,最大限度的提高軟件的質(zhì)量,從而滿足用戶的實際需要,在設(shè)計開發(fā)過程中遵循了如下原則:(1)合法性原則:依據(jù)產(chǎn)品核算系統(tǒng)的工作規(guī)定以及要求,參照核算實際的工作情況,進(jìn)行諸如產(chǎn)品進(jìn)貨、銷售等工作。(2)實用性原則:適合產(chǎn)品信息管理工作的實際需求,并能夠處理一些特殊情況的要求,此外,盡可能預(yù)留空間,

10、以便擴(kuò)充功能。(3)準(zhǔn)確性原則:對輸入的相關(guān)資料建立檢錯機制,及時報錯,使用戶能夠及時準(zhǔn)確的輸入合法資料(如:類型匹配,長度不超限等)。(3)易操作原則:要求設(shè)計的系統(tǒng)功能齊全,界面友好,操作方便,必要的地方進(jìn)行提示。(5)源程序可讀性原則:為了便于其他設(shè)計,維護(hù)人員讀懂代碼或以后的代碼修改,軟件升級維護(hù),即可能做好代碼注釋工作。(6)優(yōu)化原則:為了達(dá)到優(yōu)化的目的,合理的運用窗口,菜單,對象等的繼承,自定義用戶對象,事件,函數(shù),減少不必要的重復(fù)性代碼,使程序簡介明了,也方便了將來的維護(hù)。(7)安全性原則:可以為該系統(tǒng)的用戶設(shè)置用戶權(quán)限。3.3 功能劃分整個虛擬超市購物系統(tǒng)的功能結(jié)構(gòu)如圖31所示

11、:圖31系統(tǒng)的hipo圖構(gòu)成模塊如下: 登錄模塊 根據(jù)用戶名判斷用戶組,根據(jù)用戶組設(shè)定用戶權(quán)限。 購物管理模塊購物車,添加到購物車、清空購物車、確認(rèn)購買(普通用戶)。 用戶管理模塊用戶信息查詢、修改,用戶列表、添加、刪除(管理員)。 貨物管理模塊商品列表、添加、刪除(管理員)。 數(shù)據(jù)備份模塊數(shù)據(jù)備份、數(shù)據(jù)恢復(fù)。 幫助模塊幫助信息。第4章窗體設(shè)計及編碼(主界面及購物模塊)41主界面設(shè)計主要用到的控件有tmainmenu和tstatusbar,除了關(guān)聯(lián)到新窗體外基本沒有什么事件,在任務(wù)欄的第一部分顯示“虛擬超市購物系統(tǒng)”,代碼如下:procedure tmain.formcreate(sender

12、: tobject);begin statusbar1.panels0.text:=虛擬超市購物系統(tǒng);end;42購物管理模塊設(shè)計共設(shè)計了兩個窗體,一個添加貨物窗體和一個購物車窗體。添加貨物窗體用到了一個tcombobox控件,使用該控件的代碼如下:procedure tform8.formshow(sender: tobject);begin combobox1.clear; edit1.clear; with dm.adoquery1 do begin close; sql.clear; sql.add(select * from commodity); open; while not e

13、of do begin combobox1.items.add(fieldbyname(name).asstring); next; end; first; end; combobox1.itemindex:=0;end;圖41添加貨物流程圖添加貨物窗體的流程圖如圖41所示,響應(yīng)添加事件的代碼如下:procedure tform8.button1click(sender: tobject);begin with dm.adoquery1 do begin close; sql.clear; sql.add(insert into cart(name,amount) values(:a,:b);

14、 parameters.parambyname(a).value:=trim(combobox1.text); parameters.parambyname(b).value:=strtoint(trim(edit1.text); execsql; end; showmessage(貨物添加成功!); close; with dm.adoquery2 do begin close; sql.clear; sql.add(select name as 貨物名稱,amount as 購買數(shù)量); sql.add(from cart); open; end;end;圖42購物車流程圖購物車的流程圖如

15、圖42所示,響應(yīng)購買事件的代碼如下:procedure tform7.button3click(sender: tobject);begin with dm.adoquery1 do begin close; sql.clear; sql.add(select cart.amount from commodity,cart); sql.add(where =); sql.add(and commodity.amount=cart.amount); open; if recordcountcount then begin application.me

16、ssagebox(庫存不足!,提示,mb_ok); exit; end else begin close; sql.clear; sql.add(update commodity,cart); sql.add(setcommodity.amount=commodity.amount-cart.amount); sql.add(where =); execsql; showmessage(購買成功!); form7.close; count:=0; end; end;end;第5章 軟件測試51模塊測試在模塊測試時我們主要從以下幾個方面考慮:1. 模

17、塊接口;2. 局部數(shù)據(jù)結(jié)構(gòu);3. 重要執(zhí)行通道;4. 出錯處理通道;5. 影響上述方面的邊界條件。測試時進(jìn)行代碼審查,從數(shù)據(jù)類型,變量聲明,數(shù)據(jù)結(jié)構(gòu)進(jìn)行審查,然后進(jìn)行功能測試,從輸入一些簡單的數(shù)據(jù)開始執(zhí)行一遍,觀測運行期間變量的變化,運行中值的變化范圍。改變測試方案來變換另一個角度進(jìn)行測試,發(fā)現(xiàn)錯誤并記錄,修改代碼,測試條件使程序通過多層分支,判別運行結(jié)果從而完成模塊測試。部分測試結(jié)果如圖51、52、53所示:圖51主界面圖52添加到購物車圖53確認(rèn)購買52整體測試總體測試是組裝軟件的系統(tǒng)技術(shù),本系統(tǒng)測試采用漸增集成測試,即測試單一模塊,將測試完的模塊加入系統(tǒng)中,進(jìn)行一次系統(tǒng)測試,依次類推將所

18、有模塊加入系統(tǒng)中,在具體測試時,采用自頂向下的結(jié)合方式,從主控模塊開始,沿各控制層向下移動,逐漸把所有模塊結(jié)合了。在測試過程中使用到調(diào)試技術(shù):1. 采用debug調(diào)試語句,跟蹤數(shù)據(jù);2. 嵌入打印語句,輸出中間結(jié)果;3. 利用delphi 7.0中調(diào)試工具,從調(diào)試窗口觀測變量的變化;4. 設(shè)置斷點,觀察程序在斷點附近的狀況。評估運行的可靠性問題:1. 結(jié)果正確;2. 運行速度;3. 空間利用率;4. 算法的可行性。第6章課程設(shè)計總結(jié)在課程設(shè)計過程當(dāng)中,我認(rèn)識到開發(fā)一項好的軟件不是某一個人就能完成的任務(wù)。一個小組,一個勤奮的團(tuán)隊非常重要,溝通是解決問題的最好方法。俗話說的好:“不怕虎一樣的敵人,就怕豬一樣的隊伍”。所以小組中的每個成員的能力與協(xié)作能力也是致關(guān)重要的。同時,不僅

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論