SlideShare a Scribd company logo
Better application architecture with
#microservices and #BPM
Alexander SAMARIN
• Typical concerns
– Time-to-market for new solutions and new versions of existing
solutions (IT agility)
– Ownership of governance and management of applications
– Healthy eco-system of partners and providers
– Transparent cost structure and other good business practices
• How to address those concerns
– Develop solutions as a suite of independently deployable, small,
modular services known as microservices (like a football team is
assembled from individual players)
– Refactor, modernise and decompose existing monoliths into
microservices
– Start new solutions with microservices
– Better manage changes in software application
2016-09-01 Better application architecture 2
Better application architecture
• I like microservices
• How to define granularity of microservices?
• Let us buy API gateway
• We must have an APaaS
• Let us decompose our in-house monolith ERP into
microservices
• Where can I deploy my microservices?
• I can keep some local data in my microservices, but how
to use some corporate data?
• We need DevOps, CI, etc.
• What is our target application architecture?
2016-09-01 Better application architecture 3
Typical IT concerns
• Unit-of-functionality is a computing component
implementing a particular capability
– examples: function, method, package
• Unit-of-deployment is a computing component which can
be individually and independently deployed into a runtime
computing environment
– Note: unit-of-deployment may be a composition of
units-of-functionality (i.e. monolith)
– Note: unit-of-deployment may be an aggregation of
other units-of-deployment (i.e. assembly)
2016-09-01 Better application architecture 4
Application architecture key concepts (1)
• Interface is a shared boundary between two units-of-
functionality, defined by functional characteristics, signal
characteristics, or other characteristics as appropriate
• Service is a unit-of-functionality which is available from
(usually separate from its consumer) unit-of-deployment
via an explicitly-defined interface and provides some
added-value being consumed
– Note: Interface to software services is called
Application Programmer Interface (API)
• Service agreement is an agreement between
the service consumer and the service provider
on performance, measurement and conditions
of service delivery
2016-09-01 Better application architecture 5
Application architecture key concepts (2)
Service consumer
Service provider
• Microservice is functionally-minimalistic and deployment-
independent service
– functionally-minimalistic, i.e. follow the Single Responsibility Principle
– deployment-independent i.e. unit-of-functionality equals to unit-of-
deployment thus autonomous in some extent
• Assembly of microservices may
be a microservice as well
• Solutions which are assembled
from microservices may have
many microservice-to-microservice
dynamic connections N * (N-1) / 2
2016-09-01 Better application architecture 6
Application architecture key concepts (3)
• API gateway is a proxy between a service consumer and
a service provider
– Gateways are necessary to improve various “abilities” (flexibility,
measurability, availability, etc.) of those dynamic connections
because service providers and services consumers may be spread
over network nodes, computing environments and clouds
2016-09-01 Better application architecture 7
Application architecture key concepts (4)
API gateway
• Microservices are dependent at the design-time
– because they are for Service Oriented Development
• Microservices are independent at the deployment-time
– because they are autonomous (at some extent)
• Microservices are interdependent at the run-time
– because they invoke each others
2016-09-01 Better application architecture 8
Microservices in application lifecycle
2016-09-01 Better application architecture 9
Various development lifecycles
monolith
applications
process-based
solutions
microservice
assembles
Existing application Change something New applicationTest everything
Easy Difficult
Existing assembly Change something New assemblyTest relationships
Average
(granularity?)
Average
(too many links!)
Easy and safe
(lesser links)
Existing process
Easy
(granularity comes
from business)
New process
CI
CI
SA
Dev
Ops
Dev
Ops
SA
SA
CI Dev
Ops
Change something Test relationships
SA – Solution Architecture
CI – Continuous Integration
• Single-responsibility building blocks are microservice-ready
– Human activities (as UI)
– Data structures (from various repositories)
– Documents (from various repositories)
– Events
– Business rules
– Roles
– Automated activities
– Explicit-assemblies via DSLs (orchestration and choreography)
– Reports
• Single-responsibility building blocks
– Dashboards
– Portals (as a navigator over some human activities)
– Implicit-aggregators via events and reactive programming
2016-09-01 Better application architecture 10
Application building blocks which
BPM-suite tool as APaaS can manage
• Each process, case and activity is a single responsibility
• Human activities are designed for single responsibility
• Data structure design is actually Domain-Driven Design
because a process or a group of related processes define
a domain
• Granularity of business rules is defined by their
consumers (i.e. activities)
• Automated activities primarily augment (enrich) related
human activates thus their granularity
• Roles are related to processes, cases and activities
2016-09-01 Better application architecture 11
BPM-suite tool helps to determine
“right” granularity for microservices
2016-09-01 Better application architecture 12
Frequency of changes in various building
blocks
Types of building
block
Prototyping Implementation Production
Human activities High Medium Low
Data structures Low Medium Low
Documents Low Low Low
Roles Low Low Low
Business rules Medium Medium Low
Automated activities Low High Medium*)
Reports Low Medium Low
Records Low Low Low
Dashboards Low Medium Low
Portal Low Medium Low
Explicit-assembles Medium Low Low
*) It is mandatory to be ready for quick changes in automated activities for error recovery of instances
2016-09-01 Better application architecture 13
Scenarios for implementation of
process-centric solutions
Types of
building block
Prototyping Pragmatic combination Extreme microservices (BPM-
Suite tool defines API)
Human activities iBPMS iBPMS iBPMS
Data structures New: iBPMS, existing: ext. tools μService from external tools μService from corporate tool
Documents New: iBPMS, existing: ext. tools μService from external tools μService with corporate tool ECM
Roles New: iBPMS, existing: ext. tools New: iBPMS, existing: ext. tool Corporate tool IAM
Business rules New: iBPMS, existing: ext. tools New: iBPMS, existing: μService iBPMS and μService (exposing iBPMS)
Automated activities New: iBPMS, existing: ext. tools Generic: iBPMS, specific: μService Generic: iBPMS, specific: μService
Reports New: iBPMS, existing: corp. tool New: iBPMS, existing: corp. tool μService with corporate tool
Records New: iBPMS, existing: corp. tool New: iBPMS, existing: corp. tool μService with corporate tool
Dashboards New: iBPMS, existing: corp. tool New: iBPMS, existing: corp. tool μService with corporate tool
Portal iBPMS or corporate tool iBPMS or corporate tool Corporate tool role-based portal
Explicit-assembles iBPMS iBPMS iBPMS
• Determine business domains and the kernel
• Select a particular domain for be “eclipsed”
• Model a group processes (activities, events, roles and
data) for this domain
• Separate back office and front office
• Find candidates for the kernel
• Define data model for this domain
• Implement domain and kernel data as services
• Implement kernel’s services
• Apply eclipse pattern (also known as stranger pattern)
• Refactor what matter with processes
• Keep the monolith in the box
2016-09-01 Better application architecture 14
Decomposing of monoliths
• The combination of BPM and microservices also naturally
incorporate agile development into application
architecture
• Agile development is the best way to implement
microservices
• Related blogposts
– http://improving-bpm-systems.blogspot.ch/search/label/%23microservices
– http://improving-bpm-systems.blogspot.ch/search/label/%23apparch
– http://improving-bpm-systems.blogspot.ch/2014/06/different-coordination-techniques-in.html
– http://improving-bpm-systems.blogspot.ch/2014/04/ideas-for-bpmshift-delenda-est-vendor_27.html
– http://improving-bpm-systems.blogspot.ch/2013/04/enterprise-patterns-strategy.html
2016-09-01 Better application architecture 15
Bonus – agile development
• Personal website: http://www.samarin.biz
• Blog http://improving-bpm-systems.blogspot.com
• LinkedIn: http://www.linkedin.com/in/alexandersamarin
• E-mail: alexandre.samarine@gmail.com
• Twitter: @samarin
• Mobile: +41 76 573 40 61
• Book: www.samarin.biz/book
Better application architecture 16
Thank you
2016-09-01
2016-09-01 Better application architecture 17
• An enterprise architect
– from a programmer to a systems architect (systems of various
sizes: company, corporate, canton, country, continent)
– have created production systems which work without me
• Some of my professional roles
– “cleaning lady” (usually in an IT department)
– “peacemaker” (between the IT and business)
– “swiss knife” (for solving any problem)
– “patterns detective” (seeing commonalities in “unique” cases)
– “assembler” (making unique things from commodities)
– “barriers breaker” (there is always a bigger system)
– “coordinator” (without any formal authority over components)
About me
2016-09-01 Better application architecture 18

More Related Content

What's hot

BPM for business analysts: modelling procedure
BPM for business analysts: modelling procedureBPM for business analysts: modelling procedure
BPM for business analysts: modelling procedureAlexander SAMARIN
 
Creating a Workflow engine for BPM Application through the use of the Microse...
Creating a Workflow engine for BPM Application through the use of the Microse...Creating a Workflow engine for BPM Application through the use of the Microse...
Creating a Workflow engine for BPM Application through the use of the Microse...
Tea Tavanxhiu
 
Architecting digital transformation v1
Architecting digital transformation v1Architecting digital transformation v1
Architecting digital transformation v1
Alexander SAMARIN
 
Importance of executable processes and BPMN
Importance of executable processes and BPMNImportance of executable processes and BPMN
Importance of executable processes and BPMN
Alexander SAMARIN
 
BPM, SOA and EA for e-government
BPM, SOA and EA for e-government BPM, SOA and EA for e-government
BPM, SOA and EA for e-government
Alexander SAMARIN
 
Integration via #BPM: become friendly to #cloud
Integration via #BPM: become friendly to #cloudIntegration via #BPM: become friendly to #cloud
Integration via #BPM: become friendly to #cloudAlexander SAMARIN
 
Achieving synergy between BPM, SOA and EA
Achieving synergy between BPM, SOA and EAAchieving synergy between BPM, SOA and EA
Achieving synergy between BPM, SOA and EA
Alexander SAMARIN
 
How EA, BPM, SOA and ECM work together
How EA, BPM, SOA and ECM work togetherHow EA, BPM, SOA and ECM work together
How EA, BPM, SOA and ECM work together
Alexander SAMARIN
 
Enterprise Architecture (#EntArch) as a #systemsapproach applied management d...
Enterprise Architecture (#EntArch) as a #systemsapproach applied management d...Enterprise Architecture (#EntArch) as a #systemsapproach applied management d...
Enterprise Architecture (#EntArch) as a #systemsapproach applied management d...
Alexander SAMARIN
 
Technology-enabled healthcare transformation: concept paper
Technology-enabled healthcare transformation: concept paperTechnology-enabled healthcare transformation: concept paper
Technology-enabled healthcare transformation: concept paper
Alexander SAMARIN
 
BPM for developers, extended
BPM for developers, extendedBPM for developers, extended
BPM for developers, extendedAlexander SAMARIN
 
Mini-course at VFU - Architecting modern digital systems - 2
Mini-course at VFU - Architecting modern digital systems - 2Mini-course at VFU - Architecting modern digital systems - 2
Mini-course at VFU - Architecting modern digital systems - 2
Alexander SAMARIN
 
Mini-course at VFU - Architecting modern digital systems - 4
Mini-course at VFU - Architecting modern digital systems - 4Mini-course at VFU - Architecting modern digital systems - 4
Mini-course at VFU - Architecting modern digital systems - 4
Alexander SAMARIN
 
Advanced Orchestration & Automation
Advanced Orchestration & AutomationAdvanced Orchestration & Automation
Advanced Orchestration & Automation
Luc Raeskin
 
Oracle SOA and BPM
Oracle SOA and BPMOracle SOA and BPM
Oracle SOA and BPM
kumar gaurav
 
How Broadcast Music, Inc. Devised and Enabled Enterprise Architecture from Co...
How Broadcast Music, Inc. Devised and Enabled Enterprise Architecture from Co...How Broadcast Music, Inc. Devised and Enabled Enterprise Architecture from Co...
How Broadcast Music, Inc. Devised and Enabled Enterprise Architecture from Co...
Prolifics
 
18BC03_Discovery_Enables_Accurate_CMDB_Hinkle_DiscoverFinancial
18BC03_Discovery_Enables_Accurate_CMDB_Hinkle_DiscoverFinancial18BC03_Discovery_Enables_Accurate_CMDB_Hinkle_DiscoverFinancial
18BC03_Discovery_Enables_Accurate_CMDB_Hinkle_DiscoverFinancialTim Hinkle
 
end-to-end service management with ServiceNow (English)
end-to-end service management with ServiceNow (English)end-to-end service management with ServiceNow (English)
end-to-end service management with ServiceNow (English)
Orange Business Services
 
Architecting modern information systems M1 enterprise architecture
Architecting modern information systems M1 enterprise architectureArchitecting modern information systems M1 enterprise architecture
Architecting modern information systems M1 enterprise architecture
Alexander SAMARIN
 
Why and How of Upgrading to SAP Solution Manager 7.2?
Why and How of Upgrading to SAP Solution Manager 7.2?Why and How of Upgrading to SAP Solution Manager 7.2?
Why and How of Upgrading to SAP Solution Manager 7.2?
Kellton Tech Solutions Ltd
 

What's hot (20)

BPM for business analysts: modelling procedure
BPM for business analysts: modelling procedureBPM for business analysts: modelling procedure
BPM for business analysts: modelling procedure
 
Creating a Workflow engine for BPM Application through the use of the Microse...
Creating a Workflow engine for BPM Application through the use of the Microse...Creating a Workflow engine for BPM Application through the use of the Microse...
Creating a Workflow engine for BPM Application through the use of the Microse...
 
Architecting digital transformation v1
Architecting digital transformation v1Architecting digital transformation v1
Architecting digital transformation v1
 
Importance of executable processes and BPMN
Importance of executable processes and BPMNImportance of executable processes and BPMN
Importance of executable processes and BPMN
 
BPM, SOA and EA for e-government
BPM, SOA and EA for e-government BPM, SOA and EA for e-government
BPM, SOA and EA for e-government
 
Integration via #BPM: become friendly to #cloud
Integration via #BPM: become friendly to #cloudIntegration via #BPM: become friendly to #cloud
Integration via #BPM: become friendly to #cloud
 
Achieving synergy between BPM, SOA and EA
Achieving synergy between BPM, SOA and EAAchieving synergy between BPM, SOA and EA
Achieving synergy between BPM, SOA and EA
 
How EA, BPM, SOA and ECM work together
How EA, BPM, SOA and ECM work togetherHow EA, BPM, SOA and ECM work together
How EA, BPM, SOA and ECM work together
 
Enterprise Architecture (#EntArch) as a #systemsapproach applied management d...
Enterprise Architecture (#EntArch) as a #systemsapproach applied management d...Enterprise Architecture (#EntArch) as a #systemsapproach applied management d...
Enterprise Architecture (#EntArch) as a #systemsapproach applied management d...
 
Technology-enabled healthcare transformation: concept paper
Technology-enabled healthcare transformation: concept paperTechnology-enabled healthcare transformation: concept paper
Technology-enabled healthcare transformation: concept paper
 
BPM for developers, extended
BPM for developers, extendedBPM for developers, extended
BPM for developers, extended
 
Mini-course at VFU - Architecting modern digital systems - 2
Mini-course at VFU - Architecting modern digital systems - 2Mini-course at VFU - Architecting modern digital systems - 2
Mini-course at VFU - Architecting modern digital systems - 2
 
Mini-course at VFU - Architecting modern digital systems - 4
Mini-course at VFU - Architecting modern digital systems - 4Mini-course at VFU - Architecting modern digital systems - 4
Mini-course at VFU - Architecting modern digital systems - 4
 
Advanced Orchestration & Automation
Advanced Orchestration & AutomationAdvanced Orchestration & Automation
Advanced Orchestration & Automation
 
Oracle SOA and BPM
Oracle SOA and BPMOracle SOA and BPM
Oracle SOA and BPM
 
How Broadcast Music, Inc. Devised and Enabled Enterprise Architecture from Co...
How Broadcast Music, Inc. Devised and Enabled Enterprise Architecture from Co...How Broadcast Music, Inc. Devised and Enabled Enterprise Architecture from Co...
How Broadcast Music, Inc. Devised and Enabled Enterprise Architecture from Co...
 
18BC03_Discovery_Enables_Accurate_CMDB_Hinkle_DiscoverFinancial
18BC03_Discovery_Enables_Accurate_CMDB_Hinkle_DiscoverFinancial18BC03_Discovery_Enables_Accurate_CMDB_Hinkle_DiscoverFinancial
18BC03_Discovery_Enables_Accurate_CMDB_Hinkle_DiscoverFinancial
 
end-to-end service management with ServiceNow (English)
end-to-end service management with ServiceNow (English)end-to-end service management with ServiceNow (English)
end-to-end service management with ServiceNow (English)
 
Architecting modern information systems M1 enterprise architecture
Architecting modern information systems M1 enterprise architectureArchitecting modern information systems M1 enterprise architecture
Architecting modern information systems M1 enterprise architecture
 
Why and How of Upgrading to SAP Solution Manager 7.2?
Why and How of Upgrading to SAP Solution Manager 7.2?Why and How of Upgrading to SAP Solution Manager 7.2?
Why and How of Upgrading to SAP Solution Manager 7.2?
 

Viewers also liked

E-government reference model
E-government reference modelE-government reference model
E-government reference model
Alexander SAMARIN
 
Docker & aPaaS: Enterprise Innovation and Trends for 2015
Docker & aPaaS: Enterprise Innovation and Trends for 2015Docker & aPaaS: Enterprise Innovation and Trends for 2015
Docker & aPaaS: Enterprise Innovation and Trends for 2015
WaveMaker, Inc.
 
52 seo-tips
52 seo-tips52 seo-tips
52 seo-tips
Muhammad Farhan
 
Ebook share4rt seo off page
Ebook share4rt seo off pageEbook share4rt seo off page
Ebook share4rt seo off page
Muhammad Farhan
 
jBPM5 Community Training - Module 2.5: BPM For Developers
jBPM5 Community Training - Module 2.5: BPM For DevelopersjBPM5 Community Training - Module 2.5: BPM For Developers
jBPM5 Community Training - Module 2.5: BPM For Developers
Mauricio (Salaboy) Salatino
 
Procedury cz.3 4
Procedury cz.3 4Procedury cz.3 4
Procedury cz.3 4
Aga Szajda
 
Leverage Progress Technologies for Telerik Developers
Leverage Progress Technologies for Telerik DevelopersLeverage Progress Technologies for Telerik Developers
Leverage Progress Technologies for Telerik Developers
Abhishek Kant
 
Drag and Drop Application Development with Progress Rollbase
Drag and Drop Application Development with Progress RollbaseDrag and Drop Application Development with Progress Rollbase
Drag and Drop Application Development with Progress Rollbase
Abhishek Kant
 
Docker for the enterprise
Docker for the enterpriseDocker for the enterprise
Docker for the enterprise
Bert Poller
 
Как привлекать клиентов в интернете (Быстро и бесплатно)
Как привлекать клиентов в интернете (Быстро и бесплатно)Как привлекать клиентов в интернете (Быстро и бесплатно)
Как привлекать клиентов в интернете (Быстро и бесплатно)
Vladymyr Klykov
 
Building Mobile Apps on aPaaS platforms
Building Mobile Apps on aPaaS platformsBuilding Mobile Apps on aPaaS platforms
Building Mobile Apps on aPaaS platforms
Dr Ganesh Iyer
 
PaaS vs aPaaS
PaaS vs aPaaSPaaS vs aPaaS
PaaS vs aPaaS
Suresh Sambandam
 
Inleiding tot Bibliotheekportalen API's
Inleiding tot Bibliotheekportalen API'sInleiding tot Bibliotheekportalen API's
Inleiding tot Bibliotheekportalen API's
Johan Mijs
 
Low Code Platforms - Ebook
Low Code Platforms - EbookLow Code Platforms - Ebook
Low Code Platforms - Ebook
WaveMaker, Inc.
 

Viewers also liked (14)

E-government reference model
E-government reference modelE-government reference model
E-government reference model
 
Docker & aPaaS: Enterprise Innovation and Trends for 2015
Docker & aPaaS: Enterprise Innovation and Trends for 2015Docker & aPaaS: Enterprise Innovation and Trends for 2015
Docker & aPaaS: Enterprise Innovation and Trends for 2015
 
52 seo-tips
52 seo-tips52 seo-tips
52 seo-tips
 
Ebook share4rt seo off page
Ebook share4rt seo off pageEbook share4rt seo off page
Ebook share4rt seo off page
 
jBPM5 Community Training - Module 2.5: BPM For Developers
jBPM5 Community Training - Module 2.5: BPM For DevelopersjBPM5 Community Training - Module 2.5: BPM For Developers
jBPM5 Community Training - Module 2.5: BPM For Developers
 
Procedury cz.3 4
Procedury cz.3 4Procedury cz.3 4
Procedury cz.3 4
 
Leverage Progress Technologies for Telerik Developers
Leverage Progress Technologies for Telerik DevelopersLeverage Progress Technologies for Telerik Developers
Leverage Progress Technologies for Telerik Developers
 
Drag and Drop Application Development with Progress Rollbase
Drag and Drop Application Development with Progress RollbaseDrag and Drop Application Development with Progress Rollbase
Drag and Drop Application Development with Progress Rollbase
 
Docker for the enterprise
Docker for the enterpriseDocker for the enterprise
Docker for the enterprise
 
Как привлекать клиентов в интернете (Быстро и бесплатно)
Как привлекать клиентов в интернете (Быстро и бесплатно)Как привлекать клиентов в интернете (Быстро и бесплатно)
Как привлекать клиентов в интернете (Быстро и бесплатно)
 
Building Mobile Apps on aPaaS platforms
Building Mobile Apps on aPaaS platformsBuilding Mobile Apps on aPaaS platforms
Building Mobile Apps on aPaaS platforms
 
PaaS vs aPaaS
PaaS vs aPaaSPaaS vs aPaaS
PaaS vs aPaaS
 
Inleiding tot Bibliotheekportalen API's
Inleiding tot Bibliotheekportalen API'sInleiding tot Bibliotheekportalen API's
Inleiding tot Bibliotheekportalen API's
 
Low Code Platforms - Ebook
Low Code Platforms - EbookLow Code Platforms - Ebook
Low Code Platforms - Ebook
 

Similar to Better application architecture with #microservices and #BPM (as APaaS)

Best Practices Building Cloud Scale Apps with Microservices
Best Practices Building Cloud Scale Apps with MicroservicesBest Practices Building Cloud Scale Apps with Microservices
Best Practices Building Cloud Scale Apps with Microservices
Jim (张建军) Zhang
 
[WSO2Con EU 2017] Microservices for Enterprises
[WSO2Con EU 2017] Microservices for Enterprises[WSO2Con EU 2017] Microservices for Enterprises
[WSO2Con EU 2017] Microservices for Enterprises
WSO2
 
Which Application Modernization Pattern Is Right For You?
Which Application Modernization Pattern Is Right For You?Which Application Modernization Pattern Is Right For You?
Which Application Modernization Pattern Is Right For You?
Apigee | Google Cloud
 
adopt_soa.94145841
adopt_soa.94145841adopt_soa.94145841
adopt_soa.94145841ypai
 
Introduction to microservices
Introduction to microservicesIntroduction to microservices
Introduction to microservices
Anil Allewar
 
WebSphere Message Broker Application Development Training
WebSphere Message Broker Application Development TrainingWebSphere Message Broker Application Development Training
WebSphere Message Broker Application Development Training
Vijaya Raghava Vuligundam
 
Microservices for Enterprises
Microservices for Enterprises Microservices for Enterprises
Microservices for Enterprises
Kasun Indrasiri
 
Technology insights: Decision Science Platform
Technology insights: Decision Science PlatformTechnology insights: Decision Science Platform
Technology insights: Decision Science Platform
Decision Science Community
 
The Essential Guide for Automating CMDB population and maintenance
The Essential Guide for Automating CMDB population and maintenanceThe Essential Guide for Automating CMDB population and maintenance
The Essential Guide for Automating CMDB population and maintenance
Stefan Bergstein
 
Agent-Based Workflow
Agent-Based WorkflowAgent-Based Workflow
Agent-Based Workflow
Larry Suarez
 
Api enablement-mainframe
Api enablement-mainframeApi enablement-mainframe
Api enablement-mainframe
Maran Gothandaraman
 
MuleSoft Manchester Meetup #4 slides 11th February 2021
MuleSoft Manchester Meetup #4 slides 11th February 2021MuleSoft Manchester Meetup #4 slides 11th February 2021
MuleSoft Manchester Meetup #4 slides 11th February 2021
Ieva Navickaite
 
SHARE 2014 Pittsburgh, Modernizing cics for cloud
SHARE 2014 Pittsburgh, Modernizing cics for cloudSHARE 2014 Pittsburgh, Modernizing cics for cloud
SHARE 2014 Pittsburgh, Modernizing cics for cloud
nick_garrod
 
170215 msa intro
170215 msa intro170215 msa intro
170215 msa intro
Sonic leigh
 
CWIN17 Utrecht / cg u services - frank van der wal
CWIN17 Utrecht / cg u services - frank van der walCWIN17 Utrecht / cg u services - frank van der wal
CWIN17 Utrecht / cg u services - frank van der wal
Capgemini
 
Build end-to-end solutions with BlueMix, Avi Vizel & Ziv Dai, IBM
Build end-to-end solutions with BlueMix, Avi Vizel & Ziv Dai, IBMBuild end-to-end solutions with BlueMix, Avi Vizel & Ziv Dai, IBM
Build end-to-end solutions with BlueMix, Avi Vizel & Ziv Dai, IBM
Codemotion Tel Aviv
 
PureApp Hybrid Cloud - Mark Willemse ING Presentation 11th September 2014
PureApp Hybrid Cloud - Mark Willemse ING Presentation 11th September 2014PureApp Hybrid Cloud - Mark Willemse ING Presentation 11th September 2014
PureApp Hybrid Cloud - Mark Willemse ING Presentation 11th September 2014
IBM Systems UKI
 
SOA Mainframe Service Architecture and Enablement Practices Best and Worst Pr...
SOA Mainframe Service Architecture and Enablement Practices Best and Worst Pr...SOA Mainframe Service Architecture and Enablement Practices Best and Worst Pr...
SOA Mainframe Service Architecture and Enablement Practices Best and Worst Pr...
Michael Erichsen
 
Transform Enterprise IT Infrastructure with AWS DevOps
Transform Enterprise IT Infrastructure with AWS DevOpsTransform Enterprise IT Infrastructure with AWS DevOps
Transform Enterprise IT Infrastructure with AWS DevOps
Amazon Web Services
 
MuleSoft London Community October 2017 - Hybrid and SAP Integration
MuleSoft London Community October 2017 - Hybrid and SAP IntegrationMuleSoft London Community October 2017 - Hybrid and SAP Integration
MuleSoft London Community October 2017 - Hybrid and SAP Integration
Pace Integration
 

Similar to Better application architecture with #microservices and #BPM (as APaaS) (20)

Best Practices Building Cloud Scale Apps with Microservices
Best Practices Building Cloud Scale Apps with MicroservicesBest Practices Building Cloud Scale Apps with Microservices
Best Practices Building Cloud Scale Apps with Microservices
 
[WSO2Con EU 2017] Microservices for Enterprises
[WSO2Con EU 2017] Microservices for Enterprises[WSO2Con EU 2017] Microservices for Enterprises
[WSO2Con EU 2017] Microservices for Enterprises
 
Which Application Modernization Pattern Is Right For You?
Which Application Modernization Pattern Is Right For You?Which Application Modernization Pattern Is Right For You?
Which Application Modernization Pattern Is Right For You?
 
adopt_soa.94145841
adopt_soa.94145841adopt_soa.94145841
adopt_soa.94145841
 
Introduction to microservices
Introduction to microservicesIntroduction to microservices
Introduction to microservices
 
WebSphere Message Broker Application Development Training
WebSphere Message Broker Application Development TrainingWebSphere Message Broker Application Development Training
WebSphere Message Broker Application Development Training
 
Microservices for Enterprises
Microservices for Enterprises Microservices for Enterprises
Microservices for Enterprises
 
Technology insights: Decision Science Platform
Technology insights: Decision Science PlatformTechnology insights: Decision Science Platform
Technology insights: Decision Science Platform
 
The Essential Guide for Automating CMDB population and maintenance
The Essential Guide for Automating CMDB population and maintenanceThe Essential Guide for Automating CMDB population and maintenance
The Essential Guide for Automating CMDB population and maintenance
 
Agent-Based Workflow
Agent-Based WorkflowAgent-Based Workflow
Agent-Based Workflow
 
Api enablement-mainframe
Api enablement-mainframeApi enablement-mainframe
Api enablement-mainframe
 
MuleSoft Manchester Meetup #4 slides 11th February 2021
MuleSoft Manchester Meetup #4 slides 11th February 2021MuleSoft Manchester Meetup #4 slides 11th February 2021
MuleSoft Manchester Meetup #4 slides 11th February 2021
 
SHARE 2014 Pittsburgh, Modernizing cics for cloud
SHARE 2014 Pittsburgh, Modernizing cics for cloudSHARE 2014 Pittsburgh, Modernizing cics for cloud
SHARE 2014 Pittsburgh, Modernizing cics for cloud
 
170215 msa intro
170215 msa intro170215 msa intro
170215 msa intro
 
CWIN17 Utrecht / cg u services - frank van der wal
CWIN17 Utrecht / cg u services - frank van der walCWIN17 Utrecht / cg u services - frank van der wal
CWIN17 Utrecht / cg u services - frank van der wal
 
Build end-to-end solutions with BlueMix, Avi Vizel & Ziv Dai, IBM
Build end-to-end solutions with BlueMix, Avi Vizel & Ziv Dai, IBMBuild end-to-end solutions with BlueMix, Avi Vizel & Ziv Dai, IBM
Build end-to-end solutions with BlueMix, Avi Vizel & Ziv Dai, IBM
 
PureApp Hybrid Cloud - Mark Willemse ING Presentation 11th September 2014
PureApp Hybrid Cloud - Mark Willemse ING Presentation 11th September 2014PureApp Hybrid Cloud - Mark Willemse ING Presentation 11th September 2014
PureApp Hybrid Cloud - Mark Willemse ING Presentation 11th September 2014
 
SOA Mainframe Service Architecture and Enablement Practices Best and Worst Pr...
SOA Mainframe Service Architecture and Enablement Practices Best and Worst Pr...SOA Mainframe Service Architecture and Enablement Practices Best and Worst Pr...
SOA Mainframe Service Architecture and Enablement Practices Best and Worst Pr...
 
Transform Enterprise IT Infrastructure with AWS DevOps
Transform Enterprise IT Infrastructure with AWS DevOpsTransform Enterprise IT Infrastructure with AWS DevOps
Transform Enterprise IT Infrastructure with AWS DevOps
 
MuleSoft London Community October 2017 - Hybrid and SAP Integration
MuleSoft London Community October 2017 - Hybrid and SAP IntegrationMuleSoft London Community October 2017 - Hybrid and SAP Integration
MuleSoft London Community October 2017 - Hybrid and SAP Integration
 

More from Alexander SAMARIN

Digital Architecture Methodology for Systemic Digital Transformation (Smart C...
Digital Architecture Methodology for Systemic Digital Transformation (Smart C...Digital Architecture Methodology for Systemic Digital Transformation (Smart C...
Digital Architecture Methodology for Systemic Digital Transformation (Smart C...
Alexander SAMARIN
 
Building large-scale digital repeatable systems
Building large-scale digital repeatable systemsBuilding large-scale digital repeatable systems
Building large-scale digital repeatable systems
Alexander SAMARIN
 
Smart Cities Reference Architecture
Smart Cities Reference ArchitectureSmart Cities Reference Architecture
Smart Cities Reference Architecture
Alexander SAMARIN
 
Building large-scale digital repeatable systems e.g Smart Cities
Building large-scale digital repeatable systems e.g Smart CitiesBuilding large-scale digital repeatable systems e.g Smart Cities
Building large-scale digital repeatable systems e.g Smart Cities
Alexander SAMARIN
 
Mini-course at VFU - Architecting modern digital systems - 0
Mini-course at VFU - Architecting modern digital systems - 0Mini-course at VFU - Architecting modern digital systems - 0
Mini-course at VFU - Architecting modern digital systems - 0
Alexander SAMARIN
 
Mini-course at VFU - Architecting modern digital systems - 5
Mini-course at VFU - Architecting modern digital systems - 5Mini-course at VFU - Architecting modern digital systems - 5
Mini-course at VFU - Architecting modern digital systems - 5
Alexander SAMARIN
 
Mini-course at VFU - Architecting modern digital systems - 3
Mini-course at VFU - Architecting modern digital systems - 3Mini-course at VFU - Architecting modern digital systems - 3
Mini-course at VFU - Architecting modern digital systems - 3
Alexander SAMARIN
 
Mini-course at VFU - Architecting modern digital systems - 1
Mini-course at VFU - Architecting modern digital systems - 1Mini-course at VFU - Architecting modern digital systems - 1
Mini-course at VFU - Architecting modern digital systems - 1
Alexander SAMARIN
 
Towards software-defined organisations
Towards software-defined organisationsTowards software-defined organisations
Towards software-defined organisations
Alexander SAMARIN
 
Smart Cities from the systems point of view
Smart Cities from the systems point of viewSmart Cities from the systems point of view
Smart Cities from the systems point of view
Alexander SAMARIN
 
#bizarch from the #entarch point of view
#bizarch from the #entarch point of view#bizarch from the #entarch point of view
#bizarch from the #entarch point of view
Alexander SAMARIN
 
Smart-city implementation reference model
Smart-city implementation reference modelSmart-city implementation reference model
Smart-city implementation reference modelAlexander SAMARIN
 
Эталонная модель электронного правительства
Эталонная модель электронного правительстваЭталонная модель электронного правительства
Эталонная модель электронного правительства
Alexander SAMARIN
 

More from Alexander SAMARIN (14)

Digital Architecture Methodology for Systemic Digital Transformation (Smart C...
Digital Architecture Methodology for Systemic Digital Transformation (Smart C...Digital Architecture Methodology for Systemic Digital Transformation (Smart C...
Digital Architecture Methodology for Systemic Digital Transformation (Smart C...
 
Building large-scale digital repeatable systems
Building large-scale digital repeatable systemsBuilding large-scale digital repeatable systems
Building large-scale digital repeatable systems
 
Smart Cities Reference Architecture
Smart Cities Reference ArchitectureSmart Cities Reference Architecture
Smart Cities Reference Architecture
 
Building large-scale digital repeatable systems e.g Smart Cities
Building large-scale digital repeatable systems e.g Smart CitiesBuilding large-scale digital repeatable systems e.g Smart Cities
Building large-scale digital repeatable systems e.g Smart Cities
 
Mini-course at VFU - Architecting modern digital systems - 0
Mini-course at VFU - Architecting modern digital systems - 0Mini-course at VFU - Architecting modern digital systems - 0
Mini-course at VFU - Architecting modern digital systems - 0
 
Mini-course at VFU - Architecting modern digital systems - 5
Mini-course at VFU - Architecting modern digital systems - 5Mini-course at VFU - Architecting modern digital systems - 5
Mini-course at VFU - Architecting modern digital systems - 5
 
Mini-course at VFU - Architecting modern digital systems - 3
Mini-course at VFU - Architecting modern digital systems - 3Mini-course at VFU - Architecting modern digital systems - 3
Mini-course at VFU - Architecting modern digital systems - 3
 
Mini-course at VFU - Architecting modern digital systems - 1
Mini-course at VFU - Architecting modern digital systems - 1Mini-course at VFU - Architecting modern digital systems - 1
Mini-course at VFU - Architecting modern digital systems - 1
 
Towards software-defined organisations
Towards software-defined organisationsTowards software-defined organisations
Towards software-defined organisations
 
Smart Cities from the systems point of view
Smart Cities from the systems point of viewSmart Cities from the systems point of view
Smart Cities from the systems point of view
 
#bizarch from the #entarch point of view
#bizarch from the #entarch point of view#bizarch from the #entarch point of view
#bizarch from the #entarch point of view
 
Smart-city implementation reference model
Smart-city implementation reference modelSmart-city implementation reference model
Smart-city implementation reference model
 
Эталонная модель электронного правительства
Эталонная модель электронного правительстваЭталонная модель электронного правительства
Эталонная модель электронного правительства
 
E-passport example
E-passport exampleE-passport example
E-passport example
 

Recently uploaded

Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
Paul Groth
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Product School
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
g2nightmarescribd
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
RTTS
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 

Recently uploaded (20)

Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 

Better application architecture with #microservices and #BPM (as APaaS)

  • 1. Better application architecture with #microservices and #BPM Alexander SAMARIN
  • 2. • Typical concerns – Time-to-market for new solutions and new versions of existing solutions (IT agility) – Ownership of governance and management of applications – Healthy eco-system of partners and providers – Transparent cost structure and other good business practices • How to address those concerns – Develop solutions as a suite of independently deployable, small, modular services known as microservices (like a football team is assembled from individual players) – Refactor, modernise and decompose existing monoliths into microservices – Start new solutions with microservices – Better manage changes in software application 2016-09-01 Better application architecture 2 Better application architecture
  • 3. • I like microservices • How to define granularity of microservices? • Let us buy API gateway • We must have an APaaS • Let us decompose our in-house monolith ERP into microservices • Where can I deploy my microservices? • I can keep some local data in my microservices, but how to use some corporate data? • We need DevOps, CI, etc. • What is our target application architecture? 2016-09-01 Better application architecture 3 Typical IT concerns
  • 4. • Unit-of-functionality is a computing component implementing a particular capability – examples: function, method, package • Unit-of-deployment is a computing component which can be individually and independently deployed into a runtime computing environment – Note: unit-of-deployment may be a composition of units-of-functionality (i.e. monolith) – Note: unit-of-deployment may be an aggregation of other units-of-deployment (i.e. assembly) 2016-09-01 Better application architecture 4 Application architecture key concepts (1)
  • 5. • Interface is a shared boundary between two units-of- functionality, defined by functional characteristics, signal characteristics, or other characteristics as appropriate • Service is a unit-of-functionality which is available from (usually separate from its consumer) unit-of-deployment via an explicitly-defined interface and provides some added-value being consumed – Note: Interface to software services is called Application Programmer Interface (API) • Service agreement is an agreement between the service consumer and the service provider on performance, measurement and conditions of service delivery 2016-09-01 Better application architecture 5 Application architecture key concepts (2) Service consumer Service provider
  • 6. • Microservice is functionally-minimalistic and deployment- independent service – functionally-minimalistic, i.e. follow the Single Responsibility Principle – deployment-independent i.e. unit-of-functionality equals to unit-of- deployment thus autonomous in some extent • Assembly of microservices may be a microservice as well • Solutions which are assembled from microservices may have many microservice-to-microservice dynamic connections N * (N-1) / 2 2016-09-01 Better application architecture 6 Application architecture key concepts (3)
  • 7. • API gateway is a proxy between a service consumer and a service provider – Gateways are necessary to improve various “abilities” (flexibility, measurability, availability, etc.) of those dynamic connections because service providers and services consumers may be spread over network nodes, computing environments and clouds 2016-09-01 Better application architecture 7 Application architecture key concepts (4) API gateway
  • 8. • Microservices are dependent at the design-time – because they are for Service Oriented Development • Microservices are independent at the deployment-time – because they are autonomous (at some extent) • Microservices are interdependent at the run-time – because they invoke each others 2016-09-01 Better application architecture 8 Microservices in application lifecycle
  • 9. 2016-09-01 Better application architecture 9 Various development lifecycles monolith applications process-based solutions microservice assembles Existing application Change something New applicationTest everything Easy Difficult Existing assembly Change something New assemblyTest relationships Average (granularity?) Average (too many links!) Easy and safe (lesser links) Existing process Easy (granularity comes from business) New process CI CI SA Dev Ops Dev Ops SA SA CI Dev Ops Change something Test relationships SA – Solution Architecture CI – Continuous Integration
  • 10. • Single-responsibility building blocks are microservice-ready – Human activities (as UI) – Data structures (from various repositories) – Documents (from various repositories) – Events – Business rules – Roles – Automated activities – Explicit-assemblies via DSLs (orchestration and choreography) – Reports • Single-responsibility building blocks – Dashboards – Portals (as a navigator over some human activities) – Implicit-aggregators via events and reactive programming 2016-09-01 Better application architecture 10 Application building blocks which BPM-suite tool as APaaS can manage
  • 11. • Each process, case and activity is a single responsibility • Human activities are designed for single responsibility • Data structure design is actually Domain-Driven Design because a process or a group of related processes define a domain • Granularity of business rules is defined by their consumers (i.e. activities) • Automated activities primarily augment (enrich) related human activates thus their granularity • Roles are related to processes, cases and activities 2016-09-01 Better application architecture 11 BPM-suite tool helps to determine “right” granularity for microservices
  • 12. 2016-09-01 Better application architecture 12 Frequency of changes in various building blocks Types of building block Prototyping Implementation Production Human activities High Medium Low Data structures Low Medium Low Documents Low Low Low Roles Low Low Low Business rules Medium Medium Low Automated activities Low High Medium*) Reports Low Medium Low Records Low Low Low Dashboards Low Medium Low Portal Low Medium Low Explicit-assembles Medium Low Low *) It is mandatory to be ready for quick changes in automated activities for error recovery of instances
  • 13. 2016-09-01 Better application architecture 13 Scenarios for implementation of process-centric solutions Types of building block Prototyping Pragmatic combination Extreme microservices (BPM- Suite tool defines API) Human activities iBPMS iBPMS iBPMS Data structures New: iBPMS, existing: ext. tools μService from external tools μService from corporate tool Documents New: iBPMS, existing: ext. tools μService from external tools μService with corporate tool ECM Roles New: iBPMS, existing: ext. tools New: iBPMS, existing: ext. tool Corporate tool IAM Business rules New: iBPMS, existing: ext. tools New: iBPMS, existing: μService iBPMS and μService (exposing iBPMS) Automated activities New: iBPMS, existing: ext. tools Generic: iBPMS, specific: μService Generic: iBPMS, specific: μService Reports New: iBPMS, existing: corp. tool New: iBPMS, existing: corp. tool μService with corporate tool Records New: iBPMS, existing: corp. tool New: iBPMS, existing: corp. tool μService with corporate tool Dashboards New: iBPMS, existing: corp. tool New: iBPMS, existing: corp. tool μService with corporate tool Portal iBPMS or corporate tool iBPMS or corporate tool Corporate tool role-based portal Explicit-assembles iBPMS iBPMS iBPMS
  • 14. • Determine business domains and the kernel • Select a particular domain for be “eclipsed” • Model a group processes (activities, events, roles and data) for this domain • Separate back office and front office • Find candidates for the kernel • Define data model for this domain • Implement domain and kernel data as services • Implement kernel’s services • Apply eclipse pattern (also known as stranger pattern) • Refactor what matter with processes • Keep the monolith in the box 2016-09-01 Better application architecture 14 Decomposing of monoliths
  • 15. • The combination of BPM and microservices also naturally incorporate agile development into application architecture • Agile development is the best way to implement microservices • Related blogposts – http://improving-bpm-systems.blogspot.ch/search/label/%23microservices – http://improving-bpm-systems.blogspot.ch/search/label/%23apparch – http://improving-bpm-systems.blogspot.ch/2014/06/different-coordination-techniques-in.html – http://improving-bpm-systems.blogspot.ch/2014/04/ideas-for-bpmshift-delenda-est-vendor_27.html – http://improving-bpm-systems.blogspot.ch/2013/04/enterprise-patterns-strategy.html 2016-09-01 Better application architecture 15 Bonus – agile development
  • 16. • Personal website: http://www.samarin.biz • Blog http://improving-bpm-systems.blogspot.com • LinkedIn: http://www.linkedin.com/in/alexandersamarin • E-mail: alexandre.samarine@gmail.com • Twitter: @samarin • Mobile: +41 76 573 40 61 • Book: www.samarin.biz/book Better application architecture 16 Thank you 2016-09-01
  • 17. 2016-09-01 Better application architecture 17
  • 18. • An enterprise architect – from a programmer to a systems architect (systems of various sizes: company, corporate, canton, country, continent) – have created production systems which work without me • Some of my professional roles – “cleaning lady” (usually in an IT department) – “peacemaker” (between the IT and business) – “swiss knife” (for solving any problem) – “patterns detective” (seeing commonalities in “unique” cases) – “assembler” (making unique things from commodities) – “barriers breaker” (there is always a bigger system) – “coordinator” (without any formal authority over components) About me 2016-09-01 Better application architecture 18

Editor's Notes

  1. (e.g. data in WLM processes are a subset of an enterprise data model)