1) Phương pháp (method)
- Phương pháp là một quá trình tập trung vào một hoặc một vài giai đoạn của toàn bộ qui trình phát triển.
Ví dụ:
• Phương pháp phân tích yêu cầu: Mô tả cách thức và qui trình nhằm thu thập các yêu cầu của hệ thống
• Phương pháp phân tích thiết kế: Tập trung vào giai đoạn phân tích và thiết kế
• Phương pháp thử nghiệm: Qui trình và cách thức cũng như các hoạt động thử nghiệm hệ thống
- Một phương pháp bao gồm một tập các ký hiệu đồ hoạ và văn bản, các luật sử dụng để mô tả các yếu tố hệ thống
- Một phương pháp thường được áp dụng trong một qui trình của phương pháp luận nhằm hướng dẫn cách thức thực hiện chi tiết của giai đoạn trong qui trình phát triển.
Phần sau đây sẽ tổng kết nội dung của một số phương pháp phát triển hệ thống hướng đối tượng:
2) OOD (Object Oriented Design - G.Booch 1991)
- Không đưa vào giai đoạn phân tích trong các phiên bản đầu tiên. Các bước phân tích hệ thống chuẩn bị cho giai đoạn thiết kế gồm:
• Xác định vấn đề thế giới thực
• Phát triển một chiến lược không hình thức hiện thức hoá từng phần đối với các vấn đề đã xác định
• Hình thức hoá chiến lược này
- Việc hình thức hoá chiến lược bao gồm một thứ tự các công việc sau:
• Xác định lớp và đối tượng ở mức trừu tượng hoá
• Xác định ngữ nghĩa cho các lớp và đối tượng
• Xác định mối quan hệ giữa các lớp và các đối tượng
• Cài đặt các lớp và đối tượng
- Đưa vào khái niệm gói (package) và dùng như một thành phần tổ chức của mô hình.
- Cài đặt các lớp và đối tượng thông qua việc đào sâu các chi tiết của lớp và đối tượng và cách thức cài đặt chúng trong một ngôn ngữ lập trình; cách thức tái sử dụng các thành phần và xây dựng các mô đun từ các lớp và đối tượng.
- Trong giai đoạn thiết kế, phương pháp này nhánh mạnh sự phân biệt giữa tầng luận lý (trong thuật ngữ lớp và đối tượng) và tầng vật lý (trong thuật ngữ môđun và xử lý) và phân chia mô hình thành các mô hình động và mô hình tĩnh.
• Sơ đồ lớp (mô hình tĩnh)
• Sơ đồ đối tượng(mô hình tĩnh)
• Sơ đồ trạng thái (mô hình động)
• Sơ đồ thời gian (mô hình động)
• Sơ đồ mô- đun
• Sơ đồ xử lý
3) HOOD (Hierarchical Object Oriented Design)
- Khía cạnh tĩnh được biểu diễn qua sơ đồ đối tượng; văn bản hình thức cho phép hoàn thiện sơ đồ này thông qua việc chỉ dẫn các ràng buộc đồng bộ.
- Cấu trúc phân cấp được mô tả thông qua cấu trúc phân rã đối tượng
- Các giai đoạn cơ bản của giai đoạn thiết kế như sau :
• Xác định vấn đề: Xác định ngữ cảnh của đối tượng với mục đích tổ chức và cấu trúc hoá dữ liệu từ các yêu cầu của giai đoạn phân tích.
o Diễn đạt vấn đề
o Phân tích và cấu trúc hoá dữ liệu yêu cầu : Thu thập và phân tích tất cả thông tin liên quan đến vấn đề, bao gồm môi trường mà hệ thống được thiết kế.
• Phát triển chiến lược giải pháp: phác hoạ giải pháp vấn đề thông qua việc xác định các đối tượng ở mức trừu tượng hoá cao.
• Hình thức hoá và mô hình hoá chiến lược : Xác định các đối tượng và các toán tử. Phát sinh một giải pháp thiết kế dùng sơ đồ cho phép trực quan hoá các khái niệm, bao gồm năm bước :
o Xác định đối tượng
o Xác định các toán tử
o Nhóm các đối tượng và các toán tử
o Mô tả đồ hoạ
o Điều chỉnh các quyết định thiết kế
• Hình thức hoá giải pháp : Giải pháp được hình thức hoá thông qua
o Mô tả hình thức giao diện đối tượng
o Mô tả hình thức đối tượng và các cấu trúc điều khiển toán tử
4) OOA (Object Oriented Analysis- Coad 90, 91)
OOA sử dụng các nguyên lý cấu trúc hoá và kết hợp chúng với quan điểm hướng đối tượng tập trung vào giai đoạn phân tích. Phương pháp bao gồm năm bước :
- Tìm lớp và đối tượng: Xác định cách thức tìm lớp và đối tượng. Tiếp cận đầu tiên bắt đầu với lãnh vực ứng dụng và xác định các lớp, các đối tượng hình thành nền tảng cho ứng dụng.
- Xác định cấu trúc: Được thực hiện qua hai cách :
o Xác định cấu trúc tổng quát hoá - chuyên biệt hoá và xác định sự phân cấp giữa các lớp đã tìm được
o Cấu trúc tổng thể - thành phần (whole - part) được dùng để mô hình hoá cách thức một đối tượng là một phần của đối tượng khác, và cách thức các đối tượng kết hợp thành các loại lớn hơn.
- Xác định các chủ đề: Phân chia các mô hình lớp, đối tượng thành các đơn vị lớn hơn gọi là chủ đề.
- Xác định thuộc tính : Xác định các thông tin và các mối liên kết cho mỗi thể hiện. Điều này bao gồm luôn việc xác định các thuộc tính cần thiết để đặc trưng hoá mỗi đối tượng. Các thuộc tính được tìm thấy sẽ được đưa vào đúng mức trong cấu trúc phân cấp.
- Xác định các dịch vụ : Định nghĩa các toán tử cho lớp bằng cách xác định các trạng thái và các dịch vụ nhằm truy cập và thay đổi trạng thái đó.
Kết quả của giai đoạn phân tích là một mô hình gồm năm lớp:
- Lớp chủ đề
- Lớp các lớp và đối tượng
- Lớp cấu trúc (sự thừa kế, mối quan hệ,…)
- Lớp thuộc tính
- Lớp dịch vụ
Một mô hình thiết kế hướng đối tượng bao gồm các thành phần sau:
- Thành phần lãnh vực vấn đề (Problem Domain Component) : Kết quả của phân tích hướng đối tượng đưa trực tiếp vào thành phần này.
- Thành phần tương tác (Humain Interaction Component) : Bao gồm các hoạt động như là : phân loại người dùng, mô tả kích bản nhiệm vụ, thiết kế cấu trúc lệnh, thiết kế tương tác chi tiết, lập bản mẫu giao diện tương tác người - máy, định nghĩa các lớp của thành phần tương tác.
- Thành phần quản lý nhiệm vụ (Task Management Component) : Bao gồm việc xác định các nhiệm vụ (xử lý), các dịch vụ được cung cấp, mức độ ưu tiên, các sự kiện kích hoạt, và cách thức các xử lý trao đổi (với các xử lý khác và với bên ngoài hệ thống).
- Thành phần quản lý dữ liệu (Data Management Component) : phụ thuộc rất nhiều vào công nghệ lưu trữ sẵn có và dữ liệu yêu cầu.
Trương Đình Huy