Bài so sánh dưới đây được trích từ Crimson Consulting. Crimson Consulting là một công ty tư vấn tập trung vào tiếp thị, chuyên tiếp thị các giải pháp công nghệ. Khách hàng của họ gồm có Adobe, eBay, Hitachi, … bao gồm cả IBM và Oraclẹ
(Nguồn www.crimson-consulting.com)
3.3.1. Một Framework đo lường độ phức tạp SOA
Crimson Consulting đã phát triển một framework để thực hiện việc đo lường độ phức tạp liên quan đến các giải pháp SOA, kể cả những cách định lượng dữ liệu, bằng cách xem xét các hoạt động SOA và xem xét các yếu tố phức tạp của chúng như thời gian, số bước,...
3.3.1.1.Những tiêu chí so sánh cơ bản giữa 2 nền tảng IBM SOA Portfolio và Oracle SOA Suite
Một số các hoạt động được xem xét trong framework này là : • Set-up: cài đặt, cấu hình.
• Quản lý: thực hiện các việc quản lý cho môi trường (ví dụ chạy và ngưng các thành phần, kiểm tra trạng thái thành phần,…).
• Bảo mật: hiệu chỉnh bảo mật cho dịch vụ và cấu hình bảo mật thông qua cổng gián tiếp (reverse proxy).
• Làm việc với Enterprise Service Bus (ESB) như: cài đặt, giám sát, quản lý trong ESB, thay đổi các Endpoint trong thời gian thực và khởi tạo Cache trong bộ nhớ để cải thiện hiệu năng.
46
• Làm việc với kết nối B2B: cài đặt và cấu hình server B2B.
• Kết nối với các chương trình phía sau: cấu hình và giám sát các adapter phía saụ
• Quy trình và quy tắc phát triển: tạo ra quy trình nghiệp vụ và các quy tắc bao gồm mô hình hoá, phát triển, cài đặt và các tác vụ của con ngườị
• Business Activity Monitoring (BAM): giám sát từng quy trình đơn lẻ và quản lý ứng dụng.
3.3.1.2.Những tiêu chí mở rộng
Crimson Consulting xem xét mức độ phức tạp của từng công việc trong các giải pháp sử dụng 4 tiêu chí sau:
• Số ứng dụng liên quan và mức độ tích hợp. • Số bước liên quan để việc thực hiện tác vụ. • Thời gian liên quan khi thực hiện công việc.
• Mức đánh giá độ phức tạp của công việc và các kĩ năng cần thiết (chỉ số 15, trong đó 5 là phức tạp nhất). Thông số cuối cùng nói lên thời gian huấn luyện cho giải pháp đưa ra, và độ có sẳn cũng như chi phí huấn luyện.
3.3.1.3.Các sản phẩm được so sánh
Thông qua bản báo cáo này chúng em đã thực hiện với nhiều sản phẩm trong Oracle SOA Suite và IBM SOA portfoliọ Danh sách những nhà cung cấp sản phẩm SOA theo chức năng.
Danh sách sản phẩm Oracle SOA Suite IBM SOA Portfolio
(Process-based integration)
BPEL PM Process Server
Enterprise Service Bus
(ESB) Oracle Service Bus
WebSphere ESB MessageBroker
DataPower
47 Cast Iron Sterling Services Creation/Development JDeveloper WebSphere Integration Developer (WID)
Rational Application Developer
Business Activity
Monitoring (BAM) Oracle BAM WebSphere Business Monitor
Services Management OWSM
IT CAM for SOA Tivoli Security Policy Manager
DataPower
Application Server
Runtime WebLogic Server WAS ND
B2B Oracle B2B
WebSphere Partner Gateway DataPower XB60 Transformation Extender
Rules Oracle Rules
WebSphere Business Rules (In WID and Process Server)
ILOG
Adapters/Back End
Integration Oracle Adapters/AIA WebSphere Adapters Single SKU suite SOA Suite WebSphere Business Services
Fabric
Complex Event
Processing (CEP) Oracle CEP WebSphere Business Events Bảng 3-1: Danh sách các sán phẩm hỗ trợ chu kỳ sống SOA
(Nguồn www.crimson-consulting.com)
3.3.2. So sánh Oracle SOA Suite và IBM SOA Portfolio
Trong phần này chúng ta sẽ xem xét từng hoạt động và so sánh Oracle SOA Suite và IBM SOA Portfolio dựa trên 4 thông số đã bàn ở trên.
48
3.3.2.1.Tổng quan
Cả hai nhà cung cấp Oracle và IBM đã bỏ rất nhiều công sức để phát triển sản phẩm của họ và theo kết quả khảo sát, họ đã đầu tư nhiều năm vào việc phát triển công việc chuyên môn của mình trong sản phẩm SOẠ Qua những khảo sát các giải pháp SOA thì Oracle SOA Suite có độ phức tạp ít hơn IBM SOA Portfoliọ
3.3.2.1.1. Số sản phẩm
Kết quả khảo sát cho thấy các nhà phát triển ưa chuộng giải pháp của Oracle hơn là của IBM, vì sự phức tạp khi cài đặt và sử dụng giải pháp của IBM. Các giải pháp Oracle SOA tốn ít thời gian để cài đặt hơn, còn các sản phẩm của IBM thì tốn nhiều thời gian hơn.
3.3.2.1.2. Số bước
Số bước liên quan đến những công việc cơ bản của Oracle thường cao hơn với IBM. Tuy một số trường hợp là ít bước hơn IBM, nhưng trong những trường hợp này là không nhiềụ
3.3.2.1.3. Thời gian
Khi bạn sử dụng giải pháp của IBM bạn phải cài đặt riêng lẻ các phần mềm dẫn đến tốn nhiều thời gian. Trong khi đó các phần mềm của Oracle cài rất nhanh và tốn ít thời gian.
3.3.2.1.4. Tính năng cần thiết và độ phức tạp công việc
Theo kết quả khảo sát về độ phức tạp công việc và tính năng cần thiết thường thì các nhà phát triển ưa chuộng Oracle SOA Suite hơn. Ngoài ra, chi phí huấn luyện cho các giải pháp IBM thì cao hơn Oracle SOA Suitẹ
3.3.2.2.Thiết lập các giải pháp SOA
Nhìn một cách tổng thể, kết quả khảo sát chỉ ra rằng cách thiết lập và cấu hình cho một giải pháp IBM SOA tốn gấp hai lần so với cách thiết lập và cấu hình cho Oracle SOA Suitẹ Các chuyên gia tin học ước tính rằng thời gian để cài đặt Oracle là từ 4 đến 6 giờ, trong khi IBM cần đến 3 hoặc 4 ngàỵ
49
Hình 3-10 là bảng so sánh về thời gian cài đặt của hai thành phần dựa trên kết quả khảo sát về Oracle SOA Suite và IBM.
Thành phần
Chuyên gia kiến trúc phần mềm (Chief Architect)
Chuyên gia tư vấn tin học (IT Consultant )
Oracle IBM Oracle IBM
Management 1 tuần 1 tháng 1 ngày 3 ngày
ESB
Process/Rules 1 ngày
2 ngày 2 phút 1 ngày
0,5 ngày 2 đến 3 giờ 2 đến 3 giờ
Modeling 1 giờ Không biết
B2B Không biết Nhỏ hơn 2 giờ 6 giờ
Bảng 3-2: Thời gian cài đặt của hai thành phần
3.3.2.2.1. Quản lý
Theo kết quả khảo sát thì SOA cung cấp nhiều tiện ích và sự quản lý được đơn giản hóa hơn so với IBM.
Nhà phát triển ứng dụng với Oracle rất thích Oracle Enterprise Manager. Theo các chuyên gia cho rằng : “Oracle Enterprise Manager là một sản phẩm chiến lược của SOA Suitẹ Nó tích nhiều hợp nhiều thứ trong một cách nhìn và làm cho việc tìm lỗi một project phức tạp trở nên dễ dàng hơn”
“Oracle Enterprise Manager đưa ra một sự quản lý đơn giản và đồng bộ không chỉ cho các thành phần của SOA mà con cho các phần khác của cơ sơ hạ tầng như ERP và cơ sở dữ liệu”.
3.3.2.2.2. Bảo mật
Tính an toàn bảo mật của IBM cũng phức tạp hơn so với Oraclẹ Chỉ có vài ý kiến nói điều ngược lạị Những khó khăn này đều do sự tích hợp không tốt của các sản phẩm IBM. Mỗi sản phẩm của IBM đều có an tòan bảo mật riêng của nó. Điều
50
này dẫn đến việc cần nhiều công sức hơn cho việc học và sử dụng các công cụ khác hẳn nhau và làm cho chúng họat động tốt với nhaụ
Thao tác
Các bước Thời gian Độ phức tạp
Oracle IBM Oracle IBM Oracle IBM
Set up general security 10 đến 12 bước 20 đến 40 bước 2 đến 4 tuần 2 đến 3 tháng 3 5 Set-up services security through a mediated gateway set up Nhỏ hơn 12 bước 20 đến 25 bước Nhỏ hơn 1 tuần 1 tháng 3 4,5
Bảng 3-3: So sánh sự bảo mật của IBM và Oracle
Một vài ý kiến cho rằng “ cài đặt an tòan bảo mật của các dịch vụ trong IBM là một quá trình không đổi và với một project họ phải đề xuất các giải pháp khác nhau cho vấn đề bảo mật bảo mật. Ngược lại, có ý kiến cho rằng về an tòan bảo mật của Oracle lại tỏ ra khá lạc quan và thích sự đơn giản của nó. Đó là do sự tích hợp nhiều thành phần vào Oracle SOA Suitẹ Khi nói đến an tòan bảo mật SOA thì tất cả mọi thứ đều có thể được xử lý thông qua Oracle Enterprise Manager bạn không cần phải làm việc với nhiều các sản phẩm khác nhaụ
3.3.2.2.3. Làm việc với Enterprise Service Bus
Enterprise Service Bus là lõi của việc thực thi SOA, là phương tiện mà các dịch vụ kết hợp để cung cấp các chức năng cho ứng dụng. Sự đơn giản của ESB và sự quản lý là những điểm chủ yếu của sự thành công của SOẠ
Theo kết quả khảo sát thì quá trình cài đặt ESB của Oracle và quản lý rất đơn giản. Hầu như là không cần cài đặt quá nhiều để điều khiển ESB. Vì tất cả được xử lý thông qua Oracle Enterprise Manager. Việc quản lý các endpoint trong thời gian thực cũng trở nên dễ dàng hơn.
51
3.3.2.2.4. Làm việc với kết nối B2B
Theo kết quả khảo sát về IBM thì không biết có bao nhiêu sản phẩm IBM có hỗ trợ chức năng kết nối B2B. Hai sản phẩm được nói đến nhiều nhất là DataPower và WebSphere Parter Gatewaỵ Sự phức tạp bắt nguồn từ việc thiếu sự tích hợp trong các sản phẩm của IBM.
3.3.2.2.5. Kết nối với ứng dụng Back-End
Ý kiến về sử dụng giải pháp để tích hợp và kết nối vào ứng dụng Back-End rất khó để rút ra kết luận. Nói chung, những người có kinh nghiệm về giải pháp của một bên (Oracle hoặc là IBM) thì nói về sự đơn giản của một giải pháp đó. Trong khi những ý kiến khác có kinh nghiệm nhiều về cả hai bên Oracle và IBM thì không phân biệt được chúng rõ ràng. Có ý kiến cho rằng làm việc với ứng dụng Back-End thì Oracle lại phức tạp hơn so với IBM. Có ý kiến cho rằng với các project tích hợp nhiều ứng dụng Back-End thì làm việc với Oracle SOA Suite vẫn dễ dàng hơn vì quá trình cài đặt và cấu hình đơn giản hơn.
3.3.2.2.6. Bussiness Process , Rules Development và Management
Có ý kiến cho rằng với IBM thì sự phức tạp về quy trình nghiệp vụ, các quy tắc phát trỉển và quản lý trong nhiều sản phẩm cho nghiệp vụ đó. Theo kỹ thuật viên bảo trì cơ sở hạ tầng nói rằng “ IBM có ba sản phẩm riêng biệt để xây dựng các quy tắc : IBM Business Rules, ILOG và WebSphere Rules”. Ngược lại, Oracle SOA Suite chỉ có một sản phẩm để thiết kế các quy tắc nghiệp vụ đó là Oracle JDeveloper.
3.3.2.2.7. Business Activity Monitoring
BAM (Business Activity Monitoring) cung cấp thông tin thời gian thực thông qua dashboard. Nó không chỉ cho phép người dùng hiểu các họat động ngiệp vụ của ứng dụng mà còn cho phép chuyên viên công nghệ thông tin có khả năng phát triển được. Theo khảo sát cho thấy rằng hầu hết các phần mềm Oracle có nhiều lợi ích hơn IBM như sự đơn giản hóa và thực thi dễ hơn.
52
BAM của Oracle rất dễ tiến hóa và được tích hợp tốt với Business Intellidence(BI). Trong khi IBM phải tốn nhiều công sức hơn để phát triển nghiệp vụ. Nghĩa là, BAM của Oracle tương ứng với WebSphere Business Monitor của IBM. Theo kết quả khảo sát cho rằng WebSphere Business Monitor là một sản phẩm khó sử dụng hơn BAM của Oracle và vì WebSphere Business Monitor yêu cầu cấu hình phức tạp hơn BAM của Oracle nên rất ít công ty có thể sử dụng hết các tiện ích của nó.
Một cách tổng quát, nghiên cứu trên đã đưa ra những tiện ích của Oracle SOA Suite so với IBM SOA đặc biệt là ở phương diện:
- Giảm thiểu sự phức tạp, trong khi vẫn có được nhiều chức năng thực hiện tốt. - Oracle SOA Suite yêu cầu ít bước thực hiện hơn và tốn ít thời gian hơn. - Oracle sẽ cho người dùng sự linh họat về nghiệp vụ tốt hơn, nhanh hơn và
hiệu quả hơn.
Kết quả này chỉ ra các lợi ích từ việc tích hợp tốt của Oracle SOA Suite được đưa ra từ cả người dùng của Oracle và IBM. Oracle SOA Suite là một giải pháp được tích hợp tốt, hỗ trợ người dùng với thời gian nhanh hơn.
Trong chương này chúng ta đã hiểu được các phần mềm hỗ trợ phát triển và quản lý trong chu trình sống của Oracle SOA suitẹ Ngoài ra, chúng ta còn hiểu thêm về sự khác biệt giữa hai nền tảngOracle SOA Suite và IBM SOA Portfolio.
Chúng ta sẽ khởi đầu cho việc phát triển ứng dụng Vinabook theo kiến trúc hướng dịch vụ. Chương 4 sẽ trình bày rõ về pha mô hình hóa ứng dụng.
53
Chương 4
MÔ HÌNH HÓA ỨNG DỤNG VINABOOK
Nội dung trình bày trong chương 4 tập trung vào việc mô hình hóa ứng dụng dựa trên kiến trúc hướng dịch vụ, ứng dụng thương mại điện tử VINABOOK.
Thu thập và quản lý yêu cầu
Thiết kế các lược đồ Use-Case của ứng dụng
Mô hình hóa quy trình nghiệp vụ của ứng dụng
Thiết kế các dịch vụ chính
Thiết kế các lược đồ Use-Case dựa trên Oracle JDeveloper Studiọ Trong phần thiết kế lược đồ Use-Case chúng emchỉ trình bày ở mức tổng quát. Về thiết kế các dịch vụ cũng chỉ trình bày một số dịch vụ chính.
Mô hình hóa các quy trình nghiệp vụ được thực hiện dưới sự hỗ trợ của phần mềm JDeveloper. Trong phần này chúng em cũng chỉ trình bày một số dịch vụ điển hình. Chi tiết pha mô hình hóa ứng dụng VINABOOK được trình bày chi tiết trong phần phụ lục C.