Làm tài liệu và tự động hoá các quy trình với Rational Method Composer và Jazz: Phần 2. Chọn dùng các quy trình hiện có

Nhiều nhóm nhận thấy rất khó để một dự án được khởi đầu nhanh chóng, để các thành viên trong nhóm được định hướng đúng, để thiết lập và cấu hình công cụ, cũng như tận dụng lợi thế của các mẫu đã được chứng minh là thành công để làm các công việc của họ. Các nhóm khác được yêu cầu làm tài liệu về quy trình của họ vì lý do tuân thủ và chứng tỏ rằng họ làm theo đúng quy trình đó. Trong loạt bài gồm ba bài này, chúng tôi mô tả một cách để vượt qua những thách thức này bằng cách lấy một quy trình được định nghĩa trong Rational Method Composer (Trình soạn phương pháp Rational) và tự động hoá nó trong Rational Team Concert.

Ricardo Balduino, Kỹ sư cao cấp vè phần mềm, IBM

Ricardo Balduino là một kỹ sư phần mềm cao cấp tại IBM. Ông lãnh đạo và đóng góp vào sự phát triển của các giải pháp như Eclipse Process Framework (Khung công tác quy trình của Eclipse), IBM practices (Các cách thực hành của IBM), Collaborative Application Lifecycle Management (Quản lý vòng đời ứng dụng cộng tác), phần mềm dựa trên-Jazz và Rational Unified Process (Quy trình thống nhất Rational). 17 năm kinh nghiệm của ông trong ngành công nghiệp phần mềm cũng bao gồm việc phát triển phần mềm để tự động hóa quy trình công nghiệp và các dịch vụ tài chính, cũng như cung cấp các dịch vụ tư vấn và đào tạo để giúp các tổ chức chọn dùng các cách thực hành phát triển phần mềm chính quy và linh hoạt. Ricardo là một chuyên gia quản lý dự án (PMP) có chứng chỉ. Ông có bằng Cử nhân khoa học về Khoa học Máy tính của trường Đại học bang Sao Paulo, Brazil và có bằng Thạc sỹ khoa học về Công nghệ phần mềm của trường Đại học bang San Jose, Hoa Kỳ.



29 10 2012

Giới thiệu

Trong Phần 1 của loạt bài này (xem "Những nội dung khác trong loạt bài này), Bruce MacIsaac đã giải thích giá trị của các phương pháp phát triển phần mềm. Bài này mô tả cách lấy một quy trình được định nghĩa trong IBM® Rational® Method Composer và tự động hoá nó trong IBM® Rational Team Concert™.

Rational Method Composer dùng để quản lý, điều chỉnh và trao đổi thông tin mô tả quy trình. Nó gồm hai thành phần:

  • Các tài sản quy trình dưới dạng Thư viện quy trình của IBM (IBM Processes Library), gồm các cách thực hành và các các quy trình tạo sẵn mà bạn có thể chọn dùng ngay hoặc làm cho thích ứng để dùng.
  • Một công cụ để sáng tác, điều chỉnh, cấu hình và xuất bản các mô tả quy trình.

Xem phần Tài nguyên trong bài này để biết nơi nhận được nhiều thông tin hơn. Bạn cũng có thể tải về một phiên bản dùng thử miễn phí của Rational Method Composer từ developerWorks.

Rational Team Concert dùng để lập kế hoạch cộng tác, quản lý mục công việc, quản lý kiểm soát nguồn và các quy trình xây dựng liên tục. Nó cung cấp sự hỗ trợ cho quy trình có khả năng cấu hình cao để thích ứng với cách mà bạn muốn làm việc, do đó cho phép các thành viên trong nhóm làm việc với nhau có hiệu quả. (Xem phần Tài nguyên để biết các liên kết đến nhiều thông tin hơn.)

Các mô tả quy trình của Rational Method Composer cung cấp hướng dẫn dễ đọc với con người, cần thiết để cho các thành viên trong nhóm làm việc với nhau ngày càng hiệu quả hơn như là một nhóm. Các khuôn mẫu quy trình của Rational Team Concert cung cấp các quy tắc dễ đọc cho máy tính để cấu hình công cụ hỗ trợ cho quy trình của bạn. Kết hợp lại với nhau, cả hai ứng dụng này cung cấp một giải pháp mạnh mẽ để quản lý quy trình, thực thi quy trình và cải tiến có đo lường.

Để giải thích sự tích hợp giữa Rational Method Composer và Rational Team Concert, chúng tôi dùng đến giải pháp Rational cho Quản lý vòng đời cộng tác (CLM - Collaborative Lifecycle Management, cũng được trích dẫn trong phần Tài nguyên), gồm có các tài sản quy trình Rational Method Composer (chẳng hạn như các mô tả quy trình, hướng dẫn công cụ và các số liệu đo) và các tài sản quy trình khác (chẳng hạn như một khuôn mẫu quy trình của Rational Team Concert). Các tài sản này cung cấp tất cả hướng dẫn mà một nhóm dự án cần để cài đặt và cấu hình các công cụ CLM và chạy một dự án.


Kịch bản: Sử dụng các tài sản quy trình có sẵn

Để minh họa các khả năng tích hợp của Rational Method Composer và Rational Team Concert, chúng tôi sử dụng một kịch bản, trong đó nhóm dự án sử dụng các tài sản quy trình có sẵn (như nó vốn có).

Trong kịch bản này, chúng tôi giới thiệu giải pháp Rational cho tài sản quy trình CLM. Tài sản quy trình này do IBM phát triển để hỗ trợ việc cài đặt và cấu hình các công cụ CLM và thêm hướng dẫn quy trình về cách sử dụng các công cụ như là một phần của một vòng đời phát triển phần mềm đầy đủ.

Để minh họa việc sử dụng tài sản quy trình này, chúng tôi dùng một nhóm dự án hư cấu – nhóm dự án Business Recovery Matters™ (Các vấn đề phục hồi kinh doanh), một dự án trong chương trình Money That Matters™ của tổ chức tài chính JKE. Dự án Business Recovery Matters có một nhóm lãnh đạo dự án và đưa vào một nhóm tính năng, một nhóm triển khai và một nhóm thử nghiệm độc lập. Kịch bản này tập trung vào nhóm lãnh đạo dự án đang thiết lập môi trường và đưa nhân viên vào làm việc theo nhóm. Trong kịch bản này có các thành viên trong nhóm lãnh đạo dự án như sau:

Pam, người quản lý dự án.
Peter, kỹ sư quy trình.
Todd, chuyên gia công cụ.
Ursula, nhà phân tích nghiệp vụ.

Quyết định sử dụng công cụ nào

Nhóm lãnh đạo dự án đang xem xét chọn dùng các cách thực hành phát triển và các công cụ đã được chứng minh nhằm có thể đẩy nhanh việc bắt đầu dự án của họ và giúp họ làm việc ngày càng hiệu quả hơn.

Peter và Todd điều tra các tài sản và các công cụ quy trình sẵn có. Họ quyết định sử dụng Rational Method Composer để làm tài liệu quy trình và sử dụng Rational Team Concert cho các thành viên trong nhóm cộng tác làm việc. Tổ chức JKE mua đủ số lượng giấy phép cho nhóm này sử dụng.

Dựa vào nghiên cứu của họ, nhóm lãnh đạo cũng quyết định chọn dùng các tài sản quy trình CLM cho các mục đích sau:

  • Để nhanh chóng cấu hình các công cụ và một dự án vòng đời để nhóm bắt đầu.
  • Để sử dụng các mẫu đã được chứng minh là thành công.
  • Để cung cấp hướng dẫn có liên quan và theo bối cảnh cho các thành viên trong nhóm để nhanh chóng theo kịp tốc độ quy trình của nhóm.

Những lời khuyên:

  • Bạn có thể đọc toàn bộ kịch bản vòng đời Money that Matters để biết thêm hướng dẫn về cài đặt, thiết lập và sử dụng các công cụ CLM. (Yêu cầu đăng ký miễn phí trên Jazz.net.)
  • Để sử dụng Rational Method Composer cho việc sáng tác nội dung, bạn cần các giấy phép thích hợp. Các giấy phép này có sẵn ví dụ như giấy phép Authorized User (cho một người dùng), giấy phép Floating (cho nhiều người dùng trong nhóm) hoặc Tokens (các thẻ xác thực).
  • Để duyệt nội dung được xuất bản của Rational Method Composer, bạn cần một giấy phép Authorized User hoặc giấy phép Content Reader (Người đọc nội dung) của Rational Method Composer.

Các mục con sau đây giải thích cách họ bắt đầu và chạy dự án của mình.


Cài đặt và cấu hình các công cụ và các tài sản CLM

Todd làm theo hướng dẫn về CLM trên trung tâm thông tin của IBM, trong chủ đề Cài đặt giải pháp Rational cho CLM.

  1. Todd có các đặc quyền của quản trị viên trên các hệ thống, do đó anh cài đặt và cấu hình các công cụ CLM, gồm cài đặt và cấu hình các máy chủ, các giấy phép, những người sử dụng và v.v..

    Lưu ý: Anh ta cũng có tùy chọn để cài đặt các công cụ máy khách.
  2. Sau khi đã cài đặt và cấu hình các công cụ, Todd xác nhận rằng Jazz Team Server (JTS - Máy chủ nhóm Jazz) đang chạy, do đó anh có thể tiếp tục các bước tiếp theo.

Các tài sản quy trình của giải pháp CLM có sẵn để tải từ trang Các tài sản quy trình của giải pháp Rational của IBM.

Có hai thành phần chính để tải về: hoặc nội dung đã xuất bản hoặc nội dung từ thư viện Rational Method Composer.

  1. Với các mục đích của kịch bản này, nhóm lãnh đạo quyết định sử dụng nội dung quy trình tiêu chuẩn, do đó Todd tải nội dung quy trình Rational Method Composer đã xuất bản (có sẵn dưới dạng một tệp clm.war).

Triển khai nội dung Rational Method Composer đã xuất bản tới Jazz Team Server

  1. Để truy cập hướng dẫn quy trình của Rational Method Composer từ vùng dự án Rational Team Concert, Todd triển khai tệp clm.war lên Jazz™ Team Server (JTS), máy chủ này đang sử dụng máy chủ Tomcat mặc định đi kèm với công cụ này.
  2. Todd triển khai (tương đương với giải nén) tệp clm.war trong thư mục sau (phần in nghiêng là tùy theo hệ thống của bạn):

    Jazz_server_install_folder\server\tomcat\webapps\rmc (Thư_mục_cài_đặt_máy_chủ_Jazz\server\tomcat\webapps\rmc)

Các tài sản quy trình khác có sẵn trong giải pháp này, chẳng hạn như khuôn mẫu quy trình Rational Team Concert và khuôn mẫu Lifecycle Project Administration (Quản trị dự án vòng đời), được nhúng trong nội dung quy trình đã xuất bản.

  1. Sau khi Todd triển khai tệp clm.war, anh truy cập vào mô tả quy trình từ trình duyệt web của nhóm tại URL sau:

    http://JTS:9443/rmc/clm/index.htm

Phần tải về và các khuôn mẫu quan trọng

Trong mô tả quy trình, Todd di chuyển tới trang Getting Started > Tools Setup and Configuration (Cấu hình và Cài đặt công cụ) để tìm các khuôn mẫu Rational Team Concert và Lifecycle Project Administration.

Tải và nhập khẩu khuôn mẫu quy trình vào Rational Team Concert

  1. Todd tải về khuôn mẫu quy trình Rational Team Concert:

    clm.process.ibm.com.zip
  2. Todd nhập khẩu quy trình bằng cách làm theo các hướng dẫn của trung tâm thông tin trong chủ đề Làm việc với các khuôn mẫu quy trình.

Sau đó khuôn mẫu có sẵn để tạo ra các vùng dự án mới.

Tải và nhập khẩu khuôn mẫu Lifecycle Project Administration

  1. Cuối cùng, Todd chọn Getting Started > Tools Setup and Configuration và sau đó tải về khuôn mẫu Lifecycle Project Administration:

    rational.clm_sol.integrated.template.xml
  2. Tiếp theo, anh nhập khẩu khuôn mẫu Lifecycle Project Administration (Quản trị dự án vòng đời) bằng cách làm theo các hướng dẫn của trung tâm thông tin trong Nhập khẩu các khuôn mẫu dự án vòng đời.

Tạo một dự án vòng đời

Bây giờ các công cụ đã được cài đặt và cấu hình, máy chủ đang chạy và các khuôn mẫu đã có sẵn, Pam, người quản lý dự án thuộc nhóm lãnh đạo, có thể tạo ra một dự án vòng đời nhờ sử dụng các khuôn mẫu Lifecycle Project Administration (Quản trị dự án vòng đời).

Cô làm theo các hướng dẫn trong Tạo các dự án vòng đời từ một khuôn mẫu. Các kết quả được tích hợp vào các vùng dự án trong Rational Team Concert, Rational Quality Manager (trình quản lý chất lượng Rational) và Rational Requirements Composer (Trình soạn các yêu cầu Rational) để nhóm bắt đầu chạy dự án.

Theo mục đích của kịch bản này, Pam tập trung vào vùng dự án Rational Team Concert.

Lưu ý:

Bài này không trình bày chi tiết việc sử dụng Rational Team Concert cũng như không khám phá việc tích hợp của Rational Team Concert, Rational Quality Manager và Rational Requirements Composer. Việc tích hợp các công cụ CLM được trình bày chi tiết trên Jazz.net thông qua một kịch bản mẫu ví dụ gọi là Money that Matters Lifecycle Scenario (Kịch bản vòng đời Money that Matters) (cần phải đăng ký miễn phí trên Jazz.net).


Chạy dự án

Pam đã sẵn sàng để bắt đầu chạy dự án. Cô bổ sung một kế hoạch vòng lặp cho lần lặp thứ nhất của dự án, bổ sung các mục công việc vào kế hoạch và giao các mục công việc cho nhóm. Các mục con dưới đây trình bày tiếp về các bước này.

Thêm các thành viên của nhóm vào vùng dự án và giao cho họ các vai trò có sẵn

Mỗi vai trò trong quy trình Rational Team Concert có một mô tả ngắn được trích ra từ nội dung của Rational Method Composer. Bạn có thể truy cập vào nội dung đã xuất bản bất kể lúc nào để tìm thêm thông tin về từng vai trò, chẳng hạn như các kỹ năng cần thiết, các nhiệm vụ cần được thực hiện, các sản phẩm làm việc mà người nhận vai trò đó chịu trách nhiệm và hướng dẫn thêm.

Pam tìm thấy hướng dẫn của trung tâm thông tin trong phần Thêm các thành viên vào các dự án.

Cô thêm ID người dùng Rational Team Concert của mình vào vùng các thành viên dự án và giao vai trò Project Manager (Người quản lý dự án) cho ID của mình. Bằng cách này, cô có thể tạo các kế hoạch, các mục công việc và các thứ tương tự trong vùng dự án.

Giao các thể loại mục công việc cho các vùng nhóm

Khi vùng dự án đã được tạo ra, nó gồm có bốn vùng nhóm mặc định. Pam phải gắn các thể loại mục công việc với các vùng nhóm thực tế trước khi cô có thể tạo ra các mục công việc.

Để thực hiện những hoạt động này, Pam tìm thêm nhiều thông tin trong trung tâm thông tin của IBM trong mục Tạo vùng nhóm và gắn các thể loại mục công việc.

  1. Trong trình soạn thảo Project Area (Vùng dự án), thẻ (tab) Work Item Categories (Các thể loại Mục công việc), cô đổi tên các thể loại mục công việc theo các tên như đã đặt cho các vùng nhóm.
  2. Sau đó, như Hình 1 cho thấy, cô gắn các vùng nhóm với các thể loại mục công việc.
Hình 1. Bảng các thể loại mục công việc đã gắn với các vùng nhóm
Hai cột: Visibility, Associated Team Area

Tinh chỉnh bảng thời gian dự án

Tập hợp các lần lặp mặc định được cung cấp khi Pam tạo ra vùng dự án được coi như điểm bắt đầu.

Để thực hiện các hành động này, Pam làm theo các hướng dẫn của trung tâm thông tin, trong mục Tạo các bảng thời gian và các lần lặp.

  1. Pam sửa đổi các số lần lặp lại để xác định rõ số lần lặp lại trong một giai đoạn (dựa trên kế hoạch ban đầu và dự tính bao nhiêu lần lặp lại có thể vừa khớp với lịch trình tổng thể dự án).
  2. Cô bổ sung các ngày tháng bắt đầu và kết thúc cụ thể cho mỗi lần lặp lại và bảng thời gian chính, dựa trên lịch trình dự kiến đó.

Hình 2 cho thấy các bảng thời gian trước và sau.

Hình 2. Bảng thời gian mặc định (bên trái) và bảng thời gian sửa đổi (bên phải)
Ảnh chụp màn hình về trình soạn thảo bảng thời gian của dự án

Tạo một kế hoạch cho lần lặp đầu tiên và thêm các mục công việc vào kế hoạch

Vùng dự án được tạo ra bằng cách sử dụng các khuôn mẫu quy trình CLM có chứa các khuôn mẫu mục công việc giống với các phần khác nhau của cấu trúc phân chia công việc được định nghĩa trong Rational Method Composer. Vì vậy, đối với từng kiểu nhóm (nhóm phát triển, nhóm lãnh đạo dự án và nhóm thử nghiệm độc lập), đều có khuyến cáo các nhiệm vụ đã được cung cấp tài liệu trong mô tả quy trình và sẵn sàng để được khởi tạo trong Rational Team Concert.

Pam tìm thấy hướng dẫn về cách tạo một kế hoạch lặp lại trong trung tâm thông tin trong mục Tạo các kế hoạch.

  1. Là một phần của các nhiệm vụ lập kế hoạch và lập lịch biểu cho lần lặp đầu tiên, Pam tạo ra một kế hoạch vòng lặp cho Inception Iteration 0 (Lần lặp khởi đầu 0).
  2. Cô giao kế hoạch này cho nhóm lãnh đạo dự án.

Kế hoạch vừa tạo ra chưa có nhiệm vụ (hoặc các mục đã lập kế hoạch) nào trong đó. Pam làm theo các hướng dẫn trong Tạo các mục công việc từ một khuôn mẫu

  1. Để thêm các nhiệm vụ cho kế hoạch này, Pam sử dụng khuôn mẫu mục công việc Project Leadership Team - Inception Iteration (Nhóm lãnh đạo dự án - Lần lặp khởi đầu).
  2. Cô lưu các mục công việc thành tệp vào vùng nhóm lãnh đạo dự án và chỉ rõ những mục nào phải được hoàn thành trong Lần lặp khởi đầu 0.

Kế hoạch kết quả trông giống như kế hoạch trên Hình 3. Nó chứa các nhiệm vụ mà nhóm lãnh đạo dự án thực hiện để bắt đầu dự án, đưa nhóm này lên bàn làm việc, bắt đầu rút ra các yêu cầu và v.v.

Hình 3. Kế hoạch lặp lại được điền các nhiệm vụ từ khuôn mẫu mục công việc
Ảnh chụp màn hình cho thấy các chi tiết của kế hoạch

Sau đó, Pam có thể sử dụng các khuôn mẫu mục công việc khác để điền Construction Iterations (Các lần lặp xây dựng) và giao các mục công việc cho nhóm tính năng để tiếp tục phân tích các yêu cầu, thiết kế và thực hiện một giải pháp cho mỗi yêu cầu, thử nghiệm giải pháp đã triển khai và v.v..

Tạo thêm các mục công việc có kiểu đã định sẵn

Vùng dự án mà Pam đã tạo ra đều có sẵn các kiểu mục công việc khác nhau sẵn sàng để khởi tạo. Mỗi mục công việc có một liên kết đến thông tin liên quan trong nội dung của Rational Method Composer, chẳng hạn như một máy trạng thái cho thấy những hành động nào chuyển một mục công việc từ trạng thái này sang trạng thái khác và các liên kết đến các nhiệm vụ nào trong nội dung quy trình sẽ kích hoạt hành động đó -- hoặc chuyển tiếp trạng thái nào -- sẽ xảy ra.

Khi lần lặp đầu tiên của dự án đang diễn ra, một trong các nhiệm vụ được hiển thị trong kế hoạch trong Hình 3 là Identify and Organize Requirements (Nhận biết và Thiết lập các yêu cầu).

  1. Pam giao nhiệm vụ này cho nhà phân tích nghiệp vụ của nhóm là Ursula.

Ursula tìm thấy thông tin về việc tạo các mục công việc trong trung tâm thông tin trong mục Tạo các mục công việc.

  1. Cô quyết định làm tài liệu về công việc liên quan đến trình bày chi tiết, phát triển và thử nghiệm đơn vị việc thực hiện một câu chuyện người dùng bằng cách tạo ra một kiểu mục công việc Story (Câu chuyện).
  1. Sau khi đã tạo mục công việc câu chuyện, Ursula truy cập mô tả quy trình chi tiết thông qua liên kết được cung cấp trên mục công việc đó (xem Hình 4).

Sau đó, công việc của lần lặp này bắt đầu. Mỗi thành viên trong nhóm thực hiện các nhiệm vụ được giao cho họ và truy cập các liên kết trên các mục công việc đó để theo kịp quy trình của nhóm.

Hình 4. Truy cập hướng dẫn quy trình từ một liên kết trong mục công việc
Ảnh chụp màn hình về khung nhìn quy trình trong một mục công việc

Tóm tắt

Trong bài này, bạn thấy cách nhóm lãnh đạo Business Recovery Matters đã nhanh chóng cấu hình một dự án vòng đời và bắt đầu trong vài giờ, chứ không phải vài ngày. Bạn đã thấy cách nhóm này đã lợi dụng các mẫu đã được chứng minh là thành công để tạo ra các kế hoạch và các mục công việc. Bạn cũng đã thấy mỗi mục công việc cung cấp các liên kết đến các hướng dẫn có liên quan và theo ngữ cảnh như thế nào để cho các thành viên trong nhóm có thể nhanh chóng theo kịp tốc độ quy trình của nhóm.

Tài nguyên

Học tập

Lấy sản phẩm và công nghệ

  • Tải Rational Method Composer để dùng thử miễn phí.
  • Tải Rational Team Concert từ Jazz.net và dùng thử nó miễn phí lên đến 10 dự án như bạn muốn (cần phải đăng ký). Nếu bạn muốn, thay vào đó bạn có thể thử nó trong sandbox mà không cần cài đặt nó trên hệ thống riêng của bạn.
  • Tải các phiên bản dùng thử miễn phí của phần mềm Rational khác.
  • Đánh giá phần mềm IBM khác theo cách phù hợp nhất với bạn: Tải nó về dùng thử, dùng thử một sản phẩm trực tuyến, sử dụng một sản phẩm trong một môi trường đám mây hoặc dành một vài giờ trong SOA Sandbox để tìm hiểu cách thực hiện kiến trúc hướng dịch vụ có hiệu quả.

Thảo luận

Bình luận

developerWorks: Đăng nhập

Các trường được đánh dấu hoa thị là bắt buộc (*).


Bạn cần một ID của IBM?
Bạn quên định danh?


Bạn quên mật khẩu?
Đổi mật khẩu

Bằng việc nhấn Gửi, bạn đã đồng ý với các điều khoản sử dụng developerWorks Điều khoản sử dụng.

 


Ở lần bạn đăng nhập đầu tiên vào trang developerWorks, một hồ sơ cá nhân của bạn được tạo ra. Thông tin trong bản hồ sơ này (tên bạn, nước/vùng lãnh thổ, và tên cơ quan) sẽ được trưng ra cho mọi người và sẽ đi cùng các nội dung mà bạn đăng, trừ khi bạn chọn việc ẩn tên cơ quan của bạn. Bạn có thể cập nhật tài khoản trên trang IBM bất cứ khi nào.

Thông tin gửi đi được đảm bảo an toàn.

Chọn tên hiển thị của bạn



Lần đầu tiên bạn đăng nhập vào trang developerWorks, một bản trích ngang được tạo ra cho bạn, bạn cần phải chọn một tên để hiển thị. Tên hiển thị của bạn sẽ đi kèm theo các nội dung mà bạn đăng tải trên developerWorks.

Tên hiển thị cần có từ 3 đến 30 ký tự. Tên xuất hiện của bạn phải là duy nhất trên trang Cộng đồng developerWorks và vì lí do an ninh nó không phải là địa chỉ email của bạn.

Các trường được đánh dấu hoa thị là bắt buộc (*).

(Tên hiển thị cần có từ 3 đến 30 ký tự)

Bằng việc nhấn Gửi, bạn đã đồng ý với các điều khoản sử dụng developerWorks Điều khoản sử dụng.

 


Thông tin gửi đi được đảm bảo an toàn.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=70
Zone=Rational
ArticleID=843143
ArticleTitle=Làm tài liệu và tự động hoá các quy trình với Rational Method Composer và Jazz: Phần 2. Chọn dùng các quy trình hiện có
publish-date=10292012