Đăng ký Đăng nhập
Trang chủ Giáo dục - Đào tạo Cao đẳng - Đại học Nghiên cứu ứng dụng kiến trúc soa trong mô hình ứng dụng doanh nghiệp ...

Tài liệu Nghiên cứu ứng dụng kiến trúc soa trong mô hình ứng dụng doanh nghiệp

.PDF
105
123
127

Mô tả:

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI --------------------------------------PHẠM ĐỨC THỌ Phạm Đức Thọ CÔNG NGHỆ THÔNG TIN NGHIÊN CỨU ỨNG DỤNG KIẾN TRÚC SOA TRONG MÔ HÌNH ỨNG DỤNG DOANH NGHIỆP LUẬN VĂN THẠC SĨ KỸ THUẬT CÔNG NGHỆ THÔNG TIN 2010B Hà Nội – Năm 2012 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI --------------------------------------- PHẠM ĐỨC THỌ NGHIÊN CỨU ỨNG DỤNG KIẾN TRÚC SOA TRONG MÔ HÌNH ỨNG DỤNG DOANH NGHIỆP Chuyên ngành : Công nghệ thông tin LUẬN VĂN THẠC SĨ KỸ THUẬT CÔNG NGHỆ THÔNG TIN NGƯỜI HƯỚNG DẪN KHOA HỌC : 1. TS Tạ Tuấn Anh Hà Nội – 2012 LỜI CAM ĐOAN Tôi – Phạm Đức Thọ, học viên lớp Cao học CNTT 2010 – 2012 Trường Đại học Bách khoa Hà Nội – cam kết Luận văn tốt nghiệp là công trình nghiên cứu của bản thân tôi dưới sự hướng dẫn của TS. Tạ Tuấn Anh, Viện Khoa học và công nghệ Việt Nam. Các kết quả trong Luận văn tốt nghiệp là trung thực, không sao chép toàn văn của bất kỳ công trình nào khác. Hà Nội, ngày 10 tháng 03 năm 2012 Học viên: Phạm Đức Thọ Lớp: 10BCNTT-HV 1 LỜI CẢM ƠN Tôi xin bày tỏ lòng biết ơn sâu sắc tới thầy giáo, TS. Tạ Tuấn Anh, Viện Khoa học và công nghệ Việt Nam, đã khuyến khích và rất tận tình hướng dẫn tôi trong suốt quá trình thực hiện luận văn. Nhờ sự quan tâm chỉ bảo và những ý kiến đóng góp quý báu của thầy, tôi mới có thể hoàn thành luận văn này. Tôi xin chân thành cảm ơn tập thể các thầy, cô giáo trường Đại học Bách Khoa Hà Nội nói chung và Viện Công Nghệ Thông Tin và Truyền Thông nói riêng đã tận tình giảng dạy truyền đạt cho tôi những kiến thức, kinh nghiệm quý báu trong suốt những năm học vừa qua. Tôi cũng xin cảm ơn các giảng viên đồng nghiệp ở trường Đại học Hùng Vương đã tạo điều kiện về thời gian để tôi có thể học tập và hoàn thành luận văn. Cuối cùng tôi xin chân thành cảm ơn gia đình, người thân đã hết lòng giúp đỡ, hỗ trợ về vật chất lẫn tinh thần giúp tôi yên tâm học tập và nghiên cứu trong suốt quá trình học tập và thực hiện luận văn. 2 MỤC LỤC LỜI CAM ĐOAN........................................................................................................1 LỜI CẢM ƠN .............................................................................................................2 MỤC LỤC ..................................................................................................................3 DANH MỤC KÝ HIỆU, CHỮ VIẾT TẮT ..................................................................6 DANH MỤC BẢNG ...................................................................................................7 DANH MỤC HÌNH ....................................................................................................8 MỞ ĐẦU .................................................................................................................. 11 1. Lý do chọn đề tài ............................................................................................. 11 2. Mục đích, phạm vi nghiên cứu ......................................................................... 11 3. Đối tượng nghiên cứu ...................................................................................... 12 4. Phương pháp nghiên cứu ................................................................................. 12 5. Nhiệm vụ nghiên cứu....................................................................................... 12 CHƯƠNG 1: HỆ THỐNG THÔNG TIN DOANH NGHIỆP THEO MÔ HÌNH KIẾN TRÚC HƯỚNG DỊCH VỤ ............................................................................. 13 1.1. Hệ thống thông tin doanh nghiệp .................................................................. 13 1.1.1. Khái niệm ............................................................................................. 13 1.1.2. Phân loại các HTTT dùng trong doanh nghiệp ..................................... 13 1.2. Mô hình kiến trúc hướng dịch vụ ứng dụng trong HTTT doanh nghiệp ........ 15 1.2.1. Tổng quan về kiến trúc hướng dịch vụ .................................................. 15 1.2.2. Kiến trúc của SOA ................................................................................ 16 1.2.3. Các công nghệ được áp dụng ................................................................ 21 1.2.4. Lợi ích khi sử dụng mô hình SOA trong thiết kế và xây dựng HTTT doanh nghiệp ..................................................................................................... 30 CHƯƠNG 2: MÔ HÌNH HÓA QUY TRÌNH NGHIỆP VỤ TRONG HTTT DOANH NGHIỆP THEO KIẾN TRÚC SOA ........................................................... 35 2.1. Quy trình nghiệp vụ...................................................................................... 35 3 2.1.1. Khái niệm quy trình nghiệp vụ .............................................................. 35 2.1.2. Mô hình hóa quy trình nghiệp vụ .......................................................... 36 2.1.3. Một số công cụ hỗ trợ việc mô hình hóa quy trình nghiệp vụ theo kiến trúc SOA............................................................................................................ 39 2.2. Giới thiệu BPMN 2.0 ................................................................................... 40 2.2.1. Khái niệm cơ bản .................................................................................. 40 2.2.2. Các kí pháp cơ bản trong BPMN 2.0 .................................................... 41 2.2.3. So sánh BPMN 2.0 với biểu đồ hoạt động của UML ............................. 46 CHƯƠNG 3: MÔ HÌNH HÓA QUY TRÌNH NGHIỆP VỤ BẰNG BPMN 2.0......... 48 3.1. Chuyển đổi mô hình truyền thống sang BPMN 2.0 ...................................... 48 3.2. Một số quy trình nghiệp vụ đơn giản ............................................................ 48 3.2.1. Quy trình nghiệp vụ xem thông tin chi tiết hồ sơ học sinh ..................... 48 3.2.2. Quy trình nghiệp vụ tra cứu hồ sơ học sinh .......................................... 51 3.2.3. Quy trình nghiệp vụ đăng nhập không nhớ mật khẩu ........................... 54 3.2.4. Quy trình nghiệp vụ học sinh nộp bài tập về nhà................................... 56 3.2.5. Quy trình nghiệp vụ sửa thông tin hồ sơ học sinh.................................. 58 3.2.6. Quy trình nghiệp vụ phân lớp tự động .................................................. 60 3.3. Quy trình nghiệp vụ có nhiều tác nhân cùng tham gia................................... 63 3.3.1. Quy trình nghiệp vụ xin nghỉ phép cho giáo viên .................................. 63 3.3.2. Quy trình nghiệp vụ xin miễn giảm học phí ........................................... 65 3.3.3. Quy trình đề nghị thanh toán Dạy trung tâm ......................................... 66 CHƯƠNG 4: ÁP DỤNG CÔNG CỤ HỖ TRỢ BPMN 2.0 TỰ ĐỘNG HÓA MỘT SỐ QUY TRÌNH NGHIỆP VỤ ................................................................................. 69 4.1. Giới thiệu Activiti ........................................................................................ 69 4.1.1. Tổng quan ............................................................................................. 69 4.1.2. Cài đặt .................................................................................................. 69 4.2. Triển khai Activiti 5.9 để mô hình hóa quy trình nghiệp vụ bằng BPMN 2.0 72 4.3. Sử dụng công cụ Activiti tự động hóa một số quy trình nghiệp vụ ................ 76 4.3.1. Quy trình nghiệp vụ xin nghỉ phép cho giáo viên .................................. 76 4 4.3.2. Quy trình nghiệp vụ xin miễn giảm học phí ........................................... 85 4.3.3. Quy trình đề nghị thanh toán Dạy trung tâm ......................................... 91 4.4. Đánh giá ....................................................................................................... 98 4.4.1. Ưu điểm của BPMN 2.0 ........................................................................ 98 4.4.2. Nhược điểm của BPMN 2.0 ................................................................... 99 KẾT LUẬN ............................................................................................................. 100 1. Các nội dung đã hoàn thành trong luận văn ................................................... 100 2. Các đóng góp khoa học.................................................................................. 100 3. Hạn chế của luận văn ..................................................................................... 101 4. Hướng phát triển luận văn ............................................................................ 101 TÀI LIỆU THAM KHẢO ....................................................................................... 103 5 DANH MỤC KÝ HIỆU, CHỮ VIẾT TẮT Chữ viết tắt Chữ viết đầy đủ BGH Ban giám hiệu BPM Business Process Management BPEL Business Process Execution Language BPMN Business Process Modeling Notation CRM Customer Relationship Management E- commerce Electronic commerce EAI Enterprise application integration ERP Enterprise Resource Planning HTTT Hệ thống thông tin GVCN Giáo viên chủ nhiệm JAX-RPC Java APIs for XML-Based Remote Procedure Call JAXM Java API for XML Messaging NSD Người sử dụng SCM Supply Chain Management SOA Service-Oriented Architecture SOAP Simple Object Access Protocol SRM Supplier Relationship Management UML Unified Modeling Language 6 DANH MỤC BẢNG Bảng 3-1 Mô tả quy trình nghiệp vụ xem thông tin chi tiết hồ sơ học sinh .................. 48 Bảng 3-2 Mô tả nghiệp vụ tra cứu hồ sơ học sinh ....................................................... 51 Bảng 3-3 Mô tả quy trình nghiệp vụ đăng nhập không nhớ mật khẩu ......................... 54 Bảng 3-4 Mô tả quy trình nghiệp vụ học sinh nộp bài tập về nhà ................................ 56 Bảng 3-5 Mô tả quy trình nghiệp vụ sửa thông tin hồ sơ học sinh ............................... 58 Bảng 3-6 Mô tả quy trình nghiệp vụ phân lớp tự động ................................................ 60 Bảng 3-7 Mô tả nghiệp vụ xin nghỉ phép cho giáo viên .............................................. 64 Bảng 3-8 Mô tả nghiệp vụ xin miễn giảm học phí ...................................................... 65 Bảng 3-9 Mô tả nghiệp vụ Đề nghị thanh toán dạy trung tâm ..................................... 67 7 DANH MỤC HÌNH Hình 1.1 Mô hình cơ bản của SOA ............................................................................. 16 Hình 1.2 Kiến trúc tổng quan của SOA....................................................................... 17 Hình 1.3 Kiến trúc phân tầng chi tiết của SOA ........................................................... 18 Hình 1.4 Mô hình triển khai SOA trong thực tế. ......................................................... 19 Hình 1.5 Mô hình cơ bản của Web Service ................................................................. 20 Hình 1.6 Mô hình khung của Openwings.................................................................... 25 Hình 1.7 Mô hình ESB ............................................................................................... 28 Hình 2.1 Quy trình học sinh hoàn thành môn học ....................................................... 36 Hình 2.2 Các Event trong BPMN ............................................................................... 42 Hình 2.3 Các kiểu Activities trong BPMN.................................................................. 43 Hình 2.4 Các kiểu Sub-Process ................................................................................... 43 Hình 2.5 Các loại Gateway ......................................................................................... 44 Hình 2.6 Các đối tượng kết nối ................................................................................... 45 Hình 2.7 Các loại Artifacts ......................................................................................... 46 Hình 3.1 Mô hình nghiệp vụ xem thêm thông tin chi tiết hồ sơ học sinh ..................... 50 Hình 3.2 Mô hình hóa quy trình nghiệp vụ xem thông tin chi tiết hồ sơ học sinh bằng BPMN 2.0 .......................................................................................................... 51 Hình 3.3 Mô hình nghiệp vụ tra cứu hồ sơ học sinh .................................................... 53 Hình 3.4 Mô hình hóa quy trình nghiệp vụ tra cứu hồ sơ học sinh bằng BPMN 2.0 ... 54 Hình 3.5 Biểu đồ hoạt động UML nghiệp vụ đăng nhập không nhớ mật khẩu ............ 55 Hình 3.6 Mô hình hóa quy trình nghiệp vụ đăng nhập không nhớ mật khẩu bằng BPMN 2.0 .................................................................................................................. 56 Hình 3.7 Biểu đồ hoạt động UML nghiệp vụ nộp bài tập về nhà ................................. 57 Hình 3.8 Mô hình hóa quy trình nghiệp vụ nộp bài tập về nhà bằng BPMN 2.0 .......... 58 Hình 3.9 Biểu đồ luồng xử lý chức năng quy trình sửa thông tin hồ sơ học sinh ......... 59 Hình 3.10 Mô hình hóa quy trình nghiệp vụ sửa thông tin hồ sơ học sinh bằng BPMN 2.0 .................................................................................................................. 60 Hình 3.11 Biểu đồ luồng xử lý chức năng nghiệp vụ phân lớp tự động ....................... 62 8 Hình 3.12 Mô hình hóa quy trình phân lớp tự động bằng BPMN 2.0 .......................... 63 Hình 3.13 Mô hình quy trình nghiệp vụ xin nghỉ phép cho giáo viên .......................... 65 Hình 3.14 Quy trình nghiệp vụ xin miễn giảm học phí ............................................... 66 Hình 3.15 Quy trình đề nghị thanh toán tiền dạy trung tâm ......................................... 68 Hình 4.1 Màn hình chính Activiti Explorer................................................................. 70 Hình 4.2 Công cụ Activiti Modeler............................................................................. 71 Hình 4.3 Công cụ Activiti Probe................................................................................. 71 Hình 4.4 Công cụ Activiti Cycle ................................................................................. 72 Hình 4.5 Mô hình hóa quy trình bằng BPMN 2.0 trên Eclipse .................................... 73 Hình 4.6 Đăng nhập bằng quyền quản trị hệ thống ..................................................... 74 Hình 4.7 Tải thêm quy trình vào Activiti Explorer ...................................................... 74 Hình 4.8 Màn hình quản lý các quy trình hiện có ........................................................ 75 Hình 4.9 Màn hình khởi động quy trình đã mô hình hóa bằng BPMN 2.0 ................... 76 Hình 4.10 Mô hình quy trình nghiệp vụ xin nghỉ phép cho giáo viên .......................... 76 Hình 4.11 Giáo viên đăng nhập để xin nghỉ phép........................................................ 79 Hình 4.12 Màn hình chính Activiti Explorer ............................................................... 79 Hình 4.13 Chọn khởi động quy trình xin nghỉ phép .................................................... 79 Hình 4.14 Hoàn thiện thông tin xin nghỉ ..................................................................... 80 Hình 4.15 Người quản lý đăng nhập ........................................................................... 81 Hình 4.16 Màn hình chính Activiti Explorer của người quản lý .................................. 81 Hình 4.17 Các công việc đang chờ xử lý .................................................................... 81 Hình 4.18 Nhận việc xử lý yêu cầu xin nghỉ phép....................................................... 82 Hình 4.19 Xử lý yêu cầu và hoàn thành ...................................................................... 83 Hình 4.20 Nhận lại yêu cầu thay đổi ........................................................................... 83 Hình 4.21 Gửi lại yêu cầu ........................................................................................... 84 Hình 4.22 GV gửi lại yêu cầu đã sửa .......................................................................... 84 Hình 4.23 Quy trình nghiệp vụ xin miễn giảm học phí ............................................... 85 Hình 4.24 Học sinh đăng nhập vào hệ thống ............................................................... 87 Hình 4.25 Chọn quy trình Xin miễn giảm học phí ...................................................... 87 9 Hình 4.26 Điền đầy đủ thông tin vào form khởi động ................................................. 88 Hình 4.27 Quy trình đã được khởi động...................................................................... 88 Hình 4.28 GVCN nhận phần việc của mình ................................................................ 89 Hình 4.29 GVCN Xử lý công việc .............................................................................. 89 Hình 4.30 Quy trình chuyển tiếp công việc đến BGH ................................................. 90 Hình 4.31 BGH Xử lý công việc................................................................................. 90 Hình 4.32 Quy trình đề nghị thanh toán tiền dạy trung tâm ......................................... 91 Hình 4.33 GV chọn quy trình Thanh toán Dạy trung tâm............................................ 93 Hình 4.34 GV nhập các thông tin để tiến hành thanh toán .......................................... 94 Hình 4.35 Công việc xuất hiện trong hàng chờ của giáo vụ ........................................ 94 Hình 4.36 Giáo vụ xử lý yêu cầu ................................................................................ 95 Hình 4.37 Giáo viên nhận lại yêu cầu ......................................................................... 95 Hình 4.38 Tải lên tài nguyên đính kèm ....................................................................... 96 Hình 4.39 Giáo vụ nhận lại yêu cầu ............................................................................ 96 Hình 4.40 Quản lý đào tạo nhận việc .......................................................................... 97 Hình 4.41 Thủ quỹ hoàn thành quy trình thanh toán ................................................... 97 10 MỞ ĐẦU 1. Lý do chọn đề tài Hiện nay nhiều dịch vụ trên Internet cũng như trong các công ty được thiết kế theo kiến trúc SOA (Service Oriented Architechture - kiến trúc hướng dịch vụ). Dịch vụ là yếu tố then chốt trong SOA, nó giúp cho các doanh nghiệp có thể tích hợp các thành phần hiện có vào các ứng dụng mới và các thành phần này có thể được chia sẻ hoặc tái sử dụng trong nhiều lĩnh vực khác nhau của công ty đó mà không cần phải chỉnh sửa mã nguồn hay phải tái cấu trúc lại hệ thống. Xuất phát từ lợi ích của việc xây dựng hệ thống thông tin doanh nghiệp theo hướng SOA nên ngày càng nhiều công ty áp dụng SOA trong việc thiết kế các hệ thống thông tin doanh nghiệp của mình nhằm đạt được mức độ linh hoạt cao trong kinh doanh. Chính vì lẽ đó tôi chọn đề tài “Nghiên cứu ứng dụng kiến trúc SOA trong mô hình ứng dụng doanh nghiệp” là đề tài luận văn tốt nghiệp. 2. Mục đích, phạm vi nghiên cứu  Nghiên cứu tìm hiểu về SOA, hệ thống thông tin doanh nghiệp, đưa ra được các lợi ích khi sử dụng SOA trong thiết kế và xây dựng hệ thống thông tin doanh nghiệp.  Nghiên cứu tìm hiểu về mô hình hóa quy trình nghiệp vụ và nghiên cứu cách thức sử dụng kí pháp của BPMN 2.0. Từ đó mô hình hóa một số quy trình nghiệp vụ trường học.  So sánh các ưu điểm của BPMN 2.0 với biểu đồ hoạt động UML.  Chuyển đổi một số mô hình quy trình nghiệp vụ dạng truyền thống sang BPMN 2.0.  Áp dụng phần mềm Activiti 5.9 để tiến hành tự động hóa một số quy trình nghiệp vụ trường học đã được mô hình hóa bằng BPMN 2.0. 11 3. Đối tượng nghiên cứu - Các quy trình nghiệp vụ trong một tổ chức, doanh nghiệp. - Kiến trúc SOA - Ngôn ngữ mô hình hóa BPMN 2.0 - Phần mềm Activiti 5.9 4. Phương pháp nghiên cứu Các phương pháp nghiên cứu đã được áp dụng bao gồm: - Phương pháp nghiên cứu lý thuyết, tổng hợp tài liệu. - Phương pháp ứng dụng minh họa. - Phương pháp nghiên cứu thực tiễn. 5. Nhiệm vụ nghiên cứu  Tìm hiểu khái quát về kiến trúc SOA, hệ thống thông tin doanh nghiệp, sau đó tập trung vào tìm hiểu về BPMN 2.0, quy trình nghiệp vụ, và mô hình hóa quy trình nghiệp vụ bằng BPMN 2.0.  So sánh BPMN 2.0 với biểu đồ hoạt động UML.  Nghiên cứu sử dụng công cụ Activiti 5.9 để tự động hóa các quy trình nghiệp vụ đã được mô hình hóa bằng BPMN 2.0. 12 CHƯƠNG 1: HỆ THỐNG THÔNG TIN DOANH NGHIỆP THEO MÔ HÌNH KIẾN TRÚC HƯỚNG DỊCH VỤ 1.1. Hệ thống thông tin doanh nghiệp 1.1.1. Khái niệm Hệ thống thông tin doanh nghiệp là hệ thống hỗ trợ cho các quy trình nghiệp vụ của một tổ chức với các chức năng như sản xuất, phân phối, bán hàng, kế toán, tài chính và nhân sự. Các thành phần chính trong hệ thống thông tin doanh nghiệp gồm:  Hệ thống hoạch định nguồn lực doanh nghiệp (Enterprise Resource Planning - ERP)  Hệ thống quản trị quan hệ khách hàng (Customer Relationship Management - CRM) và hệ thống quản trị quan hệ nhà cung cấp (Supplier Relationship Management - SRM)  Hệ thống quản trị chuỗi cung ứng (Supply Chain Management - SCM) 1.1.2. Phân loại các HTTT dùng trong doanh nghiệp Có nhiều cách phân loại các HTTT dùng trong doanh nghiệp. Dưới đây là cách phân loại dựa trên loại hỗ trợ mà HTTT cung cấp. 1.1.2.1. Các hệ thống hỗ trợ hoạt động  Hệ thống xử lý giao dịch (xử lý giao dịch kinh doanh)  Hệ thống điều khiển tiến trình (điều khiển các quá trình công nghiệp)  Hệ thống cộng tác xí nghiệp (hỗ trợ giao tiếp, cộng tác trong doanh nghiệp) Các hệ thống hỗ trợ hoạt động, hay các HTTT tác nghiệp, xử lý các dữ liệu dùng cho các hoạt động kinh doanh và sinh ra trong các hoạt động đó. Các hệ thống 13 này sinh ra nhiều sản phẩm thông tin dùng bên trong và bên ngoài doanh nghiệp. Chúng thường đảm nhận các vai trò sau đây:  Xử lý một cách hiệu quả các giao dịch kinh doanh,  Điều khiển các tiến trình công nghiệp (thí dụ quá trình chế tạo sản phẩm),  Hỗ trợ việc giao tiếp và cộng tác trong toàn xí nghiệp,  Cập nhật các CSDL cấp Công ty. Tuy nhiên các hệ thống này không chú trọng vào việc tạo ra các sản phẩm thông tin mang đặc thù quản lý. Muốn có các thông tin dạng đó phải tiến hành xử lý tiếp trong các HTTT hỗ trợ quản lý. 1.1.2.2. Các hệ thống hỗ trợ quản lý  Hệ thống thông tin quản lý (các báo cáo theo mẫu định trước)  Hệ hỗ trợ quyết định (hỗ trợ quyết định tương tác, không theo mẫu)  Hệ thống thông tin điều hành (các thông tin cho lãnh đạo cấp cao nhất) Các hệ thống hỗ trợ quản lý, trợ giúp các nhà quản lý trong việc ra quyết định. Chúng cung cấp các thông tin và các hỗ trợ để ra quyết định về quản lý, là các nhiệm vụ phức tạp do các nhà quản trị và các nhà kinh doanh chuyên nghiệp thực hiện. Về mặt ý niệm, thường chia ra các loại hệ thống chính sau đây, nhằm hỗ trợ các chức trách ra quyết định khác nhau:  Các HTTT quản lý - cung cấp thông tin dưới dạng các báo cáo theo mẫu định sẵn, và trình bày chúng cho các nhà quản lý và các chuyên gia khác của doanh nghiệp,  Các hệ thống hỗ trợ quyết định - cung cấp trực tiếp các hỗ trợ về mặt tính toán cho các nhà quản lý trong quá trình ra quyết định (không theo mẫu định sẵn, và làm việc theo kiểu tương tác, không phải theo định kỳ), 14  Các HTTT điều hành - cung cấp các thông tin có tính quyết định từ các nguồn khác nhau, trong nội bộ cũng như từ bên ngoài, dưới các hình thức dễ dàng sử dụng cho các cấp quản lý và điều hành. 1.2. Mô hình kiến trúc hướng dịch vụ ứng dụng trong HTTT doanh nghiệp 1.2.1. Tổng quan về kiến trúc hướng dịch vụ SOA (Service Oriented Architecture) – Kiến trúc Định hướng Dịch vụ là một cách tiếp cận hay một phương pháp luận để thiết kế và tích hợp các thành phần khác nhau, bao gồm các phần mềm và các chức năng riêng lẻ lại thành một hệ thống hoàn chỉnh. Kiến trúc SOA rất giống như cấu trúc của các phần mềm hướng đối tượng gồm nhiều module. Tuy nhiên khái niệm module trong SOA không đơn thuần là một gói phần mềm, hay một bộ thư viện nào đó. Thay vào đó, mỗi module trong một ứng dụng SOA là một dịch vụ được cung cấp rải rác ở nhiều nơi khác nhau và có thể truy cập thông qua môi trường mạng. Nói một cách ngắn gọn, một hệ thống SOA là một tập hợp nhiều dịch vụ được cung cấp trên mạng, được tích hợp lại với nhau để cùng cộng tác thực hiện các tác vụ nào đấy theo yêu cầu của người dùng. Một trong những cách hiểu sai lầm nhất về SOA là coi SOA là một công nghệ. Mặc dù SOA hoạt động được là nhờ công nghệ, nhưng khách hàng cần phải chuyển đổi từ chỗ chỉ việc tích hợp công nghệ SOA sang việc phải điều chỉnh các phương pháp thực hiện dự án, chính sách bảo trì và thay đổi để đạt được các lợi ích về khả năng trưởng thành và đáp ứng. Dịch vụ là yếu tố then chốt trong SOA. Có thể hiểu dịch vụ như là một loại module thực hiện một quy trình nghiệp vụ nào đó. Một trong những mục đích của SOA là giúp các ứng dụng có thể 'nói chuyện' với nhau mà không cần biết các chi tiết kỹ thuật bên trong. Để thực hiện điều đó SOA định ra một chuẩn giao tiếp (dùng để gọi hàm dịch vụ) được định nghĩa rõ ràng và độc lập với nền tảng hệ thống, và có thể tái sử dụng. Như vậy, SOA là cấp độ cao hơn của phát triển ứng dụng, chú 15 trọng đến quy trình nghiệp vụ và dùng giao tiếp chuẩn để giúp che đi sự phức tạp kỹ thuật bên dưới. Sự trừu tượng là cốt lõi của khái niệm dịch vụ, nó giúp cho các doanh nghiệp có thể tích hợp các thành phần hiện có vào các ứng dụng mới và các thành phần này có thể được chia sẻ hoặc tái sử dụng trong nhiều lĩnh vực khác nhau của công ty đó mà không cần phải chỉnh sửa mã nguồn hay phải tái cấu trúc lại hệ thống. Có nhiều cách khác nhau để kết nối các dịch vụ, chẳng hạn dùng các giao thức mạng có sẵn, hoặc tạo một giao thức riêng. Nhưng từ năm 2001, các dịch vụ web (Web service) được xây dựng dựa trên nền tảng web toàn cầu, bất cứ nơi nào cũng có, đã trở thành một phương pháp phổ biến cho việc kết nối các thành phần của hệ thống SOA với nhau. Thoạt nhìn SOA và dịch vụ web trông có vẻ giống nhau nhưng chúng không phải là một. Hình 1.1 Mô hình cơ bản của SOA 1.2.2. Kiến trúc của SOA 1.2.2.1. Kiến trúc tổng quan của SOA 16 Hình 1.2 Kiến trúc tổng quan của SOA  Service Provider: Cung cấp các dịch vụ phục vụ cho một nhu cầu nào đó. User (người sử dụng hay một ứng dụng sử dụng service) không cần quan tâm đến vị trí thực sự mà service họ cần sử dụng đang hoạt động.  Serive Consumer: User sử dụng dịch vụ được cung cấp bởi Service Provider.  Service Registry: Nơi lưu trữ thông tin về các service của các Service Provider khác nhau, Service Consumer dựa trên những thông tin này để tìm kiếm và lựa chọn Service Provider phù hợp. Service Provider sẽ đăng ký thông tin về service mà mình có thể cung cấp (các chức năng có thể cung cấp, khả năng của hệ thống (tài nguyên, hiệu năng), giá cả dịch vụ,...) vào Service Registry. Service Consumer khi có nhu cầu về một service nào đó sẽ tìm kiếm thông tin trên Service Registry. Ngoài chức năng hỗ trợ tìm kiếm, Service Registry còn có thể xếp hạng các Service Provider dựa trên các tiêu chí về chất lượng dịch vụ, bầu chọn từ các khách hàng đã sử dụng service, ... Những thông tin này sẽ hỗ trợ thêm cho quá trình tìm kiếm của Service Consumer. Khi đã xác định được Service Provider mong muốn, Service Consumer thiết lập kênh giao tiếp trực tiếp với Service Provider nhằm sử dụng service hoặc tiến hành thương lượng thêm (về mặt giá cả, tài nguyên sử dụng, ...). 17 1.2.2.2. Kiến trúc chi tiết Hiện nay chưa có một mô hình chính thức nào của SOA. Thật sự SOA là một phương pháp luận giúp chúng ta tận dụng sức mạnh của các nguồn lực, nguồn tài nguyên khác nhau trong mạng máy tính để trở thành một hệ thống nhất. Mỗi một công ty, hệ thống có một mô hình SOA khác nhau. Nhìn chung mô hình SOA có các đặc điểm sau: Hình 1.3 Kiến trúc phân tầng chi tiết của SOA Một vài thành phần quan trọng trong kiến trúc này:  Connectivity: đây là tầng thấp nhất của SOA, có nhiệm vụ giao tiếp trực tiếp với các thành phần khác như cơ sở dữ liệu, giao tiếp với các ứng dụng khác, các web service,… Vì vậy có thể coi đây là tầng vật lý của SOA.  Orchestration: là các dịch vụ xử lý các quy trình nghiệp vụ và dộc lập với tầng vật lý phía bên dưới.  Composite Application: là các ứng dụng tổng hợp nhằm mục đích trình diễn (presentation) và hiển thị thông tin cho người dùng cũng như cung cấp một giao diện cho người dùng tương tác với hệ thống như là một phần mềm duy nhất. Tầng này có thể là các website, portal, các ứng dụng client mở rộng (rich client), các thiết bị di động thông minh (smart device),… 18
- Xem thêm -

Tài liệu liên quan