CHƯƠNG 2 : PHÁT TRIỂN PHẦN MỀM DỰA VÀO SOA
2.3. Qui trình xây dựng hệ thống SOA
2.3.3. Các pha cơ bản xây dựng hệ thống SOA
Xây dựng hệ thống SOA trải qua 6 pha sau đây:
Hình 2.11: Các bước cơ bản trong xây dựng hệ thống SOA Bước 1: Phân tích hướng dịch vụ (Service-oriented analysis).
Đây là giai đoạn đầu để quyết định phạm vi của hệ thống SOA. Hệ thống
gồm những dịch vụ nào? Tầng dịch vụ là được lược đồ hóa ra (mapped out), và chia dịch vụ ra thành các mơ hình, bao gồm hệ thống SOA sơ bộ.
Bước 2: Thiết kế hướng dịch vụ (service-oriented design).
Đây là giai đoạn có sự kết hợp chặt chẽ về sự thỏa hiệp của doanh nghiệp
và nguyên lý hướng dịch vụ thành quy trình thiết kế dịch vụ. Trong pha này, làm
cho người thiết kế dịch vụ phải đương đầu với giải quyết vấn đề then chốt đó là
thiết lập nên những ranh giới thông qua các dịch vụ. Các tầng dịch vụ là được thiết kế trong giai đoạn này có thể bao gồm tầng orchestrantion, các kết quả của nó là trong sự xác định quy trình nghiệp vụ hình thức.
31 Trong bước này là giai đoạn xây dựng thực tế. Ở đây vấn đề về nền tảng phát triển đi vào hoạt động, khơng quan tâm tới nó là loại dịch vụ nào. Một cách cụ thể, là sự lựa chọn ngơn ngữ lập trình và mơi trường phát triển sẽ quyết định
những mẫu dịch vụ và quy trình nghiệp vụ orchestrantion nào phù hợp với thiết kế.
Bước 4: Kiểm thử dịch vụ (Service testing).
Để đưa ra những tiềm năng cho việc dùng lại và bao gồm cả những trạng
thái không biết trước được, các dịch vụ là được yêu cầu trải qua được sự nghiêm ngặt của việc kiểm thử trước khi được triển khai thành các sản phẩm.
Bước 5: Triển khai dịch vụ (Service deployment).
Giai đoạn thực thi này đưa đến việc cài đặt và cấu hình cho các thành
phần phân tán, các giao diện dịch vụ, và nhiều sản phẩm trung gian (middleware products) kết hợp với nhau thành những server.
Bước 6: Quản trị dịch vụ (Service administration).
Sau khi các dịch vụ được triển khai, vấn đề quản lý các ứng dụng trở
thành hàng đầu, mối quan tâm cho hệ thống phân tán, và các ứng dụng dựa trên các thành phần (component-based applications), và việc xem xét chúng như các
dịch vụ trong một tổng thể.