2010-09-12 106 views
6

Howdy there. Tôi đang tập hợp một nhóm phần mềm mới và tôi đang tìm kiếm các công cụ khác nhau để khắc phục những cơn ác mộng trước đây mà tôi đã gặp với các đội khác.Công cụ quản lý dự án tốt nhất, kiểm soát nguồn, trình tạo và wiki

Trong 5-6 năm trở lại đây đây là một số hiệu ứng chuyển tiếp Tôi đã đi qua:

SourceControl:
CVS => VSS => SVN

Quản lý dự án, Bug và Issue Tracking :
Giấy => PostIt Ghi chú => OneNote => BugNet => OnTime

Wiki và Tài liệu:
Lời + Mạng Chia sẻ => ScrewTurn Wiki

Builder Tự động hóa:
Cruise Control + MSBuild

Bây giờ, đặc biệt vì SVN và tình hình Wiki, tôi nhìn vào bắt đầu từ đội bóng này với một cái gì đó mới mẻ. Trong quá khứ chúng ta đã có những cơn ác mộng với SVN, và chúng ta càng cố gắng sửa chữa nó, điều tồi tệ nhất nó sẽ trở thành. Thách thức khác tôi có là tìm một thứ gì đó ổn định và tích hợp. Bạn có thể tưởng tượng rằng BugNet + SVN + ScrewTurn + CruiseControl + MSBuild là những loài động vật khá khác nhau, vì vậy sự tích hợp và sức mạnh tổng hợp là rất quan trọng; Tôi không muốn nhảy qua lại giữa 10 ứng dụng khác nhau để báo cáo lỗi hoặc giao nhiệm vụ và xem lại công việc đã hoàn thành và xem nhật ký repo.
Vì vậy, nhóm nghiên cứu mới và tôi đã nói này ra cho một vài ngày nay, và tôi nghĩ rằng chúng tôi đã thu hẹp nó xuống đến 2 posibilities:

1. TFS 2010
Ưu điểm:
- Giải pháp tất cả trong một. Nó thực sự có tất cả, bao gồm một mẫu quá trình SCRUM mới.
- Giao diện người dùng rất thân thiện và tích hợp SharePoint.
- WYSIWYG Wiki và Tích hợp Office.
Nhược điểm:
- Chi phí trả trước cao về phần cứng và thời gian quản trị. Phần mềm quá, nhưng nó không ảnh hưởng đến chúng tôi bởi vì chúng tôi có một thuê bao MSDN với phần mềm miễn phí.
- Tôi do dự về việc kiểm soát nguồn của TFS. SC dựa trên tệp và với kho lưu trữ trung tâm giống như SVN và VSS. Tôi thực sự không muốn rơi vào cùng một vấn đề mà chúng tôi đã có trong quá khứ.

2. FugBUgs + Lò nung + CC
Ưu điểm:
- Lò nung sử dụng Mercurial, với tất cả những lợi ích của kiểm soát nguồn phân tán.
- Chi phí trả trước tối thiểu và thời gian lập kế hoạch để thiết lập và chạy. $ 30,00 cho mỗi người dùng mỗi tháng.
- Giao diện người dùng web rất thân thiện.
- Trình soạn thảo Wiki WYSIWYG.
- Trình theo dõi vấn đề rất đơn giản và các công cụ quản lý dự án. Nó sẽ dễ dàng tích hợp các quá trình SCRUM.
Nhược điểm:
- Thiếu công cụ tự động hóa xây dựng cho các quy trình tích hợp hơn (như TFS). Vì vậy, điều này sẽ có nghĩa là chúng tôi sẽ phải tiếp tục đập đầu của chúng tôi với các chức năng dòng lệnh và các nhiệm vụ cộng đồng để duy trì công nhân xây dựng của chúng tôi.

Quay trở lại trong ngày, tôi đã sử dụng Hệ thống nhóm Visual Studio 2005 và tôi đã không lấy những kỷ niệm đẹp nhất với tôi về hệ thống; nhưng TFS 2010 mới có vẻ là một cược rất chắc chắn. FogBugz và Mercurial là kinda như những đứa trẻ mới trong khối và họ mang lại tư duy tươi cho các quá trình mới, nhưng như mọi khi đây là một thanh kiếm cạnh đôi.
Bất kỳ ai có kinh nghiệm vững chắc với bất kỳ vấn đề nào trong số này? Chúng ta có thiếu lựa chọn thứ 3 không? Bạn có viên đạn bạc đó cho vấn đề của tôi không?

  1. Công cụ tích hợp
    1.1. Kiểm soát nguồn
    1.2. Wiki
    1.3. Tự động hóa bản dựng
    1.4. Quản lý dự án
    1.5. Issue Tracker
  2. Minimize Nguồn Control nhánh và xung đột sáp nhập (vâng, nó là cần thiết để chúng tôi chi nhánh ra và hợp nhất)
  3. thân thiện giao diện người dùng (không phải ai cũng là CMD hacker)
  4. WYSIWYG Wiki.
  5. Đường cong học tập dành cho nhà phát triển.
  6. Thời gian để hoàn thành tất cả hoạt động của VS. Giá trị dài hạn.

Nhóm mới có 4 thành viên nhóm + 1 Giám đốc dự án (Scrum Master) và 1 Giám đốc sản phẩm (Product Owner). Vì vậy, chúng tôi đang nói về một nhóm tương đối nhỏ và mới. phạm vi và dự án mà chúng tôi sẽ thực hiện là lớn, các ứng dụng doanh nghiệp có nhiều dự án và các biến thể phân nhánh

+0

Để kiểm soát nguồn: git là bậc thầy của các chi nhánh! :) – tauran

+0

"SC dựa trên tệp và với kho lưu trữ trung tâm giống như SVN và VSS. Tôi thực sự không muốn rơi vào cùng một vấn đề mà chúng tôi đã có trong quá khứ". Đây không phải là trường hợp với TFS. Kiểm soát nguồn TFS là tất cả trong db quan hệ. – Robaticus

+1

Không đồng ý với giả định rằng có một lượng lớn chi phí phần cứng hoặc thời gian quản trị cần thiết cho TFS. Với một nhóm dev nhỏ, như bạn có, bạn có thể dễ dàng lưu trữ các ứng dụng và các tầng dữ liệu trên các máy tính để bàn chạy một hương vị của Máy chủ, hoặc có thể làm một thiết lập máy đơn trên một hộp mạnh hơn. Thời gian quản trị cũng không rộng. Theo các hướng dẫn từ MS, TFS có thể được thiết lập trong một vài giờ (chủ yếu là chờ đợi cho việc cài đặt). Chúng tôi tạo ra SGs trong AD và lập bản đồ cho các dự án của chúng tôi, vì vậy chúng tôi thậm chí không cần phải chạm vào TFS để thay đổi nhân sự. "Nó chỉ hoạt động." ;-) –

Trả lời

1

tôi đề nghị bạn sử dụng TFS năm 2010 và Visual Studio 2010 (nếu bạn đang phát triển Net Applications)

Bạn không cần phải lo lắng về SC tại TFS. TFS lưu trữ mọi thứ trong SQL Server DB. TFS hoạt động trên một máy chủ web, vì vậy bạn có thể kết nối điều khiển nguồn của mình ở nơi bạn muốn.

Theo dõi WI là dấu cộng. TFS có cơ chế theo dõi WI tuyệt vời. Bạn có thể tùy chỉnh WI của bạn nếu bạn muốn. TFS hỗ trợ quá trình phần mềm bổ sung như MSF, CMMI hoặc Agile.

Khả năng kiểm tra của TFS 2010 là hoàn hảo. Nếu bạn sử dụng với Visual Studio 2010, bạn có thể tối đa hóa tính hiệu quả của mình với TFS 2010.

Phân nhánh gây phiền toái khi thời gian kết hợp; nhưng TFS 2010 allways giúp bạn. Bạn có thể theo dõi các thay đổi tại nguồn của bạn trước khi các chi nhánh và hợp nhất.

TFS 2010 Cơ chế xây dựng hỗ trợ WorkFlow. Vì vậy, bạn có thể tùy chỉnh quá trình xây dựng của bạn một cách dễ dàng; nếu đây không phải là okey cho bạn, bạn có thể sử dụng các tập tin batch bổ sung (MsBuild).

TFS 2010 có một hoạt động quản lý dễ dàng hơn sau đó TFS năm 2008 và 2005. Bạn có thể dễ dàng tạo ra các tác nhân xây dựng, máy móc, bộ sưu tập dự án, vv ...

TFS 2010 hỗ trợ hầu hết các sản phẩm MS; chẳng hạn như MS Office. Excel có tích hợp tuyệt vời với TFS hoặc MS Project. Đừng quên Sharepoint.

TFS không chỉ là một hệ thống quản lý mã nguồn, TFS là một hệ thống quản lý dự án, hệ thống quản lý vòng đời ứng dụng, hệ thống theo dõi workitem, và vân vân ..

Nhưng tôi biết bạn không thể sử dụng TFS từ MSDN Dự bị vì mục đích thương mại. Vì điều này chỉ dành cho thử nghiệm và chỉ có 5 người dùng có thể kết nối (tôi không chắc chắn)

Ít nhất, bạn không phải thiết lập TFS trên máy chủ chuyên dụng nếu bạn muốn (điều này không được khuyến nghị). Bạn có thể thiết lập trên Win7 nếu bạn muốn và TFS có thể làm việc trên SQL Server Express

Vì vậy, tôi đề nghị bạn TFS 2010. Nếu bạn đang phát triển .Net Apps không có gì có thể tốt hơn TFS.

+0

Chúng tôi cuối cùng đã quyết định cho TFS 2010. Cảm ơn tất cả mọi người vì những phản hồi tuyệt vời! –

+0

Xin chúc mừng :) –

0

Cho đến nay tôi đã rất hài lòng với atlassian sản phẩm. JIRA tích hợp rất tốt với subversion. Nếu bạn cung cấp thẻ văn bản trong thư cam kết của mình, JIRA cũng sẽ hiển thị các thay đổi về mã có liên quan đến vấn đề. Thay vì sử dụng FishEye, websvn là công cụ được lựa chọn là giao diện người dùng web svn. Nếu bạn chỉ tìm kiếm một 'wiki', thì foswiki sẽ làm một công việc tốt. Nhưng tôi đang tìm kiếm nhiều hơn từ một góc linux tại chuỗi công cụ.

2

Bạn có vẻ như đang tìm kiếm thứ gì đó như Trac.

Trac là hệ thống theo dõi vấn đề và wiki nâng cao cho các dự án phát triển phần mềm. Trac sử dụng một phương pháp tối giản để quản lý dự án phần mềm dựa trên web. Nhiệm vụ của chúng tôi là giúp các nhà phát triển viết phần mềm tuyệt vời trong khi tránh xa con đường. Trac nên áp đặt càng ít càng tốt vào quá trình và chính sách phát triển được thiết lập của một nhóm.

Nó cung cấp giao diện cho Subversion (hoặc các hệ thống kiểm soát phiên bản khác), một wiki tích hợp và các tiện ích báo cáo thuận tiện.

Trac có thể được mở rộng bằng các plugin. Các Trac-Hack wiki là nơi để đi cho các plugin.

Đây là một câu hỏi về lưu lượng truy cập khác yêu cầu recommended Trac plugins.

3

Nhóm của bạn sẽ lớn đến như thế nào và mọi người sẽ sử dụng phương pháp/vai trò nào?

Tôi sẽ nói nếu đó là một nhóm lớn, TFS có thể phù hợp hơn với nhu cầu của bạn.
Đặc biệt nếu bạn cần xuất bản lên hơn hoặc có thêm vai trò xác định trong nhóm của bạn.

Tuy nhiên nếu bạn muốn có giải pháp quy mô nhỏ hơn, phù hợp với nhóm nhỏ hơn, điều gì đó giống như SVN/Trac/Cruise Control có thể phù hợp nhất với nhu cầu của bạn.

+0

Nhóm mới có 4 thành viên trong nhóm + 1 Giám đốc dự án (Scrum Master) và 1 Giám đốc sản phẩm (Product Owner). Vì vậy, chúng tôi đang nói về một nhóm tương đối nhỏ và mới. –

+0

Tôi phải thêm rằng phạm vi và dự án mà chúng tôi sẽ thực hiện là lớn, các ứng dụng doanh nghiệp có nhiều dự án và các biến thể phân nhánh. –

+1

Máy chủ TFS của bạn có thể lưu trữ mọi thứ và không cần phải cực kỳ mạnh mẽ. Điều quan trọng nhất để tìm kiếm là đĩa nhanh. TFS sẽ là một DVCS trong tương lai gần ... Việc phân loại và sáp nhập các khiếu nại từ năm 2005 và 2008 (cũng được thành lập) là một điều của quá khứ. Tôi sử dụng Git thường xuyên và b/m trong TFS 2010 chỉ là tốt. SVN sẽ không cắt giảm nhu cầu của một đội nữa. Git/Hg hoặc TFS cho phép bạn thực hiện các thực hành tốt về cách ly phát triển. Nếu bạn đang đi làm việc bị ngắt kết nối từ mạng TFS, hãy đi DVCS. Nếu bạn định kết nối mọi lúc. Truy cập TFS. –

0

Tuyệt đối không có ý định phạm tội, nhưng ... bạn tiếp tục thay đổi - bạn đã xem xét lý do tại sao chưa? Và bạn tự tin rằng bạn sẽ không thấy mình thay đổi lần nữa như thế nào. Đầu tư thêm thời gian và công sức vào việc thắt chặt thời gian này.

Nếu không có lời khuyên về các công cụ cụ thể, tôi sẽ khuyên bạn nên làm hai việc.

1) tìm kiếm công cụ chuỗi - không chỉ là tập hợp các công cụ. Xem ví dụ Seeking a true "tool-chain" thảo luận về các công cụ hoạt động tốt với nhau. Một luồng công việc mượt mà hơn sẽ tiết kiệm thời gian và có thể làm tăng cơ hội thành công của dự án.

tôi lưu ý rằng bạn nói “Bạn có thể tưởng tượng rằng BugNet + SVN + ScrewTurn + CruiseControl + MSBuild là động vật hoàn toàn khác nhau, vì vậy hội nhập và sức mạnh tổng hợp là rất quan trọng ”, vì vậy tôi nghĩ rằng chúng tôi đang trong thỏa thuận về một

rằng

2) bạn cần sự chấp nhận từ những người sẽ sử dụng những công cụ này. Đừng trình bày chúng với một kẻ lảo đảo, hãy hỏi những gì họ nghĩ - trước. Trong thực tế, vải chúng cho các đề xuất. Điểm này có thể khó hiểu về điểm trước đó.