1. Trang chủ
  2. » Luận Văn - Báo Cáo

Tìm hiểu kiến trúc hướng dịch vụ và ứng dụng

53 18 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 53
Dung lượng 1,7 MB

Nội dung

ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC TRƯỜNG ĐẠI HỌC VINH 004 KHOA CÔNG NGHỆ THÔNG TIN TRẦN VĂN BÌNH – VŨ MẠNH TUẤN ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Đề tài: TÌM HIỂU KIẾN TRÚC HƯỚNG DỊCH VỤ VÀ ỨNG DỤNG NGÀNH: KỸ SƯ CÔNG NGHỆ THƠNG TIN Nghệ An, 12/2014 Nhóm SVTH: Trần Văn Bình – Vũ Mạnh Tuấn – Lớp 51K – Khoa CNTT i ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC TRƯỜNG ĐẠI HỌC VINH KHOA CÔNG NGHỆ THÔNG TIN ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Đề tài: TÌM HIỂU KIẾN TRÚC HƯỚNG DỊCH VỤ VÀ ỨNG DỤNG NGÀNH: KỸ SƯ CÔNG NGHỆ THÔNG TIN Sinh viên thực hiện: Lớp: Giáo viên hướng dẫn: Trần Văn Bình - 1051070480 Vũ Mạnh Tuấn - 1051070418 51K - CNTT ThS Trần Thị Kim Oanh Nghệ An, 12/2014 Nhóm SVTH: Trần Văn Bình – Vũ Mạnh Tuấn – Lớp 51K – Khoa CNTT ii ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC LỜI CẢM ƠN Ngày nay, công nghệ thông tin ngày phát triển tỏ rõ tầm quan trọng tất lĩnh vực, nói cơng nghệ thơng tin trở thành thước đo để đánh giá phát triển xã hội đại – nơi mà người dần khỏi cách làm việc thủ cơng, thơ sơ dần tiến đến tin học hóa tất lĩnh vực để cơng việc có hiệu hơn, tiết kiệm thời gian nhân lực Việc nghiên cứu kiến trúc hướng dịch vụ điều hướng tới sinh viên theo học công nghệ thông tin Trong đề tài trình bày kết trình nghiên cứu “Kiến trúc hướng dịch vụ ứng dụng” Trong trình thực em nhận giúp đỡ nhiệt tình từ giảng viên khoa công nghệ thông tin Nhân dịp em xin gửi lời cảm ơn đến khoa Công nghệ Thông tin tạo hội giúp em tham gia học hỏi, rèn luyện kỹ cần thiết để thực đề tài tốt nghiệp cuối khóa Đặc biệt chúng em xin gửi lời cảm ơn đến giảng viên Trần Thị Kim Oanh quan tâm góp ý cho đề tài sẵn sàng trả lời tất thắc mắc cần thiết, giúp em hoàn thành tốt đề tài nghiên cứu Mặc dù có nhiều cố gắng kiến thức hạn chế với kinh nghiệm chưa có nên khơng tránh khỏi thiếu sót Vì em mong nhận ý kiến đóng góp bổ sung thầy giáo bạn để đề tài em hoàn thiện Em xin chân thành cảm ơn ! Nhóm SVTH: Trần Văn Bình – Vũ Mạnh Tuấn – Lớp 51K – Khoa CNTT i ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC MỤC LỤC LỜI MỞ ĐẦU Chương TỔNG QUAN VỀ KIẾN TRÚC HƯỚNG DỊCH VỤ (SERVICE – ORIENTED ARCHITECTURE) 1.1 Kiến trúc hướng dịch vụ - SOA 1.1.1 Định nghĩa 1.1.2 Về mối liên hệ với kiến trúc tổng thể EA .5 1.1.3 Khái niệm định hướng dịch vụ .6 1.1.4 Tầm nhìn mức khái niệm mơ hình SOA 1.1.5 Dịch vụ 1.1.6 Nguyên lý SOA 10 1.2 Tính chất SOA 10 1.2.1 Kết nối lỏng lẻo 10 1.2.2 Tái sử dụng dịch vụ .11 1.2.3 Quản lý sách 11 1.2.4 Tự động dị tìm ràng buộc động .12 1.2.5 Khả tự hồi phục 12 1.3 Lợi ích SOA 13 1.4 Ưu nhược điểm SOA .13 1.5 Ứng dụng mơ hình SOA để giải tốn tích hợp 14 1.5.1 Nhu cầu giải tốn tích hợp 14 Chương PHÁT TRIỂN PHẦN MỀM DỰA VÀO SOA 16 2.1 Mơ hình hoạt động kiến trúc chi tiết hệ thống 16 2.1.1 Mơ hình tổng thể SOA 16 2.1.2 Kiến trúc phân tầng chi tiết 20 2.1.3 Các nguyên tắc thiết kế hướng dịch vụ .22 2.1.4 Các định thiết kế kiến trúc kiến trúc hướng dịch vụ 23 2.2 SOA ứng dụng Web Service 27 2.2.1 Giới thiệu Web service 27 2.2.2 SOA Web service vấn đề tích hợp hệ thống 27 2.2.3 Cấu trúc chi tiết thành phần Web service 29 2.3 Qui trình xây dựng hệ thống SOA 33 2.3.1 Thách thức xây dựng hệ thống 33 2.3.2 Vòng đời hệ thống .35 Nhóm SVTH: Trần Văn Bình – Vũ Mạnh Tuấn – Lớp 51K – Khoa CNTT ii ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC 2.3.3 Các pha xây dựng hệ thống SOA 36 2.3.4 Các chiến lược xây dựng hệ thống 38 Chương DEMO WEB SERVICE .42 3.1 Cơ sở liệu 42 3.1.1 Quản lý cán 42 3.1.2 Quản lý lương 42 3.2 Các dịch vụ sử dụng 43 3.2.1 Mơ hình quản lý cán sử dụng web service .43 3.2.2 DEMO chương trình quản lý lương 44 KẾT LUẬN 46 TÀI LIỆU THAM KHẢO .47 Nhóm SVTH: Trần Văn Bình – Vũ Mạnh Tuấn – Lớp 51K – Khoa CNTT iii ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC DANH MỤC CÁC HÌNH VẼ Hình 1.1: Mơ hình SOA Hình 2.1: Mơ hình tổng quan SOA 16 Hình 2.2 Uỷ nhiệm dich vụ 19 Hình 2.3 Mơ hình cung cấp Internet ADSL 20 Hình 2.4: Kiến trúc chi tiết SOA 21 Hình 2.5: Các thành phần tham gia triển khai hệ thống SOA .22 Hình 2.6 Các tầng SOA 24 Hình 2.7: Mơ hình hoạt động web service 28 Hình 2.8: Các thành phần Web service 30 Hình 2.9: Cấu trúc WSDL .31 Hình 2.10: Vòng đời hệ thống SOA 35 Hình 2.11: Các bước xây dựng hệ thống SOA 37 Hình 2.12: Tiếp cận Top-down xây dựng hệ thống 38 Hình 2.13: Các bước xây dựng hệ thống theo chiến lược top-down 39 Hình 2.14: Tiếp cận Bottom-up xây dựng hệ thống 40 Hình 2.15: Các bước xây dựng hệ thống theo chiến lược bottom-up 40 Nhóm SVTH: Trần Văn Bình – Vũ Mạnh Tuấn – Lớp 51K – Khoa CNTT iv ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC LỜI MỞ ĐẦU Lý chọn đề tài Trong nhà quản lý công nghệ thông tin phải đối đầu với việc giảm giá thành tối đa lợi ích cơng nghệ có, họ phải liên tục cố gắng để phục vụ khách hàng tốt hơn, trở nên cạnh tranh phản ứng nhanh với chiến lược doanh nghiệp Có hai yếu tố ẩn sau áp lực này, tính khơng đồng hệ thống thay đổi nhanh mặt công nghệ Phần lớn doanh nghiệp ngày gồm nhiều hệ thống, ứng dụng kiến trúc khác với thời gian tồn công nghệ khác Việc tích hợp sản phẩm từ nhiều nhà cung cấp nhiều tảng thực điều khó khăn Nhưng cố gắng tiếp cận theo kiểu nhà cung cấp công nghệ thơng tin ứng dụng kiến trúc hỗ trợ không mềm dẻo Sự thay đổi công nghệ yếu tố thứ hai mà nhà quản lý công nghệ thông tin phải đối mặt Sự tồn cầu hố kinh doanh điện tử làm tăng tốc thay đổi Sự tồn cầu hố dẫn tới cạnh tranh gay gắt việc rút ngắn chu kỳ sản xuất để chiếm ưu đối thủ cạnh tranh Các thay đổi yêu cầu nhu cầu khách hàng nhanh chóng tác động phân phối cạnh tranh phong phú thông tin sản phẩm Internet Do lại thúc đẩy việc cải tiến sản phẩm dịch vụ diễn nhanh Các cải tiến công nghệ tiếp tục tăng, làm tăng thay đổi yêu cầu khách hàng Doanh nghiệp phải nhanh chóng thích nghi để tồn tại, chưa kể đến việc phải thành công môi trường cạnh tranh động ngày nay, hạ tầng công nghệ thông tin phải đem lại khả thích nghi cho doanh nghiệp Làm để môi trường công nghệ thông tin trở nên linh hoạt nhạy bén thay đổi yêu cầu kinh doanh? Làm để hệ thống ứng dụng không đồng trao đổi với cách liền mạch? Làm để đạt mục tiêu kinh doanh mà không làm phá sản doanh nghiệp? Đã có nhiều giải pháp đề song song với phát triển vấn đề kinh doanh, hình Hiện nay, nhiều nhà quản lý Nhóm SVTH: Trần Văn Bình – Vũ Mạnh Tuấn – Lớp 51K – Khoa CNTT ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC chuyên gia công nghệ thông tin tin tiến ngày gần với câu trả lời với kiến trúc hướng dịch vụ (SOA) Dựa kiến trúc hướng dịch vụ, người dùng dịch vụ chí khơng cần phải quan tâm tới dịch vụ cụ thể mà trao đổi thơng tin hạ tầng sở, tuyến dịch vụ, tạo lựa chọn thích hợp cho người dùng Các đặc tả kỹ thuật cụ thể từ công nghệ cài đặt khác J2EE hay NET không làm ảnh hưởng tới người dùng SOA Người dùng có khả cân nhắc thay cài đặt dịch vụ tốt có dịch vụ khác có chất lượng tốt tồn Nhóm SVTH: Trần Văn Bình – Vũ Mạnh Tuấn – Lớp 51K – Khoa CNTT ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Chƣơng TỔNG QUAN VỀ KIẾN TRÚC HƢỚNG DỊCH VỤ (SERVICE – ORIENTED ARCHITECTURE) 1.1 Kiến trúc hƣớng dịch vụ - SOA 1.1.1 Định nghĩa  SOA (Service Oriented Architecture) – Kiến trúc định hướng Dịch vụ cách tiếp cận hay phương pháp luận để thiết kế tích hợp thành phần khác nhau, bao gồm phần mềm chức riêng lẻ lại thành hệ thống hoàn chỉnh đem lại cách thuận tiện chức nghiệp vụ, quy trình ứng dụng, tới người sử dụng dạng dịch vụ hoạt động mơi trường mạng có khả chia sẻ sử dụng lạị Kiến trúc SOA giống với cấu trúc phần mềm hướng đối tượng gồm nhiều module Tuy nhiên khái niệm module SOA khơng đơn gói phần mềm, hay thư viện Thay vào đó, module ứng dụng SOA dịch vụ cung cấp rải rác nhiều nơi khác truy cập thơng qua mơi trường mạng Nói cách ngắn gọn, hệ thống SOA tập hợp nhiều dịch vụ cung cấp mạng, tích hợp lại với để cộng tác thực tác vụ theo yêu cầu khách hàng Kiến trúc hướng dịch vụ xác định kiến trúc hướng dịch vụ trừu tượng nhằm mục đích xây dựng hệ thống phần mềm cách liên kết kết tập dịch vụ cục từ xa cách mềm dẻo Trong mơ hình kiến trúc trước kiểm sốt tính phức tạp cách gom nhóm chức chung, SOA lại cố gắng thực việc xác định yêu cầu kiến trúc cụ thể đảm bảo công nghệ hỗ trợ đảm nhiệm trách nhiệm công nghệ Bằng cách này, SOA đạt kiểu kiến trúc trừu tượng mà tập trung vào việc lắp ráp hoạt động nghiệp vụ theo yêu cầu Công nghệ dịch vụ mạng cơng nghệ hỗ trợ bật cho SOA Nó cung cấp khả giải pháp kỹ thuật cho phép thực hoá thành phần hệ thống phần mềm theo kiến trúc hướng dịch vụ Với trọng tập trung vào việc thiết kế quy trình nghiệp vụ, SOA yêu cầu việc phát triển phần mềm tương tác chặt chẽ với môi trường nghiệp vụ Một tham gia tích cực nhà quản lý phân tích nghiệp vụ cải tiến cách đáng kể kết việc thiết kế hệ thống Nhóm SVTH: Trần Văn Bình – Vũ Mạnh Tuấn – Lớp 51K – Khoa CNTT ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC  Dịch vụ (service) yếu tố then chốt SOA Có thể hiểu dịch vụ loại module thực quy trình nghiệp vụ Một mục đích SOA giúp ứng dụng “giao tiếp” với mà không cần biết chi tiết kỹ thuật bên Để thực điều SOA định chuẩn giao tiếp (dùng để gọi hàm dịch vụ) định nghĩa rõ ràng độc lập với tảng hệ thống, tái sử dụng Như vậy, SOA cấp độ cao phát triển ứng dụng, trọng đến quy trình nghiệp vụ dùng giao tiếp chuẩn để giúp che phức tạp kỹ thuật bên Sự trừu tượng cốt lõi khái niệm dịch vụ, giúp cho doanh nghiệp tích hợp thành phần có vào ứng dụng thành phần chia sẻ tái sử dụng nhiều lĩnh vực khác 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 Tóm lại, dịch vụ có đặc điểm sau:  Có ranh giới rõ ràng (Boundaries Are Explicit): Mỗi service xây dựng dựa giao chuẩn hóa sử dụng rộng rãi Chi tiết thực service khơng thể bên ngồi Mỗi service cơng bố số giao cho người sử dụng dùng để gởi yêu cầu nhận kết trả  Tính tự trị (Autonomous): Về mặt lý thuyết, service có tính độc lập cao, xây dựng đưa vào sử dụng mà không phụ thuộc vào service khác  Tính chia sẻ (Share the Schema and Contract, Not the Class): Về mặt trao đổi liệu, dịch vụ không truyền lớp kiểu Thay vào đó, lớp kiểu đặc tả hình thức (dữ liệu đặc tả schema, behavior đặc tả thành contract)  Khả tương thích dịch vụ dựa sách (Service Compatibility Is Based on Policy): Sự tương thích dịch vụ vào sách Tương thích mặt cấu trúc dựa đặc tả hình thức bao gồm contract (dựa Web Service Description Language (WSDL) Sự tương thích dựa sách cung cấp khả phân tích đảm bảo tương thích dịch vụ Có nhiều cách khác để kết nối dịch vụ, chẳng hạn dùng giao thức mạng có sẵn, tạo giao thức riêng Nhưng từ năm 2001, dịch vụ web (Web service) xây dựng dựa tảng web toàn cầu, nơi có, trở thành phương pháp phổ biến cho việc kết nối thành phần hệ thống SOA với Chúng ta tìm hiểu rõ Web Service phần Nhóm SVTH: Trần Văn Bình – Vũ Mạnh Tuấn – Lớp 51K – Khoa CNTT ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC • UDDI thư mục để lưu trữ thông tin Web Service • UDDI thư mục Web Service giao diện mơ tả WSDL • UDDI truyền qua SOAP • UDDI xây dựng Microsoft NET Để sử dụng dịch vụ, trước tiên client phải tìm dịch vụ, ghi nhận thơng tin cách sử dụng biết đối tượng cung cấp dịch vụ UDDI định nghĩa số thành phần cho biết thông tin này, cho phép client truy tìm nhận thơng tin u cầu sử dụng Web Service Những thông tin Web Service sử dụng công bố lên mạng sử dụng giao thức Nó kích hoạt ứng dụng để tìm kiếm thơng tin Web Service khác nhằm xác định xem dịch vụ cần đến Những UDDI registry có:  UDDI Business Registry: đăng ký bảo trì Microsoft, IBM đặc điểm đăng ký phân tán mặt vật lý  IBM Test Registry: đăng ký cho người phát triển để thử nghiệm công nghệ kiểm tra service họ  Private registries IBM ships: đăng ký UDDI cá nhân Trên mô tả chuẩn công nghiệp mà Web Service sử dụng để triển khai mơ hình hoạt động theo tư SOA Thoạt nhìn, SOA Web Service giống chúng Định nghĩa Web Service dựa công nghệ XML, WSDL, UDDI SOAP cho phép xây dựng giải pháp lập trình cho vấn đề tích hợp ứng dụng truyền thông điệp Theo thời gian, cơng nghệ hồn thiện hay thay công nghệ khác tốt hơn, hiệu hay ổn định Rõ ràng, theo định nghĩa Web Service đặc tả cơng nghệ cịn SOA triết lý thiết kế phần mềm Web Service đưa giải pháp kỹ thuật để thực SOA, SOA thực với giải pháp kỹ thuật khác Web Service (và tất Web Service có kiến trúc SOA) Tuy vậy, SOA Web Service có mối quan hệ tương hỗ: phổ biến Web Service giúp thúc đẩy phát triển SOA, kiến trúc tốt SOA giúp Web Service thành cơng 2.3 Qui trình xây dựng hệ thống SOA 2.3.1 Thách thức xây dựng hệ thống Cũng phương pháp phát triển phần mềm khác, để xây dựng ứng dụng hướng dịch vụ phải trải qua giai đoạn tương tự Tuy vậy, dù lợi ích đạt từ hệ thống SOA lớn việc triển khai hệ thống SOA điều dễ dàng Từ mơ hình tính tốn tập trung sang mơ hình phân tán, Nhóm SVTH: Trần Văn Bình – Vũ Mạnh Tuấn – Lớp 51K – Khoa CNTT 33 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC sau kiến trúc dựa tảng Web Và ngày trình tiếp tục Chúng ta thời kỳ q độ sang mơ hình tính tốn dựa dịch vụ kiến trúc hướng dịch vụ (SOA) Kiến trúc ngày áp dụng phát triển cho nhiều doanh nghiệp giới Nhưng để xây dựng triển khai hệ thống SOA phải gặp số vấn đề trở ngại: - Xác định dịch vụ: • Dịch vụ gì?chức nghiệp vụ cần cung cấp dịch vụ? Độ mịn(granularity) dịch vụ tốt? • Việc xác định dịch vụ định đối tượng cung cấp dịch vụ cách thích hợp, hiệu giai đoạn quan trọng giải pháp hướng dịch vụ Trong thực tế nhiều chức nghiệp vụ tương tự cung cấp nhiều hệ thống tổ chức - Phân bổ dịch vụ: • Ta nên đặt dịch vụ vị trí hệ thống? • Các dịch vụ thường hoạt động dựa thực thể nghiệp vụ.Các đối tượng lưu quản lí hệ thống.Vị trí thực thể vị trí tốt để đặt dịch vụ.Tuy nhiên đặc tính hệ phân tán nên đối tượng phân bố rải rác nhiều vị trí đối tượng quản lí nhiều nơi.Vì đồng liệu hệ thống trở nên yêu cầu quan trọng.Trong mơi trường dịch vụ đặt đâu - Xác định miền dịch vụ: • Làm gom nhóm dịch vụ thành miền luận lý(logic domain) • Việc phân loại gom nhóm dịch vụ thành miền luận lý đơn giản hóa kiến trúc giảm số lượng thành phần cần xây dựng.Việc định nghĩa miền ảnh hưởng đến nhiều khía cạnh khác kiến trúc hệ thống cân tải(load balancing), điều khiển truy cập(access control), phân chia theo chiều sâu hay chiều rộng xử lý nghiệp vụ - Đóng gói dịch vụ: • Làm bao bọc chức sẵn có hệ thống cũ vào dịch vụ • Nếu hệ thống thiết kế quan tâm hỗ trợ vấn đề tích hợp với hệ thống vấn đề dễ dàng hơn.Tuy nhiên hệ thống cũ trước xây dựng theo mô hình kín, đóng gói chứa tồn thơng tin ngun tắc qui trình xử lý nay, tích hợp, thơng tin cần chia sẻ phân bố nhiều ứng dụng khác Nhóm SVTH: Trần Văn Bình – Vũ Mạnh Tuấn – Lớp 51K – Khoa CNTT 34 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC - Kết hợp dịch vụ: • Làm để tạo dịch vụ tổng hợp • Nhu cầu kết hợp nhiều dịch vụ để đáp ứng yêu cầu phức tạp từ đối tượng sử dụng có thực Vấn đề kết hợp dịch vụ cách hiệu quả, theo qui trình với buộc phức tạp - Định tuyến dịch vụ: • Làm để chuyển yêu cầu từ đối tượng sử dụng dịch vụ đến dịch vụ hay miền dịch vụ thích hợp? • Một hệ thống SOA phải có tính độc lập địa cho đối tượng sử dụng service hệ thống.Ngồi cịn phải quan tâm đến vấn đề hiệu suất hoạt động hệ thống việc định vị dịch vụ trình chiếm nhiều thời gian - Quản lý dịch vụ: • Vấn đề quản lý bảo trì dịch vụ, việc tạo, xây dựng, theo dõi thay đổi dịch vụ cho có hiệu quả? • Làm để lựa chọn chuẩn định dạng thông điệp trao đổi chuẩn? Làm xây dựng chuẩn định dạng liệu mà hệ thống có khả hiểu xử lý? Ngồi khó khăn tổ chức với đặc thù riêng phải đối diện với ấn đề khác q trình triển khai hệ thống 2.3.2 Vịng đời hệ thống Hình vẽ mơ tả tổng qt giai đoạn chu trình sống hệ thống SOA Trong qui trình hệ thống qua giai đoạn chính: Mơ hình hóa, Lắp ghép, Triển khai Quản lý Các giai đoạn dựa tảng việc Quản trị thực nghiệm Hình 2.10: Vịng đời hệ thống SOA Nhóm SVTH: Trần Văn Bình – Vũ Mạnh Tuấn – Lớp 51K – Khoa CNTT 35 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC - Pha Model - mơ hình hóa thiết kế Ở pha này, cần tập trung vào mục tiêu sau: • Thu thập u cầu sử dụng dịch vụ • Mơ hình hóa mơ hệ thống • Thiết kế dịch vụ mức sở - Pha Assemble – Lắp ráp dịch vụ • Khai thác • Xây dựng thử nghiệm • Tổ hợp dịch vụ - Pha Deploy – Triển khai • Tích hợp nguồn nhân lực • Tích hợp tiến trình • Quản lý tích hợp thơng tin - Pha Manage – Quản lí • Quản trị ứng dụng dịch vụ • Quản lí đồng tính tn thủ • Giám sát số liệu nghiệp vụ - Governance and best practice – Quản trị trải nghiệm thực tế: Đây công việc xuyên suốt qui trình vịng đời hệ thống • Tính tốn tài • Sắp xếp nghiệp vụ/cơng nghệ thơng tin • Điều khiển tiến trình Các thơng tin thu thập pha Manage cung cấp trở lại qui trình phát triển giúp cải thiện trình xây dựng hệ thống, làm cho hệ thống hoàn chỉnh Có nghĩa, qui trình vịng lặp hệ thống hoàn chỉnh theo nhu cầu thay đổi doanh nghiệp khách hàng 2.3.3 Các pha xây dựng hệ thống SOA Xây dựng hệ thống SOA trải qua pha sau đây: Nhóm SVTH: Trần Văn Bình – Vũ Mạnh Tuấn – Lớp 51K – Khoa CNTT 36 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Hình 2.11: Các bước xây dựng hệ thống SOA Bước 1: Phân tích hướng dịch vụ (Service-oriented analysis) Đây giai đoạn đầu để định phạm vi hệ thống SOA Hệ thống gồm dịch vụ nào? Tầng dịch vụ lược đồ hóa (mapped out), chia dịch vụ thành mơ hình, bao gồm hệ thống SOA sơ Bước 2: Thiết kế hướng dịch vụ (service-oriented design) Đây giai đoạn có kết hợp chặt chẽ thỏa hiệp doanh nghiệp 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 vấn đề then chốt thiết lập nên ranh giới thông qua dịch vụ Các tầng dịch vụ thiết kế giai đoạn bao gồm tầng orchestrantion, kết xác định quy trình nghiệp vụ hình thức Bước 3: Phát triển dịch vụ (Service development) Trong bước giai đoạn xây dựng thực tế Ở vấn đề tảng phát triển vào hoạt động, không quan tâm tới loại dịch vụ Một cách cụ thể, lựa chọn ngơn ngữ lập trình mơi trường phát triển định mẫu dịch vụ quy trình nghiệp vụ orchestrantion phù hợp với thiết kế Bước 4: Kiểm thử dịch vụ (Service testing) Để đưa tiềm cho việc dùng lại bao gồm trạng thái trước được, dịch vụ yêu cầu trải qua nghiêm ngặt việc kiểm thử trước triển khai thành sản phẩm Bước 5: Triển khai dịch vụ (Service deployment) Giai đoạn thực thi đưa đến việc cài đặt cấu hình cho thành phần phân tán, giao diện dịch vụ, nhiều sản phẩm trung gian (middleware products) kết hợp với thành server Nhóm SVTH: Trần Văn Bình – Vũ Mạnh Tuấn – Lớp 51K – Khoa CNTT 37 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Bước 6: Quản trị dịch vụ (Service administration) Sau dịch vụ triển khai, vấn đề quản lý ứng dụng trở thành hàng đầu, mối quan tâm cho hệ thống phân tán, ứng dụng dựa thành phần (component-based applications), việc xem xét chúng dịch vụ tổng thể 2.3.4 Các chiến lược xây dựng hệ thống Nhìn chung có hai phương pháp để xây dựng hệ thống SOA Cách tự tay xây dựng từ đầu hệ thống theo mơ hình SOA Cách thứ hai xây dựng SOA dựa vào thư viện hay tảng có sẵn Mỗi cách có ưu nhược điểm riêng Nếu tự tay xây dựng từ đầu dễ dàng kiểm sốt tối ưu nó, nhiên phải tốn nhiều thời gian, nhân lực tiền bạc may xây dựng hệ thống SOA hồn chỉnh, hệ thống SOA nhìn bên đơn giản lại phức tạp bên Ngược lại, xây dựng SOA từ tảng có sẵn, có nhiều lợi như: thời gian phát triển triển khai nhanh, hỗ trợ tốt Bù lại tự chỉnh sửa thay đổi theo ý muốn 2.3.4.1 Chiến lược top-down Trong xây dựng hệ thống SOA, top-down chiến lược lấy xuất phát điểm yêu cầu ngiệp vụ, sau xác định yêu cầu chức năng, tiến trình nghiệp vụ tiến trình con, trường hợp sử dụng (use cases) tới xác định thành phần, dịch vụ hệ thống Hình 2.12: Tiếp cận Top-down xây dựng hệ thống Chiến lược top-down hỗ trợ tạo bước để hình thành tầng dịch vụ (service layers) Chiến lược phổ biến để tạo kiến trúc dịch vụ có chất lượng cao, trình tạo nhiều nghiệp vụ sử dụng lại dịch vụ ứng dụng khác Nhóm SVTH: Trần Văn Bình – Vũ Mạnh Tuấn – Lớp 51K – Khoa CNTT 38 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Hình 2.13: Các bước xây dựng hệ thống theo chiến lược top-down - Bước 1: Định nghĩa quan hệ tập thông tin (Define relevant ontology) Bước để xác định, phân loại tập thông tin xử lý cấu tổ chức hệ thống Các kết từ vựng phổ biến, định nghĩa mối quan hệ tập thông tin với tập thông tin khác Các tổ chức có phạm vi rộng lớn với nhiều phạm vi nghiệp vụ có vài ontology, theo cách quản lý nghiệp vụ chia cách rõ ràng Nếu có nhiều từ vựng nghiệp vụ không tồn cho tập thông tin mà giải pháp yêu cầu thực hiện, bước định nghĩa Một số lượng đáng kể tập thông tin trước kết phân tích nghiệp vụ mức cao yêu cầu - Bước 2:Cân chỉnh quan hệ mơ hình nghiệp vụ |(Align relevant business models) Sau ontology thiết lập, tồn mơ hình nghiệp vụ cần thay đổi (hay tạo ra) để thể từ vựng cách cung cấp ontology thuật ngữ mơ hình nghiệp vụ Mơ hình thực thể chi tiết quan trọng - Bước 3:Thực phân tích dịch vụ (Perform service-oriented analysis) Xác định dịch vụ hướng tiếp cận cho dịch vụ, mơ hình hóa dịch vụ - Bước 4: Thực thiết kế dịch vụ (Perform service-oriented design) Thực thiết kế hướng dịch vụ - Bước 5: Phát triển dịch vụ (Develop services) Phát triển dịch vụ theo yêu cầu Các dịch vụ phát triển theo thiết kế kỹ thuật tương ứng với đặc tả dịch vụ tạo bước - Bước 6: Thử nghiệm hoạt động dịch vụ (Test service operations) Nhóm SVTH: Trần Văn Bình – Vũ Mạnh Tuấn – Lớp 51K – Khoa CNTT 39 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Giai đoạn kiểm thử yêu cầu cho tất trình hoạt động dịch vụ trình kiểm tra phải thực đảm bảo chất lượng Các dịch vụ vượt qua kiểm tra coi đạt chất lượng tái sử dụng sau - Bước 7: Triển khai dịch vụ (Deploy service) Quan tâm tới vấn đề thực thi, xác định tiềm tương lai sử dụng lại dịch vụ Để tạo điều kiện cho nhiều người yêu cầu dịch vụ, dịch vụ sử dụng lại mở rộng lực xử lý cần có bảo mật Đồng thời, cần phải cung cấp khả truy cập cho dịch vụ 2.3.4.2 Chiến lược bottom-up Chiến lược dựa việc phân tích tình trạng, tài ngun có sẵn hệ thống có tái sử dụng lại thành phần việc xây dựng dịch vụ Sau có dịch vụ từ thành phần đó, ta cải tiến chất lượng dịch vụ tổ hợp dịch vụ lại để tạo dịch vụ cao cấp hay cịn gọi dịch vụ tổ hợp Hình 2.14: Tiếp cận Bottom-up xây dựng hệ thống Trong hướng tiếp cận này, ta thừa nhận yêu cầu nghiệp vụ tồn Hình 2.15: Các bước xây dựng hệ thống theo chiến lược bottom-up - Bước 1: Mô hình hóa dịch vụ ứng dụng (Model application services) Nhóm SVTH: Trần Văn Bình – Vũ Mạnh Tuấn – Lớp 51K – Khoa CNTT 40 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Kết giai đoạn định nghĩa yêu cầu ứng dụng thỏa mãn thông qua việc sử dụng Web service Các yêu cầu bao gồm thiết lập lên kênh tích hợp point-to-point hệ thống cũ (legacy system) giải pháp B2B (Business-to-Business) Các yêu cầu phổ biến khác dần xuất để thay công nghệ truyền thông truyền thống framework truyền thông điệp SOAP Các dịch vụ ứng dụng mơ hình hóa bao gồm logic quy tắc cho nghiệp vụ cụ thể Trường hợp này, giống hai tầng dịch vụ ứng dụng, bao gồm có dịch vụ tiện ích nhân - Bước 2: Thiết kế dịch vụ ứng dụng (Design applicaion services) Một vài dịch vụ ứng dụng mơ hình hóa bước trình bày thành thiết kế Các dich vụ cung cấp thêm vào cho thiết kế Các dịch vụ ứng dụng tùy chọn cần đưa qua q trình thiết kế, khía cạnh tồn chuẩn thiết kế áp dụng để đảm bảo mức độ bền vững - Bước 3: Phát triển dịch vụ ứng dụng (Deploy application service) Các dịch vụ ứng dụng phát triển theo mô tả dịch vụ thiết kế chi tiết ứng dụng - Bước 4: Thử nghiệm dịch vụ (Test service) Các dịch vụ, môi trường kết hợp chúng, logic hệ thống cũ kiểm tra để đảm bảo chắn xử lý yêu cầu phù hợp Sự thực thi tiêu chuẩn kiểm thử nhấn mạnh thường thiết lập lên tham số cho hệ thống cũ thông qua dịch vụ Kiểm tra bảo mật phần quan trọng giai đoạn - Bước 5: Triển khai dịch vụ (Deploy services) Những giải pháp dịch vụ ứng dụng triển khai thành sản phẩm Sự cân nhắc thực thi cho dịch vụ ứng dụng thường bao gồm thực thi yêu cầu bảo mật Hiện xu SOA phát triển mạnh Và hai chiến lược xây dựng hệ thống top-down bottom-up áp dụng rộng rãi Một số hệ thống cũ muốn nâng cấp hay tích hợp thêm số dịch vụ tổ hợp lại với thành hệ thống lớn thường sử dụng chiến lược bottom-up để tận dụng sở hạ tầng có sẵn tiết kiệm chi phí Cịn hầu hết hệ thống lớn vào xây dựng theo định hướng SOA áp dụng chiến lược top-down, nhằm mục đích đảm bảo khả mở rộng thường xuyên thay đổi yêu cầu với hệ thống Tùy vào hệ thống mà việc xây dựng kiến trúc hướng dịch vụ sử dụng chiến lược phù hợp Nhóm SVTH: Trần Văn Bình – Vũ Mạnh Tuấn – Lớp 51K – Khoa CNTT 41 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Chƣơng DEMO WEB SERVICE 3.1 Cơ sở liệu 3.1.1 Quản lý cán 3.1.2 Quản lý lương Nhóm SVTH: Trần Văn Bình – Vũ Mạnh Tuấn – Lớp 51K – Khoa CNTT 42 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC 3.2 Các dịch vụ sử dụng 3.2.1 Mơ hình quản lý cán sử dụng web service Đây DEMO chương trình quản lý cán có sử dụng dịch vụ trảo đổi để lấy thông tin cán lấy thơng tin lương theo chức vụ sau: Chương trình cho phép thêm, sửa, xóa thông tin cán truy cập theo lương tương ứng cán Nhóm SVTH: Trần Văn Bình – Vũ Mạnh Tuấn – Lớp 51K – Khoa CNTT 43 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC 3.2.2 DEMO chương trình quản lý lương Các tệp liệu, form web service sử dụng để chạy chương trình DEMO NET, sử dụng dịch vụ để tính tổng lương tất cán Nhóm SVTH: Trần Văn Bình – Vũ Mạnh Tuấn – Lớp 51K – Khoa CNTT 44 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Và kết việc kết hợp sử dụng web service để liên kết với DEMO quản lý cán Nhóm SVTH: Trần Văn Bình – Vũ Mạnh Tuấn – Lớp 51K – Khoa CNTT 45 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC KẾT LUẬN SOA giúp cho công việc phát triển phần mềm trở nên dễ dàng nhanh chóng “Đừng tốn thời gian chế tạo lại chi tiết, linh kiện xe, kết hợp linh kiện (dịch vụ) có sẵn bổ sung cần thiết để lắp ráp nhanh chóng giúp bạn có xe đưa bạn đến đích nhanh hơn!” Đó triết lý SOA Trong SOA làm kiến trúc ưu việt cho phát triển ứng dụng cơng nghệ thơng tin giai đoạn việc nghiên cứu để áp dụng triết lý cho hệ thống phần mềm việc cần thiết Sau trình nghiên cứu, đề tài chúng em đạt số kết sau: - Hiểu đưa khái niệm vấn đề liên quan tới kiến trúc hướng dịch vụ SOA - Ứng dụng công nghệ Web Service triển khai tư tưởng SOA - Qui trình hướng tiếp cận phát triển ứng dụng theo hướng dịch vụ - Xây dựng chương trình demo Web Service Tuy nhiên, kết tìm hiểu cịn tổng quan, chương trình xây dựng mang tính mơ nên cịn đơn giản Trong q trình nghiên cứu đề tài, kĩ nghiên cứu kiến thức hạn chế, báo cáo chưa giải hết góc cạnh vấn đề Chúng em mong nhận đóng góp thầy để đề tài hoàn thiện Trong thời gian tới, chúng em tiếp tục nghiên cứu để tìm hiểu sâu vấn đề SOA như: sử dụng số công cụ hỗ trợ để định nghĩa xây dựng dịch vụ, cách thức đăng ký Web Service với quy mô lớn phát triển giải pháp bảo mật cho hệ thống SOA… Chúng em xin chân thành cảm ơn! Nhóm SVTH: Trần Văn Bình – Vũ Mạnh Tuấn – Lớp 51K – Khoa CNTT 46 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC TÀI LIỆU THAM KHẢO Hồ Bảo Thanh & Nguyễn Hoàng Long (2005) - Luận văn cử nhân tin học khoa CNTT – ĐH KHTN Tp.HCM, Nghiên cứu kiến trúc hướng dịch vụ ứng dụng Đề tài nghiên cứu khoa học Nguyễn Thị Dung sinh viên trường đại học Thái Nguyên, Nghiên cứu kiến trúc hướng dịch vụ Douglas K Barry (2003), Web Services and Service-Oriented Architecture: The Savvy Manager's Guide IBM Red Book Team (2004), Pattern: Implementing an SOA using Enterprise Service Bus Marks, Eric and Bell, Michael Service-oriented Architecture: A planning and implementation Guide for Business and Technology s.l.: John Wiley & Sons, Inc., 2006 Minoli, Daniel Enterprise Architecture A to Z: Frameworks, Business Process Modeling, SOA, and Infrastructure Technology s.l.: Taylor & Prancis, 2008 IBM Red Book Team (2004), Pattern: Service-Oriented Architecture and Web Services http://www.ibm.com/developerworks/vn/library/ws-soa-progmodel , Loạt SOA program model Kris Jamsa (2003), NET Web Services Solutions Sybex © 2003 10 Các viết liên quan: http://en.wikipedia.org/wiki/Service-oriented_architecture http://vovanhai.wordpress.com/web-services/c-web-services/t%E1%BA%A1o-webservice-v%E1%BB%9Bi-c-step-by-step http://voer.edu.vn/content/m18879/latest/ http://www.phpvn.org/index.php?topic=301.0 http://www.networkworld.com/news/2009/031209-soa-security-the.html http://www.ibm.com/developerworks/vn/views/webservices/libraryview.jsp?search_by =M%C3%B4+h%C3%ACnh+l%E1%BA%ADp+tr%C3%ACnh+SOA+%C4%91% E1%BB%83+tri%E1%BB%83n+khai+th%E1%BB%B1c+hi%E1%BB%87n+c%C 3%A1c+d%E1%BB%8Bch+v%E1%BB%A5+Web Nhóm SVTH: Trần Văn Bình – Vũ Mạnh Tuấn – Lớp 51K – Khoa CNTT 47 ... phần dịch vụ, đồng thời mô tả cách thức ứng dụng hoạt động dựa liên kết dịch vụ Trong khái niệm định hướng dịch vụ, phân loại dịch vụ thành hai dạng bản, là: dịch vụ nghiệp vụ dịch vụ kỹ thuật Dịch. .. người dùng dịch vụ Tìm kiếm dịch vụ: người yêu cầu dịch vụ định vị dịch vụ cách yêu cầu nơi đăng ký dịch vụ dịch vụ phù hợp với tiêu chí đặt Liên kết thực thi dịch vụ: sau nhận mô tả dịch vụ, người... gói dịch vụ cao dịch vụu có khả tái sử dụng linh hoạt Thành phần sử dụng dịch vụ( Web Services Customer): Thành phần sử dụng dịch vụ ứng dụng, dịch vụ, loại modul phần mềm khác có yêu cầu sử dụng

Ngày đăng: 25/08/2021, 15:40

HÌNH ẢNH LIÊN QUAN

2.1.1. Mô hình tổng thể của SOA - Tìm hiểu kiến trúc hướng dịch vụ và ứng dụng
2.1.1. Mô hình tổng thể của SOA (Trang 22)
Hình 2.2. Uỷ nhiệm dich vụ - Tìm hiểu kiến trúc hướng dịch vụ và ứng dụng
Hình 2.2. Uỷ nhiệm dich vụ (Trang 25)
Hình 2.3. Mô hình cung cấp Internet ADSL 2.1.2. Kiến trúc phân tầng chi tiết  - Tìm hiểu kiến trúc hướng dịch vụ và ứng dụng
Hình 2.3. Mô hình cung cấp Internet ADSL 2.1.2. Kiến trúc phân tầng chi tiết (Trang 26)
Hình 2.4: Kiến trúc phân tầng của hệ thống SOA - Tìm hiểu kiến trúc hướng dịch vụ và ứng dụng
Hình 2.4 Kiến trúc phân tầng của hệ thống SOA (Trang 27)
Hình 2.5: Các thành phần tham gia triển khai hệ thống SOA - Tìm hiểu kiến trúc hướng dịch vụ và ứng dụng
Hình 2.5 Các thành phần tham gia triển khai hệ thống SOA (Trang 28)
Hình 2.6 mô tả các tầng của SOA. Với mỗi tầng, các quyết định thiết kế và kiến trúc được tiến hành - Tìm hiểu kiến trúc hướng dịch vụ và ứng dụng
Hình 2.6 mô tả các tầng của SOA. Với mỗi tầng, các quyết định thiết kế và kiến trúc được tiến hành (Trang 30)
WebService với mô hình hoạt động 3 bên tương ứng với mô hình hoạt động của SOA, sử dụng một bộ các chuẩn công nghệ - Tìm hiểu kiến trúc hướng dịch vụ và ứng dụng
eb Service với mô hình hoạt động 3 bên tương ứng với mô hình hoạt động của SOA, sử dụng một bộ các chuẩn công nghệ (Trang 34)
Hình 2.8: Các thành phần của Webservice - Tìm hiểu kiến trúc hướng dịch vụ và ứng dụng
Hình 2.8 Các thành phần của Webservice (Trang 36)
Hình 2.9: Cấu trúc WSDL - Tìm hiểu kiến trúc hướng dịch vụ và ứng dụng
Hình 2.9 Cấu trúc WSDL (Trang 37)
Hình vẽ dưới đây mô tả tổng quát các giai đoạn trong chu trình sống của một hệ thống SOA - Tìm hiểu kiến trúc hướng dịch vụ và ứng dụng
Hình v ẽ dưới đây mô tả tổng quát các giai đoạn trong chu trình sống của một hệ thống SOA (Trang 41)
Hình 2.11: Các bước cơ bản trong xây dựng hệ thống SOA - Tìm hiểu kiến trúc hướng dịch vụ và ứng dụng
Hình 2.11 Các bước cơ bản trong xây dựng hệ thống SOA (Trang 43)
Hình 2.12: Tiếp cận Top-down xây dựng hệ thống - Tìm hiểu kiến trúc hướng dịch vụ và ứng dụng
Hình 2.12 Tiếp cận Top-down xây dựng hệ thống (Trang 44)
Hình 2.13: Các bước xây dựng hệ thống theo chiến lược top-down. - Tìm hiểu kiến trúc hướng dịch vụ và ứng dụng
Hình 2.13 Các bước xây dựng hệ thống theo chiến lược top-down (Trang 45)
Hình 2.15: Các bước xây dựng hệ thống theo chiến lược bottom-up. Bước 1: Mô hình hóa dịch vụ ứng dụng (Model application services)  - Tìm hiểu kiến trúc hướng dịch vụ và ứng dụng
Hình 2.15 Các bước xây dựng hệ thống theo chiến lược bottom-up. Bước 1: Mô hình hóa dịch vụ ứng dụng (Model application services) (Trang 46)
Hình 2.14: Tiếp cận Bottom-up xây dựng hệ thống - Tìm hiểu kiến trúc hướng dịch vụ và ứng dụng
Hình 2.14 Tiếp cận Bottom-up xây dựng hệ thống (Trang 46)
3.2.1. Mô hình quản lý cán bộ sử dụng webservice - Tìm hiểu kiến trúc hướng dịch vụ và ứng dụng
3.2.1. Mô hình quản lý cán bộ sử dụng webservice (Trang 49)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w