課程簡介
本課程的目標授課對象是接觸配置管理不久的相關工作人員,包括配置管理員、開發(fā)人員、相關團隊管理者等,是一門基礎課。本課程幫助學員了解軟件配置管理工作的職責,理解軟件配置管理的基本工作原理,掌握其基本工作方法。這將使學員有能力結合所在團隊的實際情況,進行日常配置管理工作,制定具體項目的配置管理解決方案,并有能力發(fā)現(xiàn)和實施一些配置管理方面的改進。在教學方法上,結合實際工具、基于具體案例的課堂互動是本課程的特色。
目標收益
使學員有能力結合所在團隊的實際情況,勝任日常配置管理工作,制定具體項目的配置管理解決方案,并有能力發(fā)現(xiàn)和實施一些配置管理方面的改進。
培訓對象
本課程的目標授課對象是接觸配置管理工作不久的相關工作人員,是一門基礎課。
課程大綱
軟件配置管理概述 | 這一部分講解軟件配置管理的基本概念:用什么樣的方法,解決什么樣的問題。既給出CMMI、IEEE中的標準定義,也從若干具體場景出發(fā),深入淺出講解。最后講解配置管理員和配置管理團隊的使命和發(fā)展。 |
版本控制 | 這一部分結合Git,講解版本控制方面的基礎內容。利用版本庫保存歷史信息;代碼傳遞從網(wǎng)狀模式到星形模式;版本覆蓋的預防;用變更集來組織工作;分布式版本控制方法。這一部分也將對版本合并的原理進行探討。 |
代碼評審與 特性分支管理 |
這一部分結合Gerrit和Merge Request / Pull Request,講解代碼評審的概念、意義和方法。此外,代碼評審工具經(jīng)常擴展為feature/topic分支的質量管理和流程控制工具。因此這部分也將介紹相關內容。 |
集成、測試與交付 | 這一部分講解系統(tǒng)集成和交付的基本過程。在介紹基線的概念、基本的開發(fā)-集成-測試-交付流程后,重點討論不同階段對質量的要求,以及如何達到。同時也將講解構建管理、版本命名等方面的內容。 |
持續(xù)集成與持續(xù)交付 | 這一部分結合Jenkins,對持續(xù)集成、持續(xù)交付這一重要潮流進行單獨介紹。詳細講解其原理和工具,并講解在不同開發(fā)場景下如何克服困難,實現(xiàn)持續(xù)集成和持續(xù)交付。 |
分支的原理和應用 | 這一部分首先講解分支的基本原理,在這之后將講解分支的若干典型應用。適當使用分支,能顯著提高并行工作的能力、提高效率;能有效重用已有的開發(fā)成果、避免重復開發(fā)。但分支也有可能因不當使用、過度使用而適得其反。何時適用什么樣的分支模式、分支之外的替代解決方法將被討論。 |
軟件復用的通用模式 | 這一部分講解當企業(yè)研發(fā)不止一個產品(版本)時的軟件配置管理方法。正確地使用適當?shù)姆种В⒉皇侨糠椒?。還可以通過適當?shù)脑O置,通過組件間的組合,等等。應用適當?shù)姆椒?,可以有效地?jié)約成本、縮短研發(fā)周期、提高生產效率,總而言之,提高企業(yè)的競爭力。 |
其他內容概覽 | 這一部分是對軟件配置管理領域的更多話題的概覽。包括組織級配置管理、缺陷跟蹤、文檔管理、構建管理、安裝包管理、發(fā)布管理、部署管理、對多地點開發(fā)和跨組織合作的不同方式的支持等等。這部分是選講內容,主要是針對學員給出的具體需求進行講解,對提出的具體問題給予解答。 |
軟件配置管理概述 這一部分講解軟件配置管理的基本概念:用什么樣的方法,解決什么樣的問題。既給出CMMI、IEEE中的標準定義,也從若干具體場景出發(fā),深入淺出講解。最后講解配置管理員和配置管理團隊的使命和發(fā)展。 |
版本控制 這一部分結合Git,講解版本控制方面的基礎內容。利用版本庫保存歷史信息;代碼傳遞從網(wǎng)狀模式到星形模式;版本覆蓋的預防;用變更集來組織工作;分布式版本控制方法。這一部分也將對版本合并的原理進行探討。 |
代碼評審與 特性分支管理 這一部分結合Gerrit和Merge Request / Pull Request,講解代碼評審的概念、意義和方法。此外,代碼評審工具經(jīng)常擴展為feature/topic分支的質量管理和流程控制工具。因此這部分也將介紹相關內容。 |
集成、測試與交付 這一部分講解系統(tǒng)集成和交付的基本過程。在介紹基線的概念、基本的開發(fā)-集成-測試-交付流程后,重點討論不同階段對質量的要求,以及如何達到。同時也將講解構建管理、版本命名等方面的內容。 |
持續(xù)集成與持續(xù)交付 這一部分結合Jenkins,對持續(xù)集成、持續(xù)交付這一重要潮流進行單獨介紹。詳細講解其原理和工具,并講解在不同開發(fā)場景下如何克服困難,實現(xiàn)持續(xù)集成和持續(xù)交付。 |
分支的原理和應用 這一部分首先講解分支的基本原理,在這之后將講解分支的若干典型應用。適當使用分支,能顯著提高并行工作的能力、提高效率;能有效重用已有的開發(fā)成果、避免重復開發(fā)。但分支也有可能因不當使用、過度使用而適得其反。何時適用什么樣的分支模式、分支之外的替代解決方法將被討論。 |
軟件復用的通用模式 這一部分講解當企業(yè)研發(fā)不止一個產品(版本)時的軟件配置管理方法。正確地使用適當?shù)姆种?,并不是全部方法。還可以通過適當?shù)脑O置,通過組件間的組合,等等。應用適當?shù)姆椒?,可以有效地?jié)約成本、縮短研發(fā)周期、提高生產效率,總而言之,提高企業(yè)的競爭力。 |
其他內容概覽 這一部分是對軟件配置管理領域的更多話題的概覽。包括組織級配置管理、缺陷跟蹤、文檔管理、構建管理、安裝包管理、發(fā)布管理、部署管理、對多地點開發(fā)和跨組織合作的不同方式的支持等等。這部分是選講內容,主要是針對學員給出的具體需求進行講解,對提出的具體問題給予解答。 |