Mô hình kiến trúc hướng dịch vụ với Kiến trúc sư phần mềm Rational: Mô

hình hóa miền nghiệp vụ

Gregory Hodgkinson, Đầu ngành SOA, Prolifics

Bertrand Portier, Kiến trúc IT, IBM Software Group Services

Tóm tắt: Trong loạt bài này, bạn sẽ tìm hiểu cách thức Kiến trúc sư phần mềm

Rational® của IBM®, cùng với Bộ tạo mô hình nghiệp vụ WebSphere® của

IBM®, hỗ trợ cách tiếp cận phát triển phụ thuộc vào-mô hình (MDD) đối với các

đặc tả kỹ thuật của kiến trúc hướng dịch vụ (SOA) như thế nào. Bằng cách nghiên

cứu tình huống của một công ty cho thuê DVD trực tuyến tưởng tượng, hướng dẫn

này trình bày chi tiết cách làm thế nào để tạo ra mô hình miền trong Kiến trúc sư

phần mềm Rational và chỉ ra cách mô hình miền liên kết đến các mục nghiệp vụ

đã được xác định trong bộ tạo mô hình nghiệp vụ WebSphere như thế nào. Mô

hình miền là mô hình thứ ba của các mô hình từ trên xuống được các tác giả mô tả

trong loạt hướng dẫn này, cùng với mô hình kiến trúc nghiệp vụ và mô hình quy

trình nghiệp vụ.

Trước khi bạn bắt đầu

Hãy tìm hiểu xem hướng dẫn này mang lại những gì và làm thế nào để sử dụng nó

tốt nhất.

Về loạt bài này

Loạt bài gồm nhiều phần này giải thích cách làm thế nào để tạo mô hình các kiến

trúc hướng dịch vụ (SOA) bằng cách sử dụng Kiến trúc sư phần mềm Rational®

của IBM®. Mặc dù mục tiêu chủ yếu là nhằm vào các kiến trúc sư phần mềm và

các hoạt động mà họ thực hiện, nhưng hướng dẫn này cũng rất có ích cho những

người đảm nhiệm các vai trò khác trong quá trình phát triển phần mềm, bao gồm

cả những người cung cấp đầu vào cho kiến trúc phần mềm, ví dụ như các nhà phân

tích nghiệp vụ và cả những người sử dụng kiến trúc phần mềm làm đầu vào để

thực hiện các hoạt động của mình, ví dụ như là các nhà thiết kế và phát triển phần

mềm (hiểu rõ nó, thiết kế và thực thi). Loạt bài này cũng trình bày nhiều khái niệm

SOA cốt lõi mà nhiều người khác quan tâm.

Các hướng dẫn này tập trung vào ba chủ đề:

• Kiến trúc: Mô tả kiến trúc bao gồm những gì và nó thể hiện ở đâu trong

toàn bộ quá trình phát triển phần mềm.

• Các dịch vụ: Tạo ra kiến trúc cho một hệ thống SOA (các dịch vụ là trung

tâm cho kiến trúc này).

• Các mô hình: Giới thiệu cách công cụ Kiến trúc sư Phần mềm Rational hỗ

trợ một cách tiếp cận phát triển dựa vào-mô hình (MDD) đối với đặc tả kỹ

thuật của các kiến trúc hướng dịch vụ như thế nào.

Phần 1 (xem Tài nguyên) mô tả kiến trúc phần mềm và xác định vị trí của các dịch

vụ trong kiến trúc phần mềm. Sau đó nó trình bày Kiến trúc sư phần mềm Rational

và các đặc tính SOA cũng như các đặc tính về kiến trúc của nó. Nghiên cứu tình

huống của công ty cho thuê DVD trực tuyến tưởng tượng được sử dụng xuyên

suốt loạt bài này sẽ giúp minh họa các mục tiêu quan trọng nhất:

• Mô tả các vật phẩm làm việc được sử dụng như là đầu vào cho các hoạt

động kiến trúc dịch vụ, bao gồm mô hình thành phần nghiệp vụ, mô hình

quy trình nghiệp vụ, mô hình tình huống sử dụng hệ thống, phần hệ thống

bên ngoài của mô hình thiết kế.

• Mô tả từng bước cách thức một mô hình dịch vụ thể hiện kiến trúc hệ thống

sẽ được xác định rõ trong Kiến trúc sư phần mềm Rational như thế nào, bao

gồm những người sử dụng dịch vụ, các đặc tả kỹ thuật của dịch vụ, các

phân vùng của dịch vụ, các nhà cung cấp dịch vụ không phân chia và phức

hợp, các dịch vụ, các hợp tác dịch vụ, các tương tác dịch vụ và các kênh

dịch vụ.

• Giải thích cách thức mô hình dịch vụ được sử dụng sau đó trong các hoạt

động tiếp theo của quá trình phát triển phần mềm như thế nào, với sự quan

tâm đặc biệt đến việc thiết kế và thực thi.

Về đầu trang

Về hướng dẫn này

Trong Phần 1 (xem Tài nguyên), chúng tôi đã giới thiệu một nghiên về cứu tình

huống của công ty cho thuê phim video được dùng làm ví dụ trong suốt loạt bài

hướng dẫn này. Sau đó chúng tôi đặt kiến trúc dịch vụ trong khung công tác của

Quy trình thống nhất Rational của IBM (IBM® Rational Unified Process®-

RUP®) và đã giới thiệu chồng giải pháp SOA của IBM (IBM® SOA Solution

Stack) để tham khảo. Tiếp theo, chúng tôi đã lưu ý đến các vật phẩm làm việc

khác nhau được dùng làm đầu vào cho một kiến trúc dịch vụ, sau đó đã sử dụng

nghiên cứu tình huống để đưa ra các ví dụ về hai mô hình: mô hình kiến trúc

nghiệp vụ (đã mô tả trong Phần 1 dưới dạng một mô hình thành phần nghiệp vụ)

và mô hình quy trình nghiệp vụ. Cả hai mô hình kiến trúc nghiệp vụ và mô hình

quy trình nghiệp vụ đều là một phần trong cách tiếp cận từ trên xuống. Ở đây,

trong phần 2, chúng tôi mô tả một mô hình từ trên xuống khác: đó là mô hình miền.

Về đầu trang

Mục tiêu

Sau khi hoàn thành phần này của loạt bài hướng dẫn, bạn sẽ có khả năng:

• Mô tả cách thức mô hình miền và mô hình quy trình nghiệp vụ được sử

dụng cùng với nhau trong cách tiếp cận từ trên xuống như thế nào.

• Làm ra một mô hình miền để nghiên cứu tình huống.

Về đầu trang

Các điều kiện cần có trước

Để thu được kết quả tốt nhất từ hướng dẫn này, sẽ rất có ích (nhưng không quá cần

thiết) nếu bạn đã làm quen trước với

• Kiến trúc hướng dịch vụ (SOA - Service-oriented architecture).

• Kiến trúc sư phần mềm Rational V7 (với bản sửa 002 hoặc mới hơn).

• Ngôn ngữ mô hình hóa thống nhất (UML- Unified Modeling Language).

Chúng tôi cũng khuyên bạn rất nên đọc Phần 1 của loạt bài hướng dẫn này trước

khi đọc phần 2 này.

Mục lục

• Trước khi bạn bắt đầu

• Bắt đầu tìm hiểu miền nghiệp vụ của bạn

• Sử dụng mô hình miền đầu tiên trong mô hình hóa nghiệp vụ

• Mô hình hóa các quan hệ kết hợp kiểu miền

• Mô hình hóa các kiểu bảng kê trong miền

• Phần tiếp theo có gì