TÓM TẮT

1. Giới thiệu chung về Rational Rose 7

Rational Rose 7 là một trong những công cụ CASE (Computer Aided Software Engineering) nổi tiếng và được sử dụng rộng rãi trong việc mô hình hoá, thiết kế phần mềm theo chuẩn UML (Unified Modeling Language). Được phát triển bởi Rational Software (sau này được IBM mua lại), Rational Rose 7 cung cấp một môi trường đồ họa mạnh mẽ cho phép các nhà phát triển, kiến trúc sư phần mềm và analyst mô tả, phân tích và thiết kế hệ thống một cách trực quan.

1.1. Tại sao nên dùng Rational Rose 7?

  • Hỗ trợ chuẩn UML đầy đủ: Bao gồm các diagram như Use‑Case, Class, Sequence, Activity, Statechart, Component, Deployment…
  • Tích hợp với quy trình phát triển: Có khả năng generate code (Java, C++, C#…) và reverse engineering (từ code lên diagram).
  • Quản lý yêu cầu và tài liệu: Cho phép liên kết yêu cầu, test case, và các tài liệu khác trong một môi trường duy nhất.
  • Hỗ trợ làm việc nhóm: Thông qua Rational ClearCase hoặc Rational Team Concert, các thành viên có thể cộng tác trên cùng một mô hình mà không lo xung đột.

1.2. Đối tượng sử dụng

  • Kỹ sư phần mềm muốn mô hình hoá kiến trúc hệ thống.
  • Analyst cần tạo và quản lý Use‑Case, yêu cầu nghiệp vụ.
  • Giáo viên và sinh viên trong các khóa học thiết kế phần mềm, UML.
  • Quản lý dự án muốn theo dõi tiến độ, đảm bảo tính nhất quán giữa tài liệu và code.

2. Chuẩn bị môi trường làm việc

2.1. Yêu cầu phần cứng và phần mềm

Yêu cầu Minimum Khuyến nghị
Hệ điều hành Windows 7/8/10 (32‑bit) Windows 10/11 (64‑bit)
CPU Intel Pentium 4 2.0 GHz Intel i5 trở lên
RAM 2 GB 8 GB trở lên
Đĩa cứng 500 MB dung lượng cài đặt 2 GB + không gian cho dự án
Java Runtime Environment JRE 1.6 JRE 1.8 hoặc mới hơn (để chạy plugins)

Lưu ý: Rational Rose 7 không còn được hỗ trợ trên Windows 11 64‑bit một cách chính thức, nhưng có thể chạy qua chế độ Compatibility Mode hoặc sử dụng máy ảo (VMware/VirtualBox) với Windows 10.

2.2. Cài đặt Rational Rose 7

  1. Tải file cài đặt: Đăng nhập vào IBM Passport Advantage hoặc trang tải của IBM để lấy file Rational_Rose_7.0.0.exe.
  2. Chạy file cài đặt: Nhấp chuột phải → Run as administrator.
  3. Chọn ngôn ngữ: Tiếng Anh là mặc định; nếu muốn, có thể chọn tiếng Việt (có sẵn trong một số gói ngôn ngữ).
  4. Thiết lập thư mục cài đặt: Mặc định là C:\Program Files\Rational\Rose.
  5. Cấu hình Java: Khi được yêu cầu, chỉ định đường dẫn tới JRE 1.6 hoặc 1.8.
  6. Hoàn tất: Sau khi cài đặt xong, khởi động chương trình từ shortcut trên Desktop.

2.3. Kiểm tra bản cài đặt

  • Mở Rational Rose → Help → About Rational Rose.
  • Kiểm tra version: “Rational Rose 7.0.0 (Build xxxx)”.
  • Đảm bảo không có lỗi warning liên quan tới Java hoặc missing DLL.

3. Các khái niệm cơ bản trong UML và Rational Rose 7

Trước khi thực hiện vẽ, bạn cần nắm vững một số khái niệm sau:

Thuật ngữ Định nghĩa Diagram tương ứng
Actor Đối tượng (người dùng, hệ thống khác) tương tác với hệ thống. Use‑Case Diagram
Use‑Case Mô tả một chức năng nghiệp vụ mà hệ thống cung cấp cho actor. Use‑Case Diagram
Class Định nghĩa kiểu dữ liệu, thuộc tính, phương thức. Class Diagram
Object Thực thể của một class trong một thời điểm cụ thể. Object Diagram
Sequence Mô tả luồng thông điệp giữa các đối tượng theo thời gian. Sequence Diagram
Activity Mô tả quy trình, luồng công việc. Activity Diagram
Statechart Mô tả các trạng thái và chuyển đổi của một đối tượng. Statechart Diagram
Component Đơn vị triển khai phần mềm (thư viện, module). Component Diagram
Deployment Mô tả cách các component được triển khai trên hardware. Deployment Diagram

Rational Rose 7 cung cấp toolbox cho mỗi loại diagram, giúp kéo thả các element (actor, class, message…) vào canvas.

4. Quy trình tạo dự án và vẽ diagram trong Rational Rose 7

4.1. Tạo một Project mới

  1. File → New → Project…
  2. Đặt tên dự án (ví dụ: MyFirstRoseProject).
  3. Chọn Location để lưu file .mdl (model file).
  4. Nhấn OK. Rational Rose sẽ mở một Model Explorer ở phía bên trái.

4.2. Tạo một Use‑Case Diagram

  1. Model Explorer → Right‑click vào Project → New → Use‑Case Diagram.
  2. Đặt tên diagram (ví dụ: UC_Login).
  3. Trên Toolbox, chọn Actor → click vào canvas → nhập tên User.
  4. Chọn Use‑Case → click vào canvas → nhập tên Login.
  5. Kết nối Association (đường thẳng) từ User tới Login.
  6. Để mô tả chi tiết, double‑click vào Login → mở Use‑Case Specification → điền Pre‑condition, Post‑condition, Basic Flow, Alternative Flow.

4.3. Tạo Class Diagram

  1. Model Explorer → Right‑click → New → Class Diagram → đặt tên CD_UserManagement.
  2. Toolbox → Class → click vào canvas → nhập tên User.
  3. Thêm Attributes: -username : String, -password : String.
  4. Thêm Operations: +login() : Boolean, +logout() : void.
  5. Tạo class UserService → thêm method +authenticate(user:User) : Boolean.
  6. Kết nối Association giữa User và UserService (multiplicity: 1..).

4.4. Tạo Sequence Diagram

  1. Model Explorer → New → Sequence Diagram → tên Seq_Login.
  2. Kéo Lifeline cho User, LoginController, UserService.
  3. Vẽ Message login() từ User tới LoginController.
  4. Vẽ Message authenticate() từ LoginController tới UserService.
  5. Thêm Return Message true/false.
  6. Kiểm tra Execution Specification (đường thẳng dọc) để thể hiện thời gian thực hiện.

4.5. Tạo Activity Diagram (Mô tả quy trình)

  1. New → Activity Diagram → tên Act_LoginProcess.
  2. Thêm Initial Node (hình tròn đen).
  3. Thêm Action: Enter credentials.
  4. Thêm Decision Node (hình kim cương) → nhánh Valid và Invalid.
  5. Nhánh Valid → Action Redirect to Dashboard.
  6. Nhánh Invalid → Action Show error message → quay lại Enter credentials.
  7. Kết thúc bằng Final Node (hình tròn đen với vòng tròn bên trong).

4.6. Tạo Component và Deployment Diagram (đối với dự án lớn)

  • Component Diagram: Mô tả các module (UserModule, PaymentModule) và mối quan hệ Dependency hoặc Realization.
  • Deployment Diagram: Đặt các component lên Node (Server, Database) để thể hiện kiến trúc hạ tầng.

5. Các tính năng nâng cao trong Rational Rose 7

5.1. Reverse Engineering (tạo diagram từ code)

  1. File → Import → Source Code…
  2. Chọn ngôn ngữ (Java, C++, C#).
  3. Đặt Source Path tới thư mục chứa source code.
  4. Chọn Generate Class Diagram → Rational Rose sẽ tự động tạo các class, thuộc tính, phương thức và mối quan hệ (inheritance, association).
  5. Lưu ý: Đối với code lớn, cần filter để chỉ import các package quan trọng, tránh tạo diagram quá tải.

5.2. Forward Engineering (generate code từ diagram)

  • Class Diagram → Right‑click → Generate Code…
  • Chọn ngôn ngữ, thư mục output.
  • Thiết lập template (có sẵn cho Java, C++, C#) hoặc tùy chỉnh bằng Java Template Language.
  • Rational Rose sẽ tạo các file .java/.cpp/.cs dựa trên class diagram, bao gồm getters/setters và skeleton methods.

5.3. Sử dụng Design Patterns có sẵn

Rational Rose tích hợp một Pattern Catalog (Singleton, Factory, Observer…).
– File → New → Pattern Diagram → chọn pattern → kéo thả vào diagram hiện tại → Rational Rose sẽ tự động tạo các class và mối quan hệ tương ứng.

Cách Vẽ Rational Rose 7
Cách Vẽ Rational Rose 7

5.4. Kiểm tra tính nhất quán (Consistency Check)

  • Tools → Check Consistency: Kiểm tra các lỗi như dangling associations, duplicate class names, missing multiplicities.
  • Kết quả xuất ra HTML report, giúp nhanh chóng sửa lỗi trước khi generate code.

5.5. Tích hợp với ClearCase (Version Control)

  1. Tools → Options → Source Control → chọn ClearCase.
  2. Đăng nhập vào ClearCase view.
  3. Khi lưu model, Rational Rose tự động checkout file .mdl.
  4. Khi hoàn thành, check‑in để đồng bộ với repository.

6. Thực hành: Vẽ một hệ thống quản lý sinh viên đầy đủ

6.1. Bước 1: Xác định yêu cầu

  • Actor: Student, Lecturer, Admin.
  • Use‑Case: Register, Login, Enroll Course, Submit Assignment, Grade Assignment, Generate Report.

6.2. Bước 2: Tạo Use‑Case Diagram

  • Tạo các actor và use‑case như ở mục 4.2, kết nối hợp lý.
  • Sử dụng Include cho các chức năng chung (ví dụ: Login được include trong Enroll Course).
  • Sử dụng Extend cho các tùy chọn (ví dụ: Generate Report extend View Grades).

6.3. Bước 3: Thiết kế Class Diagram

  • Các class chính: Student, Lecturer, Admin, Course, Enrollment, Assignment, Grade, ReportGenerator.
  • Định nghĩa inheritance: User (abstract) → Student, Lecturer, Admin.
  • Đặt associations: Student “enrolls in” Course (multiplicity 0.. – 1..).
  • Thêm interface Authenticable với method login().

6.4. Bước 4: Sequence Diagram cho “Enroll Course”

  • Lifelines: Student, StudentUI, EnrollmentController, CourseService, Database.
  • Thông điệp: selectCourse(), checkPrerequisite(), saveEnrollment().
  • Thêm Exception handling nếu prerequisite not met.

6.5. Bước 5: Activity Diagram cho “Submit Assignment”

  • Các bước: Open Assignment, Upload File, Validate File, Store, Notify Lecturer.
  • Decision node kiểm tra File type và Size.

6.6. Bước 6: Component & Deployment Diagram

  • Components: WebApp, BusinessLogic, DataAccess, AuthService.
  • Nodes: WebServer (Tomcat), AppServer (JBoss), DatabaseServer (MySQL).
  • Kết nối bằng Connector (HTTP, RMI, JDBC).

6.7. Bước 7: Kiểm tra và generate code

  • Chạy Consistency Check → sửa lỗi.
  • Generate Java code từ class diagram → tạo cấu trúc package com.university.model, com.university.service, com.university.dao.
  • Import code vào IDE (Eclipse/IntelliJ) và test.

7. Mẹo và thủ thuật để làm việc hiệu quả hơn

Thủ thuật Mô tả
Keyboard shortcuts Ctrl + N → New diagram, Ctrl + S → Save, Ctrl + Z → Undo, Ctrl + Shift + G → Generate code.
Template customization Sửa file .tpl trong thư mục templates để thay đổi kiểu code generated (ví dụ: thêm annotation @Entity).
Sử dụng “Palette Filter” Ẩn các tool không cần thiết để giảm clutter trên toolbox.
Export diagram File → Export → Graphic → chọn PNG, SVG, EMF để chèn vào tài liệu hoặc báo cáo.
Batch consistency check Khi có nhiều diagram, dùng Tools → Batch Check để kiểm tra toàn bộ model một lần.
Versioning diagram Đánh dấu Version trong diagram properties → giúp theo dõi thay đổi qua các phiên bản.
Sử dụng “Notes” Thêm comment vào diagram (right‑click → Add Note) để giải thích chi tiết cho người đọc.

8. Giải quyết các vấn đề thường gặp

8.1. Lỗi “Java Runtime not found”

  • Kiểm tra PATH và JAVA_HOME trỏ tới JRE 1.6/1.8.
  • Nếu dùng Windows 10, chạy Compatibility Mode cho Rose.exe (Properties → Compatibility → Run this program in compatibility mode for Windows 7).

8.2. Diagram bị “crowded” (đông đúc)

  • Sử dụng Zoom (Ctrl + mouse wheel) để thu phóng.
  • Tách diagram thành sub‑packages: ví dụ, mỗi module một diagram riêng.
  • Dùng Hide/Show Attributes để chỉ hiển thị tên class khi cần.

8.3. Không thể generate code

  • Kiểm tra template path trong Tools → Options → Code Generation.
  • Đảm bảo các class có public và no syntax errors (Rational Rose không kiểm tra ngữ pháp chi tiết).
  • Kiểm tra write permission của thư mục output.

8.4. Khi làm việc nhóm, file .mdl bị xung đột

  • Sử dụng ClearCase hoặc Git LFS để quản lý lock.
  • Thực hiện checkout trước khi chỉnh sửa, và check‑in sau khi lưu.
  • Nếu dùng Git, nên chia model thành multiple .mdl (một cho mỗi module) để giảm khả năng xung đột.

9. Kết luận

Rational Rose 7, dù đã ra mắt từ hơn một thập kỷ trước, vẫn là một công cụ mạnh mẽ cho việc mô hình hoá UML và tự động hoá quy trình phát triển phần mềm. Bài viết trên đã cung cấp một hướng dẫn chi tiết từ A‑Z: từ cài đặt môi trường, nắm bắt các khái niệm UML, tạo và chỉnh sửa các loại diagram, đến các tính năng nâng cao như reverse/forward engineering, tích hợp version control và các mẹo tối ưu hoá công việc.

Nếu bạn là người mới bắt đầu, hãy thực hành theo các ví dụ thực tế (Use‑Case, Class, Sequence) và dần dần mở rộng sang các diagram phức tạp hơn (Component, Deployment). Khi đã quen thuộc, bạn có thể khai thác các tính năng tự động hoá code, pattern catalog và kiểm tra tính nhất quán để nâng cao chất lượng thiết kế và giảm thiểu lỗi trong quá trình phát triển.

Lời khuyên cuối cùng: Đừng chỉ vẽ diagram để “đẹp mắt”. Hãy luôn liên kết chúng với yêu cầu nghiệp vụ, test case, và code thực tế. Khi diagram trở thành một phần không thể thiếu của quy trình phát triển, Rational Rose 7 sẽ giúp bạn duy trì tính nhất quán, tăng tốc độ phát triển và cuối cùng, đưa sản phẩm phần mềm của bạn tới khách hàng một cách chuyên nghiệp và hiệu quả.

Chúc bạn thành công trong việc vẽ Rational Rose 7 và xây dựng những hệ thống phần mềm chất lượng cao!

Rate this post
Mục nhập này đã được đăng trong Blog. Đánh dấu trang permalink.

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *