Transition to Service Oriented Architectures Department of Informatics Vassilis Zafeiris Nikos Diamantidis Emm. Giakoumakis
Overview Enterprise IT architectures evolution ❏ Service Oriented Architecture ❏ “Mainstream” SOA and Microservices ❏
Application Silos low risk implementations ❏ independent evolution ❏ no horizontal processes ❏ redundancy and ❏ inconsistency no exclusive ownership of ❏ information
Enterprise Information Systems shared data repository ❏ information ownership ❏ horizontal processes ❏ large and high risk project ❏ difficult maintenance ❏
Enterprise Application Integration horizontal processes ❏ independent evolution of ❏ applications ad hoc evolution ❏
Service Oriented Architecture horizontal processes ❏ independent evolution of ❏ applications functionality reuse ❏ evolution through service ❏ composition
Service Oriented Architecture SOA is an architectural style that supports service-orientation ❏ design and implement a system in terms of services ❏ A service is a piece of self-contained software functionality that supports a ❏ specific business capability Main principles that apply to services in a SOA ❏ loose coupling ❏ interoperability ❏ encapsulation ❏ autonomy ❏ scaling ❏ composability ❏ agility ❏
Key benefits of SOA Cost reduction ❏ Agility ❏ Increase competitive advantage ❏ Time-to-market ❏ Consolidation ❏ Alignment ❏
“Mainstream” SOA Emphasis on support of enterprise-wide processes ❏ Centralized governance ❏ policies, standards, formats ❏ business case and solution lifecycle ❏ management of releases ❏ Project-based adoption and evolution ❏ Deployed on organization’s infrastructure ❏ servers or data centers ❏ Supported by specialized middleware (e.g. Enterprise Service Bus) ❏ discovery and invocation of services ❏ orchestration of composite services/processes (BPEL) ❏ management and monitoring ❏ Adoption of WS-* standards ❏ service description, discovery, reliable messaging, transactions, security ❏
Microservices architectural style Develop an application as a suite of small services ❏ built around business capabilities ❏ Decentralized governance ❏ design, implementation and release decisions by owner team ❏ Evolutionary design based on feedback ❏ products not projects ❏ independent deployment, highly automated ❏ Deployed on cloud-based infrastructures ❏ extensive use of virtualization ❏ Supported by lightweight middleware ❏ smart endpoints dump pipes ❏ choreography over orchestration ❏ Adoption of web protocols ❏ REST over HTTP ❏
Transition to SOA “Mainstream” SOA ❏ emphasis on support of enterprise-wide processes ❏ modernize legacy applications ❏ integration of enterprise information systems ❏ Microservices ❏ splitting large & complex monolithic applications ❏ enable independent evolution ❏ horizontal scaling ❏
The role of domain experts “Mainstream” SOA ❏ members of SOA project teams ❏ identification of the business case ❏ engagement in the early phases of analysis and design ❏ specification of business processes ❏ Microservices ❏ members of service teams ❏ provide expertise on the business functionality ❏ shape service requirements ❏ specifies requirements for functionality required by other teams ❏
BPM vs Improvement Adoption of each style is dependent on the culture and strategy of the ❏ organization established processes adapted to business needs ❏ continuous improvement and fast response to market opportunities ❏ Mainstream SOA for Business Process Management and centralized control ❏ Careful and detailed planning ❏ Microservices for continuous improvement ❏ Feedback and adaptation ❏
Thank you!
Recommend
More recommend