2011-01-11 85 views
3

我們正在定義我們的軟件開發流程,並希望從該組獲得關於此主題的反饋。靜態分析工具的使用 - 使用Clear Case/Quest

我們的團隊遍佈美國,加拿大和印度 - 我想制定一些簡單的標準規則,所有團隊都將應用到他們的代碼中。

我們利用清除案例/任務和RAD

我一直在尋找的PMD,CPP,CheckStyle的和FindBugs的作爲開始的。

我的想法是將這些放入ANT中,讓開發人員手動執行這些操作。我意識到這樣做,你必須對每個開發者都會這樣做有一定的信任。

另一個想法是將一些構建器添加到IDE中,該構建器將運行規則的子集(保持構建過程輕),然後在檢入代碼時添加另一組(重)。

其他一些理想是利用Cruse Control之類的東西,並在Clear Case/Quest處於空閒狀態時設置它們以運行這些靜態分析工具以及單元測試。

想知道其他人是否已經這樣做,是否成功或可以提供經驗教訓。

回答

1

我們:哈德森使用

  • ClearCase的任何「重」靜態分析步驟
  • Eclipse的IDE與你提到有一個較小的一套規則

注集成的工具:我們還沒有真正設法使用我們不同的用戶羣(美國 - 歐洲 - 香港)複製品,我們正在使用CCRC而不是多個站點。

ClearCase主要在歐洲使用,分析步驟發生在夜間(UMT時間),並使用快照視圖來確保它儘可能快地進行(動態視圖涉及訪問較大時的太多網絡流量文件)。

+0

所以在你的Eclipse IDE中,你是否有編譯器在編譯代碼時運行靜態工具?或者您是否依賴開發人員在簽入代碼之前運行這些項目? – boyd4715 2011-01-12 01:32:50

+0

@ bod4715:IDE在編譯時運行這些工具(僅適用於Findbugs已更改的類)。儘管如此,開發人員可以停用它們。 – VonC 2011-01-12 04:59:12

1

如果代碼庫不是太大,或者定期編譯,如果是的話,我會使用hudson對scm更改運行靜態分析。

好吧,我無法抗拒......如果你的團隊被分散開來,爲什麼在這個世界上你會使用clearcase?作爲一個必須使用它的人,當我們公司轉向Mercurial時,團隊速度大大提高。這個多站點垃圾簡直太糟糕了。