技術問答
技術文章
iT 徵才
Tag
聊天室
2024 鐵人賽
登入/註冊
問答
文章
Tag
邦友
鐵人賽
搜尋
2023 iThome 鐵人賽
0
Software Development
深入淺出設計模式 - 使用 C++
系列 第
31
篇
《軟體工程篇 - 3》 — 軟體工程的方法論 (Methodology)
15th鐵人賽
softwareengineering
JC
2023-10-13 23:14:33
669 瀏覽
分享至
SDLC Methodology
幾種常見的 SDLC 方法論
瀑布模型 (Waterfall)
瀑布模型是最早的 SDLC 方法之一,它將軟體開發過程劃分為一系列嚴格和線性的階段
階段
需求分析
系統設計
實現
測試
部署
維護
優缺點
優點: 易於理解,管理相對簡單
缺點: 不適合需求變更頻繁的項目,缺乏靈活性。
迭代和增量模型 (Iterative and incremental)
這種模型將軟體開發過程劃分為小的迭代,每次迭代都會產生可運行的產品
階段
初始計劃
迭代開發
增量實現
優缺點
優點: 靈活,能快速適應變更
缺點: 需要嚴格的管理和計劃
螺旋開發 (Spiral)
螺旋模型結合了瀑布模型的線性和迭代的特點,並在每個迭代中加入風險分析
階段
計劃
風險分析
工程
評估
優缺點
優點: 高度適應性,能有效管理風險。
缺點: 需要高度的專業知識,成本較高。
敏捷開發 (Agile)
敏捷開發是一種軟體開發方法論,強調靈活性、迭代和與客戶的緊密合作
它是一種思維方式,而非一個具體的工具或框架
基本原則
客戶滿意度: 通過持續交付有用的軟體
變更接受度: 即使在開發後期也能接受變更
短週期交付: 經常性地交付可運行的產品
持續合作: 與客戶和開發者持續合作
簡單性: 做最少量的工作以達成目標
常用框架和方法
SCRUM: 是一種實現敏捷開發的框架。它提供了一個結構化的環境,用於解決複雜問題
Kanban
Lean
Extreme Programming (XP)
SCRUM
基本元素
角色: Scrum Master, Product Owner, Development Team
事件: Sprint, Daily Standup, Sprint Review, Sprint Retrospective
產物: Product Backlog, Sprint Backlog, Increment
基本流程
計劃: 創建 Product Backlog
執行: 進行短週期(Sprint)的開發
檢查和調整: 在 Sprint Review 和 Sprint Retrospective 中進行
敏捷開發與 SCRUM 的關聯
實現方式: Scrum 是敏捷開發的一種具體實現方式
價值觀和原則: Scrum 實踐了敏捷開發的核心價值觀和原則
客戶參與: 在 Scrum 和敏捷開發中,客戶參與被視為關鍵元素
迭代開發: Scrum 通過短週期(Sprints)實現敏捷開發的迭代原則
優點: 高度靈活,快速適應變更
缺點: 需要高度的客戶參與,可能缺乏文檔
Reference
https://www.scrumalliance.org/ScrumRedesignDEVSite/media/ScrumAllianceMedia/Files%20and%20PDFs/VER5-scrum-framework_2020.pdf?_gl=1
iv0ey8
_ga
NTcwMDM4MDU2LjE2OTcyOTUwMDc.
_ga_FQREGB3E3L*MTY5NzI5NTAwNi4xLjAuMTY5NzI5NTAwNi42MC4wLjA.
留言
追蹤
檢舉
上一篇
《軟體工程篇 - 2》 — 軟體開發生命週期 (SDLC) & 安全軟體發展生命週期 (SSDLC)
下一篇
《軟體工程篇 - 4》 — 軟體工程管理的量度 (Measures / Metrics)
系列文
深入淺出設計模式 - 使用 C++
共
37
篇
目錄
RSS系列文
訂閱系列文
7
人訂閱
33
《軟體工程篇 - 5》 — 軟體測試方法 (Software Testing)
34
《補充》 — Design Patterns Used Across Different Layers in Distributed System
35
《補充》 — 30+ Golden Rules in System Design
36
《補充》 — 5 Classic Caching Strategies
37
《進階補充》 — Linux Kernel 中的經典 C Macro
完整目錄
尚未有邦友留言
立即登入留言
iThome鐵人賽
參賽組數
1064
組
團體組數
40
組
累計文章數
22211
篇
完賽人數
600
人
看影片追技術
看更多
{{ item.subject }}
{{ item.channelVendor }}
|
{{ formatDate(item.duration) }}
直播中
熱門tag
看更多
15th鐵人賽
16th鐵人賽
13th鐵人賽
14th鐵人賽
12th鐵人賽
11th鐵人賽
鐵人賽
2019鐵人賽
javascript
2018鐵人賽
python
2017鐵人賽
windows
php
c#
windows server
linux
css
react
vue.js
熱門問題
VMware remote console下載....
幼兒會亂按桌機開關關停桌機,奇怪以前的桌機需長按5秒才能關停,怎麼現在的桌機一按就關停了?請問有什麼方法或設定可以解決幼兒亂按關停桌機的問題.謝謝!!
如何規劃一個安全的網路管制區
求推介好用 AI 工具!
公司大量報廢 3C 產品如何清理?
如何解決搜尋網址的摘要被導去垃圾站的問題?
Kali Linux如何執行exe檔?
用UE5做了遊戲,已經丟上google play封測中,想問怎麼串內購跟將遊戲存檔存在google帳戶
玩玩SQL~將備註敘述裡面的數字縮零調整~求SQL改善
中小公司 郵件系統、人資系統 更換請益
熱門回答
中小公司 郵件系統、人資系統 更換請益
幼兒會亂按桌機開關關停桌機,奇怪以前的桌機需長按5秒才能關停,怎麼現在的桌機一按就關停了?請問有什麼方法或設定可以解決幼兒亂按關停桌機的問題.謝謝!!
如何宣告讓任何 IP 都能連線的資料庫 (WorkBench)
如何規劃一個安全的網路管制區
HILINK VPN 連線 NAS
熱門文章
Awesome Go Classroom Site
什麼是高內聚與低耦合的程式架構?
Angular 多專案架構
【讓機器人做】自動截取網頁資料 + 排程器篇 II
虛擬機安裝Windows11解決TPM及本機安裝問題
IT邦幫忙
×
標記使用者
輸入對方的帳號或暱稱
Loading
找不到結果。
標記
{{ result.label }}
{{ result.account }}