系統(tǒng)構(gòu)架設(shè)計時應(yīng)考慮的一些必要性因素[4]

字號:

2、 可維護性
    便于在系統(tǒng)出現(xiàn)故障時及時方便地找到產(chǎn)生故障的原因和源代碼位置,并能方便地進行局部修改、切割;(可維護性與運行可管理性不同)
    3、 可擴充性:系統(tǒng)方案的升級、擴容、擴充性能
    系統(tǒng)在建成后會有一段很長的運行周期,在該周期內(nèi),應(yīng)用在不斷增加,應(yīng)用的層次在不斷升級,因此采用的構(gòu)架設(shè)計等方案因充分考慮升級、擴容、擴充的可行性和便利。
    4、 可移植性
    不同客戶端、應(yīng)用服務(wù)器、數(shù)據(jù)庫管理系統(tǒng):如果潛在的客戶使用的客戶端可能使用不同的操作系統(tǒng)或瀏覽器,其可移植性必須考慮客戶端程序的可移植性,或盡量不使業(yè)務(wù)邏輯放在客戶端;數(shù)據(jù)處理的業(yè)務(wù)邏輯放在數(shù)據(jù)庫管理系統(tǒng)中會有較好的性能,但如果客戶群中不能確定使用的是同一種數(shù)據(jù)庫管理系統(tǒng),則業(yè)務(wù)邏輯就不能數(shù)據(jù)庫管理系統(tǒng)中;
    達(dá)到可移植性一定要注重標(biāo)準(zhǔn)化和開放性:只有廣泛采用遵循國際標(biāo)準(zhǔn),開發(fā)出開放性強的產(chǎn)品,才可以保證各種類型的系統(tǒng)的充分互聯(lián),從而使產(chǎn)品更具有市場競爭力,也為未來的系統(tǒng)移植和升級擴展提供了基礎(chǔ)。
    5、 需求的符合性
    從源代碼的組織結(jié)構(gòu)看需求的符合型主要考慮針對用戶需求可能的變化的軟件代碼及構(gòu)架的最小冗余(同時又要使得系統(tǒng)具有一定的可擴展性)。
    五、寫系統(tǒng)構(gòu)架設(shè)計文檔應(yīng)考慮的問題
    構(gòu)架工作應(yīng)該在需求開發(fā)完成約80%的時候開始進行,不必等到需求開發(fā)全部完成,需要項目經(jīng)理以具體的判斷來評估此時是否足以開始構(gòu)建軟件構(gòu)架。
    給出一致的輪廓:系統(tǒng)概述。一個系統(tǒng)構(gòu)架需要現(xiàn)有概括的描述,開發(fā)人員才能從上千個細(xì)節(jié)甚至數(shù)十個模塊或?qū)ο箢愔薪⒁恢碌妮喞?BR>    構(gòu)架的目標(biāo)應(yīng)該能夠清楚說明系統(tǒng)概念,構(gòu)架應(yīng)盡可能簡化,的構(gòu)架文件應(yīng)該簡單、簡短,清晰而不雜亂,解決方案自然。
    構(gòu)架應(yīng)單先定義上層的主要子系統(tǒng),應(yīng)該描述各子系統(tǒng)的任務(wù),并提供每個子系統(tǒng)中各模塊或?qū)ο箢惖牡某醪搅斜怼?BR>    構(gòu)架應(yīng)該描述不同子系統(tǒng)間相互通信的方式,而一個良好的構(gòu)架應(yīng)該將子系統(tǒng)間的通信關(guān)系降到最低。
    成功構(gòu)架的一個重要特色,在于標(biāo)明最可能變更的領(lǐng)域,應(yīng)當(dāng)列出程序中最可能變更的部分,說明構(gòu)架的其他部分如何應(yīng)變。
    復(fù)用分析、外購:縮短軟件開發(fā)周期、降低成本的有效方案未必是自行開發(fā)軟件,可以對現(xiàn)有軟件進行復(fù)用或進行外購。應(yīng)考慮其對構(gòu)架的影響。
    除了系統(tǒng)組織的問題,構(gòu)架應(yīng)重點考慮對于細(xì)節(jié)全面影響的設(shè)計決策,深入這些決策領(lǐng)域:外部軟件接口(兼容性、通信方式、傳遞數(shù)據(jù)結(jié)構(gòu))、用戶接口(用戶接口和系統(tǒng)層次劃分)、數(shù)據(jù)庫組織和內(nèi)容、非數(shù)據(jù)庫信息、關(guān)鍵算法、內(nèi)存管理(配置策略)、并行性、安全性、可移植性、網(wǎng)絡(luò)多人操作、錯誤處理。
    要保證需求的可追蹤性,即保證每個需求功能都有相應(yīng)模塊去實現(xiàn)。
    構(gòu)架不能只依據(jù)靜態(tài)的系統(tǒng)目標(biāo)來設(shè)計,也應(yīng)當(dāng)考慮動態(tài)的開發(fā)過程,如人力資源的情況,進度要求的情況,開發(fā)環(huán)境的滿足情況。構(gòu)架必須支持階段性規(guī)劃,應(yīng)該能夠提供階段性規(guī)劃中如何開發(fā)與完成的方式。不應(yīng)該依賴無法獨立運行的子系統(tǒng)構(gòu)架。將系統(tǒng)各部分的、依賴關(guān)系找出來,形成一套開發(fā)計劃。