中小型超市商品管理系統(tǒng)設(shè)計與實現(xiàn)【開題報告+文獻(xiàn)綜述+畢業(yè)論文】

中小型超市商品管理系統(tǒng)設(shè)計與實現(xiàn)【開題報告+文獻(xiàn)綜述+畢業(yè)論文】

ID:11658202

大?。?83.97 KB

頁數(shù):52頁

時間:2018-07-13

上傳者:xinshengwencai
中小型超市商品管理系統(tǒng)設(shè)計與實現(xiàn)【開題報告+文獻(xiàn)綜述+畢業(yè)論文】_第1頁
中小型超市商品管理系統(tǒng)設(shè)計與實現(xiàn)【開題報告+文獻(xiàn)綜述+畢業(yè)論文】_第2頁
中小型超市商品管理系統(tǒng)設(shè)計與實現(xiàn)【開題報告+文獻(xiàn)綜述+畢業(yè)論文】_第3頁
中小型超市商品管理系統(tǒng)設(shè)計與實現(xiàn)【開題報告+文獻(xiàn)綜述+畢業(yè)論文】_第4頁
中小型超市商品管理系統(tǒng)設(shè)計與實現(xiàn)【開題報告+文獻(xiàn)綜述+畢業(yè)論文】_第5頁
資源描述:

《中小型超市商品管理系統(tǒng)設(shè)計與實現(xiàn)【開題報告+文獻(xiàn)綜述+畢業(yè)論文】》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫。

本科畢業(yè)論文開題報告信息管理與信息系統(tǒng)中小型超市商品管理系統(tǒng)設(shè)計與實現(xiàn)一、立論依據(jù)1.研究意義、預(yù)期目標(biāo)隨著中國經(jīng)濟(jì)的不斷發(fā)展,計算機(jī)的普及率越來越高,超市的管理手段發(fā)生了改革,系統(tǒng)管理代替了人工管理。這就需要管理系統(tǒng)能夠準(zhǔn)確的記載和查閱所有的經(jīng)營活動,幫助超市經(jīng)營者掌握和和分析營銷情況。超市管理系統(tǒng)的運用能夠提高店內(nèi)的財務(wù)、庫存和銷售情況的管理水平,現(xiàn)在市場上有很多的大型超市管理系統(tǒng),這些大型軟件功能豐富,涉及到商品供應(yīng)商信息管理、員工檔案管理、員工權(quán)限設(shè)定,商品資料的錄入,商品進(jìn)貨的入庫等等。但對于一個中小型超市來說,有些功能完全是多余的,而且市場上絕大部分的小型超市經(jīng)營者計算機(jī)應(yīng)用水平較低。針對小型超市的特點,計劃開發(fā)一個小型超市管理系統(tǒng)。功能只涉及到財務(wù)、庫存和銷售這3方面。界面盡可能的做到簡單易用,適合一般人員使用。2.國內(nèi)研究現(xiàn)狀魏秀芳、張曉霞、賈巖、顧樹衛(wèi)(2008)就超市營銷的幾個關(guān)鍵性因素進(jìn)行了研究。根據(jù)國內(nèi)的超市經(jīng)營現(xiàn)狀,提出了網(wǎng)點規(guī)劃、提高超市文化競爭力、發(fā)展新型超市營銷策、尋求新賣點、研究超市顧客的心理、提升超市綜合實力、誠信和諧的觀點[1]。代慧祥(2010)在校園超市選址的問題中,對校園超市的銷售計劃及選址問題進(jìn)行討論,根據(jù)實際的問題考慮所給的數(shù)據(jù)和合理的假設(shè)以及調(diào)查數(shù)據(jù),對問題建立了線性規(guī)劃模型??紤]到宿舍距離和宿舍人數(shù)及購買力對超市銷售量的影響,采用類平均的思想對超市選址建立模型,并用此模型求解該選址問題,得到一個優(yōu)化地址[2]。陳曉(2007)在對我國本土超市現(xiàn)狀的研究中,發(fā)現(xiàn)一些超市的問題并借助外國超市的管理經(jīng)驗來指出我過超市的發(fā)展方向。文中指出了市場定位雷同、超1 市難以實現(xiàn)規(guī)模效應(yīng)、超市與供應(yīng)商之間缺乏協(xié)作、經(jīng)營管理理念落后的經(jīng)營難題[3]。楊剛、彭麗、宋猛、周意、黎意、周秦武(2009)提出一種一種超市購物結(jié)賬裝置及自助結(jié)賬方法。這種超市購物結(jié)賬裝置及自助結(jié)賬方法,包括后臺管理系統(tǒng)、自助結(jié)賬系統(tǒng)、門道檢測系統(tǒng)。后臺管理系統(tǒng)包括服務(wù)器、交換機(jī)、主PC機(jī),完成對整個系統(tǒng)的管理。自助結(jié)賬系統(tǒng)包括:柜臺PC機(jī)、第一讀寫器、標(biāo)簽檢測天線、解碼箱、觸摸屏顯示器、讀卡器、打印機(jī)。顧客通過觸摸屏顯示器進(jìn)行操作,第一讀寫器通過標(biāo)簽檢測天線讀取貼在物品上的PVC標(biāo)簽;讀卡器讀取會員卡信息。門道檢測系統(tǒng)包括:第二讀寫器、門道天線、報警裝置。第二讀寫器通過門道天線一直檢測通過門道的軟標(biāo)簽,門道PC機(jī)將檢測到的軟標(biāo)簽UID與數(shù)據(jù)庫中已交費商品信息表比較,實現(xiàn)報警功能[4]。李麗(2007)發(fā)表了對我國連鎖超市物流配送體系建設(shè)研究。文章首先提出了作者對連鎖超市物流配送的現(xiàn)狀分析和現(xiàn)有配送方案存在的局限性,然后通過對我國連鎖超市上海聯(lián)華與沃爾瑪?shù)谋容^分析,得出我國發(fā)展連鎖超市物流配送體系的思路[5]。袁作為(2008)在中小型超市管理系統(tǒng)分析中,提出了對中小型超市開發(fā)管理系統(tǒng)的看法。文章中主要通過進(jìn)、銷、存三方面來分析中小型超市的功能和需求,并根據(jù)功能和需求制定出自己的管理系統(tǒng)模型[6]。王旭輝(2007)在社區(qū)超市發(fā)展現(xiàn)狀分析與對策探討一文中指出:分析我國社區(qū)超市業(yè)的發(fā)展特點,總結(jié)社區(qū)超市發(fā)展中存在的不足,對于促進(jìn)我國社區(qū)超市的進(jìn)一步完善有極其重要的現(xiàn)實意義。文章中總結(jié)了社區(qū)超市的基本特點和經(jīng)營優(yōu)勢,并根據(jù)雅戈爾品牌的成功案例來規(guī)劃出超市的發(fā)展對策[7]。劉勤俠(2009)就如何設(shè)計超市自有品牌滿意度調(diào)查進(jìn)行探討。作者認(rèn)為:一要確定調(diào)查目的,解決為什么要調(diào)查的問題。二是確定調(diào)查對象,解決向誰調(diào)查和由誰來提供資料的問題。三是確定調(diào)查項目和調(diào)查問卷,解決調(diào)查的問題。顧客對超市自有品牌的滿意度直接影響著顧客忠誠度,關(guān)系到超市的成敗興襄,研究超市自有品牌的滿意度有著重要的意義,而調(diào)研的首項工作就是進(jìn)行超市自有品牌滿意度調(diào)查方案設(shè)計[8]。董軍農(nóng)、王培桓、傅元慧(2009)就如何建立行之有效的超市管理模式進(jìn)行了探討。作者通過對眾多超市的管理進(jìn)行調(diào)查、分析、比對和研究,總結(jié)出超市管理模式的法規(guī)性、計劃性、規(guī)范性和人文性四個大方面[9]。杜新麗(2009)用問卷調(diào)查的方式,從超市形象及購物環(huán)境、商品的質(zhì)量與價格、員工及超市服務(wù)、超市的便利性、超市促銷等方面了解超市顧客流失的原因,并提出自己的應(yīng)對方法:化超市形象及購物環(huán)境;在保證商品質(zhì)量的基礎(chǔ)上2 合理定價;強化員工的服務(wù)意識;以方便顧客為原則開展經(jīng)營活動;開展積極有效的促銷活動;高度重視并妥善處理顧客抱怨;實施關(guān)系營銷以提高顧客的忠誠度[10]。3.參考文獻(xiàn)[1]魏秀芳,張曉霞,賈巖,顧樹衛(wèi).超市營銷關(guān)鍵因素分析及發(fā)展趨勢研究[J].工會論壇,2008(1).[2]代慧祥.校園超市選址問題[J].中國科技博覽,2010(7).[3]陳曉.我國本土超市現(xiàn)狀與發(fā)展對策研究[J].科技咨詢導(dǎo)報,2007(11).[4]楊剛,彭麗,宋猛,周意,黎意,周秦武.一種超市購物結(jié)賬裝置及自助結(jié)賬方法[D].西安:西安交通大學(xué),2009.[5]李麗.我國連鎖超市物流配送體系建設(shè)研究[J].中國市場,2007(8).[6]袁作為.中小型超市管理系統(tǒng)分析[J].時代經(jīng)貿(mào),2008(6).[7]王旭輝.社區(qū)超市發(fā)展現(xiàn)狀分析與對策探討[J].科技資訊,2007(9).[8]劉勤俠.超市自有品牌滿意度調(diào)查方案設(shè)計[J].商場現(xiàn)代化,2009(4).[9]董軍農(nóng),王培桓,傅元慧.淺析我國超市的管理模式[J].現(xiàn)代商業(yè),2008(10).[10]杜新麗.超市顧客流失原因及規(guī)避策略研究[J].河南社會科學(xué),2009(4).二、研究方案1.主要研究內(nèi)容(或預(yù)期章節(jié)安排)1概述1.1開發(fā)背景1.2目的與意義1.3國內(nèi)發(fā)展現(xiàn)狀分析2系統(tǒng)分析2.1系統(tǒng)工具介紹2.2可行性研究2.3需求分析2.4數(shù)據(jù)流圖2.5數(shù)據(jù)字典3系統(tǒng)設(shè)計3.1總體結(jié)構(gòu)設(shè)計3.2功能模塊設(shè)計3.3數(shù)據(jù)庫設(shè)計3 3.4編碼設(shè)計4系統(tǒng)實現(xiàn)4.1一般功能的實現(xiàn)4.2采購模塊的實現(xiàn)4.3商品信息模塊的實現(xiàn)4.4倉庫模塊的實現(xiàn)4.5統(tǒng)計和提醒模塊的實現(xiàn)2.實施方案和進(jìn)度計劃第7學(xué)期第10周至第7學(xué)期第11周:在指導(dǎo)教師的指導(dǎo)下,廣泛搜集、研究相關(guān)文獻(xiàn)資料,完成章節(jié)1系統(tǒng)概述中的研究意義、國內(nèi)研究現(xiàn)狀、存在的問題及研究分析,確定畢業(yè)論文選題第7學(xué)期第12周:完成外文翻譯、文獻(xiàn)綜述和開題報告撰寫;參加開題答辯,進(jìn)一步論證選題價值、確立主要研究內(nèi)容,論證研究方案的合理性和可行性。第7學(xué)期第13周:這周完成開發(fā)的系統(tǒng)分析階段,多去了解其他超市管理系統(tǒng)的管理流程,各取長處,設(shè)計自己的流程。第7學(xué)期第13周:還是分析階段,完成數(shù)據(jù)部分:制定出完整的數(shù)據(jù)流DFD圖,編制數(shù)據(jù)字典,完成數(shù)據(jù)分析。完成章節(jié)2中的其他內(nèi)容:功能模型設(shè)計和系統(tǒng)邏輯模型設(shè)計。第7學(xué)期14周:工作進(jìn)入到系統(tǒng)設(shè)計部分,首先把系統(tǒng)的總體結(jié)構(gòu)設(shè)計好,然后做好數(shù)據(jù)庫部分:數(shù)據(jù)庫概念設(shè)計ER圖、數(shù)據(jù)庫邏輯設(shè)計、代碼設(shè)計。最后做好輸入輸出設(shè)計和模塊功能設(shè)計。第7學(xué)期第15周:工作進(jìn)入到系統(tǒng)實施部分,確定軟件的編寫語言和工具,逐步完成系統(tǒng)的編寫和調(diào)試,遇到困難找老師和同學(xué)幫忙。第7學(xué)期第16周:完成全部工作內(nèi)容,如果沒有完成;查找系統(tǒng)工作遺漏的功能和改進(jìn)系統(tǒng)第7學(xué)期第16周:定稿并上交,參加第一次答辯。4 文獻(xiàn)綜述中小型超市商品管理系統(tǒng)設(shè)計與實現(xiàn)世界各國零售業(yè)態(tài)的發(fā)展與電子計算機(jī)技術(shù)在商業(yè)領(lǐng)域的應(yīng)用密不可分,尤其是在超市行業(yè)。在我國,有很多在偏僻區(qū)域的中小型超市,這些超市的超市規(guī)模和實力遠(yuǎn)不如大型超市,信息化管理相對落后,致使中小型超市難以降低經(jīng)營成本、難以提高經(jīng)營效率。目前購物中小超市應(yīng)用管理系統(tǒng)普遍采用的是C/S結(jié)構(gòu),其開發(fā)重點是商品的管理功能。如果不能保證正確的困存和進(jìn)貨控制,將會導(dǎo)致管理費用的增加。在如今這個“數(shù)字化年代”,一個適合超市的管理系統(tǒng)對于超市來說是必要的。1中小型超市在市場上的現(xiàn)狀及發(fā)展分析1.1中小型超市在市場上的現(xiàn)狀與一些資金雄厚的、管理先進(jìn)的超市相比,我國超市想要在市場上站穩(wěn)腳跟尚需加倍努力,陳曉(2007)我國超市經(jīng)營存在的問題:市場定位雷同、超市難以實現(xiàn)規(guī)?;?、超市與供應(yīng)商之間缺乏協(xié)作概念、經(jīng)營管理理念落后[1]。屈道群(2008)認(rèn)為中小型超市在市場上面臨著幾個方面的困境。商業(yè)方面:營業(yè)效果不佳,賣場布局混亂;管理上的困境:管理流程,業(yè)務(wù)流程的管理不到位,一般是照搬照抄其他超市,商品和倉庫管理不健全,成本增加;發(fā)展方面:發(fā)展規(guī)劃不明確,網(wǎng)店布局不科學(xué),競爭性不強[2]。1.2中小型超市的發(fā)展對策黃智萌認(rèn)為(2009)這幾年的房地產(chǎn)市場蓬勃發(fā)展,大量新社區(qū)的出現(xiàn)給中小型超市帶來生存空間,社區(qū)人口流動量小,大型超市無暇顧及。其次,鄉(xiāng)鎮(zhèn)市場能給超市的發(fā)展帶來新的增長空間,鄉(xiāng)鎮(zhèn)的購買力比較密集,中國的農(nóng)民市場潛力也是不可估量的[3]。不僅如此,中小型超市還可以應(yīng)該合理運用自己的優(yōu)勢來贏取市場地位,一是要明確需求,合理安排商品結(jié)構(gòu),中小型超市規(guī)模雖不及大型城市,但可以根據(jù)對居民的消費調(diào)查來安排店面。田春蘭(2008)二要運用情感經(jīng)營,提供超值服務(wù),中小型超市一般離居民去近,超市的服務(wù)人員應(yīng)該多與顧客進(jìn)行交流,了解他們的具體需求和習(xí)慣。有利于增加顧客的滿意度[4]。5 袁作為(2008)超市能否在農(nóng)村這個廣大的市場連接起來,關(guān)鍵在于是否樹立了開拓農(nóng)村市場的戰(zhàn)略觀念和針對其市場特征制定的相應(yīng)策略[5]。杜鋒(2009)要在農(nóng)村發(fā)展連鎖超市,必須注意轉(zhuǎn)變營銷觀念,實行低價優(yōu)質(zhì),讓利與消費者的價格策略,同時激發(fā)消費者的購買欲望。另外,農(nóng)村超市產(chǎn)品以日常用品為主,注意超市經(jīng)營產(chǎn)品的選擇[6]。2中小型超市運作流程和系統(tǒng)的結(jié)構(gòu)選擇2.1超市的管理流程和需求羅玉葵(2009)認(rèn)為在超市日常管理中,最重要的是對流程的管理和對商品的管理,在大多數(shù)的超市管理類軟件中,都能找到相似的流程。超市管理的需求圍繞的是采購、銷售、庫存三個方面發(fā)展[7]。中小型超市的必要功能需求:(1)在需要時生成商品的庫存情況報表,實時報告商品庫存情況,如果庫存不足,可生成缺貨提醒。(2)采購商品后及時錄入商品信息等數(shù)據(jù),并更新庫存量(3)隨時錄入售出的商品信息(4)當(dāng)超市末端時間內(nèi),某種商品的售出數(shù)量較大,可將此類商品歸為熱賣商品,用于市場采購指導(dǎo)[8]。杜鋒(2009)超市圍繞系統(tǒng)運行的幾個通用工作流程也是一樣的:(1)根據(jù)缺貨提醒進(jìn)行商品的采購,然后進(jìn)行采購入庫的處理(2)從商品庫存中提取商品后可以根據(jù)商品的信息放入超市的貨物架(3)顧客完成選貨后,收銀員輸入商品的編碼,系統(tǒng)獲得商品的信息,提示收銀員完成收銀和找零工作[9]。為了應(yīng)對激烈的市場競爭,各家超市都會推出會員功能來吸引和留住顧客。王衛(wèi)強(2007)通過會員信箱、手機(jī)短信、互聯(lián)網(wǎng)等方式深入了解顧客,盡可能地記錄顧客的消費習(xí)慣,然后通過手機(jī),E‐MAIL等方式及時的將適合顧客的商品信息促銷信息告知會員顧客,從而不斷挖掘顧客的潛在需求,引導(dǎo)消費[10]。2.2超市管理的軟件模式的選擇目前階段軟件系統(tǒng)結(jié)構(gòu)主要有兩種:C/S和B/S模式。兩種模式的各種模式各有優(yōu)缺點。魯春燕、孫娟(2008)認(rèn)為C/S模式的主要特點是:應(yīng)用服務(wù)器運行6 數(shù)據(jù)負(fù)荷較輕;賈蓉生(2009)數(shù)據(jù)的存儲管理功能較為透明。相對來說,B/S模式更適合信息化的管理系統(tǒng)。但是中小型超市的管理系統(tǒng)一般為局域網(wǎng)內(nèi)管理,而且不會經(jīng)常去更新系統(tǒng),這使得B/S模式成本和維護(hù)方面的優(yōu)勢得不到體現(xiàn)。綜合考慮下,C/S結(jié)構(gòu)更適合在中小型超市管理類系統(tǒng)軟件運用[11]。3中小型超市管理系統(tǒng)設(shè)計上的幾個問題3.1庫存存量上下限及警報問題超市庫存對每一種商品都要有一個下限和平均水平,以避免支出過高庫存成本。吳迪沖(2009)認(rèn)可超市可以采用定期定量(t,s,S)訂貨庫存控制方法,實現(xiàn)系統(tǒng)警報。每經(jīng)過t時間檢查剩余庫存量x,如果x大于庫存下限s不去補充,小于下限s就要及時補充商品并及時發(fā)出庫存報警,補充量Q可以為Q=S-s,使庫存達(dá)到平均水平S,這樣做可以剩下人工計算的精力去做好其它管理,同時還可以發(fā)出及時的缺貨提醒[12]。3.2數(shù)據(jù)表中主鍵的設(shè)定在進(jìn)貨表和銷售表中使用進(jìn)貨編號、銷售編號和商品編號做為主鍵。葉乃文(2009)覺得雙主鍵的設(shè)計會使得對這兩個表的操作變得復(fù)雜,一般考慮到性能問題,要避免使用雙主鍵設(shè)計。在數(shù)據(jù)檢索中要大量使用到primarykey,只對比一個primarykey的速度要比雙主鍵設(shè)計快的多,而且單主鍵在編程上也有好處,sql語句中的where條件可以寫更少的代碼,這代表出錯的機(jī)會少了。如果把每一種商品的編號做主鍵,用這種方法設(shè)計主要為了每個表中的商品的主鍵保持一致[13]。3.3滾動查詢和模糊查詢在系統(tǒng)檢索的時候,有時候我們不僅僅滿足于單項的查詢結(jié)果,余永紅(2008)在Java程序設(shè)計教程書中提示,有一些可以提高效率的技巧:(1)獲得可滾動的結(jié)果集Statementstmt=con.createStatement(intType,intConcurrency);根據(jù)兩個參數(shù)的情況,可以設(shè)定結(jié)果集的滾動。7 (2)排序查詢及模糊查詢排序查詢可以通過SQL語句中的ORDERBY實現(xiàn),按照不同的字段進(jìn)行排序,輸出排序后的結(jié)果。SQL語句附加LIKE關(guān)鍵字實現(xiàn)模糊查詢。利用JDBC訪問數(shù)據(jù)庫的基本過程完成相關(guān)操作后,在創(chuàng)建Statement對象時,應(yīng)通過相關(guān)的屬性,建立滾動集,并設(shè)置滾動集的相關(guān)屬性,可充分利用SQL語句中的ORDERBY和LIKE執(zhí)行查詢[14]。數(shù)據(jù)庫中視圖,嵌套查詢,交集的應(yīng)用:視圖可以理解為保存后的查詢,它保存的是‘實在’表格經(jīng)查詢后的結(jié)果。吳亞輝(2007)認(rèn)為基本表是視圖的來源和基礎(chǔ),視圖可以豐富基本表的表達(dá);嵌套查詢是指在一個外層查詢中包含有另一個內(nèi)層查詢,即一個SQL查詢語句塊可以嵌套在另一個查詢塊的WHERE子句中。交集主要運用在對多張表的同一字段進(jìn)行查詢,可以使查詢更加簡便、效率[15]。3.4SQLServer定時作業(yè)的運用肖麗杰(2008)認(rèn)為通過定時作業(yè),用戶可以定期地進(jìn)行數(shù)據(jù)的計算處理,更新合并、匯總、統(tǒng)計數(shù)據(jù)。從根本上提高檢索的效率,同時可以將這類計算安排在非工作時間由計算機(jī)自動完成。如果超市舉行一個促銷活動,人工管理的話,需要去哦修改商品的價格信息,促銷結(jié)束后又要改回來,這樣很麻煩。加入定時作業(yè)以后,只需要在商品字段中加入促銷價格和促銷日期,這樣在每天定時作業(yè),讓系統(tǒng)自動判斷應(yīng)該用促銷價格還是普通價格。此外,運用定時作業(yè)還可以實現(xiàn)缺貨提醒,當(dāng)某種商品的庫存量過低時,可以提醒用戶[16]。3.5JavaSwing組件和框架Swing包是JFC的一部分,提供了從按鈕到列表的所有可視化組件。余永紅(2008)認(rèn)為Swing用輕量級的組件代替了AWT中的重量級組件,并且Swing替代的組件中都包含一些其他的特性Swing為基于窗體的應(yīng)用程序開發(fā)提供了一套精美、豐富的基本組件,以及一個能使用圖形用戶界面的GUI獨立于特定平臺的顯示框架。用Swing組件設(shè)計的程序,比AWT程序更加優(yōu)美[17]。JoshuaBloch(2008)認(rèn)為Spring框架的功能可以用在任何J2EE服務(wù)器中,大多數(shù)功能也適用于不受管理的環(huán)境。Spring的核心要點是:支持不綁定到特定的J2EE服務(wù)的可重用業(yè)務(wù)和數(shù)據(jù)訪問對象,這樣可以在不同J2EE環(huán)境、獨立應(yīng)用程序、測試環(huán)境之間重用[18]。吳亞峰、王鑫磊(2007)認(rèn)為Hibernate框架能夠提8 供基礎(chǔ)的對象/關(guān)系映射,并支持雖有其他的復(fù)雜功能,如緩存,延時加載,主動抓取,分布式緩存等。Hibernate框架已經(jīng)成為了事實上標(biāo)準(zhǔn)的O/R映射技術(shù),因此在Spring框架中已經(jīng)對Hibernate框架進(jìn)行了最深入的集成,他是一個高性能的、開發(fā)源碼的持久框架,一中對象/關(guān)系映射的解決方案[19]。4總結(jié):超市的管理主要還是在流程和商品的管理,而競爭主要是在成本的競爭。通過對中小型超市的分析和研究,采用java平臺,SQLServer數(shù)據(jù)庫系統(tǒng)開發(fā)一個管理信息系統(tǒng)??梢詫Τ羞M(jìn)行科學(xué)和規(guī)范的現(xiàn)代化管理,提高工作效率,超市運營決策,降低人力成本有很大的幫助,建立一套適合的管理系統(tǒng)有助于增強市場競爭力。9 參考文獻(xiàn)[1]陳曉.我國本土超市現(xiàn)狀與發(fā)展對策研究[J].科技咨詢導(dǎo)報,2007(11).[2]屈道群.淺議中小型連鎖超市的困境和出路[J].現(xiàn)代商業(yè),2008(4).[3]黃智萌.中小型超市的現(xiàn)狀及發(fā)展對策研究[J].湖南工業(yè)技術(shù)學(xué)院報,2009(6).[4]田春蘭,錢?。l(fā)展農(nóng)村連鎖超市應(yīng)注意的問題與對策分析[J].黑龍江科技信息,2008(31).[5]袁作為.小型超市管理系統(tǒng)的分析[J].時代經(jīng)貿(mào),2008(6).[6]杜鋒.基于C/S模式的超市管理系統(tǒng)的設(shè)計與實現(xiàn)[D].成都:電子科技大學(xué),2009.[7]羅玉葵.超市會員制客戶關(guān)系管理分析與對策[J].民營科技,2009(4).[8]魯春燕,孫娟.淺談C/S模式和B/S模式的優(yōu)缺點[J].福建電腦,2008(6).[9]吳迪沖.零售超市進(jìn)銷存管理系統(tǒng)設(shè)計與研究[J].長三角,2009(3).[10]王衛(wèi)強,孫強.中小型超市MIS系統(tǒng)建設(shè)中若干問題的分析研究[J].微計算機(jī)信息(管控一體化),2007(7).[11]賈蓉生,胡大源,林金池.Java典型應(yīng)用徹查1000例[M].北京:科學(xué)出版社,2009.[12]胡靜,吳東成,韓中華,馬建宇.SQL定時作業(yè)在管理系統(tǒng)中的應(yīng)用[J].計算機(jī)技術(shù)與發(fā)展,2007(6).[13]葉乃文,王丹.Java語言程序設(shè)計教程[M].北京:機(jī)械工業(yè)出版社,2009.[14]王國輝,呂海濤,李鐘尉.Java數(shù)據(jù)庫系統(tǒng)開發(fā)案例精選[M].北京:人民郵電出版社,2007.[15]吳亞峰,王鑫磊.精通NetBeans‐Java桌面、web與企業(yè)級程序開發(fā)詳解[M].北京:人民郵電出版社,2007.[16]肖麗杰,曾平.基于C/S結(jié)構(gòu)局域網(wǎng)安全管理系統(tǒng)的開發(fā)[J].電子科技,2008(21).[17]余永紅.Java程序設(shè)計教程[M].北京:機(jī)械工業(yè)出版社,2008.nd[18]JoshuaBloch.EffectiveJava2Edition[M].Boston:AddisionWesley,2008.[19]ReneBrunner,F(xiàn)elixFreitag.ElaboratingaDecentralizedMarketInformationSystem[D].Barcelona:PolytechnicUniversityofCatalonia,2009. 本科畢業(yè)論文(20__屆)中小型超市商品管理系統(tǒng)設(shè)計與實現(xiàn) 摘要隨著社會的發(fā)展,人們的生活水平不斷地提高,中小型超市遍布城市各個社區(qū),它們繁榮了社會經(jīng)濟(jì),也便利了人們的生活,是人們生活中不可缺少的一部份。同大型超市一樣,中小型超市商品的采購、庫存、銷售等方面的工作,需要一個穩(wěn)定、可靠的管理系統(tǒng),因此開發(fā)中小型超市商品管理系統(tǒng)具有較好的應(yīng)用價值。本文首先通過查閱文獻(xiàn)和分析已有的類似的系統(tǒng),并經(jīng)過了一定的社會需求調(diào)研,明確了中小型超市商品管理系統(tǒng)的設(shè)計框架,對需要實現(xiàn)的功能模塊進(jìn)行了分析,完成了數(shù)據(jù)庫的規(guī)劃和設(shè)計,并且實現(xiàn)了主要模塊的代碼編寫,系統(tǒng)能夠正常運行,對中小型超市商品管理有一定的應(yīng)用價值。關(guān)鍵詞:超市;商品管理;設(shè)計I AbstractWiththedevelopmentofsociety,people'slivingstandardsimproved,smallandmediumsizedsupermarketsinvariouscommunitiesthroughoutthecity,themhelpnotonlysocialandeconomicprosperity,butalsofacilitatepeople'slives.Supermarketgoods'sprocurement,inventory,sales,work,etcneedsastable,reliablemanagementsystem,sothedevelopmentofsmallandmediumsupermarketmerchandisemanagementsystemhasgoodapplicationvalue.Thispaperfirstthroughliteraturereviewandanalysisofexistingsimilarsystems,explicitlythesmallandmediumsizedsupermarketmerchandisemanagementsystemframework,thefunctionoftheneedtoimplement.andanalysismoduletocompletetheplanninganddesignofthedatabase,andtherealizationofthemainmodulecoding,thesystemcanfunctionproperly.Keywords:Supermarket;GoodsManagement;DesignII 目錄1概述11.1開發(fā)背景11.2目的與意義11.3國內(nèi)發(fā)展現(xiàn)狀分析22系統(tǒng)分析42.1系統(tǒng)開發(fā)環(huán)境42.1.1JAVA42.1.2MSSQLSERVER42.2可行性研究52.2.1市場調(diào)查52.2.2技術(shù)可行性52.2.3經(jīng)濟(jì)可行性62.2.4操作可行性62.3需求分析62.3.1需求分析的作用62.3.2功能性需求分析72.3.3非功能性需求分析72.4系統(tǒng)數(shù)據(jù)流程程分析82.4.1系統(tǒng)整體流程圖82.4.2系統(tǒng)數(shù)據(jù)流圖82.5系統(tǒng)數(shù)據(jù)字典103系統(tǒng)設(shè)計133.1總體結(jié)構(gòu)設(shè)計133.2功能模塊設(shè)計133.2.1采購設(shè)計133.2.2商品信息設(shè)計143.2.3倉庫設(shè)計143.2.4提醒和統(tǒng)計設(shè)計153.3數(shù)據(jù)庫設(shè)計153.3.1概念結(jié)構(gòu)設(shè)計153.3.2邏輯結(jié)構(gòu)設(shè)計17 3.3.3物理設(shè)計203.4編碼設(shè)計214系統(tǒng)實現(xiàn)224.1基本功能的實現(xiàn)224.1.1登錄功能224.1.2數(shù)據(jù)庫連接234.2采購模塊的實現(xiàn)244.2.1供應(yīng)商管理244.2.2采購單264.3商品信息模塊的實現(xiàn)274.4倉庫模塊的實現(xiàn)294.4.1采購入庫294.4.2商品存貨304.5統(tǒng)計和提醒模塊的實現(xiàn)314.5.1倉庫核對314.5.2缺貨報告324.5.3采購計劃33結(jié)論35參考文獻(xiàn)36III 1概述1.1開發(fā)背景隨著社會的發(fā)展,計算機(jī)已經(jīng)被認(rèn)為是一種高效的管理工具,它在現(xiàn)代企業(yè)的管理中發(fā)揮著越來越重要的作用,而中小型超市是目前重要的經(jīng)營模式之一,它在整個商品經(jīng)營經(jīng)濟(jì)中占據(jù)著不可替代的作用,信息系統(tǒng)的在超市行業(yè)的應(yīng)用背景也由來已久,但在國內(nèi),還有很多小型超市沒有應(yīng)用現(xiàn)代計算機(jī)技術(shù)來進(jìn)行管理。隨著中小超市規(guī)模的發(fā)展不斷擴(kuò)大,商品數(shù)量不斷增加,有關(guān)商品的各種信息量也成倍增長。在超市的日常經(jīng)營中,需要時時刻刻需要對商品各種信息進(jìn)行統(tǒng)計分析,而大量的超市管理信息造成的繁瑣操作降低了中小超市的工作效率。近年來,我國的超市經(jīng)營者為了進(jìn)一步提高超市的管理水平和競爭力,也在不斷引入管理信息系統(tǒng)。這些形形色色的超市信息管理系統(tǒng)在市場上的盛行程度不亞于其他超市應(yīng)用,記得幾年前很容易在一個電腦市場都能找到賣超市軟件的小販,由此可見,信息系統(tǒng)應(yīng)用的盛行程度可見一斑。目前超市商品管理系統(tǒng)主要模塊包含以下幾個方面:系統(tǒng)權(quán)限設(shè)定、數(shù)據(jù)錄入、數(shù)據(jù)匯總及查詢等。借助計算機(jī)運行的高效性,實現(xiàn)對采購、庫存及員工信息等實現(xiàn)全面、動態(tài)、及時的管理(陳曉,2007)[1]。1.2目的與意義我國經(jīng)濟(jì)的每年都保持著高速發(fā)展,市場的競爭越來越激烈,消費者對企業(yè)產(chǎn)品的質(zhì)量和服務(wù)的要求越來越高,超市行業(yè)特別是中小型超市在競爭中面臨著極大的考驗。如果無法適應(yīng)這樣的競爭環(huán)境,超市甚至?xí)媾R被淘汰的危險。超市要適應(yīng)新的競爭環(huán)境,就是要在競爭中求生存,在生存中求發(fā)展。也就是說,必須提高超市的競爭力和抗風(fēng)險的能力,加強超市內(nèi)部的信息化管理水平,借助計算機(jī)工具和信息技術(shù),提高內(nèi)部經(jīng)營效率,提高管理水平,不斷降低管理和運營成本,綜合地提高自身的競爭力(黃智萌,2009)[2]。而建立健全一整套完善適用的管理信息系統(tǒng)無疑是實現(xiàn)上述目標(biāo)的最有力、最簡單的手段之一。但是面對市場上品目繁多,質(zhì)量層次不齊的軟件公司,中小企業(yè)本身很難抉擇。而且鮮有哪家軟件公司會考慮超市的特殊狀況,因而造成了實施成功率不高,人力、財力浪費嚴(yán)重的現(xiàn)象。中小型超市因此,我對一家在學(xué)校里的小超市進(jìn)行了訪問,并由此設(shè)計出一套超市商品管理系統(tǒng),期望能夠幫助超1 市經(jīng)營者提升自身的管理能力和運作效率。1.3國內(nèi)發(fā)展現(xiàn)狀分析隨著我國綜合國力的不斷提升,我國的計算機(jī)和信息技術(shù)已經(jīng)逐漸和世界水品接軌。但是,還有一部分國內(nèi)市場小型超市,它們在信息化過程中的步伐要落后于大中型超市,但它們對于自身的資源管理,信息儲存以及數(shù)據(jù)處理也是迫切需要的,要適應(yīng)市場競爭環(huán)境就要有高效的管理方法,因此超市的信息化進(jìn)程是必不可少的方法。超市作為一種現(xiàn)代的商業(yè)零售模式,在整個管理體系中需要用到大量的現(xiàn)代管理技術(shù),系統(tǒng)中各個環(huán)節(jié)的功能實現(xiàn)和協(xié)同性也需依托信息系統(tǒng)來完成。而我國許多中小型超市仍然采用傳統(tǒng)的舊模式來管理,這樣的管理水平遠(yuǎn)低于國外的水平,主要體現(xiàn)在門店運營上包括單品管理混亂,無法根據(jù)客戶的需求進(jìn)行調(diào)整,導(dǎo)致成本過高,利潤低下(寧立苗,2006)[3]。國外超市零售業(yè)管理信息化相對國內(nèi)要高很多,黃艷(2009)[4]認(rèn)為在經(jīng)濟(jì)發(fā)達(dá)國家,計算機(jī)管理信息技術(shù)已經(jīng)滲入到各行各業(yè),包括超市行業(yè)。美國沃爾瑪早在上世紀(jì)70年代就為總部和分部引入了計算機(jī)管理,80年代為各個連鎖店實施了各種信息管理系統(tǒng),使其進(jìn)貨、倉儲、配送、供應(yīng)等實現(xiàn)了快速可靠、及時準(zhǔn)確的信息化管理,讓它在40年時間里從一家小小的單體折扣店發(fā)展成為世界性的零售業(yè)巨無霸,沃爾瑪?shù)陌l(fā)展模式有很多地方是值得我國中小超市值得借鑒的地方的。國內(nèi)零售市場的開放進(jìn)程驟然加快,超市的競爭也會越來越激烈,與外資企業(yè)相比較,國內(nèi)超市從總體上還處于明顯的弱勢地位。現(xiàn)在國內(nèi)各地的超市數(shù)量越來越多,一方面向規(guī)模大,品種全發(fā)展,另一方面,中小型社區(qū)超市的發(fā)展也呈上升勢頭。我過目前的中小型超市目前屬于發(fā)展的初級階段,商品的品牌和質(zhì)量,企業(yè)的管理水平和經(jīng)營模式與發(fā)達(dá)國家相比仍然很落后。我國70%的中小型超市都采用了電子收款機(jī),但還沒建立起完整的商品管理系統(tǒng)。在進(jìn)行企業(yè)管理時,很多企業(yè)還停留在筆紙管理時代的方式,有些超市雖然配備了電腦,但還沒形成系統(tǒng)性的管理,這是制約我國中小型超市的管理水平的原因之一(王旭輝,2007)[5]。我國的超市行業(yè)從起步至今,走過了一段艱難的創(chuàng)業(yè)期后,現(xiàn)在已經(jīng)成為全國商業(yè)領(lǐng)域各種零售業(yè)態(tài)中增長最快的業(yè)態(tài)之一。飛速的增長也帶來了日益激烈的競爭,很多超市均已用信息技術(shù)來重組和提升自身的競爭力。對于大型超市來說,其資金實力雄厚,在能夠負(fù)擔(dān)高額的經(jīng)濟(jì)投入的前提下,他們能充2 分利用系統(tǒng)的優(yōu)點。而對于中小型超市來說,如何在有限的資金條件下,最大化的利用各方面資源達(dá)成最高效率,從而產(chǎn)生經(jīng)濟(jì)效益,成為中小型信息管理系首先要實現(xiàn)的目標(biāo)。利用MVC模式進(jìn)行整個管理信息系統(tǒng)開發(fā)的方案,實現(xiàn)用戶界面和系統(tǒng)業(yè)務(wù)的邏輯分離,同時,對業(yè)務(wù)處理邏輯和數(shù)據(jù)訪問邏輯進(jìn)一步分離,這種對現(xiàn)實、業(yè)務(wù)邏輯及數(shù)據(jù)清楚分離的設(shè)計方案,一方面對于開發(fā)人員進(jìn)行角色分工,在定義良好的各部分之間通信接口的基礎(chǔ)上,有利于并行開發(fā);另一方面各個部分之間的耦合度很小,在進(jìn)行拓展和改動時只需對業(yè)務(wù)邏輯進(jìn)行重組,不會牽一發(fā)而動全身,從而使整個系統(tǒng)具有良好的運行性、可拓展性和易維護(hù)性,這樣的系統(tǒng)更適合中小型超市(袁寶國,2006)[6]。調(diào)查顯示:我國零售市場中15%的市場份額由中小超市占領(lǐng),而大型超市的市場份額也僅約為10%。可見中小型超市在我國具有很大的發(fā)展?jié)摿Γ鞘袌龇蓊~更大的中小型超市的銷售額卻比不上大型超市,這其中的原因之一就是中小型超市的信息化程度不高造成的,所以,中小型超市要想在激烈的競爭中存活下來,不僅僅靠一個個微機(jī)收銀系統(tǒng)來實現(xiàn)管理,而必須建立一個包括進(jìn)、銷、存的完整信息系統(tǒng)來提高自身的競爭力,縮小與大型超市之間的差距。目前我國存在很多超市管理系統(tǒng),比如維思、思訊、精誠等,但這些系統(tǒng)都不是針對中小型超市開發(fā)的系統(tǒng),由于功能過于復(fù)雜和中小型超市使用者計算機(jī)水平等原因,不適用與中小型超市。所以要開發(fā)一套針對中小超市的商品管理系統(tǒng)必須進(jìn)行事先針對中小超市的功能、業(yè)務(wù)等進(jìn)行分析(賈蓉生,2009)[7]。3 2系統(tǒng)分析2.1系統(tǒng)開發(fā)環(huán)境2.1.1JAVAJava是一種通過解析方式來執(zhí)行的語言,它的語法規(guī)則和C++相似。同時,Java也是一種平臺無關(guān)性的編程語言,用Java語言編寫的程序,可以運行在任何安裝Java環(huán)境的平臺和設(shè)備上,比如IBM的PC、手機(jī)平臺以及各種微處理器硬件平臺,以及Windows、UNIX、Linux、OS/2、MACOS等系統(tǒng)的計算機(jī)平臺,Java軟件編程真正實現(xiàn)了“一次編寫,到處運行”。Java非常適用于網(wǎng)絡(luò)和Internet,目前已經(jīng)成為Internet中最有影響力、最受歡迎的編程語言之一。Java與目前熱門的C++相比,它的語言簡潔得多,并且在C++的基礎(chǔ)上提高了可靠性,除去了最常見的程序錯誤問題,此外它還有較高的安全性,可以說是編程史以來最為優(yōu)秀的編程語言。Java語言編寫的程序既屬于編譯型的,又屬于解析型的。程序代碼經(jīng)過編譯之后首先轉(zhuǎn)換為一種稱為Java字節(jié)碼的中間語言,然后Java虛擬機(jī)JVM將對字節(jié)碼進(jìn)行解釋和運行。Java可以說是無處不在,它可應(yīng)用于任何地方、任何領(lǐng)域,它的用戶群已經(jīng)發(fā)展到了數(shù)百萬,這樣的發(fā)展速度比以往任何語言都要快。Java能給企業(yè)帶來的利益是無可估量的,Oracle公司董事長和首席執(zhí)行官LarruEllison說過:Java正在進(jìn)入企業(yè)、家庭和學(xué)校。它正在像Internet本身一樣成為普遍存在的技術(shù)(葉乃文,2009)[8]。2.1.2MSSQLSERVERMicrosoftSQLServer是一個關(guān)系型的數(shù)據(jù)庫管理系統(tǒng)。它起初是由Microsoft、Sybase和Ashton-Tate三家公司共同開發(fā)的。Microsoft在推出WindowsNT后專門為其開發(fā)了對應(yīng)的版本;Sybase則專注于SQLServer在UNIX版本上的開發(fā)應(yīng)用。SQLServer2000是Microsoft公司推出的SQLServer數(shù)據(jù)庫管理系統(tǒng),它不僅有使用方便、可伸縮性好和與相關(guān)軟件集成程度高等優(yōu)點,而且可以在Windows98到Windows2003等多種系統(tǒng)平臺中運行和使用。眾所周知,SQLServer是一套能夠滿足目前商業(yè)環(huán)境下不同類型要求的數(shù)據(jù)庫4 解決方案(余永紅,2008)[9]。它是一種應(yīng)用廣泛的數(shù)據(jù)庫管理系統(tǒng),具有許多顯著的優(yōu)點:易用性、適合分布式組織的可伸縮性、用于決策支持的數(shù)據(jù)倉庫功能、與許多其他服務(wù)器軟件緊密關(guān)聯(lián)的集成性、良好的性價比等。2.2可行性研究2.2.1市場調(diào)查可行性分析的基礎(chǔ)是對系統(tǒng)的市場調(diào)查。我主要對一些學(xué)校里、社區(qū)里的中小超市進(jìn)行調(diào)查。這個調(diào)查主要由分兩塊:行情調(diào)查和信息需求調(diào)查。行情調(diào)查包括找出類似的超市,對它們現(xiàn)有的經(jīng)營模式進(jìn)行統(tǒng)計,以及他們對信息系統(tǒng)的看法,寫出對這些超市的經(jīng)營狀況報告,并了解整個超市運作情況,以便幫助分析系統(tǒng)帶來的幫助。信息需求的初步調(diào)查是通過查詢書籍,互聯(lián)網(wǎng)搜索初步材料。然后深入超市進(jìn)行調(diào)研,并且研究其它超市所用管理系統(tǒng)的功能,以及客戶對這些系統(tǒng)功能的認(rèn)同度(喻問蘭,2007)[10]。這里對一家學(xué)校里的小超市調(diào)查發(fā)現(xiàn):超市有計算機(jī),但是它僅僅起到一個商品記錄和利潤計算的作用,并沒有將超市各個功能連接起來,沒有深入到倉庫和采購方面進(jìn)行系統(tǒng)管理。超市的老板對我超市商品信息管理系統(tǒng)沒有理解,但是我給他們說明了引入系統(tǒng)管理的方法和好處,他們表示很愿意去實施這樣的系統(tǒng),但是資金的投入是他們最需要考慮的問題。2.2.2技術(shù)可行性Javaswing組件是Java的一個特色,它也能夠和delphi、vb一樣開發(fā)出強大的桌面應(yīng)用程序。目前SUN公司通過對幾個版本的修改和拓展后,swing在一些方面和其他的界面開發(fā)方式相比具有很大的優(yōu)勢:具有豐富的組件類型集合:swing提供了很多很多的標(biāo)準(zhǔn)組件,它們不僅擴(kuò)展性良好,還可以選擇更多的大量第三方組件。優(yōu)越的組件特性:swing不僅包含了所有平臺上的特性,它還會根據(jù)平臺的不同而提供不同的而外特性,它們大多易于擴(kuò)展,能夠提供比awt和swt更多的功能。標(biāo)準(zhǔn)的GUI庫:swing其實來源于awt,因此他和awt一樣是JRE中的標(biāo)準(zhǔn)庫,所以你可以不用單獨地將他們隨你的應(yīng)用程序分開,他們是與平臺無關(guān)的。5 版本成熟、開發(fā)完善:由于它是用Java實現(xiàn)的,也不會有什么兼容性的問題,swing在每個平臺上都有相同的特性和功能,不會有很大的區(qū)別??蓴U(kuò)展性和靈活性:swing是基于MVC的結(jié)構(gòu)的,所以它可以發(fā)揮java的面向?qū)ο蟮恼Z言的優(yōu)勢(伍明星,2006)[11]。其實,利用javaswing開發(fā)一個小型數(shù)據(jù)庫系統(tǒng)并不難,只要你學(xué)過基本的java語法,熟悉Java的面向?qū)ο蠡A(chǔ)。用過Vb和delphi的同學(xué)可能會被它們的簡單的設(shè)計用戶界面方法所吸引,因僅只需要拖幾個控件到窗體上,為每個控件編寫event事件就可以簡單的實現(xiàn)功能設(shè)計。在這里,利用NetBeans開發(fā)swing應(yīng)用程序也絲毫不會遜色于其他開發(fā)工具,而且可以設(shè)計出更加精美的界面。Swing具有豐富且方便簡潔的用戶界面元素,且它對于底層平臺的依賴更少,利用swing設(shè)計的界面一定會給予用戶不同于Windows界面的新感覺。2.2.3經(jīng)濟(jì)可行性開發(fā)適合超市的管理系統(tǒng),其投入比較小,最主要的費用是系統(tǒng)設(shè)計費用:其中包括軟件開發(fā)費用、管理等。后續(xù)的投入相對較小,很長時間內(nèi)都不會需要進(jìn)一步投資,維護(hù)費用也很少,除非超市的規(guī)模擴(kuò)大需要重新開發(fā)。而一套管理系統(tǒng)實際能夠起到的作用會遠(yuǎn)遠(yuǎn)大于投入的開發(fā)費用,管理系統(tǒng)能夠給予超市經(jīng)營很打的幫助。因此開發(fā)系統(tǒng)是可行的。2.2.4操作可行性現(xiàn)在的人們已經(jīng)不會也不愿意去人工管理超市商品了。設(shè)計一套管理系統(tǒng),讓超市的所有管理動作都可以在這個系統(tǒng)上完成,這樣做既方便有效率。超市經(jīng)營者都愿意去接受這樣的管理方式。因為這樣不僅能快速的完成很多費時費力的工作,還可以避免出現(xiàn)很多問題,相信應(yīng)用管理系統(tǒng)會取得很好的效果。另外,利用系統(tǒng)工具和數(shù)據(jù)庫,統(tǒng)一記錄商品,信息和計算銷處理數(shù)據(jù),產(chǎn)生貨物進(jìn)貨管理,可以減少員工的工作量和幫助管理人員規(guī)范化管理動作。2.3需求分析2.3.1需求分析的作用需求分析就是把系統(tǒng)規(guī)劃時期建立的系統(tǒng)可行性分析求精和細(xì)化,分析各6 種可能的解決方法,并且設(shè)計和分配給各個系統(tǒng)元素。需求分析是系統(tǒng)定義階段中的最終一步,目的是要確定系統(tǒng)必須完成哪些工作,也就是對目標(biāo)系統(tǒng)提出完整、準(zhǔn)確、清晰、具體的要求。需求分析是一座在系統(tǒng)分析和軟件設(shè)計階段之間的重要橋梁。一方面來說,需求分析以系統(tǒng)規(guī)格說明和系統(tǒng)規(guī)劃為分析活動的起始點,并從軟件角度對它們進(jìn)行檢查與調(diào)整;另一方面,需求規(guī)格說明又是軟件設(shè)計、實現(xiàn)、測試直至維護(hù)的主要基礎(chǔ)。良好的需求分析活動有助于避免或盡早剔除早期需求上的錯誤,然而這些錯誤往往是致命的(向征,2009)[12]。2.3.2功能性需求分析通過一段時間的調(diào)查分析,并針對一些已有的超市管理信息系統(tǒng)分析,總結(jié)出中小型超市商品管理系統(tǒng)的功能需求:進(jìn)貨單中要包含商品信息,有入庫單的編號。庫存單中要包含商品信息,可以使用商品表中的商品編號。定期對超市商品進(jìn)行保質(zhì)期,庫存量進(jìn)行檢查,排除斷貨或者商品過期的現(xiàn)象。對即將過期的商品進(jìn)行促銷銷售活動。超市商品管理的數(shù)據(jù)庫的創(chuàng)建中需要注意各個信息之間的聯(lián)系。商品信息:包含商品編號、商品名稱、商品單價、類別、產(chǎn)地及說明等超市商品種類多而雜,很多大超市還專門設(shè)定品類管理,設(shè)計到根類,子類等等,商品的單價可以改動,對即將過期商品歸類為促銷商品。采購信息:包含進(jìn)貨編號、商品編號、單價、數(shù)量、采購時間、供應(yīng)商等。信息查詢:包含對商品信息、采購、庫存信息等的查詢(宗承玉,2007)[13]。2.3.3非功能性需求分析一個信息系統(tǒng)除了超市客戶功能需求外,還需要有其他隱性非功能需求,以滿足實際經(jīng)營使用:(1)設(shè)置用戶登錄口令。(2)信息顯示簡便,易懂。(3)符合目標(biāo)客戶的使用習(xí)慣。(4)系統(tǒng)能長時間穩(wěn)定運行,響應(yīng)時間短,啟動快。7 2.4系統(tǒng)數(shù)據(jù)流程程分析2.4.1系統(tǒng)整體流程圖中小超市的人員組成相對于大型超市要簡單,因此,系統(tǒng)根據(jù)超市情況把使用者分為兩類:一類是操作員,主要負(fù)責(zé)完成相關(guān)業(yè)務(wù)后數(shù)據(jù)的收集并錄入,操作員在錄入數(shù)據(jù)的過程會使用一些其它的信息,所以系統(tǒng)分配給操作員查詢和錄入數(shù)據(jù)的權(quán)限。另一類是管理員,管理員的權(quán)限要高于操作員,除了操作員的權(quán)限外,還可以修改或者刪除操作員的數(shù)據(jù)。管理員可以進(jìn)行添加供應(yīng)商和商品,系統(tǒng)更新信息后,操作員根據(jù)商品和供應(yīng)商信息負(fù)責(zé)采購和入庫的工作,操作員完成數(shù)據(jù)錄入后,管理員根據(jù)信息進(jìn)行定期檢查,倉庫核對,數(shù)據(jù)有誤的進(jìn)行修改,缺貨的通知操作員采購,這樣形成一個設(shè)計采購和倉庫的循環(huán)過程,依靠系統(tǒng)進(jìn)行系統(tǒng)性的管理。系統(tǒng)整體流程圖如下(見圖1):圖1系統(tǒng)整體流程圖2.4.2系統(tǒng)數(shù)據(jù)流圖數(shù)據(jù)流圖是一種圖形化技術(shù),它具體形象地描述了信息流和數(shù)據(jù)從輸入到8 輸出的過程中所經(jīng)過的變換過程。在數(shù)據(jù)流圖中不會存在物理單位,它只是描繪數(shù)據(jù)在軟件中流動和被處理的邏輯過程。因為數(shù)據(jù)流圖是邏輯系統(tǒng)的圖形表示,所以即使不是專業(yè)的計算機(jī)技術(shù)人員也容易理解,所以它是極好的交流工具,軟件公司接受業(yè)務(wù)后,都會要求他們的客戶提交相應(yīng)的數(shù)據(jù)流圖。設(shè)計數(shù)據(jù)流圖只需要考慮系統(tǒng)必須完成的基本邏輯功能,這個階段并不需要考慮如何具體地實現(xiàn)這些功能(杜鋒,2009)[14]。中小型超市商品管理系統(tǒng)的用戶的需求具體體現(xiàn)在各種信息的提供、保存、更新和查詢,這就要求數(shù)據(jù)庫結(jié)構(gòu)能充分滿足各種信息的輸出和輸入。收集基本數(shù)據(jù)、數(shù)據(jù)結(jié)構(gòu)及數(shù)據(jù)處理的流程,組成一份詳盡的數(shù)據(jù)字典。超市商品管理系統(tǒng)數(shù)據(jù)庫商品數(shù)據(jù)庫包含:供應(yīng)商表、采購表、庫存表、類別表、商品表、采購計劃表、缺貨報告表七個表。供應(yīng)商表主要存儲的數(shù)據(jù)是供應(yīng)商數(shù)據(jù),可以通過供應(yīng)商管理來修改、添加、刪除其中的數(shù)據(jù)。采購表主要存儲的是采購單的數(shù)據(jù),可以通過采購管理來修改、存儲數(shù)據(jù)。庫存表存儲各商品在倉庫的存貨量,也包含最佳存貨量的信息,是采購計劃和缺貨管理的基礎(chǔ)數(shù)據(jù)。類別表存儲商品類別信息,定義商品所屬的品類。商品表存儲所有商品的數(shù)據(jù),主要通過商品信息模塊的商品管理來實現(xiàn)數(shù)據(jù)的修改、保存。采購計劃表和缺貨報告表的數(shù)據(jù)不需要人工的修改和添加刪除,它由數(shù)據(jù)庫系統(tǒng)生成的表,主要存儲缺貨信息和每月的采購計劃信息。系統(tǒng)的數(shù)據(jù)流圖根據(jù)自頂向下,逐層分解的原則和本系統(tǒng)的特點,繪制出如下頂層圖(見圖2)。管理操作業(yè)務(wù)操作員工管理員中小型超市商品管理系統(tǒng)圖2系統(tǒng)頂層圖在上邊頂層圖的基礎(chǔ)上,根據(jù)超市業(yè)務(wù)數(shù)據(jù)的傳遞和加工,繪制出系統(tǒng)0程圖(見圖3),該圖可以更加詳細(xì)清除地描述系統(tǒng)數(shù)據(jù)之間的關(guān)系。9 圖3系統(tǒng)0層圖2.5系統(tǒng)數(shù)據(jù)字典數(shù)據(jù)字典(Datadictionary)是一種用戶可以訪問的記錄數(shù)據(jù)庫和應(yīng)用程序元數(shù)據(jù)的目錄,是關(guān)于數(shù)據(jù)的信息的集合,也就是對數(shù)據(jù)流圖中包含的所有元素的定義的集合。數(shù)據(jù)流圖表達(dá)了數(shù)據(jù)和處理的關(guān)系,數(shù)據(jù)字典則是系統(tǒng)中各類數(shù)據(jù)描述的集合,是進(jìn)行詳細(xì)的數(shù)據(jù)收集和數(shù)據(jù)分析所獲得的主要成果(吳迪沖,2009)[15]。根據(jù)數(shù)據(jù)流程圖,得出中小型超市商品管理系統(tǒng)的數(shù)據(jù)字典(見表1‐4)。表1數(shù)據(jù)元素表編號元素類型說明E01商品名稱字符商品在系統(tǒng)中的名稱E02供應(yīng)商編號字符商品的供應(yīng)商的編號E03類別編號字符商品的具體種類E04采購日期日期商品的日期E05商品編號數(shù)字商品的編號記錄E06入庫日期日期入庫的具體時間E07商品價格整型商品的價格E08庫存量整型商品的剩余庫存量10 E09采購價格整型商品的進(jìn)貨價格E10入庫數(shù)量整型入庫的具體數(shù)量E11保質(zhì)期日期商品的保質(zhì)期E12供應(yīng)商名稱字符商品的供應(yīng)商的名稱E13最佳庫存量數(shù)字商品在倉庫的適合庫存量E14采購數(shù)量整型采購單中的數(shù)量E15計劃采購量整型庫存和最佳庫存的差值E16類別名稱字符商品的種類名稱E17品類子節(jié)點數(shù)字商品的子分類表2數(shù)據(jù)流條目編號說明組成說明D1入庫商品E01+E05+E06+E08+E09入庫表單填寫的入庫商品信息D2采購商品E01+E05+E07+E10采購單需要填寫的采購商品信息D3缺貨信息E01+E08+E13系統(tǒng)產(chǎn)生的缺貨報告單D4供應(yīng)商信息E02+E12新增供應(yīng)商的信息D5商品信息E01+E03+E02+E11+E07+E02新增商品的信息D6采購計劃信息E01+E03+E05+E15系統(tǒng)的計劃采購量D7商品品類E01+E03+E05商品分類信息D8核對數(shù)據(jù)E01+E03+sum(E14)+sum(E10)+E08倉庫核對需要的數(shù)據(jù)D9庫存信息E01+E03+E05+E13+E11+E08倉庫中商品的數(shù)據(jù)信息表3數(shù)據(jù)存儲編號存儲名組成說明F1商品信息表E01+E05+E02+E09商品表中的信息F2入庫單信息E01+E05+E09+E02+E08入庫單中的信息F3采購單信息E01+E05+E14+E02采購單的信息11 F4缺貨管理E01+E08+E13qhbg表中的信息F5采購計劃E01+E15采購計劃中的信息F6供應(yīng)商信息E01+E05+E02+E12供應(yīng)商的信息表F7品類表E03+E16+E17保存品類信息F8庫存表E03+E05+E01+E08+E13倉庫中的商品存貨情況表4處理邏輯編號名稱說明P1采購單管理采購單的修改,添加和刪除P2商品信息管理商品信息查詢,可以連接存貨表獲取更多信息,并修改刪除相關(guān)信息。P3缺貨提醒當(dāng)存庫存表中商品的數(shù)量過低時產(chǎn)生缺貨信息P4入庫單管理入庫單信息的修改和刪除P5采購計劃系統(tǒng)依據(jù)最佳庫存和實時庫存生成的采購計劃單P6供應(yīng)商管理商品的供應(yīng)商信息P7品類管理商品的品類管理P8倉庫核對根據(jù)每月的采購和入庫信息核對庫存信息P9庫存管理管理倉庫中商品的信息,如保質(zhì)期、庫存量等等P10應(yīng)急采購主要是針對庫存量為零時的臨時采購12 3系統(tǒng)設(shè)計3.1總體結(jié)構(gòu)設(shè)計根據(jù)系統(tǒng)分析的成果進(jìn)行中小型超市商品管理系統(tǒng)的總體結(jié)構(gòu)設(shè)計。結(jié)合中小超市日常業(yè)務(wù)需求,設(shè)計了如下接個模塊,各模塊之間區(qū)分明確,用具結(jié)構(gòu)圖來描述系統(tǒng)模塊劃分如下(見圖4)。中小型超市商品管理系統(tǒng)商品信息管理系統(tǒng)提醒與統(tǒng)計倉庫管理采購管理商品管理供應(yīng)商管理品類管理采購計劃缺貨管理庫存單管理入庫單管理倉庫核對采購單管理應(yīng)急采購圖4系統(tǒng)結(jié)構(gòu)圖3.2功能模塊設(shè)計3.2.1采購設(shè)計采購設(shè)計模塊主要負(fù)責(zé)采購業(yè)務(wù)流程的處理,我希望中小型超市能夠借助這套系統(tǒng)來規(guī)范自己的采購流程,按照采購計劃來采購貨物。首先管理員根據(jù)庫存情況制作一張采購單,根據(jù)采購單完成采購動作后,打開采購設(shè)計模塊,輸入相關(guān)商品信息,經(jīng)過采購模塊的銷售處理和存貨量和銷售量的處理,經(jīng)過匯總和處理,得出倉庫報表、缺貨提醒,或者倉庫核對(見表5)。13 表5采購模塊設(shè)計系統(tǒng)名稱:超市管理系統(tǒng)模塊名稱:采購設(shè)計輸入處理輸出商品相關(guān)信息供應(yīng)商信息日常采購處理采購單管理采購單商品信息3.2.2商品信息設(shè)計商品信息設(shè)計模塊主要負(fù)責(zé)商品的信息查詢和更新模塊。具體功能為:按上架商品查詢,按總類查詢,所有商品查詢,添加刪除商品。任何一項動作都涉及到表中的商品表,由這張表和相關(guān)的查詢連接來獲取用戶所想要的商品信息(見表6)。表6商品信息模塊系統(tǒng)名稱:超市管理系統(tǒng)模塊名稱:商品信息查詢與更新輸入處理輸出查詢條件供應(yīng)商管理更新后的商品信息商品信息商品管理更新后的供應(yīng)商信供應(yīng)商信息查詢息查詢結(jié)果3.2.3倉庫設(shè)計倉庫設(shè)計模塊負(fù)責(zé)商品的庫存管理,它設(shè)計到采購銷售和系統(tǒng)提醒。采購模塊完成采購業(yè)務(wù)處理后,給據(jù)采購單的具體數(shù)據(jù)修改存貨表。SQLSERVER中的定時作業(yè)每天都會檢查存貨表中的商品庫存量和保質(zhì)期,當(dāng)這兩項存在異常時,會產(chǎn)生系統(tǒng)日志提交給系統(tǒng)統(tǒng)計和提醒模塊來提醒管理員。這個模塊的功能,比如商品的存貨管理、入庫管理等等,設(shè)計的內(nèi)容多,所以比較重要,一般由管理員進(jìn)行定期的倉庫和對,確保倉庫的商品信息一目了然,可以說一個超市只要把倉庫管理好了,超市商品管理就基本到位了,因為其它模塊的功能都是基于倉庫為后臺的。14 表7倉庫模塊統(tǒng)系統(tǒng)名稱:超市管理系模塊名稱:庫存管理輸入處理輸出入庫商品信息存貨商品管理更新的存貨數(shù)修改的入庫單數(shù)據(jù)入庫單管理據(jù)存貨數(shù)據(jù)日常入庫更新的采購單3.2.4提醒和統(tǒng)計設(shè)計設(shè)計提醒和統(tǒng)計模塊的目的是為了隨時提醒管理員某些商品的存貨量低于事先設(shè)定的最低值,或者某些商品的保質(zhì)期已經(jīng)到了。點開相應(yīng)的商品可以查看到具體的商品情況。采購、銷售和存貨量的情況每月都會由SQLSERVER定時作業(yè)設(shè)置相應(yīng)的命令進(jìn)行統(tǒng)計和匯總,生成每月的銷售、庫存、采購報表,用以提供具體的經(jīng)營管理數(shù)據(jù)(見表8)。表8提醒和統(tǒng)計模塊系統(tǒng)名稱:超市管理系統(tǒng)模塊名稱:提醒和統(tǒng)計輸入處理輸出系統(tǒng)數(shù)據(jù)缺貨提醒過期提醒缺貨提醒日志過期提醒日志3.3數(shù)據(jù)庫設(shè)計3.3.1概念結(jié)構(gòu)設(shè)計概念結(jié)構(gòu)設(shè)計是整個數(shù)據(jù)庫設(shè)計的關(guān)鍵,它能通過對需求進(jìn)行綜合,歸納與抽象,形成一個獨立于具體DBMS的概念模型在概念結(jié)構(gòu)設(shè)計階段,所用的代表工具主要是E-R圖,它實質(zhì)上就是根據(jù)現(xiàn)實世界客觀存在的事物及其關(guān)系所給出的語義要求,組合基本E-R圖形為E-R模型。在構(gòu)造概念數(shù)據(jù)模型時要注意以下幾點:應(yīng)充反映現(xiàn)實世界中實體與實體之間的聯(lián)系;滿足不同用戶對15 數(shù)據(jù)處理的要求;易于理解,可以和用戶交流;易于更改;易于向關(guān)系模型轉(zhuǎn)化。概念結(jié)構(gòu)是DBMS所用數(shù)據(jù)模型的基礎(chǔ),是數(shù)據(jù)庫設(shè)計過程的關(guān)鍵步驟之一(劉仲英,2006)[16]。通過對系統(tǒng)進(jìn)行的需求分析、流程設(shè)計以及系統(tǒng)功能結(jié)構(gòu)的確定和E-R圖的了解,繪制了中小型超市管理系統(tǒng)的E-R圖(見圖5-7)。商品信息編碼名稱單價分類供應(yīng)商保質(zhì)期圖5商品信息供應(yīng)商說明編碼名稱圖6供應(yīng)商信息庫存商品最佳庫存供應(yīng)商庫存量分類名稱圖7存貨信息綜合各個實體之間的聯(lián)系如下(見圖8):16 編碼供應(yīng)商倉庫nn商品說明名稱n供應(yīng)1入庫庫存保質(zhì)期名稱編號分類名稱編碼供應(yīng)商單價圖8系統(tǒng)E-R圖3.3.2邏輯結(jié)構(gòu)設(shè)計邏輯結(jié)構(gòu)設(shè)計的任務(wù)是系統(tǒng)地運用管理知識、計算機(jī)知識以及系統(tǒng)分析與設(shè)計的理論和方法在基礎(chǔ)設(shè)計的前提下構(gòu)思新的信息系統(tǒng)流程,按照具體說法就是把概念機(jī)構(gòu)設(shè)計好的基本E-R圖轉(zhuǎn)化為與選用的DBMS產(chǎn)品所支持的數(shù)據(jù)模型相符合的邏輯結(jié)構(gòu)。邏輯結(jié)構(gòu)是獨立于任何一種數(shù)據(jù)模型的,一般所用的數(shù)據(jù)庫環(huán)境已經(jīng)給定。由于目前使用的數(shù)據(jù)庫基本上都是關(guān)系數(shù)據(jù)庫,因此首先需要將E-R圖轉(zhuǎn)換為關(guān)系型,然后根據(jù)具體DBMS特點和限制轉(zhuǎn)換為特定的DBMS支持下的數(shù)據(jù)模型,最后進(jìn)行優(yōu)化(吳亞峰,2007)[17]。根據(jù)本系統(tǒng)的總體設(shè)計的E-R圖,以及轉(zhuǎn)換的步驟,在保證數(shù)據(jù)庫基本設(shè)計范式的基礎(chǔ)上,對應(yīng)用系統(tǒng)的數(shù)據(jù)庫的邏輯結(jié)構(gòu)進(jìn)行設(shè)計,設(shè)計生成的關(guān)系數(shù)據(jù)表共8張,下面分別對8張表進(jìn)行功能定義(見表9-16):gyshang表(供應(yīng)商表):記錄為供應(yīng)商行業(yè)、提供商品、價格等等信息。shangpin表(商品表):主要記錄商品相關(guān)信息。qhbg(缺貨報告表):主要記錄日常銷售商品的訂單相關(guān)信息。fenlei表(品類表):主要記錄商品所涉及到的種類信息。cunhuo表(庫存表):主要記錄商品在倉庫中的存貨信息。caigou表(采購單表):主要記錄采購單的相關(guān)信息。ruku表(入庫單表):主要記錄系統(tǒng)的入庫單中的相關(guān)信息。cgjh表(采購計劃表):系統(tǒng)生成的采購計劃。17 表9供應(yīng)商定義字段名描述數(shù)據(jù)類型長度NULLSupply_Name供應(yīng)商的名稱Varchar20NSupply_ID供應(yīng)商的編號Varchar2Supply_Des供應(yīng)商描述Varchar100表10商品表定義字段名描述數(shù)據(jù)類型長度NULLGood_Name商品名Varchar20NGood_ID商品編號Varchar5NGood_BZQ商品保質(zhì)期Datetime8Supply_Id商品供應(yīng)商Varchar2Kind_Id商品分類Varchar2Good_Num商品庫存Int3表11分類表定義字段名描述數(shù)據(jù)類型長度NULLKind_name分類名稱Varchar10NKind_ID分類編號Varchar2NKind_sub子節(jié)點Varchar2表12缺貨表的定義字段名描述數(shù)據(jù)類型長度NULLGood_Name商品名稱Varchar20Good_Id商品標(biāo)號Varchar5NGood_Num庫存量Int3N18 表13存貨表定義字段名描述數(shù)據(jù)類型長度NULLGood_Name商品名稱Varchar20Good_ID商品編碼Varchar5NGood_Num商品存量Int3NGood_Bes最佳庫存量Int3NGood_SupID供應(yīng)商編號Varchar2NKind_Id商品分類Varchar2表14采購單表定義字段名描述數(shù)據(jù)類型長度NULLBuy_Id采購單編號Varchar9NGood_Name商品名稱Varchar20Good_ID商品編號Varchar5NBuy_Pri采購價格Int3Buy_Dat采購日期Datetime8Buy_Num計劃的采購量Int3NSupply_ID供應(yīng)商編號Varchar2表15入庫單表定義字段名描述數(shù)據(jù)類型長度NULLRu_Id入庫單編號Varchar9NBuy_Id采購單編號Varchar9NGood_Name商品名稱Varchar20Good_ID商品編號Varchar5NRu_Dat入庫日期Datetime8字段名描述數(shù)據(jù)類型長度NULLCgjh_Id采購計劃編號Varchar9NGood_Id商品編號Varchar5NGood_Name商品名稱Varchar2019 Cgjh_Num計劃采購量Int5Cgjh_Dat計劃日期Datetime8表16采購計劃定義3.3.3物理設(shè)計數(shù)據(jù)庫的物理設(shè)計就是把設(shè)計好的邏輯結(jié)構(gòu)建立在特定的數(shù)據(jù)庫管理系統(tǒng)中,同時建立視圖、索引等數(shù)據(jù)庫對象。為邏輯結(jié)構(gòu)選取最適合應(yīng)用環(huán)境的物理結(jié)構(gòu),包括存儲結(jié)構(gòu)和存取方法。它主要依賴于給定的計算機(jī)系統(tǒng)。在進(jìn)行物理設(shè)計時主要考慮數(shù)據(jù)存儲和數(shù)據(jù)處理方面的問題。數(shù)據(jù)存儲是確定數(shù)據(jù)庫所需空間的大小,以盡量減少空間占用為原則。數(shù)據(jù)處理是決定操作次數(shù)的多少,應(yīng)盡量減少操作次數(shù),使響應(yīng)速度越快越好。根據(jù)以上原則,中小型超市商品管理系統(tǒng)做到以下幾點:(1)為特定的操作開辟緩沖區(qū)或臨時文件,比如缺貨報告表,這次生成缺貨表會以臨時表的形式保存,直到這些缺貨信息被閱讀后,才會被刪除。這樣可以避免多次重復(fù)查詢庫存表中的缺貨商品。(2)添加和刪除是只對特定表的進(jìn)行操作,比如刪除商品信息是直接在商品表和庫存表中刪除,而不會刪除在缺貨表、核對表中的記錄。(3)采購單和入庫單的記錄條數(shù)是按次計算的,也就是每次采購和入庫可以有多種商品。每條記錄記錄多條商品的信息。這樣可以減少采購表和入庫表的總記錄條數(shù)。在查詢采購表和入庫表的時候提高效率。下面是商品表SQL設(shè)計:USEchaoshicreatetableshangpin(Good_NameVarchar(20)notnull,Good_IdVarchar(5)primarykeynotnull,Good_BZQDatetime(8),Suply_IdVarchar(2),Kind_IdVarchar(2)foreignkeyreferencekind.Kind_Id,Good_Num_Int(3),);go存貨表的設(shè)計:20 createcunhuo(Good_NameVarchar(20)foreignkeyreferenceshangpin.Good_Name,Good_IdVarchar(5)primarykeyforeignkeyreferenceshangpin.Good_Id,Good_NumInt(3)notbull,Good_BesInt(3)notbull,Kind_IdVarchar(2)foreignkeyreferencekind.Kind_Id);采購單的設(shè)計:createcunhuo(Buy_IdVarchar(9)primarykeynotnull,Buy_NameVarchar(20),Good_IdVarchar(5)foreignkeyreferenceshangpin.Good_Id,Buy_PriInt(3)notnull,Buy_DateDatetime(8),Buy_NumInt(3)notnull,Supply_IdVarchar(2)foreignkeyreferencegongyingsh.Supply_Id);3.4編碼設(shè)計編碼是用來表示事物名稱、屬性和狀態(tài)的計算機(jī)符號。在管理信息系統(tǒng)中,它主要起到信息分類、校對、統(tǒng)計和檢索的作用。編碼設(shè)計就是設(shè)計出一套能夠為系統(tǒng)各模塊公用的優(yōu)化的編碼系統(tǒng)。超市管理系統(tǒng)的代碼設(shè)計,主要遵循以下原則(見表17):(1)唯一性:每一個代碼都僅代表一個屬性或?qū)嶓w(2)短小精悍:代碼的長度不會占據(jù)存貯單元和信息處理速度,也不會影響代碼的輸入錯誤。(3)便于識別和設(shè)計:同時適應(yīng)計算機(jī)和人工處理,簡單明了(安境,2008)[18]。編碼信息長度規(guī)則說明商品編號5xx‐xxx分類編號+順序編碼種類編號2xx非含義碼供應(yīng)商編號2xx非含義碼入庫單編號9xx‐xx‐xxxxx日期+順序采購單編號9xx‐xx‐xxxxx日期+順序21 存貨單編號7xx‐xxx引用商品表編號采購計劃編號9xx‐xx‐xxxxx日期+順序缺貨報告單編號9xx‐xx‐xxxxx日期+順序表17代碼設(shè)計22 4系統(tǒng)實現(xiàn)4.1基本功能的實現(xiàn)4.1.1登錄功能任何一個信息系統(tǒng),都應(yīng)該有口令登錄的功能,以防止信息外露,但考慮到中小型超市基本上沒有太大的人員規(guī)模,不涉及到人員管理,因此,系統(tǒng)只需簡潔地完成登錄功能就好,因此也不用用戶表中添加什么額外的信息,只需把密碼集成到程序中就行了(見圖9):部分代碼:圖9登錄窗口publicclassdengluextendsFrameimplementsActionListener{JButtonbtn,btn1;JLabeljlab1,jlab2;denglu(){JFrameframe=newJFrame("登陸");frame.setLayout(null);frame.setLocationRelativeTo(null);frame.setVisible(true);JPanelpnl=newJPanel();btn=newJButton("取消");btn1=newJButton("確定");jlab1=newJLabel("用戶:");22 jlab2=newJLabel("密碼:");JTextFieldjt1=newJTextField(8);JPasswordFieldjt2=newJPasswordField(8);add(btn);add(btn1);frame.add(btn);frame.add(btn1);frame.add(jlab1);frame.add(jlab2);frame.add(jt1);frame.add(jt2);pack();addWindowListener(newWindowAdapter(){publicvoidwindowClosing(WindowEvente){System.exit(0);}})};4.1.2數(shù)據(jù)庫連接JDBC:JavaDataBaseConnectivity(Java數(shù)據(jù)庫連接技術(shù)),它是將Java與SQL結(jié)合且獨立于特定的數(shù)據(jù)庫系統(tǒng)的應(yīng)用程序編程接口(API‐它是一種可用于執(zhí)行SQL語句的JavaAPI,即由一組用Java語言編寫的類與接口所組成)。有了JDBC從而可以使Java程序員用Java語言來編寫完整的數(shù)據(jù)庫方面的應(yīng)用程序。另外也可以操作保存在多種不同的數(shù)據(jù)庫管理系統(tǒng)中的數(shù)據(jù),而與數(shù)據(jù)庫管理系統(tǒng)中數(shù)據(jù)存儲格式無關(guān)。同時Java語言的與平臺的無關(guān)性,不必在不同的系統(tǒng)平臺下編寫不同的數(shù)據(jù)庫應(yīng)用程序(黃明,2009)[19]。中小型超市商品管理系統(tǒng)的數(shù)據(jù)庫連接是通過Microsoft的JDBC驅(qū)動連接的。要保證系統(tǒng)穩(wěn)定的運行,數(shù)據(jù)庫的連接是關(guān)鍵。每次系統(tǒng)啟動時都會檢查SQLSERVER數(shù)據(jù)庫連接是否正常,并給出相應(yīng)的警告。數(shù)據(jù)庫連接測試代碼:23 publicclasslianjie{publiclianjie{try{Class.forName("com.microsoft.jdbc.sqlServer.SQLServerDriver");System.out.println("注冊數(shù)據(jù)庫驅(qū)動程序成功!");Connectionconn=DriverManager.getConnection("jdbc:microsoft:sqlServer://localhost:1433;DatabaseName=chaoshi;User=sa;Password=123");System.out.println("數(shù)據(jù)庫連接成功!");}catch(Exceptione){jlab.text:="數(shù)據(jù)庫連接失敗!";e.printStackTrace();}}}4.2采購模塊的實現(xiàn)4.2.1供應(yīng)商管理供應(yīng)商管理這個界面主要有供應(yīng)商信息的查詢,添加或刪除供應(yīng)商,以及供應(yīng)商的商品信息修改保存。包括表中的內(nèi)容都可以隨時的修改,點擊保存按鈕完成編輯。要添加供應(yīng)商,點擊添加按鈕,字符框自動清空,輸入信息后點擊保存就完成添加了。這里對應(yīng)數(shù)據(jù)庫中的gyshang表,用于記錄所有供應(yīng)商的信息(見圖10)。24 部分代碼如下:圖10供應(yīng)商管理publicvoidAddgysh()throwsException{gysname=jTextField1.text;gysid=jTextField2.txt;gysdes=jTextAera1.text;StringStr="Insertintogyshang(Supply_Name,Supply_ID,Supply_Des)values('"+gysname+"',"+gysid+"',"+gysdes"')whereSupply_ID=gysid";DBConnectdbc=newDBConnect();dbc.executeUpdate(Str);dbc.close();}/添加供應(yīng)商publicvoidEditgysh()throwsException{gysname=jTextField1.text;gysid=jTextField2.txt;gysdes=jTextAera1.text;StringStr="UpdategyshsetSupply_Name='"+gysname+"',Supply_ID="+gysid+",Supply_Des="+gysdes+"Supply_ID="+gysidwhereSupply_ID=gysid";DBConnectdbc=newDBConnect();dbc.executeUpdate(Str);dbc.close();}/編輯供應(yīng)商25 4.2.2采購單每一筆銷售記錄都會生成一張訂單,詳細(xì)記錄采購商品的數(shù)量、價格等。Java中主要設(shè)計了Addcaigou、Editcaigou、Delcaigou三個方法來實現(xiàn)對應(yīng)的新增、修改、刪除操作。系統(tǒng)的采購單每一張可以有不同的數(shù)量和商品,但是只能有一個供應(yīng)商。就是說采購單是按照供應(yīng)商和日期來填寫的,而不是商品的種類和數(shù)量。要新增采購單,點擊新增,在表格上方輸入基本數(shù)據(jù),在表格里直接輸入采購商品信息,點擊保存即可(見圖11):部分代碼如下:圖11采購單處理publicvoidEditcaigouthrowsException{caigouid=jTextField1.text;caigougysh=jTextField2.textshangpinid=jTextField3.text;caigounum=jTextField4.text;caigoupri=jTextField5.text;caigoudate=jTextField6.text;StringStr="UpdatecaigousetBuy_Id='"+caigouid+"',Buy_Id="+shangpinid+",Buy_Num="+caigounum+",Buy_pri="+caigoupri+",Buy_dat='"+caigoudate+"'whereSupply_ID=gysid";26 DBConnectdbc=newDBConnect();dbc.executeUpdate(Str);dbc.close();}publicvoidAddcaigouthrowsException{caigouid=jTextField1.text;caigougysh=jTextField2.textshangpinid=jTextField3.text;caigounum=jTextField4.text;caigoupri=jTextField5.text;caigoudate=jTextField6.text;StringStr="Insertintocaigou(Buy_Id,Supply_id,Buy_Id,Buy_Num,Buy_pri,Buy_dat)values('"+caigouid+"',"+caigougysh+"',"+shangpinid+",'"+caigounum+",'"+caigoupri+"',"+caigoudate"')whereSupply_ID=gysid";DBConnectdbc=newDBConnect();dbc.executeUpdate(Str);dbc.close();}4.3商品信息模塊的實現(xiàn)這個模塊的功能就是查詢和管理現(xiàn)有商品的信息,添加、刪除、修改等。其中還涉及到供應(yīng)商。要對商品信息進(jìn)行修改,可以先查詢商品中找到該商品。查詢方式可以有很多種,按種類、按編號、按名稱、按供應(yīng)商,這樣隨著超市商品的增多,查詢效率不會下降。找到商品后可以在相應(yīng)的表中修改信息(見圖12)。27 圖12商品查詢部分代碼如下:StringBufferchaxun=newStringBuffer();chaxun.append("selectGood_Name,Good_Pri,Good_BZQ,Good_SHJ");chaxun.append("fromGood");Chaxun.append("whereGood_Namelikes"+JtextField1.text);Connectioncon=Config.getConnectionPool();PreparedStatementpStmt1=con.prepareStatement(chaxun.toString());ResultSetrs=pStmt1.executeQuery();Objectvalue=null;if(rs.next())value=rs.getObject(1);/按商品名稱查詢各種查詢方法大同小異,就是查詢語句的不同,上面按照名稱查詢是通過likes關(guān)鍵字查詢,如果是按照編號查詢的話,需要把SQL語句改成:selectGood_Name,Good_Pri,Good_BZQ,Good_SHJfromshangpinwhereGood_Id=JtextFied2.text;按照供應(yīng)商查詢,只要更改搜索條件。selectGood_Name,Good_Pri,Good_BZQ,Good_SHJfromshangpinwhereGood|_Supid=JtextFied3.text;28 4.4倉庫模塊的實現(xiàn)4.4.1采購入庫采購入庫需要填寫入庫單,系統(tǒng)的每一張入庫單都需要有與之對應(yīng)的采購單,講究業(yè)務(wù)的對接性,確保系統(tǒng)不會出現(xiàn)下達(dá)了采購單,但是沒有商品入庫和沒有下達(dá)采購單,但是多出一筆入庫單的現(xiàn)象。已有的入庫單會在左側(cè)列表框中顯示,點擊相應(yīng)的選項進(jìn)行修改操作,新增直接輸入采購單,并在右側(cè)表中輸入信息后點擊保存(見圖13)。部分代碼如下:圖13入庫單publicvoidAddrukuthrowsException{caigouid=jTextField1.text;rukuid=jTextField2.text;StringStr="Insertintorukudan(Good_Id,Good_Name,Ru_Num,Ru_Dat)values('"+"',"+"',+",'"",'")whereRuku_Id=rukuid";DBConnectdbc=newDBConnect();dbc.executeUpdate(Str);dbc.close();}按照上述代碼的方法填寫入庫單,管理員只要從左側(cè)列表框選擇入庫單號,就能在右側(cè)表中查詢?nèi)霂烨闆r??梢院芎啙嵉夭榭疵抗P入庫單具體入了多少種商品,多少數(shù)量[21]。29 4.4.2商品存貨商品存貨表是最重要的表,里面記錄了倉庫中所有商品的所有信息,供應(yīng)商查詢,甚至包括缺貨報告等相關(guān)信息都來自或間接來自這張存貨表。商品有個保質(zhì)期的字段,系統(tǒng)用它來判斷商品是否過期。表中的存貨數(shù)量代表了該商品的目前存貨量,所有商品的低庫存量為20,存貨量低于這個數(shù)時,系統(tǒng)提醒該商品為低庫存量商品。我為這張表的查詢專門設(shè)計了一個界面,用以查看存貨信息(見圖14)。圖14存貨單部分代碼如下:Connectioncon=DriverManager.getConnectio(jdbc:microsoft:sqlserver:/localhost:1433;DatabaseName=chaoshi,"sa","123");Statementsmt=con.createStatement;StringselCode="selectGood_Id,userNamefromUserTable";ResultSetrs=smt.executeQuery(selCode);if(rs.last()){StringuserId=rs.getString(1);StringuserName=rs.getString(2);System.out.println(userId+":"+userName);}rs.close();smt.close();con.close();30 4.5統(tǒng)計和提醒模塊的實現(xiàn)4.5.1倉庫核對在計算機(jī)沒有出現(xiàn)以前,人們都是用紙和筆來記錄和統(tǒng)計數(shù)據(jù),就比如民間的豆腐賬,將自己每天的帳記在本子上,每月進(jìn)行匯總計算,這樣的方式很難檢查和修改,因為它幾乎只有記賬的人才能理解,況且倉庫具有的空間是非常有限的,用于儲存物品,并根據(jù)儲存物品的特性按照一定的順序和數(shù)量采購保存,以保持超市的正常運行是非常重要的。如果一個超市不計成本,所有商品僅憑銷售人員的經(jīng)驗去采購,那么后果是要么采購數(shù)量過多,造成倉庫堆積,成本過高,特別是一些保質(zhì)期短的食品,更不容易保存,如果未及時售完,就造成更大的浪費成本。要么數(shù)量不夠,可能當(dāng)月中旬某些商品就出現(xiàn)斷貨了。當(dāng)計算機(jī)出現(xiàn)以后,人們利用計算機(jī)處理數(shù)據(jù),并設(shè)計出相應(yīng)的界面來展示和宣傳報表。核對的目的在于提高數(shù)據(jù)處理效率。本系統(tǒng)設(shè)計倉庫核對的功能目的也在這里,為了能夠快速統(tǒng)計每月份的采購和庫存信息,即使出現(xiàn)差錯了,也可以回頭在相應(yīng)的采購單和入庫單中修改(見圖15)。圖15倉庫核對計算采購總和的SQL語句:selectsum(Buy_Num)ascaigousumfromcaigouwhereBuy_Dat>110301001andBuy_Dat<110401001在Java中發(fā)送并執(zhí)行SQL語句,用IF語句判斷采購總和與入庫總和是否相等。31 Connectioncon=DriverManager.getConnection(jdbc:microsoft:sqlserver:/localhost:1433;DatabaseName=chaoshi,"sa","123");Statementstmt=con.createStatement();ResultSetrs1=stmt.executeQuery("selectsum(Buy_Num)ascaigousumfromcaigouwhereBuy_Dat>110301001andBuy_Dat<110401001");Caigousum=rs1.getString("caigousum");ResultSetrs2=stmt.executeQuery("selectsum(Buy_Num)ascaigousumfromcaigouwhereBuy_Dat>110301001andBuy_Dat<110401001");rukusum=rs2.getString("rukusum");ifrukusum!=caigousumthenJtextField1.text:="采購量和庫存量不相等!";4.5.2缺貨報告在涉及到商品管理的行業(yè)中,超市行業(yè)的管理最難,因為它的商品種類多而雜,需求量小單批次多。特別是一些中小型超市的管理相對滯后,經(jīng)常出現(xiàn)斷貨的現(xiàn)象。那么針對這樣的情況,本系統(tǒng)數(shù)據(jù)庫后臺采用了SQLSERVER,只需在SQLSERVER的定時作業(yè)功能中增加幾句SQL語句,就能讓讓系統(tǒng)自動定時檢查存貨量,發(fā)現(xiàn)有商品的困存量過低的話,就提早提醒經(jīng)營者制定采購計劃,確保不會出現(xiàn)斷貨現(xiàn)象(胡靜,2007)[20]。系統(tǒng)首先在SQLSERVER的自動作業(yè)中指定時間里的自動作業(yè)命令,具體命令如下(見圖16):SelectGood_Id,Good_Name,Good_Num,Good_SupintoqhbgFromcunhuowhereGood_Num<20SelectGood_Id,Good_Name,Good_Num,Good_SupintoqhbgFromcunhuowhereGood_Num=032 圖16作業(yè)制定當(dāng)某商品的存貨量不足時,數(shù)據(jù)庫系統(tǒng)自動作業(yè)會檢查出信息,并會將這缺貨商品的信息記錄在qhbg這張表中,超市管理員在打開界面時能看到如下圖的報告(RobHarrop,2008)[20](見圖16):圖16缺貨報告4.5.3采購計劃不管超市規(guī)模大小如何,應(yīng)該定期地制定采購計劃,及時采購入庫,確保到月中旬不會出現(xiàn)倉庫缺貨需要緊急采購的情況,但也不能隨意采購,因為這樣對導(dǎo)致倉庫商品的堆壓,特別是一個保質(zhì)期短的商品。一堆壓就過期,過期就浪費了。這里系統(tǒng)有個采購計劃的功能,主要通過SQLSERVER定時作業(yè)計算最佳庫存量幫助經(jīng)營者快速制定采購計劃。這里涉及到一個存貨表中的最佳33 庫存量的值,需要經(jīng)營者提前輸入系統(tǒng)的初始數(shù)據(jù),通過最佳庫存量和現(xiàn)有存貨量的差值來確定采購計劃,公式如下:S=A-P其中,p代表現(xiàn)有存貨量,A為最佳庫存量,S就是計劃采購量了。對于超市經(jīng)營者來說,每種商品每月能售出多少,他們最清楚了。通過這個公式確定出來的計劃采購量很適合,這樣避免了盲目采購,把庫存成本降至最低[22(]見圖17)。SQL代碼如下:圖17采購計劃SelectGood_Id,Good_Name,Good_Num,Good_besNum,Good_besNum-Good_Numas計劃采購量intocgjhfromcunhuo讓數(shù)據(jù)庫系統(tǒng)選擇相應(yīng)的數(shù)據(jù),并按照公式計算計劃采購量(RobertEckstein,2009)[21]點擊刷新,實際上進(jìn)行數(shù)據(jù)庫數(shù)據(jù)的重新讀取,按鈕的點擊事件代碼如下:privatevoidjButton1MouseClicked(java.awt.event.MouseEventevt){Connectioncon=DriverManager.getConnection(jdbc:microsoft:sqlserver:/localhost:1433;DatabaseName=chaoshi,"sa","123");Statementstmt=con.createStatement();ResultSetrs1=stmt.executeQuery("selectGood_Id,Good_Name,Good_Num,Good_besNum,Good_besNum-Good_Numas計劃采購量intojhcgfromcunhuodan");}34 結(jié)論中小型超市商品管理系統(tǒng)與其它同類管理系統(tǒng)相比,并沒有太多、太復(fù)雜的功能,但它具備超市商品管理系統(tǒng)應(yīng)該有的管理功能。采用SQLSERVER和JDBC數(shù)據(jù)庫連接技術(shù),能夠保證系統(tǒng)和數(shù)據(jù)庫的穩(wěn)定、安全,而且采用JDBC技術(shù)比ODBC橋接等其它數(shù)據(jù)庫驅(qū)動技術(shù)來得更效率。本系統(tǒng)主要分為采購、庫存提醒和統(tǒng)計、商品信息四個大模塊,涉及了中小型超市日常經(jīng)營功能。各個模塊之間設(shè)計這個系統(tǒng)的目的就是希望通過計算機(jī)計算的高效性取代繁雜人工計算。SQLSERVER的定時作業(yè)功能,設(shè)定每天定時檢查商品表中的保質(zhì)期字段和存貨表中存貨量字段的值,為該系統(tǒng)提供了保質(zhì)期過期提醒和商品庫存過低或為零的提醒。這讓超市經(jīng)營者剩去了每天人工檢查的時間和精力。系統(tǒng)中一些需要修改數(shù)據(jù)的地方,比如采購單改和入庫單修改,可以直接在表中修改,這樣的好處是方便,當(dāng)時也容易誤改,這就要求管理員每周采購報表和入庫報表的數(shù)量進(jìn)行校對??偟膩碚f,本系統(tǒng)較適合小鄉(xiāng)鎮(zhèn)地區(qū)的中小超市使用,能夠有效的提升這些超市經(jīng)營者的管理水平。35 參考文獻(xiàn)[1]陳曉.我國本土超市現(xiàn)狀與發(fā)展對策研究[J].科技咨詢導(dǎo)報,2007(11).[2]黃智萌.中小型超市的現(xiàn)狀及發(fā)展對策研究[J].湖南工業(yè)技術(shù)學(xué)院報,2009(6).[3]寧立苗.國內(nèi)中小型超市競爭戰(zhàn)略及典型案例研究[D].昆明:昆明理工大學(xué),2006.[4]黃艷.中小型超市進(jìn)銷存管理系統(tǒng)[D].成都:電子科技大學(xué),2009.[5]王旭輝.社區(qū)超市發(fā)展現(xiàn)狀分析與對策探討[J].科技資訊,2007(9).[6]袁寶國.MVC模式在中小型超市信息管理系統(tǒng)中的應(yīng)用[J].計算機(jī)應(yīng)用與軟件,2006(9).[7]賈蓉生,胡大源,林金池.Java典型應(yīng)用徹查1000例[M].北京:科學(xué)出版社,2009.[8]葉乃文,王丹.Java語言程序設(shè)計教程[M].北京:機(jī)械工業(yè)出版社,2009.[9]余永紅.Java程序設(shè)計教程[M].北京:機(jī)械工業(yè)出版社,2008.[10]喻問蘭.淺談高校超市管理[J].科技信息,2007(10).[11]伍明星,鄭多玲.基于Java的超市管理系統(tǒng)的開發(fā)與研究[J].科技情報開發(fā)與經(jīng)濟(jì),2006(11).[12]向征.超市管理信息系統(tǒng)的設(shè)計與實現(xiàn)[J].軟件導(dǎo)刊,2009(4).[13]宗承玉.超市管理理念對圖書館管理理念的對沖效應(yīng)[J].新世紀(jì)圖書館,2007(10).[14]杜鋒.基于C/S模式的超市管理系統(tǒng)的設(shè)計與實現(xiàn)[D].成都:電子科技大學(xué),2009.[15]吳迪沖.零售超市進(jìn)銷存管理系統(tǒng)設(shè)計與研究[J].長三角,2009(3).[16]劉仲英.管理信息系統(tǒng)[M].北京:高等教育出版社,2006.[17]吳亞峰,王鑫磊.精通NetBeans‐Java桌面、web與企業(yè)級程序開發(fā)詳解[M].北京:人民郵電出版社,2007.[18]安境.輕松學(xué)用JAVA2[M].北京:電子工業(yè)出版社,2008.[19]黃明,梁旭.java信息系統(tǒng)設(shè)計與開發(fā)實例(第二版)[M].北京:機(jī)械工業(yè)出版社,2009.[20]胡靜,吳東成,韓中華,馬建宇.SQL定時作業(yè)在管理系統(tǒng)中的應(yīng)用[J].計算機(jī)技術(shù)與發(fā)展,2007(6).[21]RobHarrop,JanMachacek.ProSwring[M].北京:電子工業(yè)出版社,2008.[22]RobertEckstein,DaceWood.JavaSwing[M].北京:O’Reilly&Associates,2009.36

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。
關(guān)閉