第三節 係統設計
係統設計是根據已批準的係統分析報告,進行新係統的物理設計,具體解決新係統該“怎樣做”的問題。係統設計階段所產生的各種技術文件是下一階段編寫程序的主要技術依據。為更好地完成本階段的設計任務,項目組成員可以適當調整,增加一些程序設計人員。
近年來,結構設計法在係統設計中的應用日趨廣泛。結構化的程序設計思想是荷蘭克斯特拉於1965年首次提出的。由於這種新的設計方法有利於軟件生產的工程化,有利於軟件產品的製造、維護、改進和擴充,因而得到人們重視,發展很快。目前,這種方法的應用已從程序設計推廣到係統的分析和設計階段。結構程序法所遵循的基本原則是:
將係統或程序化為三種基本結構的組合。
自頂向下,逐步求精。就是把係統或程序按其處理功能逐次細分為層式的結構。設計時,先設計頂層結構,然後逐層向下,不鼓勵過早地解決低層的細節問題。
分塊設計。將係統或程序的各層結構均按照一定的規則構造成相對獨立的模塊。這種模塊化的結構特別有利於係統或程序的設計、調整、維護和擴充。
設計係統應與現實世界嚴格對應,設計不能脫離實際,
國內外實踐經驗證明,采用結構式設計方法,貫徹上述設計規則能夠取得顯著的經濟效果。
係統設計階段還可劃分為係統模型和詳細設計兩大步驟。
一、建立係統模型
建立係統模型又稱基本設計,其主要任務是根據係統分析的結果,為新係統設計一個基本結構(模型),從總體上解決如何在計算機係統上具體實現新係統的問題。建立模型時,應以數據流程圖上的功能為單位進行設計,最後將各個功能聯係起來所得到的係統流程圖,是新係統模型的重要組成部分,建立係統模型的具體工作內容如下。
確定係統的輸出。建立係統模型必須肯先確定係統的輸出,主要是確定輸出的形式和內容,如輸出報表形式、種類、輸出項目、內容、打印份數等。
確定係統的輸入。根據輸出的內容確定係統的輸入,如原始憑證的形式、種類、內容,產生方式以及向係統的輸入方式,采用的載體等。
確定數據組織方法。首先根據係統規模、數據量、性能要求和技術條件等因素確定是采用文件係統,還是采用數據庫係統來組織數據。然後進一步考慮它們的具體問題,例如文件的組織方式、大量基礎數據向新係統的轉換方式等。
考慮代碼體係。計算機處理要求代碼化。代碼一經確定,就要在係統內部長期使用,因而要從整個企業的範圍,從長期業務發展的角度,慎重考慮企業內部的代碼體係。
繪製各處理功能的數據關係圖。數據關係圖是表示一個處理功能的輸入數據、中間數據以及輸出數據之間關係的圖形。應該根據數據流程圖和有關數據所得的資料,依次為每個處理功能確定其數據關係,並繪製成圖。
將各個處理功能的數據關係圖歸納、連接起來,就是係統流程圖。係統流程圖說明了整個係統的結構。與數據流程圖不同,它不是從邏輯上抽象地描述係統,而是說明新係統實際上的、物理上的結構。係統流程圖是下一步係統詳細設計的重要技術依據,
選擇計算機係統。根據要求和資料條件,為新係統選擇適當的計算機係統,其中包括相應的係統軟件。
係統模型的評價。對所建立的模型進行技術經濟論證,評價其效果。
編寫係統說明書。係統說明書應記載上述各項設計的全部成果,也即應全麵描述出新係統的基本結構,從總體上回答了新係統該“怎樣做”的問題。係統說明書是指導下一步詳細設計、訂購係統所需各類設備、安排人員培訓等各項工作的技術依據。係統說明書編寫越明確、具體,後麵工作中產生錯誤、混亂的可能性就越小。
應該指出,實際設計時,由於影響設計的因素比較多,所以設計出的係統模型可能因人而異,沒有唯一的解因此,在設計時應該集思廣益,周密思考,力求取得最好的設計成果。
下麵以工資為例,簡要說明采用計算機的新係統模型的建立過程。
確定係統的輸出和輸入。根據係統分析報告的建議,新係統分析範圍限於會計科的工資處理業務的基本部分。因此,係統的最終輸出隻有職工工資數、各部門的工資彙總表和當月工資增減變動表三種報表。除工資彙總表外,均要求打印兩份。係統的輸入主要是記有各類變動數據的原始單據。工資計算中大量使用的是固定性數據,但它們也有少量變動,為更好地取得這些變動信息,決定重新設計一種變動通知單,由人事部門填送。再設計一種周轉扣款單,由夥食科等單位填報當月的扣款數據,其它輸入數據沿用原係統所用的原始憑證。數據的輸入一律采用鍵盤輸入方式。
數據的組織。根據對新係統的性能要求確定利用文件係統來組織數據。固定和半圓定數據組織在主文件之中,長期使用。變動數據組織在暫存文件、周轉文件等中間文件之中,處理後不再保留。為提高係統的效率,簡化操作,考慮將全部文件都組織在磁盤上。
繪製各處理功能的數據關係圖。為得到係統最終輸出信息,係統應對存有全部固定和半固定數據的工資文件和存放全部變動數據的主扣款文件進行計算和打印輸出處理。
因為主文件內的數據總會有少量的變動,所以每月工資結算前都要加以更新。為降低操作人員的勞動強度和保證基礎數據的安全,采用了先建立變動文件,再用它來自動更新主文件的處理方式。
對兩種類型的變動數據可存放在兩種類型的中間文件上。對於前一類扣款人基本固定的變動數據,按照鍵盤輸入數據應盡可能少的原則,采用周轉文件。用這種方式采集原始數據既能減少手工填寫量,又可減少操作員用鍵盤輸入數據的勞動量,從而減少出錯機會,並提高工作效率。建立周轉文件的數據關係。圖中第一個處理功能之所以能根據主文件建立起記有職工編號和姓名、沒有扣款值的空周轉文件,是因為已經把哪些具有該項扣款的職工信息用代碼作為半固定數據預先記入主文件之中。
各周轉文件和各暫存文件需經合並處理才能生成主扣款文件。合並處理的數據關係。
選擇計算機係統。因為工資計算係統有數據量不大、批處理、輸入輸出方式單-等特點,選用一般的事處理用的微處理係統就可滿足該係統的全部要求。根據本單位的資金情況可有兩種方案選擇。
第一種,在資金較緊張情況下,新係統可選定微處理機係統。該係統內存為64尺,配有屏幕顯示終端一台、打印機一台、有兩個磁盤驅動器,可供兩片5英寸軟磁盤聯機使用。該係統配有較豐富的係統軟件,可以滿足工資計算的各項功能要求。
第二種,在資金較寬裕情況下,新係統可選定微處理機係統該係列機不僅能實現工資管理,還可以實現財務、倉庫等管理,更主要將來可以聯網。
二、係統的詳細設計
係統的詳細設計是根據已建立的係統模型,進一步確定應用程序的製造方法,也是更為詳細、具體、低層次的物理設計。其所產生的程序說明書等技術文件是下一步程序設計的技術依據。
其中,文件和處理過程的設計涉及係統的兩項核心內容數據和處理,對這兩項設計的好壞,直接影響係統的效率、經濟性和可靠性等技術經濟指標。下麵簡要介紹係統詳細設計的部分內容。
1.代碼設計
目前用聲音、圖象等特種形式的輸入尚處於研究階段,所以除少數配有特殊閱讀裝置的計算機係統外,絕大多數計算機都采用鍵盤輸入或通過鍵盤把信息先轉記到某種載體上,然後再輸入計算機。或者說,絕大多數計算機係統隻能識別和接受來自鍵盤的為數不多的符號所表示的信息。因此,除數值數據外,其它非數值數據都必須轉換成由鍵盤符號所組成的代碼才能輸入到計算機中。此外,合理的代碼還要具有數據長度統一、便於處理、占用空間少、表達內容多等特點,它是對數據進行排序、合並等基本處理的根據。事實上,企業中許多數據,如零件號、設備號以及職工號等都是早已使用的數據代碼。為了給尚未有代碼化的數據編碼,為了統一和改進原有的代碼,使之更適合於計算機處理的要求,在係統設計時,都要針對整個係統的數據,重新設計其代碼。