SOA Introduction

852 views

Published on

SOA Overview: Benefits and Challenges

Published in: Technology
  • Be the first to comment

  • Be the first to like this

SOA Introduction

  1. 1. 1 TT Phần mềm Viễn thông Viettel Nhữ Bảo Vũ VuNB@ Hà Nội, 06/2013
  2. 2. TT Phần mềm Viễn thông Viettel 2 NỘI DUNG [1] • Thực trạng của hệ thống phần mềm • Các vấn đề phát sinh trong doanh nghiệp [2] • Định hướng IT cho doanh nghiệp ? • Kiến trúc hướng dịch vụ SOA [3] • Tiếp cận SOA: Các thuật ngữ / khái niệm quan trọng • Các lợi ích của SOA [4] • Xu hướng và thách thức • Kết luận
  3. 3. TT Phần mềm Viễn thông Viettel 3 Thực trạng của hệ thống phần mềm Từ các ứng dụng đơn lẻ … đến giải pháp tổng thể như CRM, ERP đã và đang đem lại nhiều tiện ích cho doanh nghiệp Quy trình doanh nghiệp như là một chức năng, bị đóng chặt trong ứng dụng
  4. 4. TT Phần mềm Viễn thông Viettel 4 Các vấn đề phát sinh trong d.nghiệp Hệ thống phần mềm sẽ thay đổi khi quy trình, định hướng tổng thể của doanh nghiệp thay đổi Hệ thống phần mềm khó mở rộng, khó tích hợp thêm tính năng mới hoặc trở nên phức tạp quá mức, kéo theo chi phí phát triển và bảo trì cao
  5. 5. TT Phần mềm Viễn thông Viettel Định hướng IT trong doanh nghiệp? Kiểm soát toàn bộ thông tin đang diễn ra trong quy trình doanh nghiệp đối với mọi thay đổi của hệ thống CNTT Dễ dàng tháo rời, dễ dàng bổ sung và cập nhật quy trình để tạo thành những kiến trúc đặc thù cho 1 nhu cầu nào đó Quy trình và nghiệp vụ có thể được thay đổi ở mức độ linh hoạt cao, giảm chi phí nguồn lực và chi phí tài chính 5
  6. 6. TT Phần mềm Viễn thông Viettel Kiến trúc hướng dịch vụ SOA (1) SOA có từ rất sớm, năm 1960, được biết đến với khái niệm lập trình thủ tục, DCOM hay ORBs SOA là 1 kiến trúc để thiết kế và xây dựng các ứng dụng, từng cặp có tính chất loosely-coupled XML và Webservice có dạng SOA 6
  7. 7. TT Phần mềm Viễn thông Viettel Kiến trúc hướng dịch vụ SOA (2) Về bản chất SOA bao gồm tập các dịch vụ có liên kết với nhau. Hay được phân tách bởi 2 thuật ngữ  Services  Connections 4 thành phần cơ bản của SOA  Service Consumer  Service Provider  Service Contract  Service Registry SOA là 1 phong cách thiết kế  Architecture  Methodology  Organisation 7
  8. 8. TT Phần mềm Viễn thông Viettel Service là gì ? Là 1 thành phần có thể tái sử dụng thực hiện các chức năng nghiệp vụ phức tạp Hay, là 1 bộ phận tiếp nhận và xử lý các yêu cầu từ bên ngoài, có tính chất lặp đi lặp lại  A Windows Service?  RPC Locator, EventLog, Desktop env,  Software Service?  Distribution Service, Alert Service,  Security Service, Log Service  Business Service?`  Common Operational Picture, Navigation  Accounts Receivable, Customers 8
  9. 9. TT Phần mềm Viễn thông Viettel Connection là gì ? Là 1 liên kết kết nối các dịch vụ độc lập với nhau 9 Service ConsumerService Provider Service Response Service Request
  10. 10. TT Phần mềm Viễn thông Viettel Các tính chất của Service 1 Service tiếp nhận và xử lý các yêu cầu (request) Khi nhận 1 request theo chuẩn, Service sẽ gửi trả lại 1 response cũng theo chuẩn đã qui ước 1 Service có thể gọi các service khác 10
  11. 11. TT Phần mềm Viễn thông Viettel Kiến trúc hướng dịch vụ SOA (3) Các thuật ngữ 11 Service Oriented Architecture (SOA) Web Service Simple Object Access Protocol (SOAP) Web Service Definition Languague (WSDL) Extensible Markup Language (XML)
  12. 12. TT Phần mềm Viễn thông Viettel Kiến trúc hướng dịch vụ SOA (4) 12 SOA is a solution for making two software communicate to each other Service Provider Software Service Consumer Software Service Response Service Request Service Service is a well-defined function that does not depend on the state of other services Consumer needs to know how to call the service and what to expect in response
  13. 13. TT Phần mềm Viễn thông Viettel Kiến trúc hướng dịch vụ SOA (5) 13 Service Provider Service ConsumerService Response Service Request Service WebserviceImplementation Webservice is an implementation of Service Oriented Architecture (SOA)
  14. 14. TT Phần mềm Viễn thông Viettel SOA vs. Webservice SOA được thể hiện bởi sự kết hợp của các dịch vụ Web Tất cả các dịch vụ Web là liên quan đến nhau qua SOA SOA thường đề cập đến các dịch vụ Web (Webservices)  Ngôn ngữ lập trình (???)  Các thỏa thuận giữa các services  Có thể phát hiện (các dịch vụ)  Các đặc tả được chuẩn hóa 14
  15. 15. TT Phần mềm Viễn thông Viettel SOA vs. XML Tài liệu chuẩn (mở) cho việc trao đổi thông tin. Các giao tiếp thông qua XML và có thể đọc được Example: <dept id=“IT”> <employee id=“123”> <name>Scott</name> </employee> </dept> 15
  16. 16. TT Phần mềm Viễn thông Viettel Các nguyên lý quan trọng của SOA Explicit Boundaries Shared Contract and Schema Interoperability Loose coupling Reuse Language/Vendor agnostic 16
  17. 17. TT Phần mềm Viễn thông Viettel Những k/n quan trọng để tiếp cận SOA is a way of architecture Services - Cohesive pieces of functionality that are autonomous Artifact store – stores service details so you can reuse EBS – connects everything together Governance – to control, monitor and maintance the set of services 17
  18. 18. TT Phần mềm Viễn thông Viettel Các hướng tiếp cận Từ trên xuống: Các yêu cầu nghiệp vụ được diễn tả như một Mô hình xử lý nghiệp vụ (BPM)  Trình bày mục đích nghiệp vụ và lập mô hình như là một quy trình  Mô hình quy trình trở thành đầu vào để thiết kế dịch vụ (service) Từ dưới lên: Hệ thống IT đang tồn tại được phân tích và đánh giá thành các dịch vụ có thể  Xác định các thành phần tồn tại là các dịch vụ của hệ thống  Các tài sản phần mềm được chuyển đổi thành giao diện và cài đặt Đáp ứng ở giữa: Xác định các nghiệp vụ mục tiêu  Mục tiêu chính và mục tiêu phụ liên quan đến các dịch vụ cụ thể 18
  19. 19. TT Phần mềm Viễn thông Viettel 19 Các lợi ích của SOA Về mặt công nghệ  Đây là một nền tảng độc lập  Kiến trúc linh hoạt  Dễ dàng tích hợp các ứng dụng đang tồn tại + dữ liệu  Tăng tốc độ phát triển, nâng cấp ứng dụng Lợi ích doanh nghiệp  Tích hợp hiệu quả với các doanh nghiệp đối tác  Dễ dàng hỗ trợ được các dịch vụ khách hàng  Dễ dàng sử dụng dịch vụ bên ngoài của các nhà cung cấp
  20. 20. TT Phần mềm Viễn thông Viettel Xu hướng và thách thức Xu hướng (theo các số liệu thu thập được, 2011)  19% các tổ chức sử dụng SOA, trong đó 12% có kế hoạch tăng việc sử dụng SOA và 7% không có kế hoạch tiếp tục  11% là đang ở giai đoạn thử nghiệm hoặc triển khai SOA  22% là đăng nghiên cứu sử dụng công nghệ này Khó khăn & Thách thức  Tiếp cận sớm và ít có sự hỗ trợ của công nghệ  Tổ chức cần thay đổi khi SOA vượt quá định biên của h.thống  Sự quản lý chương trình thường phức tạp, dẫn tới những rủi ro về sự phụ thuộc lẫn nhau và công nghệ mới  Sự thay đổi tác động đến hạ tầng và người sử dụng  Khó đảm bảo chất lượng 20
  21. 21. TT Phần mềm Viễn thông Viettel 21 KẾT LUẬN
  22. 22. TT Phần mềm Viễn thông Viettel 22 KẾT LUẬN SOA là một kiến trúc phần mềm nhằm giúp hệ thống CNTT cung cấp dịch vụ, hỗ trợ cho người dùng Doanh nghiệp tốt hơn. SOA Best Practices for Smarter Business Outcomes
  23. 23. TT Phần mềm Viễn thông Viettel TÀI NGUYÊN MẠNG Service Oriented Architecture (SOA)  www.ibm.com/software/solutions/soa Swordfish SOA Runtime Framework Project  www.eclipse.org/swordfish Google: SOA IBM DevWorks XML/WS tutorials and free ebooks 23
  24. 24. 24

×