2009-11-23 20 views
6

Tôi thường xuyên nghe về Kiến trúc hướng dịch vụ (SOA) được gửi đến như một từ thông dụng giữa các khách hàng phi kỹ thuật hoặc người quản lý chương trình. một SOA? "). Ngoài ra còn có rất nhiều thông tin sai lệch về SOA (ví dụ: "Chỉ ứng dụng web có thể sử dụng SOA") và thiếu hiểu biết chung về khả năng của nó (ví dụ: "SOA có thể làm cho tất cả dữ liệu của bạn hoạt động cùng nhau").Giúp các nhà quản lý và khách hàng hiểu được SOA

Một số thông tin quan trọng mà bạn, là người hiểu về mặt kỹ thuật của SOA, sử dụng để đào tạo người quản lý chương trình về cách sử dụng và hiểu biết thích hợp về SOA? Cách tốt nhất để đặt bản ghi trực tiếp với những người không phải là kỹ thuật là gì?

+1

Tôi đang dự đoán "làm cho nó trở thành một cộng đồng wiki" bình luận ... Tôi cho rằng câu trả lời tốt nhất (nghĩa là, hoàn thiện nhất/được nghĩ ra) sẽ nhận được nhiều phiếu bầu nhất và được chấp nhận như một câu trả lời –

Trả lời

4

Đối với những người không kỹ thuật, tôi sẽ sử dụng khái niệm sau. Toàn bộ thế giới chuyên nghiệp là dịch vụ theo định hướng.

  • Thay vì nướng một cookie bằng chính bạn, bạn vào tiệm bánh.
  • Thay vì cố tự chữa trị cho mình, bạn đến gặp bác sĩ.
  • Thay vì viết chương trình, bạn yêu cầu một lập trình viên thực hiện việc này cho bạn.

Điều này ngụ ý hai lợi thế lớn:

  • Mỗi người làm công việc của mình tốt hơn nếu tất cả chúng ta đã cố gắng để giải quyết tất cả nhiệm vụ của chúng tôi riêng biệt.
  • Có một cách, cho phép phi các chuyên gia để trao đổi với đó, ai sẽ giải quyết nhiệm vụ của chúng tôi (trong thế giới thực theo cách như vậy là tiền bạc và hợp đồng kinh doanh)

Trong thế giới của phần mềm như vậy kiến trúc được thực hiện bằng cách xác định các dịch vụ chuyên dụng (ứng dụng) được dành riêng để thực hiện các nhiệm vụ cụ thể và bằng cách xác định các giao thức, đó là giải quyết vấn đề liên lạc giữa các ứng dụng đó. Khi kiến ​​trúc như vậy được triển khai, bạn sẽ có được một số lợi ích, mà cũng có thể được ánh xạ tới thế giới thực:

  • Nếu bác sĩ không có sẵn, bạn có thể không được chữa khỏi nhưng ít nhất bạn có thể nhận được một cookie từ cửa hàng bánh mì! Trong phần mềm này có nghĩa là một dịch vụ không thành công không phá vỡ toàn bộ hệ thống.

  • Thông thường các bác sĩ và thợ làm bánh không dùng chung phòng và điều này cho phép họ hoạt động tốt hơn. Cũng giống như trong phần mềm, bạn có thể đặt từng dịch vụ trên phần cứng của chính nó.

Đối với thế giới phần mềm, điều này có nghĩa, khả năng bảo trì, sử dụng lại và giảm chi phí tốt hơn. Chúc may mắn!

0

Có thể bạn có một số ứng dụng trong công ty của mình để sử dụng làm minh họa.

Cố gắng hiển thị cho họ bức tranh lớn với nhiều dịch vụ phụ thuộc lỏng lẻo với một số nhu cầu/tính năng phổ biến do nhiều nhóm khác nhau tạo ra và rút ra những tính năng được nhúng nhưng thường được sử dụng và sử dụng chúng làm nhà cung cấp dịch vụ.

Điều khác mà tôi nghĩ đến là cho họ thấy các kết nối khác nhau mà các dịch vụ có thể sử dụng để giao tiếp (có thể có một số ứng dụng cũ của màn hình cũ). Ngoài ra, khái niệm bus thông báo với việc chuẩn hóa và xử lý giao dịch cần được làm rõ. Theo ý kiến ​​của tôi, những người không phải là người kĩ thuật nên xem toàn bộ khái niệm SOA này như các dịch vụ liên kết lỏng lẻo nói chuyện với nhau với bất kỳ loại tin nhắn nào, nơi các dịch vụ được viết/quản lý/điều chỉnh bởi các nhóm khác nhau (vì vậy các khai báo dịch vụ chính thức và SLA có thể hữu ích) .

Cố gắng tránh đề cập đến nhà cung cấp, nếu có thể. Hoặc đề cập đến rất nhiều nhà cung cấp và công nghệ cho từng phần để hiển thị cho họ các tùy chọn khác nhau.

1

"SOA giống như thuê nhân viên mới khi công việc quá lớn đối với nhóm hiện tại". Mỗi phần của toàn bộ hệ thống là tương tự như một nhân viên. Các nhà quản lý hiểu nhân viên;)

Các vấn đề liên quan