2010-06-03 19 views

Trả lời

5

Tôi không nghĩ rằng biểu đồ UML là một phần thiết yếu của tài liệu dự án cho dù chúng ta đang nói về các dự án lớn hay nhỏ.

Nhận xét tốt xung quanh cung cấp nhiều giá trị hơn so với sơ đồ phức tạp.

Cá nhân tôi có UML hiển thị là đồ chơi của thế giới học thuật. Đó là nơi duy nhất tôi đã nghe và thấy mọi người chạy xung quanh với UML, SOA và vân vân.

Trong thực tế làm việc của tôi, tôi hầu như không thấy UML chút nào. Vâng, có lẽ một lần trong dự án của tôi và tại công việc hiện tại của tôi, nơi chúng tôi đã có một vài biểu đồ tám tuổi (và chỉ là không được chấp nhận) một nơi nào đó trên máy chủ FTP nội bộ.

+0

+1 Để nói rằng chúng không cần thiết nhưng tôi không đồng ý về nhận xét - việc xây dựng tốt với mã mô tả, dễ đọc hữu ích hơn nhiều so với nhận xét. Ngoài ra, tôi nghĩ rằng UML là một món đồ chơi của thế giới học thuật là một chút - họ chắc chắn đặt quá nhiều niềm tin vào việc tạo mã UML để cứu tất cả chúng ta - nhưng UML vẫn có một sử dụng thực tế - tùy thuộc vào tình huống. –

+1

@David Relihan: Tôi không nói UML hoàn toàn vô dụng. Tôi nghĩ nó hơi bị đánh giá quá mức. Sử dụng UML không tự động dẫn đến phần mềm chất lượng. Chỉ cần sử dụng nó như một hình thức tài liệu nếu nó phù hợp với nhu cầu của bạn. –

0

Vui lòng xem câu trả lời của tôi cho tương tự Q here. Mặc dù đây không phải là phải

1

Thông thường UML chính thức là quá nhiều đối với các dự án nhỏ. Chỉ cần dính vào sơ đồ lớp cơ bản và sơ đồ ca sử dụng đơn giản.

Các dự án nhỏ (theo kinh nghiệm của tôi) thường xuyên hơn có thể thay đổi để sơ đồ của bạn sẽ lỗi thời thường xuyên. Bạn có nhiều khả năng để giữ một sơ đồ ít chính thức được cập nhật hơn làm lại tất cả các công cụ UML ưa thích.

5

Vâng, nó thực sự phụ thuộc vào dự án. Tôi nghĩ rằng đó là sai lầm khi chỉ cần tạo ra bất kỳ sơ đồ UML nào như là một quy tắc mà không đánh giá xem nó có thực sự hữu ích hay không.

Tuy nhiên có một số tình huống rõ ràng khi họ đang hữu ích:

  • Nếu dự án của bạn sẽ được bất kỳ cách nào lớn về mặt cấu trúc OO sau đó nó thường là hữu ích để tạo ra một sơ đồ lớp. Bằng cách đó bạn có thể đối phó trong trừu tượng cho đến khi nó là thời gian để bị mắc kẹt vào chi tiết.

  • Nếu bạn dự án sẽ chủ yếu là giao diện người dùng thì có thể khá hữu ích khi tạo sơ đồ Ca sử dụng như một cách xác định yêu cầu. Điều này đặc biệt hữu ích nếu bạn có thể đưa khách hàng của mình mua phương thức này.

  • Nếu có vẻ như hệ thống của bạn sẽ có nhiều tương tác giữa các đối tượng thì việc tạo sơ đồ trình tự có thể hữu ích để hiểu tương tác. Ngoài ra, tôi nghĩ rằng các sơ đồ trình tự là trực quan nhất đối với các nhà phát triển khi tôi nhận thấy rất nhiều nhà phát triển theo bản đồ sơ đồ các tương tác như thế này - ngay cả khi họ không quen thuộc với UML - trong sơ đồ powerpoint \ visio đơn giản.

  • Biểu đồ tuyệt đối rõ ràng là hữu ích nếu hệ thống của bạn sẽ sử dụng nhiều kỹ thuật và yêu cầu nhiều HW.

Tôi nghĩ điểm mấu chốt là chỉ sử dụng UML khi phần mềm trở nên phức tạp đến mức mà chúng ta cần phải suy nghĩ trong trừu tượng - UML giúp hình dung và ghi lại những khái niệm trừu tượng.

+1

Đồng ý và tôi sẽ thêm rằng bất kỳ quy trình nào cũng phải được điều chỉnh cho dự án. Không có giải pháp nào phù hợp với tất cả khi nó đến quy trình phát triển – chrisbunney

+0

@chrisbunney Chính xác - nhưng không phải vì muốn thử !!! –

0

UML đã chết, không ai quan trọng sử dụng nó.

Những người duy nhất sử dụng UML là các chuyên gia tư vấn, những người viết bài và đang cố gắng trở nên chính thức và ưa thích và thiếu chất.

Nếu UML thật tuyệt vời tại sao tôi không thể tìm thấy bất kỳ dự án nào mà Google xuất bản trên googlecode?

UML cho Ruby hoặc Python hoặc DOT NET hoặc Java ở đâu?

+0

Đó không phải là một chút cực đoan? UML là một công cụ như bất cứ thứ gì khác. Tôi đồng ý rằng việc nhấn mạnh nhiều đến mức đã được đặt vào nó trong quá khứ nhưng chắc chắn nó vẫn còn sử dụng nó. –

+0

bạn nói rằng UML đã chết, vậy bạn khuyên bạn nên sử dụng điều gì khi chúng tôi muốn thiết kế một dự án lớn? –

+0

Tôi nghĩ MS và Sun sử dụng UML hoặc ít nhất là biểu đồ có thể so sánh nội bộ. Ruby và Python là các dự án cộng đồng (afair), chúng không được lên kế hoạch như phần mềm thương mại mà thay vào đó là phát triển. Nguồn mở thường có vấn đề với các dự án phức tạp cao biến thành đống bùn lớn (điều đó không có nghĩa là các dự án là xấu, chỉ cần họ đã lên kế hoạch nhiều hơn). Ngoài ra: Hãy thử phân biệt với những gì thực sự được sử dụng và những gì bạn được phép xem. Có lẽ google sử dụng sơ đồ nhưng không xuất bản chúng? – dbemerlin

0

UML đã chết vì sử dụng các công cụ crapy nguồn mở !! Nhiều công ty sử dụng các công cụ miễn phí và chỉ tạo vài sơ đồ, không có đào tạo gì cả, sau đó họ nói rằng điều này không hữu ích. Việc sử dụng UML không chuyên nghiệp và rất hạn chế là một thảm họa thực sự cho các dự án !!

+0

Hài hước như thế nào Lý do công ty đằng sau UML thậm chí không thể sử dụng RUP/UML để thiết kế và xây dựng một sản phẩm chất lượng. Người ta sẽ nghĩ rằng công cụ của họ sẽ là một xác nhận của quá trình của họ ... có lẽ nó là .. có lẽ đó là lý do tại sao các công cụ hút, bởi vì UML sucks. –

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