敏捷教練(scrum master)前端
1.敏捷開發概念(對比傳統瀑布式開發)java
從需求到設計git
設計到編碼docker
編碼到測試編程
測試到提交產品後端
瀑布式缺點: 需求常常改,開發人員作增量交付,迭代式開發,並可以持續發佈架構
以用戶需求爲核心,進行迭代,按部就班進行軟件開發app
敏捷強調適應性而非預見性 運維
項目需求發生變化, 項目團隊快速響應交付ide
軟件開發初期會切分紅多個子項目,各個子項目的成果都需通過測試,具有可視化,可集成,可發佈
主體軟件隨時可發佈,可交付給用戶
2.敏捷開發人員架構劃分
部門->項目組->小團隊
8-10我的的小團隊
小團隊裏有四個角色
PO:product owner 產品或業務負責人(產品經理或項目經理) 肯定產品前景原景 定義產品發佈內容 交付任務的優先級 交付時間
SM:Scrum Master 敏捷專家 (team leader) 熟悉敏捷開發模式和實施流程
DEV:開發人員
QA:測試人員
3.敏捷開發相關的四個會議
1.敏捷計劃會 一個月一次月初 一個迭代開一次 任務明確 需求劃分 故事點劃分(小的任務點 1-3天完成的)
迭代或衝刺:Sprint 週期 一個月 因此每一年12個迭代
2.天天立會 對着任務展板 說 從昨天的立會到如今,我完成了什麼.從如今到明天立會,我計劃完成什麼.有什麼阻礙了個人進度,風險和困難拋出 讓leader進行抉擇
我這邊進度正常,沒障礙
3.敏捷評審會
向客戶和利益關係人展現 團隊在本次迭代中完成的工做並獲取客戶的反饋
4.敏捷回顧會 一個月一次月尾
每一個迭代結束時進行,總結工做中的經驗和教訓 30-60分 整個團隊參加
1.定量分析
迭代是否完成目標
收集評審迭代的度量指標 wiki的工具鏈上作
2.定性分析
主觀化的 那些好的保持 很差的中止 改進的,提建議,在下一個迭代改進
4. 平時寫代碼怎麼樣的, 任務如何完成
立會上領取故事點(任務點)
跑測試用例,功能測試徹底經過才能push
ci流程 代碼質量的保證 不經過重複上述流程 跑過了進入team leader那進行代碼評審code review 不經過 在循環改代碼直到經過 入庫 閉環反饋機制操做
合代碼宗旨
人與人不影響 最大程度隔離 作任務能全速推動
任務與任務中間不影響
不須要每一個人任務作完,主分支才能交給客戶,隨時隨地交付
敏捷是一種科學作事的方式
從人員劃分 開會 故事點劃分 編碼裏的守護防禦系統 開發和代碼評審的方式
circle ci
目前參與過公司的項目,公司專業從事敏捷開發,也比較成熟,能夠分享下其中的細節。
一、概念,能夠參考敏捷宣言,強調適應變化,四句指導
個體和互動 高於 流程和工具(動員每一個人積極交流,相互之間能夠 battle,頭腦風暴);
工做的軟件 高於 詳盡的文檔(好的代碼是不須要註釋和文檔的,頂多有一些規範指南一類的在線協做文檔);
客戶合做 高於 合同談判(真心實意爲客戶創造價值,而不止於眼前的功能交付,這個很難,由此還專門有一個角色去 control 這件事);
響應變化 高於 遵循計劃(計劃是趕不上變化的,隨時改需求隨時變更迭代計劃,有迭代的概念);
基於於右邊,而更注重左邊的價值,並非說徹底拋棄傳統的瀑布式開發。
二、人員架構
由於公司沒有所謂的各類領導,這裏就說下交付組裏,我所見的一些角色,也是天天在一塊兒工做的小夥伴:
PM:項目管理者,這裏不是項目經理,負責和客戶籤合同,各類會議的組織者,沒有項目經理那種權利
BA:業務分析師,專門和客戶談需求,超強的交流和控制客戶的能力,幾乎天天都和客戶泡在一塊兒開會過需求,瘋狂開會,驅動客戶(咱們組的BA是御姐型的,氣場極強)
QA:測試人員
DEV:開發人員,其中有掌握技術話語權的 TL
PO:比較特殊,是客戶某的部門領導人,通常和 PM 單獨溝通,幾乎沒出現過,網友同樣的存在
一個團隊通常 1 PM、1 BA、1 QA 、6 DEV (三前三後,至少兩個TL)
這裏沒有 MS,因此每一個人都是 SM,233333
先作好運維,再作運維開發。zabbix,elk,ansible,docker,k8s這些工具自帶的功能基本夠一開始用了。業務驅動
用了這麼多PM工具,Atlassian JIRA Confluence + 插件是挺好用的,這個平臺就是JAVA開發裏的一個很牛產品
ThoughtWorks 瞭解一下