国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

解析本土化軟件配置管理

2019-11-17 04:53:09
字體:
來源:轉載
供稿:網友
軟件工程如同一座大迷宮,道路曲折,但是卻隱藏有無數的珍寶。每個探險迷宮的人在找到捷徑和珠寶后,都會有對于迷宮的獨特感悟。為了更好的指引有心的探險人,編輯部將從迷宮各個不同的入口,請來那些已經發掘過迷宮的先行者們,和他們一道感悟這座迷宮。假如您已經找到了迷宮的珠寶或者即將向迷宮探險,都可以和我們聯系。 版本控制,是軟件開發中一項必不可少的治理手段,也是軟件配置治理(Software Configuration Management,SCM)的一個部分。而軟件配置治理,在軟件開發過程中占據著非常重要的地位,并且是CMM 2級的一個要害域。

迅速發展的軟件配置治理配置治理的概念源于美國空軍,為了規范設備的設計與制造,美國空軍1962年制定并發布了第一個配置治理的標準“AFSCM375-1,CM During the Development & Acquisition Phases”。

而軟件配置治理概念的提出則在20世紀60年代末70年代初。當時加利福利亞大學圣巴巴拉分校的Leon PResser教授在承擔美國海軍的航空發動機研制合同期間,撰寫了一篇名為“Change and Configuration Control”的論文,提出控制變更和配置的概念,這篇論文同時也是他在治理該項目(這個過程進行過近一千四百萬次修改)的一個經驗總結。

Leon Presser在1975年成立了一家名為SoftTool的公司,開發了配置治理工具:Change and Configuration Control(CCC),這是最早的配置治理工具之一。

隨著軟件工程的發展,軟件配置治理越來越成熟,從最初的僅僅實現版本控制,發展到現在的提供工作空間治理、并行開發支持、過程治理、權限控制、變更治理等一系列全面的治理能力,已經形成了一個完整的理論體系。同時在軟件配置治理的工具方面,也出現了大批的產品,如:最聞名的ClearCase;開源產品CVS;入門級工具Microsoft VSS;新秀Hansky Firefly。

在國外已經有30多年歷史的軟件配置治理,但在國內的發展卻是在21世紀這幾年的事。但是通過專家們的介紹,我們感受到,國內的軟件配置治理已經取得了迅速發展,并得到了軟件公司的普遍認可。

劉曉:1997年,開始在國內從事配置治理。那個時候假如和客戶講解配置治理,先要講配置治理是干什么的,能對企業起到什么作用。到了2002年,就可以直接介紹軟件配置治理的策略和使用。現在很多公司都能夠自主的向工具廠商咨詢,確實是已經意識到配置治理的重要性了。思維加速是一家致力于業務架構平臺研發的軟件公司,有20多人的專業開發隊伍。對于這樣一種規模的軟件公司,在國內應該是最為普遍的。也許它實施配置治理的過程就是國內企業實施配置治理的一個典范。讓我們看看思維加速公司的總工宋興烈是如何描述的。

宋興烈:思維加速一直在從事較大規模的復雜軟件開發,需要對代碼、文檔進行版本控制,早期采用了最簡單的VSS(Visual Source Safe)進行版本控制。隨著開發的深入,版本控制已經遠遠不能滿足需要了,分支治理、權限治理的需求就出來了。但是VSS卻不能滿足這些要求,因此我們對VSS進行了二次開發。現在在VSS上能夠基本實現分支治理、權限控制、版本發布構建治理了。但隨著軟件規模的增長,我們正預備用CVS等開源軟件作為我們產品新版本的版本控制和治理工具。

這時,思維加速對于配置治理的理解上也有了一個較大的變化。配置治理已經不僅僅是對軟件代碼、文檔的版本治理,而應該是需求變更、缺陷治理等的一個整合體。對于需求變更、缺陷治理,最簡單的傳統處理方式是采用文檔記錄的形式,比如用Word文檔進行控制。對于一個逐漸成熟的開發團隊而言,這樣的傳統方法已經完全不能適用。對于商業性的成熟配置治理工具,由于相對昂貴的價格,也沒有采用。因此思維加速的辦法是:自己進行開發,建立一個適用的治理系統。配置治理的三大誤區 國內軟件公司實施配置治理,已經取得了很多進步,也提高了軟件的質量。但是對于軟件配置治理,有很多公司對它的理解比較模糊,或者在真正的配置治理實施過程中存在著誤區。從專家們的討論中,我們了解到國內的軟渲霉芾碇饕腥齜矯嫻奈笄?/P> 誤區一:版本控制=軟件配置治理

也許很多人不承認自己對于軟件配置治理的理解局限在版本控制上,但在具體實施配置治理的過程中,就只見版本控制,而不見真正的配置治理。其實版本控制只是配置治理最基本的層次和功能。當然只有進行了版本控制,其他的功能才可能會逐漸提升。就是一個基本的版本控制,在部分軟件公司中也并不是一個非常正規和完善的過程。

這種問題,歸根到底在于軟件公司對軟件開發流程的治理在意識上不夠重視。國內軟件企業的開發治理不是很規范,即使在大的軟件公司里面,項目組對于開發治理的關注也是有限的。另外一個原因是由于開發治理中資源的不足,比如:資金的缺乏(導致不能購買功能齊全、價格昂貴的商業產品)、人力資源(不能招聘專業的配置治理人員),因此不能在公司內部實施體系化的配置治理。誤區二:編碼水平最差=配置治理員

配置治理人員是配置治理具體實施的人。可以說公司制定了配置治理的流程和規章只是配置治理實施的基礎,而真正配置治理能否實施,能否有效,要害在于從事配置治理的人員。但國內的一個誤區是:在選擇配置治理人員的時候,是尋找開發團隊中編碼水平最差的人。比如張三寫代碼不行,測試也不行,那就只好去從事配置治理工作了。

谷煉對此深有體會。谷煉有在日本Rational和國內在配置治理領域工作的經歷。相比國內低水平的配置治理人員,國外公司一般都由有豐富編程經驗的人擔任軟件配置治理人員,有的時候配置治理部分的工作職責直接由開發經理擔任。配置治理人員的級別也相當高,被認為是項目經理的左右手,拿的是雙薪。

其實一個SCM人員的責任相當重大,一個團隊所有的代碼、文檔都由其負責,國內似乎是處于一個相當尷尬的境地,認為一個什么都不懂的人擔任,才能保證這些代碼文檔的安全。

當然國內也不泛重視配置治理的公司。據傳說華為就非常重視軟件配置治理,除了設置CTO、CEO,似乎還設置了一個CMO(Configuration Management Officer,或者叫配置經理)。
誤區三:采用配置治理工具=有效的配置治理

配置治理工具在軟件配置治理中起著不可替代的作用。沒有工具的支持,實施一個完整合格的配置治理是不可想象的。也許正是因為工具的重要,造成了很多軟件公司對于工具的迷信,以為只要部署了配置治理工具,尤其是一個專業的商業工具,就自以為建立了配置治理體系。

使用好的工具并不能代表就能實施好配置治理。因為工具就是工具,工具不能代替治理。否則為什么總是說配置“治理”而不單單說配置“工具”呢?一個成功的配置治理工具實施,需要兩個方面的條件:一是規范的軟件開發流程;二是合格的配置治理參與人員,這里的配置治理參與人員包括了配置治理員、開發人員、項目經理等。

對此,鄧小年認為:“無論怎么樣,沒有流程和規范地使用工具,那么再強的工具也沒有靈魂。比如簡單的一個check in操作,不同的人用起來可不一樣。有人修改后,進行build,然后check in;有人修改后,進行build,并簡單的測試再check in,也有人修改后馬上check in,……可看出不同的人使用工具的同一操作有不同的后果。”人——為何如此重要? 配置治理員在配置治理中是一個比較奇妙的角色,對于一個實施了配置治理、建立了配置治理工作平臺的團隊來說,他是非常重要的,整個開發團隊的工作成果都在他的掌管之下。假如他治理和維護的配置治理系統出現了問題,輕則影響團隊其他成員的工作效率,重則可能出現丟失工作成果、發布錯誤版本等嚴重的后果。配置治理員應該做什么

一般而言,配置治理人員在軟件公司中應該具有下面的幾項主要職責:

1、 提交配置治理計劃;

2、 軟件配置治理工具的日常治理與維護,各配置項的治理與維護;

3、 執行版本控制和變更控制方案;

4、 完成配置審計并提交報告;

5、 對開發人員進行相關的配置治理培訓;

6、 識別軟件開發過程中存在的問題并擬出解決方案。你是合格的配置治理員嗎

一個高水平的配置治理人員,對開發團隊在整體上有非常重要的作用。假如在一個企業中實施了配置治理工具如ClearCase,但沒有專業的配置治理人員治理,就像一個拖拉機安裝了一個奔馳的馬達,還是跑不快。早期在國內企業中,找一個合適的配置治理人員很困難,最后由系統治理人員來擔任。并且使用不同的配置治理工具,對配置治理人員的要求就不一樣,如VSS對配置治理人員的技術水平要求就較低。

按照配置治理的職責要求,一個合格的配置治理人員需要具備哪些素質呢?

1、職業道德是第一位的,這是由于配置治理人員負責治理軟件公司最為重要的資產。

2、軟件配置治理的專業知識,最好要精通一種配置治理工具,沒有工具是不可能實施軟件配置治理的,否則那只能是效率極其低下的紙上談兵。

3、項目治理的知識,對于軟件開發流程非常熟悉。一般而言,最好要經歷幾個軟件項目的開發治理過程,或者擔任過項目經理,對軟件開發的全過程有比較清楚的了解;有軟件開發經驗可以增強說服力,降低實施的難度,并且能夠切身以開發人員的身份去體會配置治理,才能改進配置治理過程。

4、有一定的大局觀,有一定的IT背景知識,對系統(操作系統、網絡、數據庫等方面)比較熟悉。

除了個人素質上的要求,在性格上也有一些共性的東西。

1、溝通技巧:在部署和實施配置治理的時候,肯定會碰到一些抵觸,對于程序員而言,使用配置治理之前,沒有什么約束,但是在實施后,會有一些約束,認為這并不是自己的工作。假如在使用中出現了問題,就需要配置治理人員進行溝通,并且能夠解決問題。

2、穩重、細心、有耐心。配置治理工作需要和開發人員、測試人員、項目經理打交道,但是他們對于遵循配置治理流程和工具不會非常的熱心,因此需要配置治理人員能夠穩重、有耐心。

3、能夠吵架。有的時候,假如溝通不行,就需要采取強迫的手段來保證具體配置工作的要求得到執行。記得在網上見到這樣的一句話:搞配置治理原來很好玩,就是要——兇~!配置治理員的困惑

用友軟件工程公司的耿延煜現在擔任一個項目的配置治理員,她對于軟件配置治理人員的看法更有代表性。在用友軟件工程公司,采取的是一個項目設置一個配置治理人員,主要工作是項目產品的版本治理,并配合項目經理對項目中的文檔、代碼進行檢查。但是這個配置治理人員并不是專職的,在承擔配置治理職責之外,還會承擔一些項目的開發、測試工作。作為一個兼職的SCM人員,耿延煜認為,有兩個問題需要注重:

一是如何在工作任務緊張的時候保證配置治理工作?

作為一個配置治理人員,并不是僅僅從事配置治理工作,很多時候,會接受項目經理指派的開發工作,這個時候如何處理配置治理工作和開發工作的權重就非常重要,尤其是在一個項目處于緊要關頭的時候,開發進度緊,很多公司就忽視了配置治理,但是往往這個時候,配置治理才是最為重要的,并且這個時候出了問題,對于項目的影響會更大。因此在很多情況下,必須付出時間從事配置治理工作,如加班。出現了問題,配置治理人員必須立即進行修復。

二是定位模糊。很多SCM人員對自己的定位都比較模糊,沒有將自身置于一個項目治理者的角色。感覺自己只是項目組的一個無關緊要的角色。國內軟件開發中,向來就重開發人員,輕視測試人員,配置治理人員就更得不到重視了。然而,配置人員應該是一個項目經理的Backup,應該向項目經理發展。配置治理員的最佳實踐

對于配置治理人員的部門設置,鄧小年認為,一般國內大中型軟件公司在配置治理部門可以設置如下的三個職位:

1、配置治理經理:負責公司全面的配置治理方面的工作;

2、創建發布工程師:主要負責創建和發布,部署產品;

3、工具治理工程師:主要負責開發、維護配置治理工具,對工具的使用進行培訓。

考慮到我國的現實情況,在一個軟件公司中的每個項目專門設置一個SCM人員還不現實。
從上面可以看出,配置治理員的最佳實踐和推廣方式可以采用是“兼職+專職”的形式來進行。具體而言,可以這樣安排:

1、軟件公司在公司級必須有一個整體的配置治理解決方案和策略,對于各個具體開發的項目也有一個適合項目需要的配置治理策略。

2、公司級的SCM策略上,設置專職的配置治理人員,一般由水平較高的人員擔任,符合上面提到的配置治理員的素質要求。

3、項目級的SCM策略上,設置兼職的配置治理人員,一般可以由開發人員或者質量人員來兼任。

4、專職SCM人員和兼職SCM人員之間的溝通協調。并且對于SCM工具,如ClearCase,一般在前期部署的時候,任務比較緊張,在實施以后,操作就比較簡單,只需要一個兼職人員就可以了。通過專職SCM人員和兼職SCM人員之間不斷地反復溝通,才能將一個SCM過程具體實施好。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 平武县| 行唐县| 溆浦县| 永川市| 鄄城县| 沁源县| 霍林郭勒市| 太原市| 河北省| 长治县| 锡林郭勒盟| 清水河县| 延寿县| 安义县| 文登市| 成武县| 富宁县| 盐亭县| 新竹市| 林州市| 台湾省| 教育| 通许县| 梧州市| 和田县| 鄂伦春自治旗| 罗甸县| 余姚市| 启东市| 宁津县| 商河县| 昆山市| 大足县| 抚远县| 武邑县| 乌兰察布市| 泾川县| 临西县| 平遥县| 塔城市| 图木舒克市|