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

下載本文檔

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

文檔簡介

1、<p>  計算機原棉驗配輔助系統(tǒng)</p><p><b>  摘要:</b></p><p>  本文主要通過對計算機原棉驗配輔助系統(tǒng)的開發(fā),以其開發(fā)過程為背景論述了管理信息系統(tǒng)的概念,結(jié)構(gòu),以及系統(tǒng)開發(fā)的基本原理和方法。該論文大體分為管理信息系統(tǒng)綜述,管理信息系統(tǒng)的開發(fā)方法,系統(tǒng)分析,系統(tǒng)設(shè)計,系統(tǒng)實施,系統(tǒng)維護和系統(tǒng)評價等若干章節(jié)。本文從業(yè)務(wù)的角度對系

2、統(tǒng)工程進行了論述,對該系統(tǒng)的開發(fā)過程也做了完整的介紹。本文在對棉紡織企業(yè)內(nèi)原料檢驗部門的業(yè)務(wù)系統(tǒng)分析了解基礎(chǔ)上開發(fā)計算機原棉驗配輔助系統(tǒng)。本軟件實現(xiàn)了原料信息管理,原棉驗配部門業(yè)務(wù)信息處理的計算機化。論文最后是對目前管理信息系統(tǒng)的現(xiàn)狀和發(fā)展前景作了分析和展望。</p><p>  在系統(tǒng)開發(fā)中采用快速應(yīng)用程序開發(fā)環(huán)境Borland C++ Builder 5.0/6.0,后臺采用Microsoft SQL Ser

3、ver 2000作為數(shù)據(jù)庫管理平臺。</p><p>  關(guān)鍵詞:MIS 原棉驗配  決策支持  分類排隊表 問題域 配棉成份隊</p><p>  計算機原棉驗配輔助系統(tǒng)</p><p>  第一章 管理信息系統(tǒng)綜述----------------------------------------------------------------3</p&g

4、t;<p>  1.1管理信息系統(tǒng)的概念----------------------------------------------------------------3</p><p>  1.2管理信息系統(tǒng)的發(fā)展----------------------------------------------------------------3</p><p>  1.3管理

5、信息系統(tǒng)對企業(yè)的影響與意義----------------------------------------------3</p><p>  第二章 管理信息系統(tǒng)的開發(fā)方法-------------------------------------------------------3</p><p>  2.1系統(tǒng)建設(shè)方法概述-------------------------------

6、------------------------------------3</p><p>  2.2開發(fā)方法的選擇----------------------------------------------------------------------4</p><p>  第三章 計算機原棉驗配輔助系統(tǒng)分析--------------------------------------

7、-----------4</p><p>  3.1系統(tǒng)調(diào)查和需求分析--------------------------------------------------------------------4</p><p>  3.2系統(tǒng)的可行性研究-------------------------------------------------------------------5&l

8、t;/p><p>  3.3 OOA系統(tǒng)模型---------------------------------------------------------------------------6</p><p>  3.3.1系統(tǒng)邊界及活動者----------------------------------------------------------------6</p>

9、<p>  3.3.2 通過考查系統(tǒng)的問題域及系統(tǒng)責(zé)任--------------------------------------------6</p><p>  3.3.3 系統(tǒng)的use case-------------------------------------------------------------------8</p><p>  3.3.4數(shù)據(jù)庫管理

10、系統(tǒng)的選擇------------------------------------------------------9</p><p>  3.4系統(tǒng)數(shù)據(jù)流圖-------------------------------------------------------------------------9</p><p>  第四章 計算機原棉驗配輔助系統(tǒng)系統(tǒng)設(shè)計-----------

11、-------------------------------10</p><p>  4.1數(shù)據(jù)管理部件的設(shè)計---------------------------------------------------------------10</p><p>  4.2問題域部件的設(shè)計-----------------------------------------------------

12、-------------11</p><p>  4.3數(shù)據(jù)庫設(shè)計---------------------------------------------------------------------------17</p><p>  4.4用戶界面設(shè)計-----------------------------------------------------------------

13、-------20</p><p>  4.5輸入設(shè)計------------------------------------------------------------------------------24</p><p>  第五章 系統(tǒng)實施---------------------------------------------------------------------

14、------24</p><p>  第六章 系統(tǒng)維護與系統(tǒng)評價------------------------------------------------------------47</p><p>  第七章 開發(fā)總結(jié)與對管理信息系統(tǒng)的展望------------------------------------------48</p><p>  7.1

15、開發(fā)總結(jié)------------------------------------------------------------------------------48</p><p>  7.2對管理信息系統(tǒng)的展望------------------------------------------------------------48</p><p>  參考文獻-----------

16、----------------------------------------------------------------------------50</p><p><b>  第一章概述</b></p><p>  1.1管理信息系統(tǒng)的概念</p><p>  所謂MIS(管理信息系統(tǒng)---Management Information

17、 System)系統(tǒng),是一個由人、計算機及其他外圍設(shè)備等組成的能進行信息的收集、傳遞、存貯、加工、維護和使用的系統(tǒng)。它是一門新興的科學(xué),通過對企業(yè)擁有的人力、物力、財力、設(shè)備、技術(shù)等資源的調(diào)節(jié)器查了解,建立正確的數(shù)據(jù),加工處理并編制成各種信息資料入時提供給管理人員,以便進行正確的決策,不斷提高企業(yè)的管理水平和經(jīng)濟效益。目前,企業(yè)的計算機網(wǎng)絡(luò)已成為企業(yè)進行技術(shù)改造及提高企業(yè)管理水平的重要手段。隨我國與世界信息高速公路的接軌,企業(yè)通進計算機

18、網(wǎng)絡(luò)獲得信息必將為企業(yè)帶來巨大的經(jīng)濟效益和社會效益,企業(yè)的辦公及管理都將朝著高效、快速、無紙化的方向發(fā)展。MIS系統(tǒng)通常用于系統(tǒng)決策,例如,可以利用MIS系統(tǒng)找出目前迫切需要解決的問題,并將信息及時反饋給上層管理人員,使他們了當前工作發(fā)展的進程或不足。換句話說,MIS系統(tǒng)的最終目的是使管理人員及時了解公司現(xiàn)狀,把握將來的發(fā)展路徑。</p><p>  1.2管理信息系統(tǒng)的發(fā)展</p><p&g

19、t;  管理信息系統(tǒng)共有四個發(fā)展階段:</p><p>  第一階段:是事務(wù)處理階段,主要是提高文書、統(tǒng)計、報表等事務(wù)處理的工作效率,在生活工作中就是統(tǒng)計、計算、制表、文字處理。</p><p>  第二階段:系統(tǒng)管理。主要是提高管理信息處理的綜合性,系統(tǒng)性,及時性與準確性。用到了數(shù)據(jù)技術(shù),數(shù)據(jù)通信與網(wǎng)絡(luò)。</p><p>  第三階段:決策支持。主要是支持管理者的

20、決策活動以提高管理決策的有效性。用到的技術(shù)有人機對話,模型管理,人工智能。</p><p>  第四階段:綜合服務(wù)。管理信息系統(tǒng)的目標轉(zhuǎn)為實現(xiàn)信息的集成管理,提高管理者的素質(zhì)與管理決策水平。用到的技術(shù)有INTERNET、多媒體、人工智能等技術(shù)。</p><p>  1.3管理信息系統(tǒng)對企業(yè)的影響與意義</p><p>  隨著日益發(fā)展的社會環(huán)境,單位和個人對信息的收

21、集和處理等方面提出了更多的要求。管理信息系統(tǒng)的發(fā)展促進了企業(yè)的發(fā)展,面企業(yè)也帶動了信息系統(tǒng)的發(fā)展。管理信息系統(tǒng)可以輔助領(lǐng)導(dǎo)決策,而企業(yè)的各級管理層決策,特別是企業(yè)的戰(zhàn)略決策,更為重要,直接決定著企業(yè)的生存發(fā)展和興旺。</p><p>  個人的生存和發(fā)展離不開信息,如何更好的收集、存儲、加工、利用信息,具有舉足輕重的作用。尢其是對擁有大量分散且極其重要信息的企業(yè)而言。管理信息系統(tǒng)是現(xiàn)代化企業(yè)實現(xiàn)其管理職能的必不可

22、少的工具。</p><p>  第二章管理信息系統(tǒng)的開發(fā)方法</p><p><b>  2.1建設(shè)方法概述</b></p><p>  2.1.1 結(jié)構(gòu)化方法</p><p>  廣義地說任何系統(tǒng)都有其產(chǎn)生、發(fā)展、成熟或更新的過程,稱為系統(tǒng)的生命周期。在系統(tǒng)開發(fā)過程中采用結(jié)構(gòu)化方法優(yōu)點是使管理信息系統(tǒng)的建設(shè)形成一套比較

23、嚴格的標準、規(guī)范、方法和技術(shù),系統(tǒng)建的組織管理和實施有章可循,成功率與效率等得到提高。結(jié)構(gòu)化開發(fā)方法為軟件開發(fā)技術(shù)的發(fā)展在理論和實踐上奠定了基礎(chǔ)和積集了經(jīng)驗,在應(yīng)對軟件危機中發(fā)揮了其應(yīng)有的作用。但其不足也是很顯著的:</p><p>  系統(tǒng)的整個開發(fā)工作是勞動密集型的。</p><p>  工時長,難以適應(yīng)環(huán)境的急劇變化。</p><p>  不能對需求變更及時響

24、應(yīng)。</p><p><b>  2.1.2原型法</b></p><p>  原型法是傳統(tǒng)方法和用戶開發(fā)相結(jié)合的方法。其基本思路是用戶與系統(tǒng)分析、設(shè)計人員合作,通過迅速建模并提供用戶使用的原型來激發(fā)和了解用戶的信息需求。一般多用于用戶的需求模糊而不易確定的場合。在對系統(tǒng)的需求最后決定后,再用傳統(tǒng)的方法建設(shè)系統(tǒng)。</p><p>  2.1.3

25、面向?qū)ο蠓椒?lt;/p><p>  面向?qū)ο笙到y(tǒng)開發(fā)方法的基本思想是將客觀界抽象為若干相互聯(lián)系的對象,根據(jù)對象和方法的特性研制出一套軟件工具,使之能夠映射為計算機軟件系統(tǒng)結(jié)構(gòu)模型和進程,從而實現(xiàn)信息系統(tǒng)開發(fā)。其最大特點是符合人類認識事物的思維習(xí)慣,分析和設(shè)計之間可以無縫銜接。所開發(fā)的系統(tǒng)維護方便,系統(tǒng)開發(fā)的成果便于重用等等</p><p>  2.2開發(fā)方法的選擇</p>&l

26、t;p>  本系統(tǒng)采用的開發(fā)方法面向?qū)ο笙到y(tǒng)開發(fā)方法為主,以結(jié)構(gòu)化生命周期系統(tǒng)開發(fā)方法作為輔助。因為:</p><p>  基于開發(fā)技術(shù)的考慮:目前在系統(tǒng)開發(fā)中,面向?qū)ο箝_發(fā)技術(shù)已經(jīng)成熟并被廣泛應(yīng)用,因此在系統(tǒng)開發(fā)方法選擇時應(yīng)盡量選擇當前成熟正在使用的方法,以為其它工作打好技術(shù)基礎(chǔ);而不是選擇過時、低效的技術(shù)方法。另外面向?qū)ο蠓椒ㄝ^適合開發(fā)管理信息系統(tǒng)方面的軟件系統(tǒng)。</p><p>

27、; ?。?) 基于可維護性的分析:以前使用的老系統(tǒng)存在主要問題就是功能過于死板和可維護性較差,所以在新系統(tǒng)開發(fā)時必須足夠重視這一點。比較各種開發(fā)方法的利弊,面向?qū)ο箝_發(fā)方法可維護性、可擴充性、可理解理性都很好;否則雖然可能會節(jié)省一定的初期開發(fā)成本,但很可能會造成后期維護難度加大</p><p>  第三章計算機原棉驗配輔助系統(tǒng)分析</p><p>  3.1系統(tǒng)調(diào)查和需求分析</p&

28、gt;<p>  隨著我國經(jīng)濟的快速工業(yè)化,棉紡織業(yè)在我國得到迅猛發(fā)展,產(chǎn)能達到世界的一半以上,在棉紡織業(yè)在大規(guī)模發(fā)展的同時,在企業(yè)內(nèi)部乃至行業(yè)內(nèi),各種生產(chǎn)要素、各管理部門的管理協(xié)調(diào)難度也在不斷加大,需要改進和加強企業(yè)之間以及企業(yè)內(nèi)部各部分之間的聯(lián)系,提高信息處理的速度,因而有必要大力加強信息資源的建設(shè),深化信息資源的管理及應(yīng)用,把棉紡織企業(yè)各種生產(chǎn)要素高效的整合在一齊,以使其創(chuàng)造更高經(jīng)濟、社會效益,從而使整個國民經(jīng)濟更快

29、更穩(wěn)的發(fā)展。棉紡織廠原棉的驗配工作是車間具體生產(chǎn)開始的前提,做好這個工作可以使原料得到合理使用,滿足紗線質(zhì)量要求;保持生產(chǎn)和成紗質(zhì)量相對穩(wěn)定;節(jié)約用棉,降低成本。使原棉驗配工作計算機化在提高工作人員的業(yè)務(wù)信息的處理速度,優(yōu)化配棉方案,降低配棉成本,及時向上級主管部門提供原棉的使用情況等方面具有重要作用。</p><p> ?。?)當前系統(tǒng)存在的問題</p><p>  目前棉紡企業(yè)中在原棉

30、檢驗和配棉工作中主要以手工方式進行,手工制作配棉方案,計算量大,方案質(zhì)量低;原棉信息管理手工查詢,統(tǒng)計,查詢效率低,計算量大而速度慢,雖然也采用計算機來存儲數(shù)據(jù),但數(shù)據(jù)多以word或Execl文檔方式存在,或存儲在檢驗儀器存儲器中,結(jié)構(gòu)化形式低,并不以支持業(yè)務(wù)的方式出現(xiàn),計算機處理信息的潛能大量閑置。</p><p>  原棉檢配工作需要經(jīng)常與供應(yīng)、原棉庫、紡部車間及直接主管技術(shù)部門進行業(yè)務(wù)聯(lián)系,有大量的信息的傳

31、遞,而現(xiàn)在許多棉紡織企業(yè),還以人工傳遞為主,如果是企業(yè)規(guī)模小,地理分布范圍不大,效率上還是可接受的,如果企業(yè)規(guī)模很大,地理分布范圍十幾公里以上(如魏橋創(chuàng)業(yè)集團),由于企業(yè)追求資源集約管理,棉檢部門要與很多個倉庫、車間發(fā)生業(yè)務(wù)往來,這時人工傳遞數(shù)據(jù)則不能滿足信息及時性的要求。</p><p><b> ?。?)需求分析</b></p><p>  棉花檢驗室是原棉驗配業(yè)

32、務(wù)實施單位,后文中簡稱棉檢室。其業(yè)務(wù)具本執(zhí)行程序:</p><p>  第一步,按照國家原棉檢驗標準完成原棉各項物理指標的檢驗。這一步不是系統(tǒng)要完成的功能。目前原棉檢驗工作使用的儀器多是單項指標儀器,手工操作,手工統(tǒng)計指標,而集成一體化的多指標檢驗儀器因價格昂貴,一般很少在棉紡織企業(yè)中應(yīng)用,因此數(shù)據(jù)采集錄取入以手工方式為主,隨著自動化程度較高檢驗儀器的推廣使用,在后序版本增加計算機自動數(shù)據(jù)采集的支持。這一環(huán)節(jié)的信

33、息需求主要是原棉的質(zhì)量信息。</p><p>  第二步,依據(jù)原棉質(zhì)量對庫存原棉分類排隊,根據(jù)成紗質(zhì)量要求,分別從各隊中選擇適當比例的原棉棉批形成配棉成份表。</p><p>  棉檢室在完成其職能時,需要分別與以下部門進業(yè)務(wù)聯(lián)系:</p><p><b>  供應(yīng)部門</b></p><p>  聯(lián)系涉及的信息主要有從

34、供應(yīng)部獲得原棉的到貨趨勢,包括供應(yīng)商、產(chǎn)地、數(shù)量、日期、價格等,向供部門提供原棉需求計劃,包括所需原棉的數(shù)量、質(zhì)量、供給的日期。</p><p><b>  原棉庫</b></p><p>  主要從原棉庫了解原棉的庫存情況,包括存放垛位、剩余數(shù)量等。</p><p><b>  紡部車間</b></p>&

35、lt;p>  向紡部車間發(fā)送配棉成份變動表、配棉成份分類排隊表。</p><p>  與上級技術(shù)主管部門進行信息聯(lián)系。</p><p>  報送配棉成份變動表、配棉成份分類排隊表,由技術(shù)主管領(lǐng)導(dǎo)審批;接收技術(shù)部門的工作指導(dǎo),這是隨機信息。</p><p>  計算機原棉驗配系統(tǒng)的目標是:采用計算來原棉物理質(zhì)量信息,用計算機模擬人工配棉,完成配棉綜合物理指標的計

36、算或計算機自動處理的配棉方案選擇。</p><p>  3.2系統(tǒng)的可行性研究</p><p>  從經(jīng)濟上講,手工制作配棉方案,不僅效率低,而且所選擇的方案優(yōu)異性差,不能找到充分發(fā)揮原料質(zhì)量性能的合理配比,而為了滿足質(zhì)量要求,而采用庫存中較高質(zhì)量的原棉或起報整體質(zhì)量水平較高原棉需求計劃,最終導(dǎo)致質(zhì)量的浪費,成體的提高,由于這項工作的長期性,其對經(jīng)濟效益影響是很顯著的。另外,現(xiàn)在棉檢部門大

37、多配有電腦,甚至內(nèi)部網(wǎng)絡(luò),人員操作有一定的使用經(jīng)驗,除軟件的開發(fā)管理外,不需要有太大的資金投入。</p><p>  從企業(yè)規(guī)模上來看,現(xiàn)在的棉紡織企業(yè)規(guī)模都較大,動輒就百萬紗錠的規(guī)模,過去那種七八萬紗錠的小企業(yè)在行業(yè)所占比重越來越少,而企業(yè)分布的地理范圍也越來越大,這種情況,原棉驗配工作要么是集中,要么是分散進行,后者管理分散、占用人力多、不夠統(tǒng)一,顯然不如前者集中統(tǒng)一管理好處多,所以為了在大地理范圍內(nèi)高效率處

38、理信息,就有必要使用計算機輔助的原棉驗配系統(tǒng)。</p><p>  從技術(shù)上來看,原棉驗配系統(tǒng)需要完成的功能有:1、原棉檢物理指標信息管理2、配棉方案的制作、選擇。第一項是常規(guī)的數(shù)據(jù)管理方面的開發(fā),其難度較低。第二項是多目標的線性規(guī)劃問題,現(xiàn)已有多種解決這類問題的方法,如線性規(guī)劃法、遺傳變異算法、計算機輔助試算法。難度適中。</p><p>  3.3 OOA系統(tǒng)模型</p>

39、<p>  3.3.1系統(tǒng)邊界及活動者</p><p>  系統(tǒng)的活者是:配棉管理員。如圖一</p><p>  3.3.2 通過考查系統(tǒng)的問題域及系統(tǒng)責(zé)任,發(fā)現(xiàn)如下對象:</p><p>  1.配棉管理員:負責(zé)原棉數(shù)據(jù)錄入、修改,制作原棉分類排隊表和原棉成份變動。</p><p>  2.原棉分類排隊表:按月制作的原棉使用工

40、藝表。</p><p>  3.原棉成份變動通知單:指定車間每天某一品種需用原料的成份及比例。</p><p>  4.同類型原料成份集合:原料類型相同的原料批集合</p><p>  5.不同類型原料成份集合:由多個不同類型的原料成份集合組成。</p><p>  6.原棉物理指標管理:完成原料物理指標的錄入、修改等。</p>

41、<p>  系統(tǒng)中的基本類如圖二所示:</p><p>  系統(tǒng)的基本模型如圖三所示:</p><p>  3.3.3 系統(tǒng)的use case</p><p>  配棉管理員·原棉成份變動(表一)</p><p>  配棉管理員·原棉分類排隊表(表二)</p><p>  配棉管理員&#

42、183;各品種原料使用記錄(表三)</p><p>  配棉管理員·原棉物理指標管理(表四)</p><p>  3.3.4數(shù)據(jù)庫管理系統(tǒng)的選擇</p><p>  在實現(xiàn)系統(tǒng)數(shù)據(jù)功能時,選擇microsoft sql server 2000 作為數(shù)據(jù)庫平臺。它是一個關(guān)系數(shù)據(jù)管理系統(tǒng),其即有大型數(shù)據(jù)庫管理系統(tǒng)的強勁功能,又有小型數(shù)據(jù)使用靈活方便、系統(tǒng)占有空

43、間較小等優(yōu)點,多在臺式機或微型機網(wǎng)絡(luò)中使用。</p><p><b>  3.4系統(tǒng)數(shù)據(jù)流圖</b></p><p>  原料數(shù)據(jù)={供應(yīng)商+產(chǎn)地+單價+重量+包數(shù)+結(jié)算方式+到貨日期+n{指標}+垛位+使用狀態(tài)|}</p><p>  成份變動通知單={日期+品種+n{產(chǎn)地+等級+每排用包數(shù)+比例}}</p><p>

44、  原棉需用通知單={日期+品種+n{產(chǎn)地+等級+每排用包數(shù)+比例}+排數(shù)}</p><p>  排隊表={配期+品種+n{日期+n{產(chǎn)地+等級+每排用包數(shù)+比例}+n{平均指標}}}</p><p>  原料領(lǐng)取日記={日期+品種+n{產(chǎn)地+等級+每排用包數(shù)+比例}+排數(shù)}</p><p>  配棉成份={日期+品種+n{產(chǎn)地+等級+每排用包數(shù)+比例}}</

45、p><p>  原料供應(yīng)單數(shù)據(jù)={供應(yīng)商+產(chǎn)地+單價+重量+包數(shù)+結(jié)算方式+到貨日期}</p><p>  原料物理指標={n{指標}}</p><p>  第四章計算機原棉驗配輔助系統(tǒng)系統(tǒng)設(shè)計</p><p>  4.1數(shù)據(jù)管理部件的設(shè)計</p><p>  為了保執(zhí)系統(tǒng)分析基本模型的相對獨立性因而在分析階段未引入數(shù)據(jù)管

46、理類?,F(xiàn)從兩個方面加以分析設(shè)計。</p><p>  1.系統(tǒng)功能實現(xiàn)時對低層數(shù)據(jù)的訪問功能。</p><p>  2.用戶應(yīng)用軟件的整體功能而言,軟件需要提供的基本數(shù)據(jù)管理功能。其功能需求如下:</p><p>  ﹙1﹚生產(chǎn)產(chǎn)品的品種數(shù)據(jù)錄入、更新,以及到原料多對多關(guān)系創(chuàng)建</p><p>  ﹙2﹚原料供應(yīng)信息元數(shù)據(jù)錄入</p&g

47、t;<p>  ﹙3﹚各原料類物理指標元數(shù)據(jù)錄入</p><p>  由于這兩大項功能可由C++Builder VCL控件庫中提供的組件功能簡單的組合完成,所以直接將其定義為一數(shù)據(jù)模塊如下所示:</p><p>  類TSession、Tdatabase、TTable來自于C++Builder5.0/6.0 自身的VCL庫。</p><p>  4.2

48、問題域部件的設(shè)計</p><p>  問題域部件是主要完成業(yè)務(wù)的處理功能,在實現(xiàn)時為了保持類對象的模塊獨性,盡量少的讓其它類實例直接訪問類實例的內(nèi)部數(shù)據(jù),降低模塊的耦合度,在同類原料批集合和不同類原料批集合類設(shè)計中引入事件機制,類名為ChengFenEvent,前兩個類由ChengFenEvent類繼承需要的事件。其結(jié)構(gòu)圖如圖四。由于該機制的實現(xiàn)</p><p>  是語言相關(guān)的回調(diào)函數(shù)方

49、式,其類定義如下:</p><p>  同類原料批集合的詳細定義及狀態(tài)轉(zhuǎn)換圖如表六和圖五所示。</p><p><b>  表六</b></p><p>  不同類型原料成份集合的詳細定義及狀態(tài)轉(zhuǎn)換圖,如表七、圖六所示</p><p><b>  4.3數(shù)據(jù)庫設(shè)計</b></p>&l

50、t;p>  原棉驗配輔助系統(tǒng)在實現(xiàn)時需要大量數(shù)據(jù),既有固定信息又用流動信息,特別是原棉物理指標等都需要保存在數(shù)據(jù)庫中。數(shù)居庫結(jié)構(gòu)的好壞直接對應(yīng)用系統(tǒng)的效率以及實現(xiàn)的效果和效率產(chǎn)生影響。好的數(shù)據(jù)結(jié)構(gòu)設(shè)計會減少數(shù)據(jù)庫的存儲量,數(shù)據(jù)的完整性和一致性較好,系統(tǒng)有較快的響應(yīng)速度,可簡化基于數(shù)據(jù)庫的應(yīng)用程序的實現(xiàn)。在實踐中經(jīng)常會發(fā)現(xiàn)因數(shù)據(jù)庫設(shè)計不當,在實現(xiàn)時才發(fā)現(xiàn)其不足,從而因起返工這一情況,這不僅延誤了工程的進度,同時也浪費了資源提高了成本

51、,而系統(tǒng)的質(zhì)量卻不高?;谝陨显驗榱颂岣呦到y(tǒng)的適應(yīng)能力,有必要以數(shù)據(jù)庫為基礎(chǔ),在其設(shè)計上做好準備。 </p><p>  根據(jù)系統(tǒng)功能設(shè)計要求及功能模塊劃分,創(chuàng)建一個數(shù)據(jù)庫文件。在數(shù)據(jù)庫中建立數(shù)個表,對于系統(tǒng)中固定信息存儲在其結(jié)構(gòu)是穩(wěn)定的表中,而對于常變化或存在較大變化可能的數(shù)據(jù),則將這些表的結(jié)構(gòu)存放在元數(shù)據(jù)表中,在系統(tǒng)使用時,再根據(jù)元數(shù)據(jù)動態(tài)生成確定數(shù)據(jù)表,以求增強系統(tǒng)的適應(yīng)性。當然在系統(tǒng)的初始使用時需要根據(jù)

52、具體的應(yīng)用環(huán)境進行初始化。</p><p>  以下是系統(tǒng)中涉及到的實體、屬性及其關(guān)系:</p><p>  品種{標識符,名稱}</p><p>  原料類型{標識符,名稱,指標表名(=X),供應(yīng)表名(=Y),指標元數(shù)據(jù)表名(=MetaTableB)}</p><p>  質(zhì)量指標元數(shù)據(jù)(MetaTableB){標識符,名稱,標簽名稱,數(shù)據(jù)

53、寬度,數(shù)據(jù)類型,小數(shù)位數(shù)}, </p><p>  供應(yīng)元數(shù)據(jù)(MetaTableA{標識符,名稱,標簽名稱,數(shù)據(jù)類型,數(shù)據(jù)寬度,小數(shù)位數(shù)}</p><p>  原料質(zhì)量指標(X){標識符,{物理指標}*}</p><p>  原料供應(yīng)單(Y){標識符,{供應(yīng)數(shù)據(jù)項}*}</p><p>  配棉成份(標識符,日期,原料類型標識符,品種標

54、識符)</p><p>  成份隊(標識符,成份變動表標識符,質(zhì)量指標標識符,包數(shù))</p><p>  原料存放(垛位,使用狀態(tài))</p><p>  適紡(品種標識符,原料類標識符,日期)</p><p>  日用原料記錄(配棉成份標識符,排數(shù),日期)</p><p><b>  4.4用戶界面設(shè)計<

55、;/b></p><p>  在界面設(shè)計中,本系統(tǒng)盡量采用標準的圖形界面操作元素,主界面是多文檔窗體,如圖七;為了減少用戶熟悉新系統(tǒng)界面的時間,在界面的整體結(jié)構(gòu)上盡量采用用戶所熟悉的工作環(huán)境中的表格表形,如圖八;操作動作使用菜單、快捷按鈕、快捷方式。界面設(shè)計主要依據(jù)Use---Case進行。</p><p>  主界面:TmainForm,繼承自VCL庫中的類TForm 其外觀如圖七

56、</p><p>  MID類型的主界面TmainForm管理多個子界面分別是:配棉分類排隊表(TpeiMianFenLeiPaiDuiForm),配棉成份變動(TChengFenBianDongForm),數(shù)據(jù)管理窗體(TdataForm),原棉物理指標操作界面(TYuanMianTaiZhangForm),與主窗體的關(guān)系如下圖所示</p><p>  主工具欄 <

57、;/p><p>  配棉成份變動窗體打開時出現(xiàn)的子工具欄</p><p>  配棉成份排隊表窗體打開出現(xiàn)的子工具欄原棉物理指標窗體打開時出現(xiàn)的子工具欄</p><p><b>  圖七</b></p><p><b>  圖八</b></p><p><b>  數(shù)據(jù)管

58、理窗體</b></p><p>  原料物理指標管理窗體</p><p><b>  4.5輸入設(shè)計</b></p><p>  4.5.1 與人工錄入有關(guān)的設(shè)備</p><p><b>  鍵盤:標準鍵盤</b></p><p>  鼠標:兩鍵,三鍵,三鍵小口或

59、USB鼠標</p><p>  漢字輸入法:五筆輸入法,拼音輸入法,智能輸入法等。</p><p>  4.5.2 輸入有效性措施</p><p>  1.對于相同或相似數(shù)據(jù)的多次輸入,用不易出錯的鼠標操作代替易出錯的鍵盤操作。如用下拉列表框、列表框、單選按鈕、復(fù)選按鈕選擇等;</p><p>  2.在輸入數(shù)據(jù)時,提供數(shù)據(jù)檢查機制。如驗查數(shù)

60、據(jù)是否符合某一集合范圍,特定的數(shù)據(jù)之間是否符合特定的用戶邏輯。</p><p><b>  第五章:系統(tǒng)實施</b></p><p>  系統(tǒng)實施是管理信息系統(tǒng)在開發(fā)過程中的最后一個階段,所謂系統(tǒng)實施指的是系統(tǒng)工程設(shè)計的結(jié)果在計算機上實現(xiàn)。主要活動是編碼,系統(tǒng)測試,系統(tǒng)安裝等。</p><p>  目前的程序設(shè)計方法主要有結(jié)構(gòu)化方法,原型法,面

61、向?qū)ο蠓ā1鞠到y(tǒng)編程語言是C++Builder 5.0/6.0,根據(jù)系統(tǒng)的需求和開發(fā)環(huán)境的功能,在用戶界面設(shè)計上采用原型法,在總體業(yè)務(wù)邏輯實現(xiàn)上采用面向?qū)ο蠓椒ǎ瑢τ趶?fù)雜的方法在其內(nèi)部采用結(jié)構(gòu)化方法。</p><p>  程序的測試采用的策略和步驟是:根據(jù)用戶需求設(shè)計用戶界面,以此做為各個主功能模塊測試的驅(qū)動模塊,各個規(guī)模較小的模塊,則可根據(jù)測試要求另行設(shè)計驅(qū)動模塊;在類內(nèi)部、各個方法內(nèi)或由多個實例組成的中間層次

62、類參照相應(yīng)的狀態(tài)轉(zhuǎn)換圖進行白盒測試,而各個主功能模塊間則根據(jù)USE—CASE圖進行黑盒測試。</p><p><b>  代碼如下:</b></p><p>  chengfenbase類的源程序代碼如下:</p><p>  //---------------------------------------------------------

63、------------------</p><p>  #ifndef ChengFenBaseH</p><p>  #define ChengFenBaseH</p><p>  #define BiaoShiCo 30</p><p>  #define ZhiBiaoCo 50</p><p>  #incl

64、ude <dstring.h></p><p>  #include <sysvari.h></p><p>  #include "chfEvent.h"</p><p>  #include <Grids.hpp></p><p>  #include <printers.hp

65、p></p><p>  #define JiHua false</p><p>  #define History ture;</p><p>  //#include "YuanLiaoType.h"</p><p>  //--------------------------------------------

66、-------------------------------</p><p>  namespace chfb</p><p><b>  {</b></p><p><b>  //鉤子類型定義</b></p><p>  class chengfenbase :public ChengFenE

67、vent</p><p><b>  {</b></p><p><b>  public:</b></p><p>  __fastcall chengfenbase(TComponent* Owner);</p><p>  // 以下兩方法為類的初始化方法,由對象的外部對象來調(diào)用</p&

68、gt;<p>  // void __fastcall SetPinZhongDate(AnsiString BiaoShi,TDate de);</p><p>  void __fastcall CalculateDuiZhiBiaoAvg(); //計算指標的平均值</p><p>  //用掛環(huán)和掛鉤來使類降低對外部數(shù)據(jù)呈現(xiàn)控件的依賴程度</p>&

69、lt;p>  void __fastcall ReadChengFenDuiFromBase(AnsiString ZhiBiaoBiaoShi);</p><p>  int __fastcall AddDui(AnsiString TypeBiaoShi,AnsiString ZhiBiaoBiaoShi);</p><p>  void __fastcall DeleteDui

70、(AnsiString BiaoShi);</p><p>  int __fastcall GetDuiCount();</p><p>  void __fastcall SetTotalBiLi(float totalbili );</p><p>  void __fastcall Clear();</p><p>  void _

71、_fastcall OutputDuiSet(); //由類的對象外部來調(diào)用,將類的對象含有數(shù)據(jù)輸出</p><p>  void __fastcall WriteChengFenDuisToBase();</p><p>  int __fastcall AdjustDuiBaoShu(AnsiString BiaoShi, int delta);</p><p>

72、;  void __fastcall CalculateDuiUsingDays();</p><p>  void __fastcall DuiUsingDays(AnsiString BiaoShi);</p><p>  AnsiString __fastcall BiaoShiByPosition(int Index);</p><p>  void __f

73、astcall Init();</p><p>  int __fastcall PositionOfBiaoShi(AnsiString BiaoShi);</p><p>  void __fastcall ReadZhiBiaoFromBase(AnsiString BSh);</p><p>  // void __fastcall GetZhiBiaoHe

74、ader(AnsiString* ZhiBiaoNames);</p><p>  void __fastcall PrinteToPrinter(AnsiString FileName);</p><p>  //以下兩函數(shù)配合工作來完成為計算天數(shù)所需用的每天用排數(shù)。 </p><p>  void __fastcall SetHistoryOrJiHua(b

75、ool val);</p><p>  void __fastcall SetAvgDuiBao(int baoshu);</p><p>  void __fastcall SetBiaoShi(AnsiString PinZhong,AnsiString TypeBiaoShi, AnsiString SameTypeBiaoShi);</p><p>  do

76、uble __fastcall GetWeight();</p><p><b>  private:</b></p><p>  bool HasModified;</p><p>  AnsiString TypeBiaoShi;</p><p>  AnsiString SameTypeBiaoShi;</p

77、><p>  AnsiString TableName;</p><p>  AnsiString GongYingTable;</p><p>  AnsiString ZhiBiaoTable;</p><p>  void __fastcall SetHasnotAvg(bool value);</p><p>  

78、bool __fastcall GetHasnotAvg();</p><p>  void __fastcall AfterSaveChange(bool flag);</p><p>  void __fastcall AfterReadChengFen();</p><p>  protected:</p><p>  int Biao

79、ShiCount;</p><p>  AnsiString BiaoShi[BiaoShiCo];</p><p>  AnsiString PiCi[BiaoShiCo];</p><p>  AnsiString DuiName[BiaoShiCo];</p><p>  float TotalBiLi;</p><

80、p>  float DuiBiLi[BiaoShiCo];</p><p>  float ZhiBiaoSet[BiaoShiCo][ZhiBiaoCo];</p><p>  float ZhiBiaoAvg[ZhiBiaoCo];</p><p>  AnsiString PinZhong;</p><p>  // TDate

81、RiQi;</p><p>  int UsingDays[BiaoShiCo];</p><p>  int AvgWeightPerBale[BiaoShiCo];</p><p>  AnsiString DuoWei[BiaoShiCo];</p><p>  int ZhiBiaoCount;</p><p>

82、;  int KuCunZhiBiaoCount;</p><p>  AnsiString ZhiBiaoName[ZhiBiaoCo];</p><p>  AnsiString KuCunZhiBiaoName[ZhiBiaoCo];</p><p>  AnsiString KuCunZhiBiaoChineseName[ZhiBiaoCo];</p&

83、gt;<p>  AnsiString ZhiBiaoChineseName[ZhiBiaoCo];</p><p>  int DuiRestBaoShu[BiaoShiCo];</p><p>  float DuiBaoShu[BiaoShiCo]; //每隊的包數(shù)</p><p>  int PinJi[BiaoShiCo];</p&

84、gt;<p>  float DuiPaiShuAvgPerDay[BiaoShiCo];</p><p>  bool HistoryOrJiHua; //指明是根據(jù)生產(chǎn)原料需求日記設(shè)置每天的排數(shù),還是依據(jù)生產(chǎn)計劃</p><p>  // AnsiString ChengFenTableHeader[6];</p><p>  //計算各隊在成份

85、中的比例。</p><p>  void __fastcall CalculateDuiBiLi();</p><p>  //該方法指識是否對本類中的成份數(shù)據(jù)編緝過</p><p>  void __fastcall SetHasModified(bool falsetrue);</p><p>  //下以方法提供本類與下層數(shù)據(jù)庫之間的接

86、口。</p><p>  void __fastcall ReadRestBaoShuFromBase();</p><p>  void __fastcall ReadZhiBiaoNameAndTitleFromBase();//該函數(shù)在本類初始化時首先調(diào)用</p><p>  void __fastcall ReadRestBaoShuFromBase(Ans

87、iString BSh);</p><p>  void __fastcall ReadDuiBaoAvgWeightFromBase(AnsiString BSh);</p><p>  // void __fastcall ReadChengFenTableHeader();</p><p>  void __fastcall ReadZhiBiaoFromBa

88、se();</p><p>  void __fastcall ReadChengFenDuiFromBase();</p><p>  void __fastcall ReadDuiBaoAvgWeightFromBase();</p><p>  //以下函數(shù)有待于研究</p><p>  bool __fastcall ReadDuiP

89、aiShuPerDay(AnsiString BSh, AnsiString PinZhong);</p><p>  void __fastcall ReadDuiPaiShuPerDay();</p><p>  __published:</p><p>  //以下定義鉤子 OnRespondUsingDaysChange</p><p&g

90、t;<b>  };</b></p><p><b>  };</b></p><p>  using namespace chfb;</p><p><b>  #endif</b></p><p>  #include <vcl.h></p>&l

91、t;p>  #pragma hdrstop</p><p>  #include "MainDataModule.h"</p><p>  #include "ChengFenBase.h"</p><p>  #pragma package(smart_init)</p><p>  //---

92、------------------------------------------------------------------------</p><p>  __fastcall chengfenbase::chengfenbase(TComponent* Owner):ChengFenEvent(Owner)</p><p><b>  {</b></

93、p><p>  HasModified=false;</p><p>  HistoryOrJiHua=false;</p><p><b>  Clear();</b></p><p>  TotalBiLi=1;</p><p><b>  }</b></p>

94、<p>  void __fastcall chengfenbase::ReadChengFenDuiFromBase()</p><p><b>  {</b></p><p>  TQuery* qu,*qu2;</p><p><b>  int i=0;</b></p><p> 

95、 qu=CustomerData->ZongQuery;</p><p>  qu2=CustomerData->ZongQuery2;</p><p>  qu->SQL->Clear();</p><p>  qu->SQL->Add("select chfenbiaoshi,ylizhibiaoshi,baoshu

96、,bili from chengfendata where chfenbiaoshi=:chfbsh");</p><p>  qu->ParamByName("chfbsh")->AsString=SameTypeBiaoShi;</p><p>  qu->Open();</p><p>  while(!qu-

97、>IsEmpty()&&!qu->Eof)</p><p><b>  {</b></p><p>  BiaoShi[i]=qu->FieldByName("ylizhibiaoshi")->AsString;</p><p>  DuiBiLi[i]=qu->FieldByN

98、ame("bili")->AsInteger;</p><p>  DuiBaoShu[i]=qu->FieldByName("baoshu")->AsInteger;</p><p>  qu2->SQL->Clear();</p><p>  qu2->SQL->Add("

99、;select duowei from baseTable where baseTable.biaoshi="+GongYingTable+".biaoshi"+" and ");</p><p>  qu2->SQL->Add(GongYingTable+".biaoshi="+TableName+".GongYingB

100、iaoShi and "+TableName+".biaoshi="+BiaoShi[i]);</p><p>  qu2->Prepare();</p><p>  qu2->Open();</p><p>  if(!qu2->IsEmpty())</p><p>  DuoWei[i]=q

101、u2->FieldByName("duowei")->AsString;</p><p>  qu2->Close();</p><p>  qu2->SQL->Clear();</p><p>  qu2->SQL->Add("select gongfang,chandi,pici from&

102、quot;+GongYingTable+".biaoshi="+TableName+".GongYingBiaoShi and ");</p><p>  qu2->SQL->Add(TableName+".biaoshi="+BiaoShi[i]);</p><p>  qu2->Prepare();</

103、p><p>  qu2->Open();</p><p>  if(!qu2->IsEmpty())</p><p>  DuiName[i]=qu2->FieldByName("gongfang")->AsString+qu2->FieldByName("chandi")->AsString+

104、qu2->FieldByName("pici")->AsString;</p><p>  qu2->Close();</p><p>  qu->Next();</p><p><b>  i++;</b></p><p><b>  }</b><

105、/p><p>  if(!qu->IsEmpty())</p><p><b>  {</b></p><p>  BiaoShiCount=qu->RecordCount;</p><p>  AfterReadChengFen();</p><p><b>  }</b

106、></p><p>  qu->Close();</p><p><b>  }</b></p><p>  void __fastcall chengfenbase::CalculateDuiZhiBiaoAvg()</p><p><b>  {</b></p><

107、;p>  //在CalculateDuiBiLi()函數(shù)后,使用此函數(shù)</p><p>  float temp,totalBaoShu;</p><p>  totalBaoShu=0;</p><p>  for(int i=0;i<BiaoShiCount;i++)</p><p>  totalBaoShu+=DuiBao

108、Shu[i];</p><p>  for(int i=0;i<ZhiBiaoCount;i++)</p><p><b>  {</b></p><p><b>  temp=0;</b></p><p>  for(int j=0;j<BiaoShiCount;j++)</p&

109、gt;<p>  temp+=ZhiBiaoSet[j][i]*DuiBaoShu[j];</p><p>  if(totalBaoShu!=0)</p><p>  ZhiBiaoAvg[i]=temp/totalBaoShu;</p><p><b>  else</b></p><p>  ZhiB

110、iaoAvg[i]=NULL; </p><p><b>  }</b></p><p>  if(OnCalculateDuiZhiBiaoAvg!=NULL)</p><p>  OnCalculateDuiZhiBiaoAvg(ZhiBiaoAvg,ZhiBiaoCount,this->Tag);</p><p

111、><b>  }</b></p><p>  //----------------------------------------------------</p><p>  int __fastcall chengfenbase::AddDui(AnsiString TypeBiaoShi,AnsiString ZhiBiaoBiaoShi)</p>

112、;<p><b>  {</b></p><p>  TQuery* qu;</p><p>  int po=PositionOfBiaoShi(ZhiBiaoBiaoShi);</p><p>  if(po==-1)</p><p><b>  {</b></p>

113、<p>  BiaoShi[BiaoShiCount]=ZhiBiaoBiaoShi;</p><p>  BiaoShiCount++;</p><p>  po=PositionOfBiaoShi(ZhiBiaoBiaoShi);</p><p>  DuiBaoShu[po]=1;</p><p>  ReadChengFen

114、DuiFromBase(ZhiBiaoBiaoShi);</p><p>  ReadDuiBaoAvgWeightFromBase(ZhiBiaoBiaoShi);</p><p>  ReadRestBaoShuFromBase(ZhiBiaoBiaoShi);</p><p>  ReadZhiBiaoFromBase(ZhiBiaoBiaoShi);<

115、/p><p>  if(!ReadDuiPaiShuPerDay(ZhiBiaoBiaoShi,PinZhong))</p><p><b>  {</b></p><p>  float avgpai=0;</p><p>  for(int i=0;i<BiaoShiCount-1;i++)</p>

116、<p>  if(DuiBaoShu[i]!=0)</p><p>  avgpai+=DuiPaiShuAvgPerDay[i];</p><p>  avgpai=avgpai/(BiaoShiCount-1);</p><p>  DuiPaiShuAvgPerDay[po]=avgpai;</p><p><b>

117、  }</b></p><p>  float TotalW=0;</p><p>  for(int i=0;i<BiaoShiCount;i++)</p><p>  TotalW+=DuiBaoShu[i]*AvgWeightPerBale[i];</p><p>  if(OnWeightChange)</p&

118、gt;<p>  OnWeightChange(TotalW);</p><p>  CalculateDuiBiLi();</p><p>  CalculateDuiZhiBiaoAvg();</p><p>  DuiUsingDays(ZhiBiaoBiaoShi);</p><p>  SetHasModified(t

119、rue);</p><p>  OutputDuiSet();</p><p><b>  }</b></p><p>  return po;</p><p><b>  }</b></p><p>  void __fastcall chengfenbase::Delet

溫馨提示

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

評論

0/150

提交評論