精品欧美无遮挡一区二区三区在线观看,中文字幕一区二区日韩欧美,久久久久国色αv免费观看,亚洲熟女乱综合一区二区三区

        ? 首頁 ? 百科知識 ?信息系統(tǒng)的設(shè)計

        信息系統(tǒng)的設(shè)計

        時間:2023-12-17 百科知識 版權(quán)反饋
        【摘要】:子系統(tǒng)劃分就是將實際對象按其管理要求、環(huán)境條件和開發(fā)工作的方便程度,將其劃分為若干個相互獨立的子系統(tǒng)。一個內(nèi)部聯(lián)系緊密的子系統(tǒng)對外部的聯(lián)系往往比較少,所以劃分時應(yīng)將聯(lián)系較多者列入子系統(tǒng)內(nèi)部。于是,整個系統(tǒng)中的程序結(jié)構(gòu)紊亂,數(shù)據(jù)冗余,不但給軟件編制工作帶來很大的困難,而且系統(tǒng)的工作效率也會大大降低。

        第一節(jié) 信息系統(tǒng)的設(shè)計

        系統(tǒng)設(shè)計階段的主要內(nèi)容包括新總體結(jié)構(gòu)設(shè)計、代碼設(shè)計、數(shù)據(jù)庫設(shè)計、輸入設(shè)計、輸出設(shè)計等等。

        一、系統(tǒng)的總體結(jié)構(gòu)設(shè)計

        系統(tǒng)的總體結(jié)構(gòu)設(shè)計是要根據(jù)系統(tǒng)分析的實際情況來對新系統(tǒng)形式和可利用的資源進(jìn)行大致設(shè)計。它是一種宏觀的、總體上的設(shè)計和規(guī)劃。

        1.子系統(tǒng)劃分

        子系統(tǒng)劃分就是將實際對象按其管理要求、環(huán)境條件和開發(fā)工作的方便程度,將其劃分為若干個相互獨立的子系統(tǒng)。但是應(yīng)當(dāng)注意,目前對于衛(wèi)生組織的劃分還沒有一套為世人所公認(rèn)的經(jīng)典化方法。在實際系統(tǒng)開發(fā)過程中,除了一些成型的方法以外,還有大量的藝術(shù)成分在內(nèi),其中就包含了個人長期積累的工作經(jīng)驗、個人的習(xí)慣、對問題的不同理解等。盡管如此,人們在長期的實踐中還是摸索出了一套子系統(tǒng)的劃分方法。這些方法雖然不太成熟,但已為廣大開發(fā)人員在實際開發(fā)時所采用了。

        (1)子系統(tǒng)劃分的原則:在系統(tǒng)劃分的過程中,為了便于日后系統(tǒng)開發(fā)和系統(tǒng)運行,劃分時應(yīng)遵循以下幾個原則。

        ●子系統(tǒng)要具有相對獨立性。子系統(tǒng)的劃分必須使得子系統(tǒng)內(nèi)部功能、信息等各方面的凝聚性較好,實際中,總希望每個子系統(tǒng)或模塊相對獨立,盡量減少各種不必要的數(shù)據(jù)調(diào)用和控制聯(lián)系,并將聯(lián)系比較密切、功能近似的模塊相對集中,這樣對于以后的搜索、調(diào)試、維護(hù)都有好處。

        ●要使子系統(tǒng)之間數(shù)據(jù)的依賴性盡量小。子系統(tǒng)之間的聯(lián)系要盡量減少,這樣接口會比較簡單、明確。一個內(nèi)部聯(lián)系緊密的子系統(tǒng)對外部的聯(lián)系往往比較少,所以劃分時應(yīng)將聯(lián)系較多者列入子系統(tǒng)內(nèi)部。

        ●子系統(tǒng)劃分的結(jié)果應(yīng)使數(shù)據(jù)冗余較小。如果忽視這個問題,則可能會使相關(guān)功能的數(shù)據(jù)分布到各個不同的子系統(tǒng)中,需要調(diào)用大量的原始數(shù)據(jù),需要保存和傳遞大量的中間結(jié)果,需要重復(fù)進(jìn)行大量的計算工作。于是,整個系統(tǒng)中的程序結(jié)構(gòu)紊亂,數(shù)據(jù)冗余,不但給軟件編制工作帶來很大的困難,而且系統(tǒng)的工作效率也會大大降低。

        ●子系統(tǒng)的設(shè)置應(yīng)考慮今后管理發(fā)展的需要。為了適應(yīng)現(xiàn)代管理的發(fā)展,在新系統(tǒng)的研制過程中應(yīng)設(shè)法調(diào)整或改造老系統(tǒng)的缺陷。同時利用一定的預(yù)測技術(shù)考慮今后業(yè)務(wù)和管理發(fā)展的要求。只有這樣才能使系統(tǒng)實現(xiàn)后,不但能夠更準(zhǔn)確、更合理地完成目前系統(tǒng)的業(yè)務(wù),而且還可以支持更高層次、更深一步的管理決策。

        ●子系統(tǒng)的劃分應(yīng)便于系統(tǒng)分階段地實現(xiàn)。信息系統(tǒng)的開發(fā)是一項投資大、工期長的工程,它的實現(xiàn)一般都要分期分步進(jìn)行,所以子系統(tǒng)的劃分應(yīng)能適應(yīng)這種分階段的實施。

        ●子系統(tǒng)的劃分應(yīng)考慮到各類資源的充分利用。一個適當(dāng)?shù)南到y(tǒng)劃分應(yīng)該既考慮有利于各種設(shè)備資源在開發(fā)過程中的安全使用,又考慮各類信息資源的合理分布和充分使用。例如對于網(wǎng)絡(luò)資源就需要認(rèn)真考慮,減少系統(tǒng)在某一時間段內(nèi)對網(wǎng)絡(luò)資源的過分依賴,同樣,系統(tǒng)劃分也需要平均地使用輸入、輸出、通訊等設(shè)備,以減輕這些設(shè)備的使用壓力。

        (2)子系統(tǒng)劃分的方法。目前系統(tǒng)劃分的方法主要有:按功能劃分、按業(yè)務(wù)處理順序劃分、按數(shù)據(jù)擬合程度劃分、按業(yè)務(wù)處理過程劃分、按業(yè)務(wù)處理的時間關(guān)系劃分和按業(yè)務(wù)展開的地域環(huán)境條件劃分。這幾種劃分方法的比較如表9 1所示。

        表9 1 各種系統(tǒng)劃分方法比較

        (續(xù)表)

        這里的指標(biāo)是針對一般情況而言的。在實際應(yīng)用中,仍應(yīng)以具體系統(tǒng)分析的結(jié)果確定,不能絕對地去評價某個劃分方法的好壞。

        2.網(wǎng)絡(luò)的設(shè)計

        網(wǎng)絡(luò)設(shè)計就是如何將初步規(guī)劃中的各個子系統(tǒng)在企業(yè)組織內(nèi)部用局域網(wǎng)連接起來,以及今后系統(tǒng)如何與外部系統(tǒng)相連接的問題。實際上,信息系統(tǒng)開發(fā)過程中的網(wǎng)絡(luò)設(shè)計不是去開發(fā)一個計算機網(wǎng)絡(luò),而是根據(jù)實際情況的需要,利用已有的網(wǎng)絡(luò)技術(shù)來規(guī)劃、配置和選用一個網(wǎng)絡(luò)產(chǎn)品。

        將現(xiàn)代通訊技術(shù)與計算機數(shù)據(jù)處理技術(shù)相連接形成網(wǎng)絡(luò)信息系統(tǒng),這是當(dāng)今信息系統(tǒng)發(fā)展的一個重要標(biāo)志。它對于最大限度地發(fā)揮信息系統(tǒng)的綜合優(yōu)勢和資源共享都非常重要。

        在確定了系統(tǒng)的劃分后,就可以考慮各子系統(tǒng)的設(shè)備(主要是計算機和網(wǎng)絡(luò)設(shè)備)配置問題,以及如何將這些分布的設(shè)備和任務(wù)、功能、數(shù)據(jù)資源等集中統(tǒng)一管理的問題。因此在網(wǎng)絡(luò)設(shè)計時,就要確定網(wǎng)絡(luò)和設(shè)備配置時應(yīng)考慮的問題和指標(biāo)的選擇。

        (1)設(shè)備選配的依據(jù)。確定網(wǎng)絡(luò)和計算機設(shè)備配置的原則最重要的,一是應(yīng)完全根據(jù)系統(tǒng)調(diào)查和系統(tǒng)分析的結(jié)果來考慮硬件配置和系統(tǒng)結(jié)構(gòu),二是一定要考慮到實現(xiàn)上的可能性和技術(shù)上的可靠性。因此,確定設(shè)備配置時要考慮的有:

        ●根據(jù)實際業(yè)務(wù)需要考慮這個管理崗位是否要虧本計算機設(shè)備,如打印機、多媒體設(shè)備等。

        ●根據(jù)實際業(yè)務(wù)性質(zhì)決定這個管理崗位是否需要配置終端設(shè)備,還是配備一臺具有處理功能的計算機。

        ●根據(jù)現(xiàn)場辦公室的物理位置分析和數(shù)據(jù)通訊要求決定是否需要與網(wǎng)絡(luò)連接及連接的方式。

        ●根據(jù)調(diào)查估計的數(shù)據(jù)容量確定網(wǎng)絡(luò)服務(wù)器或主存儲器的最低下限容量,一般是以估計數(shù)據(jù)總?cè)萘康?~5倍作為網(wǎng)絡(luò)服務(wù)器的下限配置容量。

        ●根據(jù)實際業(yè)務(wù)要求和用戶對軟件工具的掌握程度來確定新系統(tǒng)擬采用的軟件工具。

        ●根據(jù)實際業(yè)務(wù)要求確定計算機及外部設(shè)備的性能指標(biāo)。

        (2)網(wǎng)絡(luò)選擇的指標(biāo):設(shè)計網(wǎng)絡(luò)需要考慮多個技術(shù)指標(biāo)。

        ●網(wǎng)絡(luò)的類型。這是建立模擬網(wǎng)還是建立數(shù)字網(wǎng)的問題。所謂模擬網(wǎng)就是網(wǎng)絡(luò)上傳輸?shù)氖悄M信號,電話網(wǎng)就是模擬網(wǎng)絡(luò)。電話網(wǎng)是目前最普及的網(wǎng)絡(luò)。所謂數(shù)字網(wǎng)就是網(wǎng)絡(luò)上傳輸?shù)氖菙?shù)字信號。數(shù)字信號是非連續(xù)的離散的信號。計算機中的信號就是數(shù)字信號。如果在模擬網(wǎng)上傳輸數(shù)字信號,就需要在通訊的兩端加裝調(diào)制解調(diào)器MODEM。利用電話網(wǎng)傳輸計算機信號,其好處是方便、快捷、容易、投資少;缺點是沒有系統(tǒng)管理程序,數(shù)據(jù)傳輸?shù)乃俣扔邢?。雖然建立數(shù)字網(wǎng)來傳輸計算機信號可以做到傳輸速度快、傳輸容量大,但其建網(wǎng)的投資要高于建立電話網(wǎng)的,而且工程也比較大,但可以有系統(tǒng)管理程序,還可以實現(xiàn)分布式數(shù)據(jù)庫管理系統(tǒng),使用方便,可靠性高。

        ●網(wǎng)絡(luò)的屬性指標(biāo)。主要有以下3項指標(biāo):

        網(wǎng)絡(luò)所使用的數(shù)據(jù)通訊頻帶一般有基帶和寬帶兩種,如果是考慮多媒體信息傳輸時或其他用途時,則要考慮選用寬帶網(wǎng);

        網(wǎng)絡(luò)的傳輸范圍一般有局域網(wǎng)和廣域網(wǎng)兩種,對于組織內(nèi)部的信息系統(tǒng)而言,只要考慮本系統(tǒng)選用的局域網(wǎng)以及如何通過廣域網(wǎng)與其他系統(tǒng)相連的方式即可;

        網(wǎng)絡(luò)用途,一般有專用網(wǎng)和公共網(wǎng)兩種。

        ●傳輸介質(zhì)和速率指標(biāo)。網(wǎng)絡(luò)數(shù)據(jù)的傳輸速度有相當(dāng)一部分是由傳輸介質(zhì)決定的。目前常用的有同軸電纜、雙絞線、光纖等幾種。

        ●網(wǎng)絡(luò)結(jié)構(gòu)。這是指網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu),即網(wǎng)絡(luò)的物理連接方式。目前有總線型、環(huán)型、星型、樹型、網(wǎng)型等幾種。

        ●網(wǎng)絡(luò)的協(xié)議。協(xié)議是指網(wǎng)絡(luò)內(nèi)部數(shù)據(jù)傳遞關(guān)系的一種事先約定。每一個類型的網(wǎng)絡(luò)都有嚴(yán)格的協(xié)議,網(wǎng)絡(luò)上傳遞數(shù)據(jù)的每一步操作都必須嚴(yán)格地按協(xié)議操作。不同網(wǎng)絡(luò)之間的數(shù)據(jù)傳輸必須通過一個轉(zhuǎn)換系統(tǒng)來溝通兩個不同協(xié)議之間的約定。

        ●網(wǎng)絡(luò)管理軟件。網(wǎng)絡(luò)管理軟件是決定網(wǎng)絡(luò)功能好壞的關(guān)鍵,一般網(wǎng)絡(luò)管理軟件包括:分布式數(shù)據(jù)庫系統(tǒng)、網(wǎng)絡(luò)運行管理系統(tǒng)、文件管理系統(tǒng)、網(wǎng)絡(luò)協(xié)議以及網(wǎng)絡(luò)安全保密系統(tǒng)等等。

        ●網(wǎng)絡(luò)的訪問規(guī)則。網(wǎng)絡(luò)的訪問規(guī)則是指網(wǎng)絡(luò)控制器如何詢問網(wǎng)絡(luò)上各工作站或節(jié)點有無通訊請求的一種形式。常用的有輪詢、令牌、總線傳送、載波偵聽、多點送取、碰撞檢測方法等等。

        ●通訊方式。這是指網(wǎng)絡(luò)內(nèi)數(shù)據(jù)傳輸?shù)姆绞健3S玫挠袕V播方式、點對點方式、通過服務(wù)器傳送方式等。

        ●網(wǎng)絡(luò)配件指標(biāo)。這里主要考慮通訊的接口、網(wǎng)關(guān)、集線器、路由器等等。

        (3)軟硬件選擇指標(biāo):在滿足實際業(yè)務(wù)需要的前提下,只要資金許可,就應(yīng)優(yōu)先購置技術(shù)成熟、性能優(yōu)越、售后服務(wù)可靠的產(chǎn)品。

        在硬件方面,要考慮技術(shù)是否成熟、維修是否方便、新老設(shè)備是否兼容、日后擴充是否方便等等。當(dāng)然不能忽視了主機的結(jié)構(gòu)、處理速度、性價比、內(nèi)存容量、I/O通道數(shù)、系統(tǒng)的讀寫/存儲周期等指標(biāo)。

        在軟件方面,主要考慮以下幾個問題:

        ●操作系統(tǒng)。

        ●數(shù)據(jù)庫系統(tǒng)。

        ●程序設(shè)計語言,第四代程序生成語言。

        ●各種分析與測試工具。

        ●應(yīng)用系統(tǒng)開發(fā)。

        ●圖形軟件。

        ●各種應(yīng)用軟件包。

        考慮軟件指標(biāo)必須與系統(tǒng)開發(fā)所采用的戰(zhàn)略和方法結(jié)合起來。在信息系統(tǒng)開發(fā)過程中,開發(fā)方法以及相應(yīng)軟件工具的選擇對系統(tǒng)開發(fā)是否順利都是至關(guān)重要的。

        3.系統(tǒng)處理流程

        在確定了子系統(tǒng)的劃分和系統(tǒng)的設(shè)備配置之后,還必須根據(jù)系統(tǒng)分析方案大體勾畫出設(shè)計者關(guān)于每個子系統(tǒng)內(nèi)部計算機處理流程的草圖,以此作為后續(xù)設(shè)計詳細(xì)模塊調(diào)用關(guān)系、模塊處理功能以及數(shù)據(jù)和業(yè)務(wù)在新系統(tǒng)的計算機內(nèi)部處理過程的基礎(chǔ)。計算機處理流程的設(shè)計既不是對具體處理或管理分析模型細(xì)節(jié)的描述,也不是對調(diào)用關(guān)系或具體功能的描述,它只是設(shè)計者在系統(tǒng)詳細(xì)設(shè)計過程中,對信息在計算機內(nèi)部處理過程的大致想法。系統(tǒng)處理流程的設(shè)計不是固定不變的,常常會隨著后續(xù)的設(shè)計過程而不斷地調(diào)整和改變。

        二、代碼設(shè)計

        代碼就是以數(shù)字或字符(包括漢字)來代表各種實體。代碼設(shè)計就是給每個物理實體一個編號或一個標(biāo)識,如會計科目代碼、在校學(xué)生的學(xué)號等等。設(shè)計出一個好的代碼方案對于系統(tǒng)的開發(fā)工作是一件極為有利的事情。它可以使很多機器處理變得十分方便,而且還把一些現(xiàn)階段計算機很難處理的工作變成很簡單的處理。

        1.代碼設(shè)計的目的

        (1)唯一性:在現(xiàn)實世界中,有很多事物如果不加標(biāo)識,用計算機處理就會顯得十分困難。但如果能將原來不確定的實體唯一的圓心標(biāo)識,則處理就會變得相對簡單得多。這就是代碼設(shè)計的首要任務(wù)。

        (2)規(guī)范化:在滿足唯一性的前提下,要注意代碼的規(guī)范化問題。例如產(chǎn)品代碼,可以如圖9 1所示來設(shè)計。XX XX XXX XXX(3)可識別化:在現(xiàn)實生活中,有些問題內(nèi)容比較產(chǎn)產(chǎn)產(chǎn)產(chǎn)復(fù)雜,很難用一些精確的指標(biāo)來唯一識別。這時代碼品品品品的設(shè)計就肩負(fù)著幫助機器識別事物的任務(wù)。例如,效類系規(guī)序別列格號率一般是用文字描述的,且各人的描述也不盡相同,這

        圖9 1 產(chǎn)品代碼設(shè)計樣機器是無法辨識的。這時只能依靠代碼,依靠建立一整套經(jīng)濟效益的指標(biāo)體系,在此基礎(chǔ)上通過代碼來識別。

        (4)標(biāo)準(zhǔn)化:信息系統(tǒng)所用的代碼應(yīng)盡量標(biāo)準(zhǔn)化。在實際工作中,應(yīng)該盡量采用國家或行業(yè)的代碼體系標(biāo)準(zhǔn)。

        2.代碼分類的原則

        所謂代碼分類,就是將所要處理的對象要求科學(xué)地、合理地分門別類。準(zhǔn)確的分類是系統(tǒng)處理工作標(biāo)準(zhǔn)化、系列化、合理化的基礎(chǔ)和保證。

        一個良好的分類既要保證處理問題的需要,又要保證科學(xué)管理的需要。因此,分類時要遵循以下幾點。

        (1)必須保證有足夠的容量和足以包括規(guī)定范圍內(nèi)的所有對象,也包括未來的實體對象。如果容量不夠,將不便于以后的變化和擴充,隨著環(huán)境的變化這種分類很快就會失去生命力。

        (2)按屬性系統(tǒng)化。分類必須遵循一定的規(guī)律。應(yīng)當(dāng)按照處理對象的各種具體屬性系統(tǒng)地進(jìn)行。

        (3)分類要有一定的柔性。所謂柔性是指在一定情況下分類結(jié)構(gòu)對于增設(shè)或變更處理對象的可容納程度。柔性好的系統(tǒng)在一般情況下增加分類不會破壞其體系結(jié)構(gòu)。

        3.代碼的種類

        代碼就是對實體的編碼。目前常用的編碼歸納起來有下述幾種形式。

        (1)順序編碼:這是按照某種順序形式編碼。如根據(jù)先來后到的次序編碼等。這種編碼的優(yōu)點是簡單,易追加,但缺點非常明顯,就是可識別性差。

        (2)組碼編碼:這是對自特定號碼開始至另一特定號碼為止的一定對象群使用連續(xù)數(shù)字來編碼。例如,目前上海公交的號碼線路為:

        01~199,常規(guī)公交線路;

        200~299,高峰時段公交線路。

        組碼編碼的特點是能夠表示對象的分類體系,而且碼的位數(shù)少,但不太適合于計算機的處理,一般用于需要分級而位數(shù)又有限的場合。

        (3)群碼編碼:這是將代碼中的不同位來代表不同的類別。如:

        1xxx,最高位代表是材料大類,1材料;

        11xx,次高位表示材料大類下的中類,11金屬材料;

        111x,第三位表示金屬材料下的小類,111帶鋼;

        1111,第四位表示鋼材下的一群小類,1111鋼板。

        群碼編碼的特點是每位(或者是若干位)必定代表特定的一群項目,其構(gòu)成非常自然,也容易分類,容易追加,容易記憶,而且位數(shù)不多。這種編碼一般用于對分類要求比較高的場合。

        (4)實數(shù)編碼:這是把對象本身所表示的全部或部分的數(shù)字編入代碼中。例如我國居民身份證的號碼目前有15位和18位兩種。其中在18位的編碼中,從第7位到14位就是身份證持有人的出生年月日。這就是實數(shù)碼。

        實數(shù)碼編碼的特點是不需要記憶代碼的含義,代碼所表示的就是實際意義的數(shù)據(jù)。其缺點就是使用倍數(shù)較多,特別是當(dāng)實數(shù)碼的倍數(shù)不固定時,計算機處理就會比較困難。

        (5)字符編碼:這是以字符形式(如英語、拼音字母、中文等)實施對對象的編碼。

        字符編碼的特點是編碼所占的倍數(shù)比較少,而所表示的對象種類比較多,且有助于記憶。其缺點是增加了計算機進(jìn)行分類處理的難度,且校對也不容易。

        (6)混合編碼:這是以數(shù)字編碼與字符編碼相混合的一種編碼形式。混合編碼在種類管理中是比較常用的,如GB XXXX XX表示的是國家標(biāo)準(zhǔn)的某類編碼,我國的汽車牌照編碼還是中文+英語字母+數(shù)字的編碼。

        混合編碼的特點是容易記憶,容易使用,容易表述對象的系列性,其缺點是不易校對。

        4.代碼的校驗

        代碼必須校驗。當(dāng)輸入一旦有錯的數(shù)據(jù)記錄時,可通過代碼檢索找到它進(jìn)行修改。但是當(dāng)代碼出現(xiàn)錯誤時,這個數(shù)據(jù)記錄就會消失在文件之中,而且要找到它會十分困難。當(dāng)系統(tǒng)在處理過程中一旦觸動到它,該錯誤代碼的記錄就會隨機地冒出來,并造成一些難以預(yù)見的后果,如同計算機的病毒一樣。因此,代碼必須校驗。

        代碼的校驗可以在原代碼的基礎(chǔ)上增設(shè)校驗位來實現(xiàn),也可以采取加權(quán)取余的方法來校驗,甚至可以采用有一定技術(shù)要求的校驗方法來實現(xiàn)(具體方法請參閱有關(guān)的書籍,本書從略)。不論采取哪一種校驗方法,應(yīng)該遵循的原則是占用資源少、速度快、效率高。

        三、數(shù)據(jù)庫設(shè)計

        信息系統(tǒng)的主要任務(wù)是通過大量的數(shù)據(jù)獲得管理所需要的信息,這就要求必須有效地存儲和高效地管理大量的數(shù)據(jù)。因此,建立一個良好的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)庫,使整個系統(tǒng)都可以迅速、方便、準(zhǔn)確地調(diào)用和管理所需要的數(shù)據(jù),是衡量信息系統(tǒng)開發(fā)工作好壞的主要指標(biāo)之一。

        一個好的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)庫應(yīng)該能充分反映業(yè)務(wù)發(fā)展變化的狀況,充分滿足組織機構(gòu)的各級管理要求,同時還應(yīng)該使得后繼系統(tǒng)的開發(fā)變得更加方便、快捷,系統(tǒng)的開銷減小,易于管理和維護(hù)。

        數(shù)據(jù)結(jié)構(gòu)的組織和數(shù)據(jù)庫文件的設(shè)計就是要根據(jù)數(shù)據(jù)的不同用途、使用要求、統(tǒng)計渠道、案例保密性等等來決定數(shù)據(jù)的整體組織形式、結(jié)構(gòu)、類別、載體、方式、保密等級等一系列的問題。

        1.規(guī)范化地重組數(shù)據(jù)結(jié)構(gòu)

        要規(guī)范相關(guān)的數(shù)據(jù)結(jié)構(gòu),首先需要創(chuàng)建實體關(guān)系(E R)圖。在創(chuàng)建過程中,可以遵循下述步驟。

        (1)定義實體。回顧DFD圖,并列出已收集到數(shù)據(jù)的人、地點、組織、事物或事件,確保定義的全部數(shù)據(jù)已保存。例如,租車公司的人員包括客戶和員工;地點包括租車地和返還地;事物包括車輛、租車合同和客戶預(yù)單;事件將包括預(yù)訂車輛、執(zhí)行租車合同和返還車輛??蛻舻钠珢酆妥廛嚉v史信息也應(yīng)保存在數(shù)據(jù)庫中。

        (2)定義兩個或多個實體間有意義的事件或活動。這個任務(wù)要求分析企業(yè)的運行情況,并定義實體和實體間關(guān)系的性質(zhì)。例如,一名客戶可多次預(yù)訂,一個地點可以有多種車輛供出租。

        (3)分析相互間活動的性質(zhì)。該活動涉及實體的一個還是多個例子?模式總是一樣的,還是依賴于某些因素?例如,考慮客戶與預(yù)訂之間的關(guān)系,有且只有一個客戶可以有一個、多個或沒有預(yù)訂,但每一個預(yù)訂必須有且只有一個客戶。同樣,一個地點可以有一輛車、多輛車或沒有車,但每一輛車必須有且只有一個存放地點。

        (4)畫E R圖??梢允止ぎ婨 R圖或使用一個CASE工具,仔細(xì)地研究這個圖以保證所有的實體和關(guān)系都準(zhǔn)確地表示出來。如果使用屬性符號,要保證符號能正確標(biāo)識每一個關(guān)系的性質(zhì)。

        理解了數(shù)據(jù)庫元素包括實體和它們之間的關(guān)系之后,就能開始設(shè)計記錄和建立數(shù)據(jù)庫了,設(shè)計時需要對記錄進(jìn)行規(guī)范化處理。

        對于原始的數(shù)據(jù)記錄往往存在著數(shù)據(jù)冗余、修改異常、插入困難、刪除不合理的情況。根據(jù)數(shù)據(jù)庫的理論可以對其進(jìn)行規(guī)范化的處理。規(guī)范化是確定和糾正表設(shè)計中固有的問題并降低其復(fù)雜性的過程。表設(shè)計定義了字段并確定了主關(guān)鍵字和表中所有記錄。對初始數(shù)據(jù)庫進(jìn)行規(guī)范化工作,就是優(yōu)化整個表設(shè)計,使得它簡單、有彈性并沒有數(shù)據(jù)冗余。

        在數(shù)據(jù)庫的相關(guān)課程中,我們已經(jīng)學(xué)習(xí)了對數(shù)據(jù)記錄規(guī)范化的處理。典型的規(guī)范化過程包括3個階段:第一范式、第二范式和第三范式。這3個范式構(gòu)成了逐步優(yōu)化的過程。

        ●第一范式(1NF)。如果一條記錄中不包括重復(fù)字段,它就是第一范式(1NF)。重復(fù)字段是一個或一組數(shù)據(jù)項在單條記錄中出現(xiàn)若干次。

        ●第二范式(2NF)。在第二范式中運用了函數(shù)依賴的概念。如果一個表設(shè)計是符合第一范式的,并且所有非主關(guān)鍵字字段都完全依賴于整個主關(guān)鍵字,它就是第二范式(2NF),即第二范式不存在部分依賴。如果1NF中有一個字段只依賴于組合主關(guān)鍵字的一個字段,那么這條記錄就符合2NF。符合1NF的且以單個字段為主關(guān)鍵字記錄自然符合2NF。

        ●第三范式(3NF)。如果一條記錄是2NF并且沒有非關(guān)鍵字段依賴于另一個非關(guān)鍵字段,則它就是第三范式(3NF)。請注意:非關(guān)鍵字段不是主關(guān)鍵字的候選關(guān)鍵字。

        下面以圖9 2所示的E R圖為例來說明規(guī)范化的處理過程。通過調(diào)查,學(xué)生實體的初始數(shù)據(jù)表包括學(xué)號、學(xué)生姓名、總學(xué)分、積點、導(dǎo)師號、導(dǎo)師姓名,以及學(xué)生所選的每一門課程的課程號、課程名和成績等一些屬性項。

        圖9 2E R圖

        這里有3個實體:導(dǎo)師、學(xué)生和課程。

        學(xué)生(學(xué)號,學(xué)生姓名,總學(xué)分,積點,導(dǎo)師號,導(dǎo)師姓名,(課程號,課程名,成績));導(dǎo)師(導(dǎo)師號,導(dǎo)師姓名);

        課程(課程號,課程名,學(xué)分);其中,導(dǎo)師和課程記錄已符合3NF。然而學(xué)生記錄是非規(guī)范化的,因為它包含重復(fù)字段組(課程號,課程名,成績),如表9 2所示。

        將學(xué)生記錄轉(zhuǎn)換成1NF,需要擴張主關(guān)鍵字以包含重復(fù)組的關(guān)鍵字,然后移走重復(fù)組,產(chǎn)生:

        學(xué)生(學(xué)號,學(xué)生姓名,總學(xué)分,積點,導(dǎo)師號,導(dǎo)師姓名,課程號,課程名,成績)。

        表9 3給出了符合1NF的學(xué)生記錄實例。

        表9 2 學(xué)生記錄

        表9 3 學(xué)生記錄實例

        在本例中,記錄中的任意字段都依賴于主關(guān)鍵字的一部分,如學(xué)生姓名、總學(xué)分、積點、導(dǎo)師號、導(dǎo)師姓名都只和學(xué)號有關(guān)系,和課程號沒有關(guān)系;而課程名只取決于課程號,和學(xué)生號沒有關(guān)系。只有成績?nèi)Q于整個主關(guān)鍵字。

        為主關(guān)鍵字中的每個字段和字段組合建立記錄,然后與適當(dāng)?shù)年P(guān)鍵字組合產(chǎn)生下面的表設(shè)計:

        學(xué)生(學(xué)號,學(xué)生姓名,總學(xué)分,積點,導(dǎo)師號,導(dǎo)師姓名);

        課程X(課程號,課程名);

        成績(學(xué)號,課程號,成績)。

        原來的學(xué)生記錄已經(jīng)被轉(zhuǎn)換成符合2NF的3條記錄。課程X記錄和原始的課程記錄有相同的關(guān)鍵字,將課程X記錄與課程記錄合并成1條課程記錄,其中包含兩個記錄的全部字段。在這個例子中,課程X記錄中的所有字段原始的課程記錄中都存在,這樣可以保留原始課程記錄并丟棄課程X記錄。如表9 4~表9 6所示。

        表9 4 學(xué)生記錄

        (續(xù)表)

        在這3個表中,課程和成績記錄是符合3NF的,但學(xué)生記錄不符合3NF,因為導(dǎo)師姓名字段依賴于非主關(guān)鍵字字段導(dǎo)師號。將學(xué)生記錄轉(zhuǎn)換成符合3NF,需要從學(xué)生記錄中移出導(dǎo)師姓名,將它與導(dǎo)師號組成新的記錄導(dǎo)師X(導(dǎo)師號,導(dǎo)師姓名)。然而,新的導(dǎo)師X記錄與原始的導(dǎo)師記錄完全一樣,所以并不需要新的記錄。表9 7~表9 10給出了符合3NF的學(xué)生、導(dǎo)師、課程和成績記錄的樣本數(shù)據(jù)。

        表9 7 學(xué)生記錄

        表9 8 導(dǎo)師記錄

        表9 9 課程記錄

        表9 10 成績記錄

        最后,將所有實體設(shè)計為符合3NF的4條記錄:

        學(xué)生(學(xué)號,學(xué)生姓名,總學(xué)分,積點,導(dǎo)師號);

        導(dǎo)師(導(dǎo)師號,導(dǎo)師姓名);

        課程(課程號,課程名,學(xué)分);

        成績(學(xué)號,課程號,成績)。

        現(xiàn)在有4個實體:學(xué)生、導(dǎo)師、課程和成績。圖9 3給出了規(guī)范化后的完整的E R圖。從此圖中可以看到,學(xué)生和課程之間的M∶N關(guān)系被轉(zhuǎn)變成學(xué)生和成績之間的1∶M的關(guān)系及課程和成績之間的1∶M的關(guān)系。

        圖9 3 規(guī)范化后的完整的E R圖

        作為系統(tǒng)分析員,在實際工作中將會遇到更加復(fù)雜的設(shè)計。因此作為一個系統(tǒng)分析員,應(yīng)該知道除了3NF格式外,還有其他的范式存在,只是在大部分管理信息系統(tǒng)中很少用到。

        2.?dāng)?shù)據(jù)庫的設(shè)計

        數(shù)據(jù)庫的設(shè)計由多個步驟實現(xiàn)。

        (1)需求分析:需求分析是數(shù)據(jù)庫設(shè)計的起點和基礎(chǔ),也是其他設(shè)計階段的依據(jù)。其主要任務(wù)是對信息系統(tǒng)所要處理的對象(組織、企業(yè)、部門等)進(jìn)行全面的了解,收集用戶對系統(tǒng)的信息需求、處理要求、安全性和完整性要求,并以數(shù)據(jù)流圖和數(shù)據(jù)字典等書面形式確定下來。

        實際上需求分析主要解決了這么幾個問題:一是調(diào)查未來系統(tǒng)所涉及的用戶的當(dāng)前職能、業(yè)務(wù)活動及其流程;二是確定用戶對未來系統(tǒng)的各種要求,包括信息要求、處理要求、安全性和完整性要求;三是深入分析用戶的業(yè)務(wù)處理,用數(shù)據(jù)流圖(DFD)表達(dá)整個系統(tǒng)的數(shù)據(jù)的流向和對數(shù)據(jù)進(jìn)行的處理,描述數(shù)據(jù)與處理間的關(guān)系;四是分析系統(tǒng)數(shù)據(jù),產(chǎn)生數(shù)據(jù)字典,以描述數(shù)據(jù)流圖中涉及的各數(shù)據(jù)元素、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、數(shù)據(jù)存儲和處理等。

        需求分析的工作在系統(tǒng)分析階段已經(jīng)完成,在系統(tǒng)設(shè)計階段,主要完成數(shù)據(jù)庫的概念結(jié)構(gòu)設(shè)計、邏輯結(jié)構(gòu)設(shè)計和物理設(shè)計。

        (2)概念結(jié)構(gòu)設(shè)計:在進(jìn)行概念結(jié)構(gòu)的設(shè)計時,要做的工作不是直接將需求分析后得到的數(shù)據(jù)存儲格式轉(zhuǎn)換成數(shù)據(jù)庫管理系統(tǒng)(DBMS)能處理的數(shù)據(jù)庫模式,而是將需求分析得到的用戶需求抽象為反映用戶觀點的概念模型。概念模型的主要特點是:

        ●能真實、充分地反映現(xiàn)實世界,包括事物和事物之間的聯(lián)系,能滿足用戶對數(shù)據(jù)庫的處理要求,它是現(xiàn)實世界的一個真實模型。

        ●概念模式不含具體數(shù)據(jù)庫管理系統(tǒng)所附加的技術(shù)細(xì)節(jié),容易被用戶理解和接受,這樣就可以更好地反映用戶對信息的需求。

        ●當(dāng)應(yīng)用環(huán)境和用戶的需求發(fā)生變化時,容易對概念模型進(jìn)行修改。

        ●易于向關(guān)系、網(wǎng)狀和層次等其他模型轉(zhuǎn)換。

        描述概念模型的有力工具是E R圖,利用E R圖設(shè)計概念結(jié)構(gòu)的步驟包括:局部E R圖的設(shè)計和全局E R圖的設(shè)計。

        局部E R圖的設(shè)計過程如圖9 4所示。首先,根據(jù)需求分析所產(chǎn)生的文檔(數(shù)據(jù)流程圖和數(shù)據(jù)字典)確定每一局部結(jié)構(gòu)的范圍,然后分別設(shè)計每一局部結(jié)構(gòu)的E R圖,直到所有的局部E R圖都設(shè)計完為止。這一部分的難點在于如何從眾多的數(shù)據(jù)對象中抽取實體和屬性,如何確定一個對象到底是實體還是屬性。

        全局E R圖的設(shè)計過程見圖9 5。首先依次取出局部E R圖,對它們進(jìn)行合并,直至所有的局部E R都合并完為止。

        在合并的過程中,需要檢查并消除局部E R圖間的幾類沖突:

        ●屬性沖突:包括屬性域的沖突和屬性取值單位的沖突。屬性域的沖突是指同一屬性在不同的局部E R圖中有著不同的數(shù)據(jù)類型、取值范圍或取值集合。例如,有的局部E R圖中的數(shù)據(jù)類型是長度為2的字符串,而在另一局部E R

        圖9 4 局部的E R圖

        圖9 5 全局的E R圖

        圖中,同樣的數(shù)據(jù)類型是長度為1的整數(shù)。屬性取值單位的沖突是指同一屬性在不同的局部E R圖中具有不同的單位。例如,產(chǎn)品的數(shù)量單位,有的局部E R圖使用“箱”,而有的使用“打”。

        ●命名沖突:包括同名異義和異名同義兩種。同名異義是指具有不同意義的對象在不同的局部E R圖中卻使用了相同的名字。而異名同義是指具有同一意義的對象在不同的局部E R圖中卻使用了不同的名字。

        ●結(jié)構(gòu)沖突:既指同一對象在不同的局部E R圖中具有不同的抽象,也指同一實體在不同的局部E R圖中包含不同的屬性個數(shù)和排列次序,又指實體間的聯(lián)系在不同的局部E R圖中具有不同的類型。

        消除沖突可能需要借助于管理上的一些方法,如上述沖突中的前兩類沖突主要通過行政協(xié)商手段來解決,而第三類沖突必須根據(jù)實際的應(yīng)用進(jìn)行調(diào)整。

        完成了局部E R圖的合并之后,檢查合并后的E R圖中有無冗余數(shù)據(jù)和冗余關(guān)系,如有則根據(jù)實際情況消除冗余。當(dāng)然,有時為了提高系統(tǒng)的效率,也可以保留一些冗余。

        (3)邏輯結(jié)構(gòu)設(shè)計:邏輯結(jié)構(gòu)設(shè)計的任務(wù)是根據(jù)概念結(jié)構(gòu)設(shè)計的結(jié)果和需求分析階段得到的數(shù)據(jù)的完整性要求與安全性要求,再綜合考慮所選擇的具體數(shù)據(jù)庫管理系統(tǒng)的特點,設(shè)計整個數(shù)據(jù)庫的邏輯結(jié)構(gòu)(即一組數(shù)據(jù)表),包括各數(shù)據(jù)表的名稱、每張表中各字段的名稱、數(shù)據(jù)類型、取值范圍、完整性約束條件、安全性要求等內(nèi)容。

        對邏輯結(jié)構(gòu)的設(shè)計過程是:首先根據(jù)前面的設(shè)計結(jié)果和具體的DBMS產(chǎn)品的特點,將全局E R圖轉(zhuǎn)換成一個初始的數(shù)據(jù)庫邏輯結(jié)構(gòu)。然后,對其中的每一個數(shù)據(jù)表進(jìn)行規(guī)范化設(shè)計。

        (4)物理設(shè)計:數(shù)據(jù)庫的物理設(shè)計是指為給定的一個邏輯數(shù)據(jù)模型選擇最適合應(yīng)用環(huán)境的物理結(jié)構(gòu)。關(guān)系數(shù)據(jù)庫的物理結(jié)構(gòu)主要是指數(shù)據(jù)的存取方法和存儲結(jié)構(gòu)。

        數(shù)據(jù)庫的物理設(shè)計分為兩個部分,首先是確定數(shù)據(jù)庫的物理結(jié)構(gòu),然后是對所設(shè)計的物理結(jié)構(gòu)進(jìn)行評價。

        為確定數(shù)據(jù)庫的物理結(jié)構(gòu),設(shè)計人員必須做到:詳細(xì)了解給定的DBMS的功能和特點,特別是該DBMS所提供的物理環(huán)境和功能;熟悉應(yīng)用環(huán)境,了解所設(shè)計的應(yīng)用系統(tǒng)中各部分的重要程度、處理頻率、對響應(yīng)時間的要求,并把它們作為物理設(shè)計過程中平衡時間和空間效率的依據(jù);了解外存設(shè)備的特性,如分塊原則、塊因子大小的規(guī)定、設(shè)備的I/O特性等等。

        一般來說,物理設(shè)計的內(nèi)容包括如下幾個方面:

        ●確定數(shù)據(jù)的存儲結(jié)構(gòu)。主要是考慮存取時間、空間效率和維護(hù)代價間的平衡。如在引入冗余數(shù)據(jù)以加快存取速度時應(yīng)兼顧系統(tǒng)的空間效率。

        ●選擇合適的存取路徑。例如,確定應(yīng)該為哪些關(guān)系模式建立索引,索引關(guān)鍵字是什么等等。

        ●確定數(shù)據(jù)的存放位置。例如,確定數(shù)據(jù)存放在一個磁盤上還是多個磁盤上,什么數(shù)據(jù)應(yīng)存放在高速存儲器上,什么應(yīng)存放在低速存儲器上等等。

        ●確定存取分布。許多數(shù)據(jù)庫管理系統(tǒng)都提供了一些存儲分配參數(shù)供設(shè)計者使用。例如,緩沖區(qū)的大小和個數(shù)、塊的長度、塊的大小等等。設(shè)計者必須規(guī)定其中的一些參數(shù)的設(shè)置。

        由于在物理設(shè)計過程中需考慮的因素很多,包括時間和空間效率、維護(hù)代價和用戶的要求等等,對這些因素進(jìn)行權(quán)衡后,可能會產(chǎn)生多種物理設(shè)計方案。因此需要對各種可能的設(shè)計方案進(jìn)行評價。評價的重點是系統(tǒng)的時間和空間效率,并從多個方案中選出較優(yōu)的物理結(jié)構(gòu)。

        (5)數(shù)據(jù)庫實施:數(shù)據(jù)庫實施的主要任務(wù)就是根據(jù)數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計和物理設(shè)計的結(jié)果,在實際的計算機系統(tǒng)中建立數(shù)據(jù)庫的結(jié)構(gòu)、載入數(shù)據(jù)、測試程序、對數(shù)據(jù)庫應(yīng)用系統(tǒng)進(jìn)行試運行等等。

        建立數(shù)據(jù)庫就是利用選定的數(shù)據(jù)庫管理系統(tǒng)所提供的命令,建立數(shù)據(jù)庫的模式、外模式和內(nèi)模式,然后裝入數(shù)據(jù)。裝入的數(shù)據(jù)可以是模擬數(shù)據(jù),也可以是實際的原始數(shù)據(jù)。

        在建庫和數(shù)據(jù)裝入的同時可進(jìn)行的工作是應(yīng)用程序的編制和調(diào)試。而在程序調(diào)試的過程中,經(jīng)常有可能會破壞數(shù)據(jù)庫中的數(shù)據(jù),因此在裝入原始數(shù)據(jù)時,一般應(yīng)先裝入少部分的、適合程序調(diào)試的數(shù)據(jù)。

        在所有的程序模塊都通過了調(diào)試以后,就需要將它們聯(lián)合起來進(jìn)行調(diào)試。這一過程就是數(shù)據(jù)庫的試運行。在此運行過程中,不僅要測試程序的各功能是否正確,而且還應(yīng)考察系統(tǒng)的性能是否符合用戶的需要。如果有問題,如不符合用戶的需求等,就應(yīng)認(rèn)真地分析形成這些問題的原因。如果問題是由應(yīng)用程序引起的,則應(yīng)修改應(yīng)用程序的源代碼。如果是由數(shù)據(jù)庫結(jié)構(gòu)引起的,就應(yīng)回到前面的數(shù)據(jù)庫設(shè)計步驟去修改物理結(jié)構(gòu),有時可能還要修改邏輯結(jié)構(gòu)。另外,在數(shù)據(jù)庫的試運行過程中,還需要注意對數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行備份。這是因為,在試運行階段,系統(tǒng)是很不穩(wěn)定的,容易給數(shù)據(jù)庫中的數(shù)據(jù)造成破壞。同時,還應(yīng)注意在整個系統(tǒng)基本運行正常以前,不要將所有的原始數(shù)據(jù)裝入到數(shù)據(jù)庫中。

        (6)數(shù)據(jù)庫的運行和維護(hù):經(jīng)過了數(shù)據(jù)庫的試運行以后,系統(tǒng)的性能能夠達(dá)到用戶的要求,而且系統(tǒng)已處于一個比較穩(wěn)定的狀態(tài)。這時就可以將系統(tǒng)正式投入運行了。因此在數(shù)據(jù)庫系統(tǒng)投入運行以后,主要的維護(hù)工作包括幾個方面:一是數(shù)據(jù)庫的轉(zhuǎn)儲和恢復(fù);二是數(shù)據(jù)庫的安全性和完整性控制;三是數(shù)據(jù)庫性能的監(jiān)督、分析和改進(jìn);四是數(shù)據(jù)庫的重組織與重構(gòu)造,這是因為在數(shù)據(jù)庫系統(tǒng)運行的過程中,經(jīng)常會對數(shù)據(jù)庫進(jìn)行插入、刪除和修改等的更新操作。這些操作會使數(shù)據(jù)庫的物理存儲變壞,從而影響數(shù)據(jù)的存取效率和系統(tǒng)的性能。例如,邏輯上屬于同一記錄型或同一關(guān)系的數(shù)據(jù)被分散到了不同的文件或文件的多個碎片上,就會降低數(shù)據(jù)的存取效率。這時就要對數(shù)據(jù)庫進(jìn)行重組織,即按原設(shè)計要求重新安排數(shù)據(jù)的存儲位置、清除垃圾、減少指針鏈等等,以提高數(shù)據(jù)的存取效率和系統(tǒng)性能。

        3.?dāng)?shù)據(jù)資源的分布和安全保密

        在進(jìn)行數(shù)據(jù)庫設(shè)計時,需要考慮數(shù)據(jù)資源的分布和安全保密的問題。當(dāng)然,對單機系統(tǒng)則可以不考慮這個問題。如果是網(wǎng)絡(luò)上運行管理信息系統(tǒng),那就必須考慮這個問題了。

        (1)數(shù)據(jù)資源分布:在網(wǎng)絡(luò)環(huán)境下,數(shù)據(jù)庫的設(shè)計必須考慮整個數(shù)據(jù)資源在網(wǎng)絡(luò)各節(jié)點上的分配問題??紤]數(shù)據(jù)資源分配的原則是:同一子系統(tǒng)的數(shù)據(jù)盡量放在本子系統(tǒng)所使用的機器上,只有需要公用的數(shù)據(jù)和最后統(tǒng)計匯總類數(shù)據(jù)才放在服務(wù)器上。如果不考慮這一原則,將會造成整個網(wǎng)絡(luò)系統(tǒng)數(shù)據(jù)通訊緊張,從而降低子系統(tǒng)運行效率。

        (2)數(shù)據(jù)的安全保密:一般的數(shù)據(jù)庫管理系統(tǒng)都提供了用戶自己定義數(shù)據(jù)安全保密的功能。充分利用這一功能對確保一個系統(tǒng)的正常運行是非常重要的。因為系統(tǒng)一旦建成,網(wǎng)絡(luò)將會將四面八方的各個部門連成一片,如果無安全保密的措施,誰都可以在任意一個機器終端上隨意地修改和刪除數(shù)據(jù),這對系統(tǒng)將會帶來致命的后果。

        在數(shù)據(jù)庫中定義安全保密的方法一般有:

        ●如果數(shù)據(jù)庫管理系統(tǒng)提供的安全保密功能有8級,那么原則上所有文件都定義為4級,個別優(yōu)先級別高的辦公室可定義高于4級的級別,反之亦然。

        ●統(tǒng)計文件和數(shù)據(jù)錄入文件一般只對本部門的某臺計算機定義為可寫方式,對其他的計算機則定義為只讀方式。

        ●財務(wù)等保密文件一般只對財務(wù)部門的機器定義為可讀、可寫、可修改、可刪除方式,對其他計算機則定義為只讀方式,而且在讀取數(shù)據(jù)之前需要進(jìn)行身份權(quán)限的認(rèn)證,只有級別相同或是級別較高者才能讀取。

        四、輸入設(shè)計

        輸入設(shè)計包括定義數(shù)據(jù)獲取、數(shù)據(jù)進(jìn)入、數(shù)據(jù)輸入方法。數(shù)據(jù)獲取是源數(shù)據(jù)確認(rèn)和記錄的過程;數(shù)據(jù)進(jìn)入是將源數(shù)據(jù)轉(zhuǎn)換成計算機可讀取形式的過程;數(shù)據(jù)輸入是計算機可讀取的數(shù)據(jù)實際進(jìn)入系統(tǒng)的過程。

        在輸入設(shè)計中有4個主要的目標(biāo):選擇最適當(dāng)?shù)妮斎朊浇楹头椒?;開發(fā)有效的輸入程序;減少輸入量;減少輸入錯誤。

        據(jù)統(tǒng)計,大多數(shù)的問題是在數(shù)據(jù)獲取和進(jìn)入時發(fā)生的。輸入設(shè)計就是要便于使用獲取的數(shù)據(jù)源文檔、有高效的輸入程序以及減少輸入量,這些都是能確保輸入數(shù)據(jù)的質(zhì)量和減少數(shù)據(jù)輸入的瓶頸的方法。

        1.輸入方法

        數(shù)據(jù)的輸入方法有批輸入方法和聯(lián)機輸入方法。批輸入方法是數(shù)據(jù)進(jìn)入是在一段時間內(nèi)完成的,這個時間段可能是幾小時、幾天、幾周甚至更長。聯(lián)機輸入方法是數(shù)據(jù)直接進(jìn)入系統(tǒng),立即就被處理了。聯(lián)機輸入方法的主要優(yōu)點是即時可以檢查數(shù)據(jù)的合法性和有效性。使用聯(lián)機輸入還是使用批輸入取決于系統(tǒng)的類型和企業(yè)的需要。

        雖然聯(lián)機輸入通常要比批輸入更理想,獲取數(shù)據(jù)要比批輸入更快、更準(zhǔn)確,更少的人為干預(yù)。但這種方法也確實存在著一些缺點。例如,人工聯(lián)機數(shù)據(jù)輸入比批輸入慢,輸入的成本高,因為聯(lián)機數(shù)據(jù)輸入是在事務(wù)發(fā)生時完成的,也許還要占用比較多的機時。

        除了以上兩種方法,另外一個輸入方法是源數(shù)據(jù)自動化法,這種方法使用直接輸入設(shè)備將批輸入法和聯(lián)機輸入法結(jié)合在一起。源數(shù)據(jù)自動化法的常見情形有:銷售終端采用條形碼掃描儀或磁性掃描儀輸入信用卡上的數(shù)據(jù)、自動取款機ATM讀取銀行卡上的數(shù)據(jù)、員工使用磁卡記錄上下班時間、醫(yī)院使用條形碼或IC卡收集病人的相關(guān)數(shù)據(jù)等等。

        數(shù)據(jù)直接進(jìn)入系統(tǒng)在近幾年發(fā)展很快,因為它減少了人工的輸入。同時可以做到將源數(shù)據(jù)輸入自動化,并可利用現(xiàn)代的通信技術(shù)。例如,通過互聯(lián)網(wǎng)使組織機構(gòu)能夠在全球范圍內(nèi)管理經(jīng)營數(shù)據(jù)。

        2.開發(fā)高效的數(shù)據(jù)輸入程序

        假設(shè)每次訂單到達(dá)時,一個人接受并記下訂單的日期,第二個人檢查每個項目,然后批準(zhǔn)這個訂單。雖然將數(shù)據(jù)記錄從一個人傳給另一個人的時間僅需要幾秒鐘,但是有成百上千的訂單需要處理時,總的時間花費將是巨大的。另外,如果只有一個人有權(quán)限能批準(zhǔn)這個訂單,那么當(dāng)這個人不在現(xiàn)場時就會發(fā)生數(shù)據(jù)被延遲了。

        另外必須注意輸入數(shù)據(jù)過程中潛在的瓶頸。例如,只讓一個人檢查輸入數(shù)據(jù)資料時就可能會形成輸入的瓶頸。好的輸入設(shè)計還要求對訂單的數(shù)量進(jìn)行合理的估計,如果經(jīng)常發(fā)生輸入延遲,那么就必須改變數(shù)據(jù)獲取程序,或者讓兩個人共同享有批準(zhǔn)訂單的權(quán)力或者是每個人批準(zhǔn)一定數(shù)量的訂單。

        3.減少數(shù)據(jù)的輸入量

        在輸入過程中,發(fā)生數(shù)據(jù)輸入錯誤的概率與數(shù)據(jù)量有關(guān)。當(dāng)數(shù)據(jù)量增加時,錯誤的數(shù)量也增加,所以減少數(shù)據(jù)量,也就減少了錯誤的數(shù)據(jù)。要減少輸入量,必須減少每個事務(wù)輸入數(shù)據(jù)項的數(shù)目和規(guī)模。如果遵循了某些規(guī)則可能會適當(dāng)?shù)販p少數(shù)據(jù)量:

        ●只輸入必要的數(shù)據(jù),只輸入系統(tǒng)需要的數(shù)據(jù)項。

        ●不要輸入能從系統(tǒng)文件中檢索到或可用其他數(shù)據(jù)計算出的數(shù)據(jù)。例如,金額可以根據(jù)單價和數(shù)量的計算得到,就不必輸入金額數(shù)據(jù)項。

        ●不輸入常量。如果一批工作表具有相同的年份,那么在批處理中年份只需輸入一次。對一些聯(lián)機輸入,日期可通過當(dāng)前系統(tǒng)日期自動檢索到。

        ●使用代碼。代碼通常比它們所代表的數(shù)據(jù)要短,因此使用代碼的優(yōu)點就是減少輸入。

        研究數(shù)據(jù)量是很重要的,因為所有的數(shù)據(jù)項都是在系統(tǒng)分析階段指定的。在系統(tǒng)設(shè)計階段,必須確定什么時候以及怎樣輸入這些數(shù)據(jù)項。如果要從系統(tǒng)的有關(guān)文件中檢索出詳細(xì)的信息,就要考慮通過什么途徑去檢索這些信息。

        聯(lián)機輸入允許操作員在輸入數(shù)據(jù)時輸入實體的編碼,這樣就可立即看到系統(tǒng)中檢索到的實體信息。聯(lián)機數(shù)據(jù)輸入常??梢宰尣僮鲉T避免輸入錯誤的數(shù)據(jù)。

        4.減少輸入錯誤

        減少輸入錯誤可以提高數(shù)據(jù)質(zhì)量。如前所述,減少輸入錯誤的有效方法就是減少輸入數(shù)據(jù)量,例如輸入某個部門的人數(shù),可以輸入相關(guān)部門的編號,然后到相關(guān)的主文件中檢索或由計算得到,而不是由操作員輸入的,這就可以避免輸入的人數(shù)錯誤。如果要輸入員工的工號,可以采用在下拉列表中選擇姓名,只要姓名是唯一的,就能檢索出員工的編號。

        理想的輸入設(shè)計會減少輸入錯誤,例如,良好的屏幕設(shè)計就有助于減少錯誤。但是也不可否認(rèn),即使是最好的輸入設(shè)計和程序,也會存在一些數(shù)據(jù)錯誤。因此在程序中可以考慮采用一定的技術(shù)方法來減少輸入錯誤。

        (1)順序檢查:這種方法適用于當(dāng)數(shù)據(jù)以事先決定的順序進(jìn)行輸入的情況。例如,訂單必須按訂單號順序進(jìn)行輸入,那么,非順序的訂單號就表示有錯誤;如果事務(wù)數(shù)據(jù)必須按日期順序輸入,那么非順序日期的事務(wù)數(shù)據(jù)就表明輸入有錯誤。

        (2)存在性檢查:主要用于對非空字段的檢查,即檢查必須輸入的數(shù)據(jù)項。如果輸入一條記錄時該字段為空值的記錄,則存在性檢查就會報錯。

        (3)數(shù)據(jù)類型檢查:確保數(shù)據(jù)項與所要求的數(shù)據(jù)類型一致。例如,數(shù)字型的字段必須只能輸入數(shù)值數(shù)據(jù)。

        (4)范圍檢查:驗證數(shù)據(jù)項的值在最小值與最大值之間。如一個員工每周的工作時間必須在0至40個小時之內(nèi),因為我國實行5天工作制,超過40小時,則超過部分為加班工時。當(dāng)檢查涉及最大值或最小值中的一個,而不是全部時,稱為限制性檢查。如工資的數(shù)量要比0大,但不必指定最大值,這就是限制性檢查。

        (5)合理性檢查:辨別那些有疑問但不一定是錯誤的值。例如,工資的輸入值為0.50元和500 000 000.00元通過簡單的限制性檢查查不出錯,但這兩個值都可能是錯誤的。同樣,年齡值為120歲可以通過0~150范圍的檢查,但這個數(shù)值需要進(jìn)一步核實,即進(jìn)行合理性檢驗。

        (6)有效性檢驗:主要用于必須有某個值的數(shù)據(jù)項。例如,一個工資管理系統(tǒng)中員工主文件包含120名員工,那么當(dāng)輸入的一個人員編號與文件中的任何一個記錄的編號值都不匹配時,則輸入的人員編號一定是無效的。另外,一個有效性檢驗的例子就是驗證一個新的人員編號不能與現(xiàn)有員工主文件中已存在的人員編號重復(fù)。

        (7)聯(lián)合檢驗:主要用于確保兩個或多個字段相一致或合理。即便所有的字段都通過了各自的有效性檢驗,但這些字段的值結(jié)合在一起也可能不一致或不合理。例如,如果教學(xué)工作量表上的學(xué)生人數(shù)為80,而規(guī)模系數(shù)為1.8,但這個系數(shù)僅僅適用于學(xué)生人數(shù)大于100的情況,那么此工作量表上的學(xué)生人數(shù)和規(guī)模系數(shù)結(jié)合在一起就是無效的。

        (8)批控制:用于檢驗批輸入。批控制可以檢驗數(shù)據(jù)項,如記錄數(shù)和數(shù)字型字段的總和。例如,在輸入一批訂單表之前,輸入員可能統(tǒng)計訂單總數(shù)和訂貨量的總和,人工計算的總和將作為控制總數(shù)。當(dāng)這批訂單輸入訂單系統(tǒng)時,系統(tǒng)還會統(tǒng)計這兩個總數(shù),那么就可以將系統(tǒng)統(tǒng)計出來的總數(shù)與控制總數(shù)進(jìn)行比較。如果總數(shù)不匹配,那么數(shù)據(jù)輸入或人工計算有差錯。和有效性檢驗不同,批控制并不確定具體的錯誤,但可以發(fā)現(xiàn)在輸入的這批訂單中有一個或多個訂單輸入有誤或遺漏??刂瓶倲?shù)本身并沒有意義,只是為了進(jìn)行比較。

        5.輸入界面設(shè)計

        輸入界面主要是輸入屏幕的設(shè)計。所有屏幕顯示的目的都是為了提交信息及各種數(shù)據(jù)(包括輔助數(shù)據(jù))的輸入。屏幕顯示的一些設(shè)計規(guī)則適用于數(shù)據(jù)輸入和用戶界面屏幕,這些規(guī)則有:

        ●屏幕顯示應(yīng)該做到整潔、美觀和有條理,使人一目了然。

        ●在屏幕上的信息應(yīng)按一個有意義的、合乎邏輯的順序顯示。

        ●屏幕顯示應(yīng)該是一致的,所有標(biāo)題、提示信息和說明要使用一致的術(shù)語,格式盡量做到統(tǒng)一。

        ●提示信息應(yīng)該是具體的、易于理解的,詞語應(yīng)是文明禮貌用語。

        ●提示信息應(yīng)該保留在屏幕上一段指定的時間長度,比如10秒,使操作人員能看清楚。但是如果操作人員很熟悉系統(tǒng),可能又會覺得10秒鐘太長了。所以一個比較好的方法就是顯示的信息一直到操作人員進(jìn)入下一個動作為止。

        ●特殊效果如顏色、閃光、高亮度、反白顯示和聲音等應(yīng)有限制地使用,關(guān)鍵是應(yīng)該吸引人的注意力。注意:太多的聲光效果反而會干擾用戶。

        ●對于過長時間的處理或延遲給出的提示信息,提醒用戶處理的預(yù)期延遲和完成處理所需要的時間。

        ●輸入屏幕設(shè)計應(yīng)該文檔化以利于程序員以后使用,屏幕設(shè)計完就應(yīng)該獲得批準(zhǔn),不能等到完成所有的屏幕設(shè)計才提交給用戶,要確保所有設(shè)計的一致性,因此如果用戶不喜歡某一屏幕,可以對其他的屏幕做相似的改動。屏幕設(shè)計不必給最終用戶看,而應(yīng)該用屏幕模擬模仿用戶所看到的形式,理想的屏幕模擬是用戶檢驗和評價的依據(jù)。

        (1)數(shù)據(jù)輸入屏幕設(shè)計:屏幕設(shè)計應(yīng)該清晰,易于使用,支持用戶所喜歡的數(shù)據(jù)處理方式。對用戶友好的屏幕設(shè)計可以提高勞動生產(chǎn)率,并可改變用戶對待信息系統(tǒng)的態(tài)度。

        數(shù)據(jù)輸入的傳統(tǒng)方法是填寫屏幕表格,用戶在字段域輸入數(shù)據(jù),然后移到下一個字段域。因此在進(jìn)行數(shù)據(jù)輸入屏幕設(shè)計時要注意幾點規(guī)則:

        ●限制用戶對輸入數(shù)據(jù)的屏幕隨意定位。

        ●為每一個字段提供一個描述性的說明,如提示用戶在哪里輸入,輸入什么數(shù)據(jù),包括所要求的字段大小。

        ●如果字段值必須以指定的格式輸入的話,就給出這種格式的樣式。

        ●每一個字段都要求有一個結(jié)束的按鍵,如按Enter鍵或Tab鍵一般表示字段輸入結(jié)束。

        ●無需用戶輸入的數(shù)據(jù),如日期字段中的“年”、“月”、“日”,還有性別、職稱等;又如無需用戶為數(shù)字型字段輸入第一位的零或為字母型字段輸入前面的空格;再比如無需用戶鍵入小數(shù)后面的零。

        ●將缺省值顯示出來,因此用戶只需按Enter鍵接受建議的值,如果缺省值不合適,用戶可以對它進(jìn)行更改。有些字段值也可以使用缺省值。例如,記錄按日期順序輸入,則可將第一個業(yè)務(wù)中的日期作為缺省的日期被使用,直到出現(xiàn)新日期為止。

        ●為有限個合法的字段值顯示一個可接受值的下拉列表。用戶可在合法值列表中選擇一個,自動完成輸入。

        ●在沒有確認(rèn)輸入當(dāng)前記錄時,能提供一種退出數(shù)據(jù)輸入屏幕的方式。同樣在數(shù)據(jù)輸入后,應(yīng)有一系列提示信息窗口,包括輸入數(shù)據(jù)有錯時提醒用戶,并允許改正輸入錯誤。

        ●屏幕表格設(shè)計要與原始表格一致,以符合用戶的習(xí)慣,便于用戶輸入。同時為用戶提供一種按標(biāo)準(zhǔn)順序或按用戶選定的順序在表格的各字段間移動的方法。例如,用TAB鍵將插入點移到下一個字段。

        ●帶有菜單和快捷工具欄的屏幕提供了一種有力地、靈活地搜索指定記錄或指定字段的方法。

        (2)過程控制屏幕設(shè)計:在許多聯(lián)機信息系統(tǒng)處理過程中,用戶可使用處理控制屏幕或?qū)υ捚聊粊磔斎朊罨蛞蟆3R姷倪^程控制屏幕設(shè)計是菜單屏幕和提示符式屏幕。

        菜單屏幕顯示一系列處理選項并允許用戶可通過輸入選項號、鍵入光標(biāo)移動功能鍵或使用其他輸入設(shè)備(如鼠標(biāo)或觸摸屏)來選擇選項。因為過程控制使用一個或多個菜單,所以這種屏幕設(shè)計是一個菜單驅(qū)動的系統(tǒng)。

        菜單方法有易于理解、提供一個邏輯的選擇次序等幾個優(yōu)點,但是如果是多層菜單則可能會引起混淆。從用戶的角度來說,菜單設(shè)計必須反映邏輯分組,但不要求菜單層次與系統(tǒng)內(nèi)部的處理邏輯一致。

        提示符的過程控制就要求用戶為顯示在屏幕上的提示符響應(yīng),即在提示符后鍵入一個命令作為回答。結(jié)構(gòu)化查詢語言(SQL)是一個比較流行的命令語言。

        與菜單相比,命令語言提示符能為用戶提供更多對系統(tǒng)過程的控制,但是用戶需要熟悉相關(guān)的操作命令。當(dāng)用戶不熟悉這些命令時就需要對用戶進(jìn)行相關(guān)的培訓(xùn)。

        (3)圖形用戶界面:目前大多數(shù)屏幕設(shè)計都使用圖形用戶界面GUI(Graphic User Interface)。圖形用戶界面使用圖形,如窗口、菜單和列表框,以允許用戶和系統(tǒng)進(jìn)行交流,微軟的Windows和Apple Macintosh操作系統(tǒng)是GUI的例子。使用GUI程序的一個主要優(yōu)點就是在不同的應(yīng)用程序中界面都是相似的,因此易于學(xué)習(xí)和使用系統(tǒng)。當(dāng)然系統(tǒng)內(nèi)所有的應(yīng)用程序應(yīng)該都有相似的GUI。

        在GUI環(huán)境中,過程控制屏幕和數(shù)據(jù)輸入屏幕之間沒有很明顯的區(qū)別。相反,在單一的屏幕內(nèi)窗口按用戶的要求進(jìn)行顯示、更改或刪除,這些窗口可以包括控制選項、數(shù)據(jù)輸入選項或兩者均有。為使圖形界面在使用時更加方便,GUI允許一次可打開幾個程序,數(shù)據(jù)可在程序間傳遞,因為GUI在數(shù)據(jù)輸入中的使用同在過程控制中的使用是一樣的,因此,它們必須遵循在前面所提到的數(shù)據(jù)輸入屏幕設(shè)計規(guī)則。

        (4)幫助屏幕的設(shè)計:在系統(tǒng)的操作過程中,即使是最有經(jīng)驗的用戶有時也需要幫助。聯(lián)機幫助屏幕用來顯示菜單選項、程序、功能鍵、概念和格式等信息,一般用戶可以通過單擊命令按鈕、工具條按鈕、菜單命令或按一個指定的鍵來求得幫助。

        幫助信息可用兩種方式來提供:及時提示性幫助窗口或用戶選擇幫助菜單,及時提示性幫助窗口為運行中的任務(wù)提供即時的幫助。及時提示性幫助窗口是了解當(dāng)前任務(wù)信息的一個快速方法。當(dāng)用戶要求幫助的時候,可通過菜單或子菜單進(jìn)行正確的選擇,就能看到一個所需要的信息屏幕。

        菜單屏幕、提示符式屏幕和圖形用戶界面的設(shè)計規(guī)則也同樣適用于幫助菜單屏幕。另外,當(dāng)設(shè)計及時提示性幫助窗口時,還應(yīng)注意:

        ●為用戶返回幫助的原點處提供一個直接的路徑。

        ●給每個幫助窗口確定一個標(biāo)題。

        ●幫助信息應(yīng)簡潔,易于理解。

        ●提交一個吸引人的屏幕,幫助屏幕應(yīng)該清晰,使幫助信息易于閱讀。

        ●提供適宜的例子。

        ●使用超級鏈接將相關(guān)的幫助主題鏈接起來。

        ●要顯示負(fù)責(zé)為用戶提供幫助的人或部門的地址、電話或E-mail地址。

        許多信息系統(tǒng)既提供及時提示性幫助窗口又提供用戶選擇幫助,大多數(shù)軟件包的幫助屏幕也包括一個超文本功能,超文本允許用戶單擊幫助文本中選中的術(shù)語的鏈接,然后系統(tǒng)顯示關(guān)于此術(shù)語的額外信息,超文本是一系列鏈接,允許用戶操縱多個幫助主題。超文本具有用戶友好的特征,提高了幫助系統(tǒng)的功能。

        6.輸入控制

        輸入控制包括必要的措施以確保輸入的數(shù)據(jù)是正確的、完備的和安全的,在輸入設(shè)計的每個階段都要強調(diào)輸入控制。實際上,系統(tǒng)中的每條信息都應(yīng)該能追溯到產(chǎn)生它的輸入數(shù)據(jù)。這就意味著必須提供一個審計跟蹤痕跡,記錄所有數(shù)據(jù)的來源及輸入日期。除了記錄最初的來源外,審計痕跡還必須以跟蹤到數(shù)據(jù)怎樣或什么時候被存取、更改,以及被誰更改或存取的。所有這些操作必須記在審計跟蹤文件中,并仔細(xì)監(jiān)控。

        企業(yè)必須建立起處理源數(shù)據(jù)文檔的管理制度,以確保數(shù)據(jù)在進(jìn)入系統(tǒng)之前不會丟失,而且在整個組織中都應(yīng)該嚴(yán)格遵守這個制度。所有來自組織外的源文檔,當(dāng)接受它們時,都應(yīng)該做記錄。當(dāng)源文檔在各部門之間傳遞時,應(yīng)該是有順序的。如為了防止數(shù)據(jù)重復(fù)進(jìn)入系統(tǒng),源文檔應(yīng)該貼上標(biāo)簽,或當(dāng)它通過數(shù)據(jù)輸入過程時作一個標(biāo)記。

        五、輸出設(shè)計

        相對于輸入方式來說,輸出方式的設(shè)計要簡單得多。輸出設(shè)計要充分利用現(xiàn)有的設(shè)備資源輸出對管理和系統(tǒng)運行兩方面都最有效的信息。

        實際上,輸出可以有中間輸出和最終輸出。中間輸出是指各系統(tǒng)之間的數(shù)據(jù)傳遞。最終輸出是通過各輸出設(shè)備向用戶輸出的一類信息。這里我們重點討論最終輸出的設(shè)計。

        最終輸出的方式主要是報表輸出和圖形輸出,究竟采用哪種輸出形式必須要根據(jù)系統(tǒng)運行的特點和業(yè)務(wù)處理的要求來決定。一般而言,對于基層管理,應(yīng)以報表方式給出詳細(xì)的數(shù)據(jù)記錄,而對于高層管理或者綜合的管理部門,則就以圖形或圖表方式輸出為主,以給出比例或綜合發(fā)展的趨勢等信息。

        1.報表生成器設(shè)計

        報表是一般信息系統(tǒng)中用得最多的信息輸出工具。對一個組織機構(gòu)而言,輸出的報表的種類往往都有幾十種甚至百多種,而且報表的內(nèi)容和格式往往會根據(jù)管理的要求進(jìn)行適當(dāng)?shù)恼{(diào)整。這樣龐大的工作量對系統(tǒng)開發(fā)會形成一個很大的壓力。因此在實際的開發(fā)過程中,常常是在確定了報表的種類和格式之后,開發(fā)出一個報表處理的程序模塊,由它來產(chǎn)生、處理和打印系統(tǒng)中需要輸出的報表。

        報表處理模塊的原理如圖9 6所示。左分支是定義一個報表格式。用它可以定義系統(tǒng)中各種需要打印輸出的報表格式。定義完成以后,報表的格式以一個記錄的方式保存在報表格式文件中。右分支是報表的打印部分。首先將已經(jīng)定義的報表顯示出來供用戶進(jìn)行選擇,然后根據(jù)用戶的選擇,報表程序?qū)⒍x好的報表格式和相應(yīng)的數(shù)據(jù)合并在一起進(jìn)行打印輸出。

        圖9 6 報表處理模塊

        2.圖形方式

        目前,要讓計算機生成圖形并加以輸出應(yīng)該是非常容易的,因為可以用來進(jìn)行繪制各類統(tǒng)計分析圖形的軟件已經(jīng)很多了,常用的高級程序設(shè)計語言如C語言等,還有比較流行的軟件編程工具,如Lotus、Excel等??梢哉f大部分的軟件或是編程工具都提供了作圖工具或是圖形函數(shù),利用這些軟件或工具就可以產(chǎn)生出所需要的圖形。

        但是,利用程序設(shè)計語言或是編程工具來繪制信息系統(tǒng)的圖形,對開發(fā)者是有一定要求的,需要開發(fā)者有一定的技術(shù)基礎(chǔ),而且開發(fā)的工作量也比較大。例如,如果一個數(shù)據(jù)庫管理系統(tǒng)中沒有制作圖表的功能,當(dāng)管理層需要使用圖表輸出時,就需要將數(shù)據(jù)庫中處理完的數(shù)據(jù)記錄傳送到作圖軟件中。這種傳送有的可以借助于一些相關(guān)的軟件來完成,例如Microsoft的ODBC(Open DataBase Connectivity開放式數(shù)據(jù)庫連接)就可以完成各不同數(shù)據(jù)庫中數(shù)據(jù)格式的轉(zhuǎn)換。如果沒有這種轉(zhuǎn)換的軟件,有兩種方法來解決:一是將數(shù)據(jù)庫中的數(shù)據(jù)文件轉(zhuǎn)換成標(biāo)準(zhǔn)的ASCII文件,再由作圖軟件來讀?。欢怯沙绦蛟O(shè)計設(shè)計人員進(jìn)行開發(fā)。前者的作圖效率低下,后者的技術(shù)比較復(fù)雜,要求也比較高。當(dāng)然最好的方法就是選擇那些帶有各種圖表制作和分析功能的數(shù)據(jù)庫管理系統(tǒng)。

        3.輸出的控制

        輸出控制的目的就是為了保證輸出的信息正確、完整和安全。高效的輸出控制對每個組織機構(gòu)都是必要的。輸出控制可以通過以下幾方面來體現(xiàn)。

        (1)輸出的正確性和完整性:輸出必須正確和完整,如果在處理或輸出的過程中,數(shù)據(jù)失去了正確性,這種情況應(yīng)該及時發(fā)現(xiàn)和改正。應(yīng)該采取幾個步驟來保證輸出的正確和完整。

        例如,每個報表都應(yīng)該有一個合適的標(biāo)題、打印日期和報表中數(shù)據(jù)發(fā)生的時段;報表的頁數(shù)應(yīng)按次序編號;報表的結(jié)尾應(yīng)該標(biāo)示;控制匯總和記錄計數(shù)應(yīng)該被打印并與輸出匯總和計數(shù)相一致;隨機地抽查報表的正確性和完整性;記錄所有的處理錯誤和中斷,以便分析和修正。

        處理輸出錯誤有一些專門的措施。如定期復(fù)查錯誤報表,分析出錯的原因。為了維護(hù)系統(tǒng)的完整性,應(yīng)該打印錯誤控制匯總和記錄統(tǒng)計數(shù),然后將它們與錯誤改正后重新輸入的匯總進(jìn)行比較。也應(yīng)該建立一個獨立的錯誤文件來標(biāo)識那些不正確和被重新輸入的記錄。

        (2)輸出的安全性:輸出安全可以保護(hù)個人或組織機構(gòu)的隱私,并且保護(hù)組織的數(shù)據(jù)財產(chǎn),以免被竊或被非法獲取。為了保證輸出安全,必須執(zhí)行幾個重要的任務(wù)。首先,保證僅生成報表所需的信息。報表應(yīng)該被分發(fā)到已獲授權(quán)的人手中。所有的敏感數(shù)據(jù)應(yīng)該被存放在安全的地方。所有的機密報表每頁都應(yīng)該貼上標(biāo)簽,不能隨意放置,還要定期銷毀或切碎敏感報表、過期報表和輸出圖表。保證空白支票有專門的安全處理方法并放在安全的地方。銀行支票應(yīng)該有規(guī)律地存放以便檢查,及時發(fā)現(xiàn)丟失的部分。最后,在一個安全的、遠(yuǎn)離圖表儲藏地點的地方存放簽名印章。

        在多數(shù)組織機構(gòu)中,信息系統(tǒng)部門負(fù)責(zé)幾乎所有的安全控制措施。系統(tǒng)的開發(fā)人員必須在其工作的所有階段注意安全問題。

        六、處理過程設(shè)計

        處理過程的設(shè)計將詳細(xì)地涉及具體業(yè)務(wù)處理的步驟,這是下一步編程實現(xiàn)系統(tǒng)的基礎(chǔ)。這一步不但要設(shè)計出一個個功能模塊和它們之間的連接方式,而且還要具體地設(shè)計出每個模塊內(nèi)部的功能和處理過程。

        在處理過程設(shè)計中,需要用到一些工具,有些工具我們在系統(tǒng)分析時就已經(jīng)學(xué)習(xí)過了,而在設(shè)計時還需要用到其他一些圖示工具,如層次模塊結(jié)構(gòu)圖等。

        1.層次模塊結(jié)構(gòu)圖

        層次模塊結(jié)構(gòu)圖(或稱結(jié)構(gòu)圖structure chart)是由W·斯蒂文等人于20世紀(jì)70年代從結(jié)構(gòu)化設(shè)計的角度提出的一種工具。它的基本做法是將系統(tǒng)劃分為若干子系統(tǒng),子系統(tǒng)下再劃分為若干個模塊,大模塊內(nèi)再分小模塊。模塊是指具備輸入輸出、邏輯功能、運行程序和內(nèi)部數(shù)據(jù)4種屬性的一組程序。

        層次模塊結(jié)構(gòu)圖主要關(guān)心的是模塊的外部屬性,即上下級模塊、同級之間的數(shù)據(jù)傳遞和調(diào)用關(guān)系,而并不關(guān)心模塊的內(nèi)部。換言之就是只關(guān)心它是什么,它能夠解決什么問題,而不關(guān)心它是如何去做的。

        (1)模塊結(jié)構(gòu)的圖形表示:圖9 7給出了模塊之間的聯(lián)系。圖(d)中的P是

        圖9 7 模塊結(jié)構(gòu)圖形

        標(biāo)志參數(shù)。

        (2)結(jié)構(gòu)設(shè)計:根據(jù)圖9 7所示的幾種基本結(jié)構(gòu)關(guān)系來設(shè)計一個實際系統(tǒng)是一項復(fù)雜的工作。隨著設(shè)計系統(tǒng)的增大,其結(jié)構(gòu)的復(fù)雜性也迅速上升,當(dāng)然難度也相應(yīng)增大。為了確保系統(tǒng)設(shè)計工作的順利進(jìn)行,需要注意設(shè)計的原則和規(guī)律。

        ●結(jié)構(gòu)設(shè)計的原則:所劃分的模塊其內(nèi)部的凝聚性(cohesion,也叫耦合性)要好,即模塊具有獨立性,模塊之間的聯(lián)系要少;模塊之間的聯(lián)結(jié)性(coupling,也叫聚合性)只能存在上下級之間的調(diào)用關(guān)系,不能有同級之間的橫向聯(lián)系;整個系統(tǒng)呈樹狀結(jié)構(gòu),不允許有網(wǎng)狀結(jié)構(gòu)或交叉調(diào)用關(guān)系出現(xiàn);所有模塊都必須嚴(yán)格地分類編碼并建立歸檔文件。

        ●模塊的聯(lián)結(jié)方式:按模塊和數(shù)據(jù)流程聯(lián)結(jié);按模塊特征相聯(lián)結(jié);按控制關(guān)系相聯(lián)結(jié);公共聯(lián)結(jié);內(nèi)容聯(lián)結(jié)。最后兩種聯(lián)結(jié)現(xiàn)在已經(jīng)基本不用了。這幾種聯(lián)結(jié)方式的比較如表9 11所示。

        表9 11 幾種模塊的聯(lián)結(jié)方式

        (3)功能模塊劃分:對于比較好的設(shè)計系統(tǒng)來說,模塊一般都比較小,它往往都是在某一管理業(yè)務(wù)的某一局部中有某一單獨功能,所以在結(jié)構(gòu)化系統(tǒng)設(shè)計中,模塊一般都是按功能劃分的,通常也就稱之為功能模塊。

        功能模塊的劃分能夠較好地滿足上述所有的原則,而且還能夠最大限度地減少重復(fù)勞動,增大系統(tǒng)的可維護(hù)性和提高開發(fā)工作的效率。

        2.模塊內(nèi)部處理邏輯

        模塊內(nèi)部的處理邏輯可以有多種方法來加以描述。如果一些處理第一號較為復(fù)雜的模塊,若用自然語言描述會十分困難,并且對同一段文字描述,不同的人可能產(chǎn)生不同的理解。如果這個環(huán)節(jié)處理不好,將會給后續(xù)編程工作造成混亂。目前用于描述模塊內(nèi)部處理過程主要有結(jié)構(gòu)化英語、決策樹、決策表和算法描述語言等幾種方法。在系統(tǒng)分析章節(jié),我們已經(jīng)學(xué)習(xí)和討論了。這幾種方法各有其長處和不同的適用范圍。在實際應(yīng)用中究竟用哪一種方法,需要視具體情況和設(shè)計者的習(xí)慣而定。

        七、系統(tǒng)設(shè)計報告

        系統(tǒng)設(shè)計階段的最終結(jié)果是系統(tǒng)設(shè)計報告。系統(tǒng)設(shè)計報告是下一步系統(tǒng)實施的基礎(chǔ),這主要應(yīng)包含如下內(nèi)容:

        (1)系統(tǒng)總體結(jié)構(gòu)圖(包括總體結(jié)構(gòu)圖、子系統(tǒng)結(jié)構(gòu)圖、計算機流程圖等)。

        (2)系統(tǒng)設(shè)備配置方案(包括系統(tǒng)設(shè)備的配置、設(shè)備在各工作崗位的分布情況說明、主機、網(wǎng)絡(luò)和各工作點的聯(lián)系情況等)。

        (3)系統(tǒng)分類編碼方案(主要是分類方案、編碼和校對方式等)。

        (4)數(shù)據(jù)庫結(jié)構(gòu)圖(如數(shù)據(jù)庫的結(jié)構(gòu)、各數(shù)據(jù)表內(nèi)部結(jié)構(gòu)、數(shù)據(jù)字典等)。

        (5)輸入、輸出設(shè)計方案。

        (6)系統(tǒng)的模塊層次圖。

        (7)系統(tǒng)詳細(xì)設(shè)計方案說明書。

        免責(zé)聲明:以上內(nèi)容源自網(wǎng)絡(luò),版權(quán)歸原作者所有,如有侵犯您的原創(chuàng)版權(quán)請告知,我們將盡快刪除相關(guān)內(nèi)容。

        我要反饋