Sunday, April 22, 2012

SOA lecture at ISS

Last week as Guest Lecturer I delivered the SOA talk at NUS ISS (Institute of System Sciences). My lecture primarily focuses on analyzing the pros and cons of different options in the course of developing SOA enabled solution, and showed some high level design of the EHR product I had personally designed and developed before I joined my current employer - MOH Holdings Pte Ltd.

Below I highlight the key points I talked about

1. SOA is essentially applying the OCP at solution level. 

The benefits of SOA are to i) reuse IT asset and ii) agility to respond to new/changing business needs. These are the essentially the natural outcome of appropriately applying OCP (Open for extension, Closed for modification principle) at cross-system boundary solution level design.

On another related point, the GoF design patterns are also mostly the outcome of applying OCP at Object Oriented design level.

2. Designing an architecture requires much more than just applying SOA style.

Developing architecture is not simply defining list of services to be developed. In the industry, there is general tendency to create proliferated services to show the that each part of the solution architecture is using services thereby the demonstration of SOA as whole.

This tendency is similar to the phenomenon more than 10 years ago, when EJB 1.0 was in use, most of the developers tended to 1) create entity bean for each table, and 2) strictly follow Sun J2EE Facade design pattern where every business transaction is fronted with EJB session bean with backend EJB entity bean.

3. Some key design decision options to make as shown below



There is no absolution 'right' or 'wrong' approach when adopting SOA, ultimately we need to analyze the pros and cons of different option for the specific business problems we are trying to solve, and fully realize the benefits of SOA - Reuse and Agility. Take the example of whether to use loosely defined or tightly defined XML schema,  I recommend to analyze the cost impact at three dimensions



1 comment:

  1. Đôi khi mụn cóc tái phát nhanh do các mụn mẹ đã gieo rắc virus và tạo các mụn con ở những vùng da xung quanh trước khi chúng được điều trị mục ké dưới chân
    Cũng giống như mụn cóc thông thường, trong điều trị mụn cóc bàn chân có thể áp dụng một trong các phương pháp sau: ... Laser: Đây là phương pháp điều trị đắt tiền, áp dụng với các mụn cóc to, kháng trị, mụn cóc sinh dục, mụn cóc lòng bàn .. trị mụn cóc lòng bàn chân
    Bệnh mụn cóc ở tay rất dễ nhận biết được qua những biểu hiện điển hình như: Trên da nổi những sẩn màu vàng đục hoặc khớp với màu da, có kích thước nhỏ bằng hạt đậu. cách chữa mụn cóc ở ngón tay
    Điều trị mụn cóc hiệu quả, an toàn, không tái phát với nguyên liệu tự nhiên như tía tô, chuối xanh. Ngoài ra công nghệ laser CO2 được chuyên gia khuyên trị mụn cóc trên ngón tay

    ReplyDelete

How to model Patient flowsheet in HL7 FHIR

1. Overview Recently I am working on the HL7 FHIR information model to represent patient flowsheet for the purpose of integration with one E...