620 likes | 893 Views
第 10 章. 專案開發. 10-1 專案開發概述. 專案開發概述. 軟體發展的基本參考,均需以設計規劃文件為主要依循。 文件的撰寫佔了專案成敗的大部分因素。 欠缺文件的溝通與確認,容易發生開發專案最怕的狀況:『 開發出來的軟體,不是客戶所要的 』! 合約、交貨日期及品項、金額、維護等等重要關鍵,必須透過文件記錄,方能有所憑據。. 規劃文件的用途. 規劃文件的用途的用途有以下幾點: 與客戶溝通需求的媒介。 確認客戶需求與開發項目吻合。 開發團隊內部流程溝通、資料表說明及同步。 確認交付項目、開發時程、專案金額等。. 10-2 開發流程. 軟體開發過程.
E N D
第10章 專案開發
專案開發概述 • 軟體發展的基本參考,均需以設計規劃文件為主要依循。 • 文件的撰寫佔了專案成敗的大部分因素。 • 欠缺文件的溝通與確認,容易發生開發專案最怕的狀況:『開發出來的軟體,不是客戶所要的』! • 合約、交貨日期及品項、金額、維護等等重要關鍵,必須透過文件記錄,方能有所憑據。
規劃文件的用途 • 規劃文件的用途的用途有以下幾點: • 與客戶溝通需求的媒介。 • 確認客戶需求與開發項目吻合。 • 開發團隊內部流程溝通、資料表說明及同步。 • 確認交付項目、開發時程、專案金額等。
軟體開發過程 • 需求分析(Requirement Analysis) • 系統分析(System Analysis) • 系統設計(System Design) • 程式開發(Implementation) • 整合及測試(Integration and testing)
圖10-1:專案開發流程 • 使用Cycle往復式開發程序。 • 每一階段均需反覆修正。 • 總體流程亦需反覆修正。
需求分析注意事項 • 在需求分析之前,開發團隊務必要對該專案的專業領域知識有所瞭解,也就是俗稱的Domain knowledge。 • 若要涉足專業領域,開發團隊內最好有熟悉該領域的成員較佳。
提案簡報 • 開發團隊經過數次需求討論會議後,應可針對客戶需求,舉行提案會議並提出一份提案簡報。此一提案簡報應包含以下數點: • 開發團隊組織成員。 • 新系統與過去(舊系統或無軟體)的比較。 • 採用本系統可增進的效益。 • 系統功能大綱,是否可滿足客戶需求。 • 大致的開發時程與估價。
提案簡報 Cont. • 此一提案簡報將是客戶對開發團隊的第一印象,因此,不論是投影片的精彩度、抑或是主講人的表現,都是影響是否能取得標案的關鍵。 • 此一投影片首重精彩有料,要能達到吸引人注意的效果,可以舉出實例比較有無此一新系統的不同,藉以凸顯新系統的價值與必要性。 • 待客戶接受新系統的必要性之後。再大致解說系統架構、時程、估價即可。
系統分析 • 系統分析是為了更清楚的描述客戶所要的軟體藍圖。 • 透過撰寫系統分析文件(SA)與召開系統分析會議等步驟,可將軟體藍圖描繪的更清楚。
系統分析文件內容 • 前言 • 應包含背景介紹、開發動機、開發目標等綱要。 • 系統平台架購 • 應包含此一系統所使用的平台與其架構配置圖(硬體、軟體、作業系統、伺服器、資料庫等) • 系統軟體架構 • 系統軟體架構中,最主要的便是整體系統架構圖,此一圖可以以方塊功能圖或網頁架構圖繪製,其目的在於讓客戶對系統有一整體的認識,同時藉由此一架構圖,也方便與客戶討論功能配置、模組增刪等細節。
系統分析文件內容 Cont. • 軟體模組說明 • 諸如此一模組之名稱、會用到的資料庫表格、會用到的公用程式、所提供的功能等等,均需在此以表格方式詳細列出。 • 這部分牽涉到客戶需求與後續估價,因此列示越詳細越好 • 專案建置計畫 • 在對整個軟體模組都有共識後,即可討論軟體建置計畫。這部分通常以甘特圖表示。需列出開始日期與結束日期,每一項目所需時程,以及每一個檢查點或里程碑(mile stone)。
系統分析文件內容 Cont. • 交付項目 • 在此需詳列結案時應交付給客戶的項目,以表格列示以便於日後點交。亦可指明項目應以何種形式點交(光碟、檔案、原始檔或執行檔) • 經費預估 • 經費的估計依專案難度、功能多寡、客製化程度、美工設計、版型繪製、Logo製作等等各有不同,不同地區、不同行業的軟體開發費用亦有不同。
系統分析文件範例(網站架構)範例10-1:網路書店軟體架構圖系統分析文件範例(網站架構)範例10-1:網路書店軟體架構圖
軟體模組說明 • 在軟體架構清楚後,便是對每一模組的細部說明,諸如此一模組之名稱、會用到的資料庫表格、會用到的公用程式、所提供的功能等等,均需在此以表格方式詳細列出。
專案建置計畫 • 在對整個軟體模組都有共識後,即可討論軟體建置計畫。這部分通常以甘特圖表示。需列出開始日期與結束日期,每一項目所需時程,以及每一個檢查點或里程碑(mile stone)
系統設計文件說明 • 依據系統分析中客戶所提出的要求,開始設計專案細部,也就是產生系統設計文件(SD)。 • SD文件用途在建立所有專案成員在程式開發時之共識,亦即所有開發細項,均需記錄在系統設計文件中,以方便專案成員彼此間之工作分配、共用元件、模組撰寫等協調工作。
系統設計文件說明 Cont. • 專案細部主要分兩部分,第一部份是『工作流程』、第二部分為『資料庫規劃』。 • 工作流程主要即是將SA文件中所提及之功能模組,依實際運作狀況,繪製其流程圖。以一般流程圖繪製方式繪製即可,如欲進階,則可使用UML方式繪製。 • 資料庫架構(稱為Database schema),是設計文件中最重要的部分。所有程式的撰寫、運作、日後維護亦均需參考。
系統設計文件說明 Cont. • SD文件中,除了『工作流程』與『資料表架構』外,亦可補充其他有助於團隊成員更瞭解專案架構的章節,例如:整體系統架構、模組說明、元件說明、公用函式庫說明、使用手冊初稿等。 • 再一次強調,系統設計(SD)文件最主要用途為開發團隊內部溝通與協調之用。因此,撰寫此一文件時,務必以所有開發團隊成員均能瞭解,為第一優先前提。
Namo的網頁結構樹 • 在系統分析(System Analysis、SA)文件中,需要設計一『網站架構圖』,其實,此一網站架構圖,便可直接對應到Namo的網頁結構樹
圖10-7:Namo 繪製之網頁結構樹 比照原先SA文件中的網頁架構圖,修改出我們網站的架構,在網站管理員中,可以自由進行拉動、複製、修改層級、變更名稱的動作。
練習 新增一網站-會員管理: 內含 會員豋入, 會員註冊…等.