2011-11-08 42 views
6

Trong công ty chúng tôi, chúng tôi đã bắt đầu sử dụng VS 2010 để lập mô hình hệ thống của chúng tôi, trong các dự án mô hình hóa được gọi là. Chúng được giữ dưới sự kiểm soát nguồn TFS2010.Mô hình tai họa dự án

Đó là tất cả tốt cho một người sử dụng duy nhất, nhưng ngay sau khi chúng tôi giới thiệu công cụ này để toàn bộ đội ngũ kiến ​​trúc của chúng tôi, chúng tôi chạy vào một vấn đề lớn: Nó xử lý nhiều người dùng vô cùng tồi tệ! Để tôi chạy qua một kịch bản đơn giản.

  1. Kiến trúc sư 1 kiểm tra ra một sơ đồ hiện và hoạt động trên nó trong một thời gian
  2. Kiến trúc sư 2 cho biết thêm một sơ đồ mới và hoạt động trên nó trong một thời gian
  3. Kiến trúc sư 2 kiểm tra trong sơ đồ mới của mình
  4. Kiến trúc sư 1 kiểm tra trong những thay đổi của mình cho dự án lập mô hình
  5. Kiến trúc sư 2 mở lại sơ đồ của mình, chỉ để thấy rằng tất cả các phần tử trong đó đều bị thiếu!

Như tôi đã hiểu điều này, vấn đề là dự án kiến ​​trúc dựa trên một số tệp xml, và cụ thể là một phần lớn xml quan trọng được gọi là ModelDefinition/Architecure.uml. Nó chứa rất nhiều kiến ​​thức về các sơ đồ trong dự án lập mô hình. Khi nhiều người thực hiện nhiều thay đổi đối với tệp này cùng một lúc, các công cụ (TFS, VS) không xử lý việc hợp nhất được yêu cầu một cách tự động và chúng tôi còn lại với các vấn đề tương tranh lớn.

Vì vậy, trong trường hợp của tôi, bởi vì Architecture.uml rằng kiến ​​trúc sư 1 kiểm tra trong không biết gì về các yếu tố kiến ​​trúc sư 2 gia tăng, những yếu tố này bị ghi đè hoặc bị hủy hoại.

Chúng tôi muốn tránh chia nhỏ dự án thành nhiều dự án nhỏ hơn, vì điều đó có nghĩa là chúng tôi phải xác định lại các thành phần mô hình hóa của chúng tôi (các lớp, diễn viên, ca sử dụng, thành phần, v.v.). Bằng cách sử dụng một giải pháp duy nhất, chúng tôi có thể xác định các yếu tố đó ở một nơi và tái sử dụng chúng trong mọi biểu đồ khác.

Vì vậy, chúng tôi hiện tại 'giải pháp' là làm việc sử dụng outs kiểm tra độc quyền. Vì vậy, chỉ có một kiến ​​trúc sư có thể làm việc cùng một lúc!

Tôi đã hy vọng rằng ai đó đã đưa ra một giải pháp tốt hơn cho điều này, cho phép chúng tôi làm việc hiệu quả hơn.

Trả lời

2

Hãy thử chia & chinh phục: Có thể mỗi kiến ​​trúc sư hoạt động trên chi nhánh cá nhân của mình & sau đó mọi thứ được hợp nhất thành 'Thân cây'?
Xung đột sẽ hiển thị trong các lần hợp nhất này.


EDIT
Bạn có thể sử dụng một công cụ XML cụ thể, giống như những người đã trình bày here.
Bằng cách làm như vậy, bạn nên giữ cách tiếp cận phân nhánh mỗi kiến ​​trúc sư, nhưng thay vì sử dụng một đơn bước TFS-merge bạn có thể:

  • Thực hiện một sự so sánh thư mục giữa bạn thư mục 'chi nhánh' & của bạn ' trunk 'thư mục. Mỗi tệp được tìm thấy là một chủ đề cho phép hợp nhất theo sau.
  • Hợp nhất từng tệp được tìm thấy vào thư mục 'chi nhánh' của bạn, sử dụng một trong các công cụ được trình bày trong bài viết. Tôi đã sử dụng Altova DiffDog, nó rất tốt - nhưng đi kèm với một giải thưởng cao.
  • Kiểm tra xem mọi thứ có ổn không, sau đó cam kết 'chi nhánh'.
  • Bây giờ hợp nhất với TFS-hợp nhất thành 'thân cây' mà bây giờ sẽ là một hợp nhất tầm thường.
+0

Cảm ơn bạn đã trả lời. Nó sẽ đảm bảo rằng không có yếu tố nào bị mất mà không có ai chú ý. Tuy nhiên, tôi đã hy vọng để tránh phải tự kết hợp các tập tin, vì nó là một tập tin xml. Đó là kinh nghiệm của tôi rằng công cụ hợp nhất mặc định đi kèm với TFS 2010 được trang bị kém để xử lý các tệp xml, ví dụ: một yếu tố di chuyển có thể được xác định là coflict mặc dù nó thực sự không phải là; nó chỉ là vị trí hoán đổi trong một danh sách không được sắp xếp. Tôi làm một đầu vào mặc dù, và tôi sẽ mang nó đến đội của tôi cho concideration. Tôi sẽ chờ đợi chấp nhận nó ngay bây giờ, để xem liệu có ai khác đã gặp phải và giải quyết cơn ác mộng này không :) – havardhu

+0

Tôi hoàn toàn đồng ý với "hy vọng tránh phải kết hợp XML theo cách thủ công". Đừng chờ đợi một cách tốt hơn :) – pantelif

+0

Cảm ơn bạn đã chỉnh sửa, tôi tin rằng điều này có thể cải thiện quy trình một chút. Chuyển tiếp tích hợp các thân cây bằng cách sử dụng một công cụ hợp nhất XML đúng nên là một bước đi đúng hướng :) – havardhu

Các vấn đề liên quan