軟體開發中的資源管理

2021-07-04 00:17:23 字數 2343 閱讀 9892

應該說這是乙個很大的題目,在這裡我只是簡單談談我的一些心得體會,不當之處,還請大家賜教。

要論述軟體開發中資源處理,首先要明確軟體開發中涉及到哪些資源。軟體開發中涉及三方面的資源:人力資源、**資源和文件資源。本文重點談論如何管理**資源和文件資源。

**資源一般需要通過版本管理工具進行管理。為什麼需要版本管理工具?一方面是因為現代軟體開發是乙個團隊活動,是需要進行協作開發的;另一方面版本管理具有回溯歷史版本的功能,在排錯中具有重要意義。

那麼一般常用的版本管理工具有哪些呢?在我剛參加工作時,使用的是微軟出品的vss 6.0。vss 6.0的優點是簡單,上手快,缺點是不適合複雜的協作開發環境,比如它不支援多人同時遷出同乙個檔案。當然後來微軟對vss 6.0做了公升級,不過我沒使用過比vss6.0更高的版本。現在使用的是svn。svn是乙個開源的集中式的原始碼版本管理工具,在it界中廣泛使用。現在廣泛使用的還有git。git是乙個開源的分布式的原始碼管理工具,在開源社群廣泛使用。現在它在it企業中也慢慢流行。

我最經常使用的svn有四個操作:

提交(commit):將本地修改的**上傳到伺服器

使用svn常見的目錄結構是怎樣的?具體如下圖:

從上圖可以看到乙個svn版本庫下一般有三個目錄:trunk、branches和tags。trunk很好理解,就是存放最新版本**的目錄。為什麼會有branches和tags?就是說它們的作用是什麼?branches作為存放分支版本的目錄,主要起到乙個試驗的作用。比如當你試驗乙個新的繪圖引擎,你在主幹版本試驗就不太合適。因為主幹版本的**是經常處在劇烈變動的狀態,很可能導致試驗無法進行,同時你編寫試驗**也會影響其它人的**。因此穩妥的辦法是你複製乙份主幹版本到branches目錄下作為乙個分支來試驗,待試驗通過後再和主幹版本進行**合併。tags主要作用在於存放不作改動的比較穩定的歷史版本。比如你要對外發布版本,你不可能編譯最新**來獲取乙個版本來對外發布,因為這個版本雖然是最新的,但肯定不是最穩定的,因為沒有經過嚴格測試。因此你需要從tags目錄下找乙個穩定的歷史版本來發布。

說完了自主**的管理,我們再談談第三方庫的管理。首先第乙個問題是:為什麼需要第三方庫?第三方庫的作用在於資源重用,減少開發時間。很多時候如果沒有第三方庫,要按時完成乙個軟體專案的開發是一件很困難的事情!

其次談一下第三方庫的種類。第三方庫大致分為兩種:商業第三方庫和非商業的開源第三方庫。其中商業第三方庫又可以分為提供原始碼的商業第三方庫和僅提供介面檔案和庫檔案的商業第三方庫。

如何選擇第三方庫?我的建議有以下幾條:

1.       優先選擇開源第三方庫。理由是:可以降低開發成本,同時利於定製。

2.       在沒有好的開源第三方庫的情況下優先選擇提供原始碼的第三方庫。理由是方便定製。

3.       優先選擇成熟度高的第三方庫。那麼如何判斷乙個第三方庫的成熟度?可以從以下方面考察:考察第三方庫的更新頻率,毫無疑問更新頻率越高表示越活躍,也有利於其成熟;是否有活躍的交流社群,有表示成熟度更高;考察其在搜尋引擎的搜尋結果條數,條數越多表示越成熟。

如何利用第三方庫?最基礎是直接使用其提供的介面,高階一點是根據需要新增介面,同時修改它的bug。比較高階的是在剖析它的原始碼之後進行定製。比如**對mysql和hadoop的定製。

談完了軟體開發中**管理,再談談軟體開發中的文件管理。我們談談在軟體開發中文件可以分為一下幾類:

1.       設計文件。如概要設計、詳細設計

2.       交流文件。如內部會議記錄、和甲方的交流郵件

3.       經驗總結。如技術總結、開發中用到的電子書

文件在軟體開發的作用其實是不亞於**的,但是現實中開發人員往往對文件不夠重視。其中乙個重要原因是不少開發人員體會不到文件的作用。那麼文件到底有什麼用?在我看來至少有兩方面作用:首先設計方面的文件本身就是甲方要求的,你不想寫都不行;二是文件可以作用過程資產來共享。比如專案經理不可能每來乙個新同事都通過口頭來介紹專案情況(因為專案經理沒有這個精力和時間),肯定是需要發一些文件來給他看,讓他自己來學習。又比如開發人員離職,不通過文件又如何把工作順利交接到同事手中呢?

文件也是經常變動的,因此它也是需要版本管理工具進行管理的。

最後我們看到乙個版本資料庫的目錄可以是這樣的:

在trunk目錄是這樣的:

在doc目錄是這樣的:

軟體開發管理

scrum感言 軟體流程的名稱太多,rup,v model,iso9000,cmm等等不一而足。最近接觸了scrum,收穫良多,與諸位同仁分享。自從有人類社會活動以來,就形成了各種各樣的組織和制度,上到社會體制下到家庭環境,西方到東方,社會風尚 工廠流程 等等,這些東西都具有一種共同的特點 都是為了...

Adobe Bridge CC資源管理軟體使用方法

領導讓你交乙份檔案,你花了10分鐘才找到檔案,試想,如果你平時做好檔案管理工作,還會出現這種情況嗎?同理,如果電腦中存放了大量,你也必須做好分類管理,這裡介紹一款利器 adobe bridge,這是乙個100 免費的管理工具。開啟adobe bridge cc軟體,如圖,整體風格類似於windows...

bridge優秀的資源管理軟體

adobe bridge 2022 mac是一款優秀的資源管理軟體,bridge 2022 mac提供多種人性化的功能,能夠幫助使用者對電腦的檔案進行管理,還能快速整理 檢視和尋找影象檔案.adobe bridge 是功能強大的創意資產管理工具,可讓您快速輕鬆地預覽 整理 編輯和發布多項創意資產。編...