軟件架構(gòu)
如果把需求分析比做蓋大樓的圖紙,那么軟件架構(gòu)就是地基和框架,軟件架構(gòu)同樣是決定軟件成敗的重要因素,好的軟件架構(gòu)應(yīng)該具備以下幾個特點:
軟件用什么前端技術(shù),什么后端技術(shù),C/S還是B/S,要不要使用開源框架,完全要跟據(jù)架構(gòu)師的豐富的經(jīng)驗來做判斷,不能毫無依據(jù)的選擇,一但技術(shù)選型錯誤,輕則軟件開發(fā)過程有些地方不好實現(xiàn)或成本虛高,重則核心功能不能實現(xiàn),完全返工重新開發(fā)。
好的軟件架構(gòu)必須可以快速開發(fā),同時開發(fā)好的軟件依然具有較高的運行效率
再好用的軟件不可能一直好用,好的軟件必須可以隨時擴展和修改,以滿足千變?nèi)f化的需求,并盡可能提高軟件的使用壽命
數(shù)據(jù)庫的設(shè)計是軟件核心中的核心,其實軟件架構(gòu)就是要解決數(shù)據(jù)的存儲和使用的方法,數(shù)據(jù)庫的設(shè)計必須規(guī)范,而且必須有詳細的數(shù)據(jù)庫設(shè)計文檔,以便后期的升級開發(fā)
《數(shù)據(jù)庫設(shè)計文檔》、《開發(fā)文檔》、《開發(fā)人員自測表》、《軟件開發(fā)里程碑》、《模塊功能說明》、《接口使用說明》、《數(shù)據(jù)字典文檔》等等,保證項目規(guī)范開發(fā),出現(xiàn)問題及時查找和補漏
對各各細節(jié)進行模塊劃分,相似性的功能劃分給同一個人,使得開發(fā)人員充分發(fā)揮自己的能力。
一個成熟的軟件往往是好多開發(fā)人員合作一起開發(fā)出來的,如果沒有統(tǒng)一的開發(fā)規(guī)范,必然會出現(xiàn)同一個軟件每個功能的使用方式或表現(xiàn)方式各不相同,增加使用難度,開發(fā)規(guī)范使得眾多的開發(fā)人員開發(fā)的東西像是一人開發(fā)的,同時可維護性大大增強。
如果一個軟件的開發(fā)人員離職了,那么軟件還是否可以修改和維護,好的架構(gòu)師通過開發(fā)規(guī)范的定義和執(zhí)行,使得軟件開發(fā)人員無論換多少個人,新人可以快速的了解情況并開始低成本維護軟件,否則可能維護的成本將大到比重新開發(fā)還大。
天潤智力架構(gòu)師介紹
-
黃前程資深軟件架構(gòu)師,項目經(jīng)理,25年開發(fā)經(jīng)驗,10年項目管理經(jīng)驗,8年架構(gòu)師經(jīng)驗
“永恒的追求技術(shù)的巔峰,智慧勝過千軍萬馬” -
史宏利資深軟件架構(gòu)師,項目經(jīng)理,25年開發(fā)經(jīng)驗,10年項目管理經(jīng)驗,5年架構(gòu)師經(jīng)驗
“用戶好用是檢驗軟件成功的唯一標(biāo)準(zhǔn)” -
付陽陽高級軟件架構(gòu)師,項目經(jīng)理,10年開發(fā)經(jīng)驗,5年項目管理經(jīng)驗,3年架構(gòu)師經(jīng)驗
“軟件的江湖需要刻苦,需要修煉”