wso2con asia 2016: pattern-driven enterprise architecture: applying patterns in your architecture

24
Pa#ern Driven Enterprise Architecture Mifan Careem Director, Solu9on Architecture WSO2 Inc.

Upload: wso2-inc

Post on 16-Apr-2017

446 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: WSO2Con ASIA 2016: Pattern-Driven Enterprise Architecture: Applying Patterns in Your Architecture

Pa#ernDrivenEnterpriseArchitecture

MifanCareemDirector,Solu9onArchitectureWSO2Inc.

Page 2: WSO2Con ASIA 2016: Pattern-Driven Enterprise Architecture: Applying Patterns in Your Architecture

Agenda

•  Ofpa#ernsandbedroomsandsuch•  LayeredArchitecture•  ServiceOrientedArchitecture•  ResourceOrientedArchitecture•  EventDrivenArchitecture•  MicrokernelArchitecture•  Micro-servicesArchitecture•  CloudArchitecture•  Alltogetherthen!

Page 3: WSO2Con ASIA 2016: Pattern-Driven Enterprise Architecture: Applying Patterns in Your Architecture

WhatisaPa#ern!

• Apa#ernisareusablesolu9ontoasoJwaredesignproblemthathasbeenproveneffec9veinmul9plesitua9ons.

Page 4: WSO2Con ASIA 2016: Pattern-Driven Enterprise Architecture: Applying Patterns in Your Architecture

PATTERN:BedAlcove(akaDowereallyneedabedroom???)source:AbridgedbyGregHohpe;originallyfromChristopherAlexander

•  DesignProblem:Bedroomsmakenosense•  Forces:

–  First,thebedinabedroomcreatesawkwardspacesaroundit:dressing,working,watchingtelevision,siYng,areallratherforeigntothesidespacesleJoveraroundabed.

–  Second,thebeditselfseemsmorecomfortableinaspacethatisadjustedtoit.

•  Solu6on:– Don'tputsinglebedsinemptyroomscalledbedrooms,butinsteadputindividualbedalcovesoffroomswithothernonsleepingfunc9ons,sothebeditselfbecomesa9nyprivatehaven.

Page 5: WSO2Con ASIA 2016: Pattern-Driven Enterprise Architecture: Applying Patterns in Your Architecture

PATTERN:BedAlcove

• RelatedPa#erns– CommunalSleeping– MarriageBed– CeilingHeightVariety– Half-openRoom– ThickWalls

• RelatedAn9-pa#ern– Bedsidearguments!

Page 6: WSO2Con ASIA 2016: Pattern-Driven Enterprise Architecture: Applying Patterns in Your Architecture

FromBAtoSAtoDA

Page 7: WSO2Con ASIA 2016: Pattern-Driven Enterprise Architecture: Applying Patterns in Your Architecture

LayeredArchitecture

Presentation Layer

Network and Storage Layer

Persistence

Services | Middleware Layer

Business Layer

Agile L

Dev H

Dep L

Test H

Perf L

Scale L

Separation of concerns

Architecture sinkhole

Page 8: WSO2Con ASIA 2016: Pattern-Driven Enterprise Architecture: Applying Patterns in Your Architecture

LayeredArchitecture

Presentation Layer

Network and Storage Layer

Persistence

Services | Middleware Layer

Business Layer

Agile L

Dev H

Dep L

Test H

Perf L

Scale L

Separation of concerns

Architecture sinkhole

Page 9: WSO2Con ASIA 2016: Pattern-Driven Enterprise Architecture: Applying Patterns in Your Architecture

SOA:MEDIATION/TRANSFORMATION,BUSPATTERN,ENTERPRISEINTEGRATIONPATTERNS

Legacy Services

Wrapper

Connectors

Data Services Web Services

Transactional Client

Content based router Scatter-gather Content enricher

Dead letter channel Guaranteed delivery Store and forward

Adaptor

Cloud Services Async Services

Page 10: WSO2Con ASIA 2016: Pattern-Driven Enterprise Architecture: Applying Patterns in Your Architecture

SOA:SECURITY,IDENTITYBUS,SERVICEREGISTRY

Identity, Authentication, Entitlement, Enterprise Identity Bus

LDAP

External IS

Token Validation

Federated Identity Trusted Subsystems Brokered Authentication

Service Registry, Service Governance

Service Registry, Metadata centralization, Service decomposition, Service versioning

Page 11: WSO2Con ASIA 2016: Pattern-Driven Enterprise Architecture: Applying Patterns in Your Architecture

++ServiceOrientedArchitectureAgile H

Dev H

Dep L

Test L

Perf L

Scale H

Page 12: WSO2Con ASIA 2016: Pattern-Driven Enterprise Architecture: Applying Patterns in Your Architecture

++ServiceOrientedArchitectureAgile H

Dev H

Dep L

Test L

Perf L

Scale H

Page 13: WSO2Con ASIA 2016: Pattern-Driven Enterprise Architecture: Applying Patterns in Your Architecture

MicrokernelArchitecture

SMS

USSD

MePIN

Agile H

Dev L

Dep H

Test H

Perf H

Scale L

Page 14: WSO2Con ASIA 2016: Pattern-Driven Enterprise Architecture: Applying Patterns in Your Architecture

EventDrivenArchitecture

EDA Mediator EDA Broker

Page 15: WSO2Con ASIA 2016: Pattern-Driven Enterprise Architecture: Applying Patterns in Your Architecture

++EventDrivenArchitectureAgile H

Dev L

Dep H

Test L

Perf H

Scale H

Page 16: WSO2Con ASIA 2016: Pattern-Driven Enterprise Architecture: Applying Patterns in Your Architecture

++EventDrivenArchitectureAgile H

Dev L

Dep H

Test L

Perf H

Scale H

External Consumption

Page 17: WSO2Con ASIA 2016: Pattern-Driven Enterprise Architecture: Applying Patterns in Your Architecture

ResourceOrientedArchitecture

HATEOAS Late Binding Uniform interfaces Loose coupling

Page 18: WSO2Con ASIA 2016: Pattern-Driven Enterprise Architecture: Applying Patterns in Your Architecture

++ResourceOrientedArchitectureAgile H

Dev H

Dep L

Test H

Perf H

Scale H

Page 19: WSO2Con ASIA 2016: Pattern-Driven Enterprise Architecture: Applying Patterns in Your Architecture

MicroservicesArchitecture

MSA: API REST Topology MSA: Application REST Topology

MSA: Messaging topology

Client side discovery

Server side discovery

Page 20: WSO2Con ASIA 2016: Pattern-Driven Enterprise Architecture: Applying Patterns in Your Architecture

++MicroservicesArchitectureAgile H

Dev H

Dep H

Test H

Perf L

Scale H

Page 21: WSO2Con ASIA 2016: Pattern-Driven Enterprise Architecture: Applying Patterns in Your Architecture

Cloudbasedarchitectures

Watchdog

Stateless component

Page 22: WSO2Con ASIA 2016: Pattern-Driven Enterprise Architecture: Applying Patterns in Your Architecture

Agile H

Dev L

Dep H

Test L

Perf H

Scale H

++Cloudbasedarchitectures

Page 23: WSO2Con ASIA 2016: Pattern-Driven Enterprise Architecture: Applying Patterns in Your Architecture

Summary

Programming is like sex. One mistake and you have to support it for the rest of your life. (Michael Sinz)

Page 24: WSO2Con ASIA 2016: Pattern-Driven Enterprise Architecture: Applying Patterns in Your Architecture

ThankYou