2023年全國(guó)碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩24頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  本科畢業(yè)論文</b></p><p><b>  (20 屆)</b></p><p>  中小企業(yè)倉(cāng)庫(kù)管理系統(tǒng)—用戶體驗(yàn)設(shè)計(jì)與編碼</p><p><b>  摘要</b></p><p>  通過計(jì)算機(jī)實(shí)現(xiàn)倉(cāng)庫(kù)管理、為用戶提供充足的信息和快捷

2、的查詢手段能改善中小企業(yè)手工管理所帶來的缺點(diǎn)。本倉(cāng)庫(kù)管理系統(tǒng)是針對(duì)企業(yè)倉(cāng)庫(kù)材料的出入庫(kù)登記和查詢統(tǒng)計(jì)等方面工作開發(fā)的管理軟件。本文是關(guān)于利用SQL Server 2005和Visual Studio 2010軟件,采用多層架構(gòu)研究與設(shè)計(jì)的基于C/S模式的中小企業(yè)倉(cāng)庫(kù)管理系統(tǒng),實(shí)現(xiàn)了入出庫(kù)、增加、刪除、更新、查詢、材料的分類管理等基本功能。介紹倉(cāng)庫(kù)管理系統(tǒng)的課題研究意義,概要設(shè)計(jì)、業(yè)務(wù)邏輯層設(shè)計(jì),詳細(xì)分析了用戶體驗(yàn)設(shè)計(jì)和實(shí)現(xiàn)。</p

3、><p>  關(guān)鍵字:倉(cāng)庫(kù)管理系統(tǒng)、C/S模式、業(yè)務(wù)邏輯層、用戶體驗(yàn)</p><p><b>  Abstract</b></p><p>  Managing warehouse by computers, providing users with adequate information and quick inquiry method can

4、 improve the drawbacks which brought by manual management of small business.The warehouse management system is a management software which develops for small enterprise about enterprise storage materials into or out of

5、storage registration and query statistics. The article is about a warehouse management basing on C/S structure to research and design which uses SQL Server 2005 and Visual Studi</p><p>  Keywords:Warehouse m

6、anagement system, C/S structure, business logic layer, user experience</p><p><b>  目錄</b></p><p><b>  1 引言1</b></p><p>  1.1課題研究背景及意義1</p><p>

7、<b>  1.2開發(fā)環(huán)境1</b></p><p><b>  1.3技術(shù)簡(jiǎn)介2</b></p><p>  2 系統(tǒng)概要設(shè)計(jì)和框架設(shè)計(jì)3</p><p><b>  2.1需求介紹3</b></p><p>  2.2系統(tǒng)功能介紹5</p><

8、p>  2.3系統(tǒng)框架介紹7</p><p>  3 業(yè)務(wù)邏輯層和錯(cuò)誤檢驗(yàn)層8</p><p>  3.1業(yè)務(wù)邏輯層(Business Logic Layer,簡(jiǎn)稱BLL層)作用8</p><p>  3.2錯(cuò)誤檢驗(yàn)層(Error Check Layer,簡(jiǎn)稱ECL層)作用8</p><p><b>  3.3詳細(xì)設(shè)計(jì)

9、8</b></p><p>  3.4錯(cuò)誤檢驗(yàn)層完整性約束(Validation)11</p><p>  4 用戶體驗(yàn)設(shè)計(jì)13</p><p>  4.1用戶體驗(yàn)設(shè)計(jì)原則13</p><p>  4.2詳細(xì)設(shè)計(jì)13</p><p>  4.2.1主窗體設(shè)計(jì)13</p><

10、p>  4.2.2添加入庫(kù)信息窗體設(shè)計(jì)14</p><p>  4.2.3反饋信息和錯(cuò)誤信息處理15</p><p><b>  5 結(jié)束語20</b></p><p>  6 參考文獻(xiàn)21</p><p><b>  1 引言</b></p><p>  

11、1.1課題研究背景及意義</p><p>  隨著經(jīng)濟(jì)的不斷繁榮和市場(chǎng)環(huán)境的變化,對(duì)企業(yè)的生產(chǎn)經(jīng)營(yíng)提出了更高的要求。尤其是中小企業(yè)要適應(yīng)日趨激烈的市場(chǎng)競(jìng)爭(zhēng),中小型倉(cāng)庫(kù)的管理問題也就提上了日程。隨著物資的大量增加,其管理難度也越來越大,如何優(yōu)化中小企業(yè)倉(cāng)庫(kù)的日常管理也就成為了一個(gè)大眾化的課題。</p><p>  為改進(jìn)現(xiàn)有的生產(chǎn)經(jīng)營(yíng)模式和組織結(jié)構(gòu),在競(jìng)爭(zhēng)中贏得更多的市場(chǎng)份額,倉(cāng)庫(kù)管理系統(tǒng)得

12、到了廣泛的推廣應(yīng)用,為企業(yè)優(yōu)化管理、節(jié)約成本、確保產(chǎn)品質(zhì)量發(fā)揮了巨大的作用,成為了企業(yè)管理的重要組成部分。中小企業(yè)要想生存、發(fā)展,要想在激烈的市場(chǎng)競(jìng)爭(zhēng)中立于不敗之地,就必須改善其管理方式,沒有現(xiàn)代化的管理是萬萬不行的,倉(cāng)庫(kù)管理的全面自動(dòng)化、信息化則是其中極為重要的部分。為了加快中小企業(yè)倉(cāng)庫(kù)管理自動(dòng)化的步伐,提高中小企業(yè)倉(cāng)庫(kù)的管理業(yè)務(wù)處理效率,建立中小企業(yè)倉(cāng)庫(kù)管理系統(tǒng)已變得十分必要。</p><p>  目前市場(chǎng)上

13、有眾多的倉(cāng)庫(kù)管理系統(tǒng)軟件,雖然功能齊全,方便易用,但是由于其針對(duì)的是整個(gè)市場(chǎng),所以當(dāng)其用于某個(gè)具體的倉(cāng)庫(kù)管理時(shí),或多或少的就會(huì)存在不同的問題,有的甚至嚴(yán)重阻礙企業(yè)的正常運(yùn)作。不同企業(yè)的倉(cāng)庫(kù)管理有其不同的特點(diǎn)與要求,因此,只有根據(jù)企業(yè)自身的需求設(shè)計(jì)最合適的管理系統(tǒng),才能使倉(cāng)庫(kù)管理系統(tǒng)真正的為生產(chǎn)服務(wù)。本系統(tǒng)根據(jù)某公司倉(cāng)庫(kù)管理的功能和特點(diǎn)及要求,完成了倉(cāng)庫(kù)管理所涉及的業(yè)務(wù)流程和功能實(shí)現(xiàn),并進(jìn)行了系統(tǒng)測(cè)試。</p><p&

14、gt;<b>  1.2開發(fā)環(huán)境 </b></p><p>  本系統(tǒng)選擇Visual Studio 2010作為軟件的開發(fā)環(huán)境。Visual Studio 2010是微軟公司推出的開發(fā)環(huán)境,是目前最流行的Windows平臺(tái)應(yīng)用程序開發(fā)環(huán)境,是一套完整的開發(fā)工具集,用于生成桌面應(yīng)用程序、ASP.NET Web應(yīng)用程序、移動(dòng)應(yīng)用程序等多種應(yīng)用程序,也可以用來創(chuàng)建網(wǎng)絡(luò)服務(wù)、智能設(shè)備應(yīng)用程序和O

15、ffice插件,是Visual C#、Visual Basic、Visual C++和Visual J#等多種語言共同使用的集成開發(fā)環(huán)境(IDE)。Visual Studio 2010的集成開發(fā)環(huán)境(IDE)的界面被重新設(shè)計(jì)和組織,變得更加簡(jiǎn)單明了,利用此集成開發(fā)環(huán)境可以共享工具且有助于創(chuàng)建混合語言解決方案。利用它的可視化設(shè)計(jì)器,可以快速地創(chuàng)建Winform應(yīng)用程序。</p><p>  系統(tǒng)選用了與 Micro

16、soft緊密集成的Microsoft SQL Server 2005數(shù)據(jù)庫(kù)用來存儲(chǔ)數(shù)據(jù)信息。Microsoft SQL Server 2005是Microsoft公司最新的數(shù)據(jù)庫(kù)系統(tǒng),它增強(qiáng)了企業(yè)數(shù)據(jù)庫(kù)管理、開發(fā)人員生產(chǎn)力和商務(wù)管理等特性。SQL Server 2005在企業(yè)數(shù)據(jù)庫(kù)管理方面的應(yīng)用中要始終為用戶提供安全可靠的數(shù)據(jù)。與桌面型的數(shù)據(jù)庫(kù)Access數(shù)據(jù)庫(kù)而言,其在功能上比較完善,其安全性、并發(fā)控制能力、數(shù)據(jù)挖掘和聯(lián)機(jī)操作等方面都

17、要優(yōu)于Access數(shù)據(jù)庫(kù)。Sql Server 2005也增加了許多新功能并對(duì)原有的一些功能進(jìn)行了改進(jìn)和增強(qiáng),從而使開發(fā)人員更有效率地工作。</p><p><b>  1.3技術(shù)簡(jiǎn)介</b></p><p>  當(dāng)前在涉及到倉(cāng)庫(kù)管理系統(tǒng)開發(fā)領(lǐng)域中存在著不同的編程語言和實(shí)現(xiàn)技術(shù)方案,如C++、Java web、ASP.Net等。而我們采用了C#語言開發(fā)了Windows

18、應(yīng)用窗體應(yīng)用程序。C#是微軟公司為了其.NET計(jì)劃而開發(fā)的一種新的編程語言,它是針對(duì).NET平臺(tái)而設(shè)計(jì)的,是微軟.NET計(jì)劃中的主要開發(fā)語言。C#完全是面向?qū)ο蟮木幊陶Z言,所有的元素都要被封裝到類中,它不再支持類的多繼承,但可通過接口實(shí)現(xiàn)多繼承也不再支持全局函數(shù),全局變量和全局常量,所有的函數(shù)、變量、常量都必須封裝在類中,作為類的實(shí)例成員或靜態(tài)成員。</p><p>  C#派生于C/C++,吸取了C、C++、J

19、ava以及Delphi和Visual Basic等語言的優(yōu)點(diǎn),并解決了它們的問題,具有簡(jiǎn)單、強(qiáng)大、靈活、類型安全和面向?qū)ο蟮葍?yōu)點(diǎn),縮短了開發(fā)周期,降低了開發(fā)難度。而且C#定義了一些更適合現(xiàn)代應(yīng)用的數(shù)據(jù)類型,如適合金融業(yè)進(jìn)行貨幣計(jì)算的decimal類型。同時(shí)它也允許開發(fā)人員根據(jù)需要自己定義與現(xiàn)有類型同等高效的新的數(shù)據(jù)類型。在內(nèi)容管理上,引入了垃圾收集(Garbage Collection,GC)機(jī)制,減輕了開發(fā)人員對(duì)內(nèi)存管理的負(fù)擔(dān)。此外C

20、#實(shí)現(xiàn)了更加有效、穩(wěn)定、跨語言的異常處理機(jī)制,包括throw,try…catch和try…finally。</p><p>  在架構(gòu)設(shè)計(jì)上采用單一功能分層架構(gòu),整個(gè)架構(gòu)分為界面層、業(yè)務(wù)邏輯層、若干中間數(shù)據(jù)處理層和數(shù)據(jù)連接層,這樣使得每個(gè)模塊功能單一,降低了模塊的規(guī)模,增強(qiáng)了系統(tǒng)的功能內(nèi)聚。使得開發(fā)過程中分工明確,職責(zé)劃分清晰,可移植性和可擴(kuò)展性好,而且簡(jiǎn)單可靠。 </p><p>  

21、2 系統(tǒng)概要設(shè)計(jì)和框架設(shè)計(jì)</p><p><b>  2.1需求介紹</b></p><p>  本系統(tǒng)針對(duì)中小企業(yè)倉(cāng)庫(kù)材料的出入庫(kù)登記和查詢統(tǒng)計(jì)等方面的實(shí)際需要,分析了企業(yè)倉(cāng)庫(kù)管理系統(tǒng)的功能,主要完成材料的出庫(kù)管理、入庫(kù)管理、賬目管理、供貨單位管理、產(chǎn)品耗材管理和一些數(shù)據(jù)匯總報(bào)表功能。并且能夠?qū)v史記錄進(jìn)行查詢、處理和匯總,最終導(dǎo)出到Excel文件生成入庫(kù)單、出庫(kù)

22、單、保管明細(xì)賬單、材料出/入庫(kù)分類匯總賬單等。如圖2-1是保管明細(xì)賬單樣例,如圖2-2是出庫(kù)單樣例,圖2-3是材料出庫(kù)分類匯總表。</p><p><b>  圖2-1</b></p><p><b>  圖2-2</b></p><p><b>  圖2-3</b></p><p

23、><b>  具體需求介紹如下:</b></p><p>  1、在向系統(tǒng)錄入信息之前,首先建立一級(jí)科目和二級(jí)科目,材料分兩級(jí)管理,一級(jí)為材料類別,二級(jí)為材料名稱及規(guī)格,例如表3-1所示:</p><p><b>  表2-1</b></p><p>  其中101 鋼材為一級(jí),1101 4mm鋼板為二級(jí),基本就是這

24、個(gè)結(jié)構(gòu),一級(jí)和二級(jí)的數(shù)量可以根據(jù)需要增加。</p><p>  2、出庫(kù)單說明:企業(yè)根據(jù)出庫(kù)單據(jù)登記材料出庫(kù),如果出庫(kù)數(shù)量大于結(jié)存數(shù)量,即結(jié)存數(shù)量出現(xiàn)負(fù)數(shù),則報(bào)警提示,則不能錄入。出庫(kù)單價(jià)等于上一行的結(jié)存單價(jià),數(shù)量乘以結(jié)存單價(jià)等于出庫(kù)金額,單價(jià)、金額顯示保留兩位小數(shù),但是運(yùn)算時(shí)單價(jià)按實(shí)際的單價(jià)計(jì)算,保證結(jié)存數(shù)量為0的時(shí)候,金額也為0。金額計(jì)算以顯示精度為準(zhǔn)。</p><p>  3、建賬:

25、就是把現(xiàn)有庫(kù)存材料的名稱規(guī)格、數(shù)量、金額等分類錄入。單價(jià)根據(jù)金額和數(shù)量自行計(jì)算,顯示時(shí)保留兩位小數(shù)。</p><p>  4、結(jié)余的計(jì)算方法:每一次入庫(kù)、出庫(kù)和建賬后,系統(tǒng)將自行計(jì)算結(jié)余,結(jié)存欄(***公司保管明細(xì)賬)的單價(jià)根據(jù)當(dāng)前的金額和數(shù)量自行計(jì)算。</p><p>  5、保管帳(***公司保管明細(xì)賬):的行數(shù)、列寬、行高、打印頁邊距可以修改,如果一頁滿了自行轉(zhuǎn)入下一頁,并在最后一行

26、的摘要寫“過此頁”出入存格蘭的數(shù)量金額為本頁合計(jì)數(shù)。同時(shí)下一頁的首行摘要欄為“承前頁”,出入存各欄和前頁最末一欄一致。</p><p>  6、結(jié)賬:當(dāng)月所有出入庫(kù)單據(jù)輸入完畢后,可以結(jié)賬,結(jié)賬后各個(gè)當(dāng)月有發(fā)生額的賬戶自行合計(jì)本月的出入庫(kù)合計(jì)數(shù),12月的結(jié)賬后,累計(jì)欄下一行的摘要自動(dòng)生成:結(jié)轉(zhuǎn)下年,然后就本年度的數(shù)據(jù)就結(jié)束了,同時(shí)生成下一年度的帳,首行摘要:“上年結(jié)轉(zhuǎn)”然后把上年度的結(jié)存欄搬到新張的結(jié)存欄里。&l

27、t;/p><p><b>  2.2系統(tǒng)功能介紹</b></p><p>  針對(duì)中小企業(yè)倉(cāng)庫(kù)管理的具體需求,結(jié)合倉(cāng)庫(kù)管理的實(shí)際情況,分析出系統(tǒng)主要功能模塊及其結(jié)構(gòu)關(guān)系如圖2-4所示:</p><p><b>  圖 2-4</b></p><p>  下面詳細(xì)分析每個(gè)子模塊的功能</p>

28、<p><b>  A)添加入庫(kù)信息</b></p><p>  入庫(kù)是實(shí)現(xiàn)對(duì)材料的入庫(kù)登記,是整個(gè)數(shù)據(jù)庫(kù)的基礎(chǔ),用于記錄材料的基本信息,包括自動(dòng)生成入庫(kù)單編號(hào)和入庫(kù)日期,記錄供貨單位、供貨單號(hào)、制單人、材料類別、材料名稱、材料規(guī)格、入庫(kù)數(shù)目、總金額。入庫(kù)新材料可以創(chuàng)建新的材料名稱??筛?、刪除某個(gè)已生成的入庫(kù)單中的信息,最后將入庫(kù)信息導(dǎo)出到Excel文件處理和打印生成入庫(kù)單。&

29、lt;/p><p><b>  B)管理入庫(kù)信息</b></p><p>  可以根據(jù)入庫(kù)單編號(hào)、供貨單位、供貨單號(hào)、入庫(kù)日期中任意的查詢條件組合查詢歷史入庫(kù)單信息,進(jìn)而可以更改或刪除某條入庫(kù)單的信息。</p><p>  C)全部材料入庫(kù)明細(xì)</p><p>  查詢一段時(shí)間內(nèi)全部材料入庫(kù)的匯總信息。</p>

30、<p>  D)材料入庫(kù)分類匯總表</p><p>  根據(jù)材料類別匯總一段時(shí)間內(nèi)材料入庫(kù)信息。</p><p>  E)供貨單位供貨明細(xì)</p><p>  查詢不同單位在特定時(shí)間段內(nèi)的供貨情況。</p><p><b>  F)建賬管理</b></p><p>  建賬功能將庫(kù)存的

31、初始數(shù)據(jù)存入數(shù)據(jù)庫(kù),或?yàn)閼?yīng)對(duì)某些特殊情況,需要后續(xù)補(bǔ)填某些材料的信息,此時(shí)需要通過重新建賬更新倉(cāng)庫(kù)中的材料信息。</p><p><b>  G)保管明細(xì)賬</b></p><p>  根據(jù)不同材料統(tǒng)計(jì)在特定時(shí)間段內(nèi)其出/入庫(kù)和結(jié)存信息。</p><p><b>  H)添加出庫(kù)信息</b></p><

32、p>  出庫(kù)實(shí)現(xiàn)對(duì)材料的出庫(kù)登記,自動(dòng)生成出庫(kù)單編號(hào)、出庫(kù)日期。記錄材料的領(lǐng)用班組、生產(chǎn)計(jì)劃號(hào)、產(chǎn)品名、經(jīng)領(lǐng)人、批準(zhǔn)人、制單人、出庫(kù)材料的數(shù)目以及數(shù)據(jù)金額。最終生成出庫(kù)單并打印。</p><p><b>  I)管理出庫(kù)信息</b></p><p>  可根據(jù)出庫(kù)單編號(hào)、出庫(kù)日期、生產(chǎn)計(jì)劃號(hào)、產(chǎn)品名等某些查詢條件查詢出庫(kù)單,進(jìn)而對(duì)出庫(kù)單信息進(jìn)行更改或刪除。<

33、;/p><p>  J)全部材料出庫(kù)明細(xì)</p><p>  匯總特定時(shí)間段內(nèi)的全部材料出庫(kù)信息。</p><p>  K)材料出庫(kù)分類匯總</p><p>  匯總某一天出庫(kù)的材料與生產(chǎn)的產(chǎn)品對(duì)應(yīng)信息。</p><p>  L)產(chǎn)品材料耗用匯總</p><p>  查詢?cè)谔囟〞r(shí)間段內(nèi)某產(chǎn)品的耗材信

34、息。</p><p><b>  2.3系統(tǒng)框架介紹</b></p><p>  在本系統(tǒng)中,我們?cè)O(shè)計(jì)并使用了單一功能分層架構(gòu)(如圖2-5所示)。對(duì)傳統(tǒng)的三層架構(gòu)中不適合本系統(tǒng)需求的地方進(jìn)行了取舍,并加入了我們的設(shè)計(jì)理念。單一功能分層架構(gòu)就是把整個(gè)系統(tǒng)分為界面層、業(yè)務(wù)邏輯層、若干中間數(shù)據(jù)處理層和數(shù)據(jù)鏈接層。中間的邏輯層,每一層僅實(shí)現(xiàn)一個(gè)功能。這樣就進(jìn)一步增強(qiáng)了系統(tǒng)的內(nèi)

35、聚性,使得每個(gè)模塊的功能單一,降低了模塊的規(guī)模,雖然增加了處理結(jié)構(gòu)的深度,但其規(guī)模在可控范圍之內(nèi)。在系統(tǒng)開發(fā)過程中,團(tuán)隊(duì)分工可以更加明確,每個(gè)人僅需要完成若干功能中的一個(gè)或幾個(gè)。</p><p><b>  圖 2-5</b></p><p>  3 業(yè)務(wù)邏輯層和錯(cuò)誤檢驗(yàn)層</p><p>  3.1業(yè)務(wù)邏輯層(Business Logic

36、 Layer,簡(jiǎn)稱BLL層)作用</p><p>  業(yè)務(wù)邏輯層(BLL) 主要是用來處理領(lǐng)域模型對(duì)象之間的邏輯關(guān)系,是一個(gè)系統(tǒng)中最核心的部分,是實(shí)現(xiàn)系統(tǒng)業(yè)務(wù)功能的核心邏輯層。從圖3-2我們可以看到,業(yè)務(wù)邏輯層處于表現(xiàn)層(UI層)和錯(cuò)誤檢驗(yàn)層(Error Check Layer,簡(jiǎn)稱ECL層)之間,是連接表現(xiàn)層和錯(cuò)誤檢驗(yàn)層的橋梁?,F(xiàn)在一般的稍微復(fù)雜一點(diǎn)的業(yè)務(wù)邏輯都是通過分層結(jié)構(gòu)來構(gòu)建一個(gè)應(yīng)用系統(tǒng),有些應(yīng)用中業(yè)務(wù)邏

37、輯層可能并不復(fù)雜,不用引入一些框架性的東西來提升系統(tǒng)的復(fù)雜度,但是有些業(yè)務(wù)規(guī)模較大,并且業(yè)務(wù)邏輯性較強(qiáng)時(shí),可能使用好的業(yè)務(wù)設(shè)計(jì)模式帶來的優(yōu)越性就顯而易見了。</p><p>  在我們的系統(tǒng)中,業(yè)務(wù)邏輯層只負(fù)責(zé)業(yè)務(wù)規(guī)則的處理,對(duì)于數(shù)據(jù)信息的合法性檢驗(yàn)是通過訪問錯(cuò)誤檢驗(yàn)層接口來實(shí)現(xiàn)的。這樣可以使各層的分工更加清晰、明確。</p><p>  3.2錯(cuò)誤檢驗(yàn)層(Error Check Laye

38、r,簡(jiǎn)稱ECL層)作用</p><p>  倉(cāng)庫(kù)管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),需要處理各種數(shù)據(jù)信息,業(yè)務(wù)邏輯層需要將從UI層(或DLL層)獲得的信息經(jīng)過加工處理傳遞給DLL層(或UI層)我們?cè)谶M(jìn)行系統(tǒng)架構(gòu)設(shè)計(jì)時(shí)將領(lǐng)域模型與底層數(shù)據(jù)訪問、表現(xiàn)層等分開組織,這樣可以讓系統(tǒng)結(jié)構(gòu)上清晰,并且容易降低他們之間的耦合性。這樣很多合法性檢驗(yàn)操作可以在錯(cuò)誤檢驗(yàn)層來完成,比如說用戶的角色權(quán)限驗(yàn)證,數(shù)據(jù)有效性檢驗(yàn)等一些基本

39、的業(yè)務(wù)規(guī)則,具體的行為通過訪問數(shù)據(jù)鏈路層接口來實(shí)現(xiàn)對(duì)數(shù)據(jù)信息的增、刪、改、查等操作。</p><p><b>  3.3詳細(xì)設(shè)計(jì)</b></p><p>  本系統(tǒng)的BLL層是由16個(gè)類(詳見表3-1)組成,每個(gè)類都具有一些方,這些方法調(diào)用錯(cuò)誤檢驗(yàn)層(ECL)對(duì)應(yīng)類中相應(yīng)接口(詳見表3-2)完成刪除、更新或查詢數(shù)據(jù)的功能以及處理相應(yīng)的業(yè)務(wù)邏輯。通過BLL層實(shí)現(xiàn)字段級(jí)和

40、業(yè)務(wù)邏輯。</p><p><b>  表3-1</b></p><p><b>  表3-2</b></p><p>  下面以RukuxinxiBll類和RukuxinxiEcl類為例說明業(yè)務(wù)邏輯層和錯(cuò)誤檢驗(yàn)層的設(shè)計(jì)和交互處理過程,RukuxinxiBll類共有九個(gè)方法見表3-3,這些方法分別調(diào)用RukuxinxiEc

41、l類中相應(yīng)方法(見表3-4)實(shí)現(xiàn)具體功能。</p><p><b>  表3-3</b></p><p><b>  表3-4</b></p><p>  3.4錯(cuò)誤檢驗(yàn)層完整性約束(Validation)</p><p>  錯(cuò)誤檢驗(yàn)層對(duì)數(shù)據(jù)合法性的檢驗(yàn)主要是完整性約束檢驗(yàn),完整性約束是對(duì)業(yè)務(wù)領(lǐng)域

42、中的數(shù)據(jù)、規(guī)則的強(qiáng)制性規(guī)定與約束,這種約束是系統(tǒng)正常運(yùn)轉(zhuǎn)的保證。如用戶的登錄權(quán)限、登錄的用戶名不能為空,登錄密碼的長(zhǎng)度在6-20個(gè)字符以內(nèi)。材料的類別、名稱、規(guī)格、制單人、領(lǐng)用班組、經(jīng)領(lǐng)人、生產(chǎn)計(jì)劃號(hào)等的有效長(zhǎng)度。此外本系統(tǒng)中還采用正則表達(dá)式的驗(yàn)證方式來檢驗(yàn)輸入數(shù)據(jù)是否符合要求,以避免不符合要求的數(shù)據(jù)輸入影響數(shù)據(jù)訪問層的工作。下面結(jié)合具體代碼實(shí)例說明錯(cuò)誤檢驗(yàn)層對(duì)完整性約束的具體實(shí)現(xiàn)過程。</p><p>  1)

43、檢驗(yàn)入庫(kù)/出庫(kù)金額的合法性即金額是否為浮點(diǎn)型或整數(shù)類型,根據(jù)正則表達(dá)式的語法和匹配規(guī)則設(shè)計(jì)的匹配式為^(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9][1-9]*[0-9]*))$</p><p>  在系統(tǒng)中的具體實(shí)現(xiàn)方法如下:</p><p>  public static bool moneyCheck

44、(String money)</p><p><b>  { </b></p><p>  Regex reg=new Regex("^(</p><p>  ([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9][1-9]*[0-9]*))$");&

45、lt;/p><p>  return reg.IsMatch(money);</p><p><b>  }</b></p><p>  2)在修改密碼的功能中,如圖3-1所示</p><p><b>  圖3-1</b></p><p>  首先調(diào)用passwordCheck(

46、)方法分別檢驗(yàn)輸入的新密碼和重復(fù)新密碼是否符合規(guī)定的密碼格式,再用newpwd1.Equals(newpwd2) 方法檢驗(yàn)兩次輸入的新密碼是否一致并做出相應(yīng)提示。具體代碼實(shí)現(xiàn)如下: </p><p>  public int isSame(String newpwd1, String newpwd2)</p><p><b>  {</b><

47、;/p><p><b>  int flag;</b></p><p>  flag = Check.passwordCheck(newpwd1);</p><p>  if (flag == 0)</p><p><b>  {</b></p><p><b>  r

48、eturn 0;</b></p><p><b>  }</b></p><p>  flag = Check.passwordCheck(newpwd2);</p><p>  if (flag == 0)</p><p><b>  {</b></p><p>

49、;<b>  return 0;</b></p><p><b>  }</b></p><p>  if (newpwd1.Equals(newpwd2) == false)// 檢驗(yàn)兩次輸入是否一致</p><p><b>  {</b></p><p>  Message

50、Box.Show("兩次輸入的新密碼不一致!");</p><p><b>  return 0;</b></p><p><b>  }</b></p><p><b>  return 1;</b></p><p><b>  }</b&

51、gt;</p><p><b>  4 用戶體驗(yàn)設(shè)計(jì)</b></p><p>  4.1用戶體驗(yàn)設(shè)計(jì)原則</p><p>  用戶體驗(yàn)設(shè)計(jì)是基于人機(jī)界面設(shè)計(jì)理論的,一個(gè)合理的人機(jī)界面會(huì)給用戶帶來良好的用戶體驗(yàn)效果。一旦建立起用戶界面的原型,就必須對(duì)它進(jìn)行評(píng)估,以確定其是否滿足用戶的需求。對(duì)于交互式系統(tǒng),用戶體驗(yàn)設(shè)計(jì)和數(shù)據(jù)設(shè)計(jì)、體系結(jié)構(gòu)設(shè)計(jì)及過

52、程設(shè)計(jì)一樣重要。</p><p>  用戶體驗(yàn)的設(shè)計(jì)質(zhì)量,直接影響用戶對(duì)軟件產(chǎn)品的評(píng)價(jià),從而影響軟件產(chǎn)品的競(jìng)爭(zhēng)力和壽命,例如出錯(cuò)信息和警告信息,它們是出現(xiàn)問題時(shí)交互式系統(tǒng)給出的“壞消息” 。出錯(cuò)信息設(shè)計(jì)的不好,將向用戶提供無用的甚至誤導(dǎo)的信息,反而會(huì)加重用戶的挫敗感。因此必須對(duì)用戶體驗(yàn)設(shè)計(jì)給與足夠的重視。</p><p>  用戶體驗(yàn)設(shè)計(jì)的原則是:</p><p>

53、  A)用戶界面適合于軟件的功能</p><p><b>  B)容易理解;</b></p><p><b>  C)風(fēng)格一致;</b></p><p><b>  D)及時(shí)反饋信息;</b></p><p><b>  E)出錯(cuò)處理;</b></p

54、><p><b>  F)操作方便。</b></p><p><b>  G)個(gè)性化</b></p><p>  針對(duì)用戶體驗(yàn)設(shè)計(jì)原則進(jìn)行的詳細(xì)設(shè)計(jì)將在4.2節(jié)展開詳細(xì)論述。</p><p><b>  4.2詳細(xì)設(shè)計(jì)</b></p><p>  4.2.1

55、主窗體設(shè)計(jì)</p><p>  本系統(tǒng)的主窗體如圖4-1所示,用戶界面素雅莊重,適合本軟件的特點(diǎn),將系統(tǒng)功能分類組合,例如將入庫(kù)相關(guān)操作用一個(gè)GroupBox顯示,處理相關(guān)操作用另一個(gè)GroupBox顯示,這樣用戶使用時(shí)可以方便定位到相關(guān)操作,帶給用戶很好的體驗(yàn)效果。</p><p><b>  圖 4-1</b></p><p>  4.2.

56、2添加入庫(kù)信息窗體設(shè)計(jì)</p><p>  添加入庫(kù)信息窗體如圖4-2所示,由于入庫(kù)操作填寫信息較多,為避免同一供貨單位多次入庫(kù)重復(fù)填寫入庫(kù)基本信息,我們?cè)O(shè)計(jì)單獨(dú)的添加入庫(kù)基本信息窗體如圖4-3,點(diǎn)擊“下一步”后會(huì)將這些基本信息映射到圖4-2的添加入庫(kù)信息窗體上方,如需修改基本信息,可點(diǎn)擊“修改基本信息”按鈕進(jìn)行修改,這樣可以方便用戶操作。入庫(kù)材料的信息可根據(jù)具體情況選擇已有信息或點(diǎn)擊“新建**”按鈕添加。<

57、;/p><p><b>  圖 4-2</b></p><p><b>  圖 4-3</b></p><p>  4.2.3反饋信息和錯(cuò)誤信息處理</p><p>  1)對(duì)空信息的檢測(cè),如果有效信息沒有填寫完整,系統(tǒng)將會(huì)給出提示信息“請(qǐng)?zhí)钊霐?shù)目” ,如圖4-4。</p><p&g

58、t;<b>  圖 4-4</b></p><p>  2)修改基本信息未確認(rèn),系統(tǒng)將會(huì)給出“請(qǐng)點(diǎn)擊確定按鈕,以確認(rèn)對(duì)基本信息的更改”的提示。</p><p><b>  圖4-5</b></p><p>  3)對(duì)于數(shù)目合法性檢驗(yàn),針對(duì)用戶輸入的不同錯(cuò)誤內(nèi)容,會(huì)給用戶做出不同的有針對(duì)性的錯(cuò)誤提示信息,以便用戶快速定位做出

59、更改。例如如果數(shù)目輸入了負(fù)數(shù),系統(tǒng)給出如圖4-6“對(duì)不起,數(shù)目不能為負(fù)值”的提示;如果輸入中用戶誤把o當(dāng)作0輸入,系統(tǒng)會(huì)給出如圖4-7“對(duì)不起,數(shù)目存在無效字符”的提示;如果用戶輸入的入庫(kù)數(shù)目為0,系統(tǒng)會(huì)給出如圖4-8“對(duì)不起,入庫(kù)數(shù)目不能為0”的提示。</p><p><b>  圖4-6</b></p><p><b>  圖4-7</b>&

60、lt;/p><p><b>  圖4-8</b></p><p>  4)對(duì)更改的數(shù)據(jù)有效性依然要進(jìn)行合法性檢驗(yàn),以免用戶進(jìn)行錯(cuò)誤的更改,一旦用戶更改的信息非法,系統(tǒng)將會(huì)給出類似圖4-9“輸入無效,請(qǐng)輸入合法數(shù)值”的提示。</p><p><b>  圖4-9</b></p><p>  5)如果出庫(kù)的

61、數(shù)目小于庫(kù)存中該種材料的數(shù)量,阻止了交易的進(jìn)行,證明此次交易失敗,也要給用戶回饋圖4-10“庫(kù)存不足,無法出庫(kù)”的信息。</p><p><b>  圖4-10</b></p><p>  6)如果查詢條件的開始日期大于結(jié)束日期,查詢條件不成立,給用戶提示做出修改,系統(tǒng)將給出圖4-11“開始日期應(yīng)先于結(jié)束日期”的提示。</p><p><

62、b>  圖4-11</b></p><p>  7)如果無查詢結(jié)果,用戶很可能認(rèn)為系統(tǒng)還在處理過程中,要給出用戶提示,避免用戶盲等,此時(shí)系統(tǒng)會(huì)給出圖4-12“根據(jù)您當(dāng)前的查詢條件,無匹配的信息”的提示。</p><p><b>  圖4-12</b></p><p><b>  5 結(jié)束語</b><

63、;/p><p>  本系統(tǒng)是一個(gè)面向中小型貨品企業(yè),具有一定實(shí)用性的數(shù)據(jù)庫(kù)信息管理系統(tǒng)。從倉(cāng)庫(kù)管理者的角度分析和研究了倉(cāng)庫(kù)管理發(fā)展的現(xiàn)狀和面臨的問題,針對(duì)這些問題結(jié)合現(xiàn)代科技發(fā)展的最新成果,構(gòu)思規(guī)劃了一個(gè)管理模式,提高了企業(yè)運(yùn)營(yíng)的效率,減輕了倉(cāng)庫(kù)管理者的工作負(fù)擔(dān)。</p><p>  它主要完成對(duì)材料倉(cāng)庫(kù)的一系列管理,包括入庫(kù)、出庫(kù)、各種材料的入庫(kù)、出庫(kù)匯總信息等的管理。在查詢方面,系統(tǒng)實(shí)現(xiàn)了

64、根據(jù)不同的查詢條件進(jìn)行查詢。在入庫(kù)、出庫(kù)兩者之間建立了良好的鏈接關(guān)系,某一部分的修改均會(huì)自動(dòng)觸發(fā)系統(tǒng)對(duì)其相關(guān)的部分進(jìn)行連鎖修改。</p><p>  但系統(tǒng)中仍存在諸多的缺陷,比如缺乏安全的身份驗(yàn)證機(jī)制,未能防止SQL諸如,數(shù)據(jù)庫(kù)中的重要信息未進(jìn)行加密處理。</p><p><b>  6 參考文獻(xiàn)</b></p><p>  [1]殷俊芳等

65、.基于C/S模式的網(wǎng)路信息管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].微計(jì)算機(jī)信息2005.7-3: 27-29</p><p>  [2]張立等.C#范例寶典. 電子工業(yè)出版社,2006:86-162</p><p>  [3]張玉平.深入淺出C#編程.中國(guó)科學(xué)技術(shù)出版社,2004.6</p><p>  [4] Joey George.Dinesh Batra Joseph Va

66、lacich,Jeffrey Hoffer 面向?qū)ο笙到y(tǒng)分析與設(shè)計(jì) 清華大學(xué)出版社, 2009(2)</p><p>  [5]鄭人杰,殷人昆,陶永雷.實(shí)用軟件工程.北京:清華大學(xué)出版社,2001</p><p>  [6]賀平.編著.《軟件測(cè)試教程》.電子工業(yè)出版社,2005.6</p><p>  [7]吳長(zhǎng)安.軟件測(cè)試的若干問題.《軟件測(cè)試雜志》.2007.4

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論