View
236
Download
0
Embed Size (px)
Citation preview
09CHAPTER
軟體工程 9-1 寫程式 9-2 軟體開發生命週期
計算機概論 2
9-1 寫程式 K.I.S.S – Keep It Simple and Stupid
可讀性 (Readability) : 命名 (naming) :以清楚、有意義、統一為原則
ex :
排版 : 該換行就換行,讓版面整齊不擁擠
int a,b; 語意不清 int dividend, divisor; 語意較清
int a,b; 語意不清 int dividend, divisor; 語意較清
程式碼不是只用一遍程式碼不是只用一遍維持程式碼簡單又乾淨,有好的 Readability維持程式碼簡單又乾淨,有好的 Readability
計算機概論 3
可讀性程式碼範例
改寫後
計算機概論 4
可靠性程式碼範例 可靠性是指程式牢靠穩定,禁得起使用者的操作
加入判斷句,避免 n為負數的情況下遞迴呼叫,並在螢幕上顯示訊息
計算機概論 5
程式碼與註解 程式碼與註解:
程式碼是給機器讀的,註解則是給程式人員看的 程式碼透過編譯器 (compiler) ,組譯器 (assembler)
等處理而轉化成機器可讀的機器碼 (machine code) C 語言中註解的種類:
註解的用意: 此段程式碼的功能,變數的意義,使用何種演算法,
撰寫或是改版的日期… etc
/* 這是註解 */ or /* 這是註解 */ or
// 這是註解// 這是註解
計算機概論 6
圖 9-1 軟體的轉譯步驟
軟體設計
編 譯 器
機器語言
組 譯 器
訂 製 者使用需求
組合語言
計算機概論 7
程式碼與註解範例
計算機概論 8
週期 5 大階段: 軟體開發兩大分類:
9-2 軟體開發生命週期需求分析需求分析 設計設計 編碼編碼 測試測試 維護維護
瀑布式模型 (waterfall)瀑布式模型 (waterfall) 螺旋式模型 (spiral)螺旋式模型 (spiral)
計算機概論 9
計算機概論 10
圖 9-3 瀑布式模型的生命週期
需求分析
設計
編碼
測試
維護
計算機概論 11
瀑布式模型:五大階段是採取線性進行的
優點 • 適合開發商業用軟體• 一個版本一個週期
缺點 發覺錯誤的時間點太晚,風險太大
計算機概論 12
螺旋式模型開發
計算機概論 13
螺旋式模型: 每一個螺旋都代表了一點點的
沒問題才繼續做下一圈的螺旋。優點 在發展初期找到可能問題,避免日後重大
錯誤的發生。缺點 • 發展時間過長
• 不適合商用軟體的開發
需求 設計 實做 測試
計算機概論 14
圖 9-4 螺旋式模型
圖 9-5 採用螺旋式模型發展,規模從小型擴展到大型
計算機概論 15
軟體開發流程
計算機概論 16
圖 9-6軟體開發的過程及角色分工
計算機概論 17
需求分析:理解市場的需求或是客戶的需求
計算機概論 18
計算機概論 19
設計: 使用者介面設計使用者介面設計 系統架構文件設定系統架構文件設定測試文件設定測試文件設定
計算機概論 20
編碼 由上而下 (Top- Down Approach)由上而下 (Top- Down Approach)
由下而上 (Bottom-Up Approach)由下而上 (Bottom-Up Approach)
計算機概論 21
測試:不知程式之邏輯設計直接測試不知程式之邏輯設計直接測試針對程式之邏輯設計測試是否運作正常針對程式之邏輯設計測試是否運作正常
黑箱測試黑箱測試白箱測試白箱測試
計算機概論 22
計算機概論 23
計算機概論 24
維護