當(dāng)小喵在開發(fā)一個(gè)較為大型的系統(tǒng)時(shí),會(huì)做以下的分析過程
- 系統(tǒng)需求分析:
- 與使用者詳談,訪問使用者須要的是什麼
- 條列需求:將訪談後的需求加以整理,並加以條列
- 需求確認(rèn):將整理?xiàng)l列出的需求,給使用者逐條加以確認(rèn),如有不足,追加並確認(rèn)之
- 功能分析:
- 條列功能:將使用者以確認(rèn)之條列需求,轉(zhuǎn)換為系統(tǒng)功能並條列之
- 功能、需求確認(rèn):將條列之功能與條列之需求逐一比對(duì),確認(rèn)使用者需求都有滿足
- 功能整併:將條列之功能,有類似、相關(guān)之功能,加以整併→合併撰寫
- 功能歸類:將條列之功能,加以分類整理
- 需求、功能再確認(rèn):將整併、歸類之功能,與需求再次確認(rèn),務(wù)必滿足每一個(gè)需求。
- 資料分析:
- 依據(jù)各需求所需的資料欄位、型態(tài)、加以條列
- 正規(guī)化資料:依據(jù)正規(guī)劃原則,將條列的欄位、型態(tài)、加以分類並正規(guī)劃
- 資料庫(kù)設(shè)計(jì):依據(jù)結(jié)論,設(shè)計(jì)資料庫(kù)、資料表、欄位、型態(tài)、關(guān)聯(lián)等
- 畫面功能分析:
- 畫面規(guī)劃:依據(jù)需求分析與功能分析結(jié)果,規(guī)劃使用介面,畫面欄位、按鈕
- 功能樹狀圖、網(wǎng)頁(yè)地圖:依據(jù)各功能分類與畫面,歸類相關(guān)功能,做出畫面分類樹狀圖、網(wǎng)頁(yè)地圖
- 使用者再確認(rèn):依照功能樹狀圖、網(wǎng)頁(yè)地圖,在此與使用者討論,並依照需求條列逐一比對(duì)各需求與畫面關(guān)係→依使用者需求修改→再確認(rèn)。直到確認(rèn)無誤。
- 程式與撰寫規(guī)劃:
- 依照【畫面分析】、【資料分析】、【功能分析】規(guī)劃出各相關(guān)程式於N-Tiers中
- 畫面分析:介面層,處理各功能的介面、資料存取的介面
- 資料分析:資料層,處理資料庫(kù)的存取
- 功能分析:商業(yè)邏輯層,處理各功能所需運(yùn)算、資料交換,並與介面曾、資料曾溝通
- 程式命名、Function命名、參數(shù)命名:
- 依據(jù)介面層、資料層、商業(yè)邏輯層條列出各程式名稱、Function名稱、以及所需傳遞的參數(shù)、型態(tài)名稱
- 各程式間的相互關(guān)係,並做出各程式間的相互關(guān)係圖
- 程式分配:依現(xiàn)有人力狀況,分組並分派相關(guān)人員各程式,並條列出各程式的時(shí)程規(guī)劃於各組Leader,由各組Leader安排程式完成時(shí)程
- 依據(jù)程式分配與時(shí)程,安排交叉測(cè)試時(shí)程
在這樣的分析過程中,分析完後的各程式可交由多人共同完成,只需將定義好的資料庫(kù)狀況、欄位、以及所需撰寫的程式名稱、參數(shù)說明給各分配到的程式設(shè)計(jì)師,就可開始分工的撰寫程式
其中介面層,小喵多數(shù)以Web作為介面,應(yīng)用ASP/ASP.NET來開發(fā);商業(yè)邏輯層、資料庫(kù)層則是透過COM+的元件來處理。
而介面層與商業(yè)邏輯層如何將之串聯(lián)起來呢,主要是透過以下的這樣方式來做
-----------------------------------------------------------------------------------------------------------------
1 ASP.NET--------------------------------COM+-----------------------------MS-SQL??
2 Controls--ObjectDataSource------COM+元件------COM+元件-----------COM+元件--資料庫(kù)??
3 (?????? 介面層????????????? )???? (???? 商業(yè)邏輯層?????? )?????????? (??? 資料層???? )