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