unifying two extremes€¦ · eam & microservices unifying two extremes roger e. rhoades...

24
EAM & Microservices Unifying two Extremes Roger E. Rhoades 13.06.2018, Wien 1 13.06.2018

Upload: others

Post on 25-May-2020

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Unifying two Extremes€¦ · EAM & Microservices Unifying two Extremes Roger E. Rhoades 13.06.2018, Wien 13.06.2018 1

EAM & MicroservicesUnifying two Extremes

Roger E. Rhoades13.06.2018, Wien

113.06.2018

Page 2: Unifying two Extremes€¦ · EAM & Microservices Unifying two Extremes Roger E. Rhoades 13.06.2018, Wien 13.06.2018 1

13.06.2018 2

Introduction

Page 3: Unifying two Extremes€¦ · EAM & Microservices Unifying two Extremes Roger E. Rhoades 13.06.2018, Wien 13.06.2018 1

Trainer, Consultant, and Coach for Workshops and Trainings:

TOGAF & Enterprise Architecture Management (EAM)

Software Architecture and iSAQB certifications

Digital strategy development and implementation

Experienced as Enterprise-, Solution- und Software-Architect

Goal: Enable customers to implement their strategies

From strategy to capability, from plan to practice

Presenter at international conferences• 30.05.2017 EAMKon 2017: Digitalisierung & Transformation

• 15.11.2016 Lean42 Konferenz. Evolution des Enterprise Architekten.

• 22.06.2016 EAMKon 2016: Rolle des Enterprise Architect.

• 21.06.2016 EAMKon 2016: Workshop - Transformationsplanung in der Praxis

• 19.04.2016 Markus Evans: Etablierung EAM-Prozesse

• 2015 EAM-Vortragsserie (mehreren Veranstaltungen)

• …

13.06.2018 3

Introduction

Page 4: Unifying two Extremes€¦ · EAM & Microservices Unifying two Extremes Roger E. Rhoades 13.06.2018, Wien 13.06.2018 1

13.06.2018 4

Agenda

Unifying EAM& Microservices

1

2

3

Enterprise Architecture Management (EAM)

Microservices

Page 5: Unifying two Extremes€¦ · EAM & Microservices Unifying two Extremes Roger E. Rhoades 13.06.2018, Wien 13.06.2018 1

13.06.2018 5

Agenda

Unifying EAM& Microservices

Enterprise Architecture Management (EAM)

Microservices

Page 6: Unifying two Extremes€¦ · EAM & Microservices Unifying two Extremes Roger E. Rhoades 13.06.2018, Wien 13.06.2018 1

Microservices

13.06.2018 6Image Source: https://www.voxxed.com/2016/01/microservices-versus-soa-practice/

MicroservicesClassical development Approach (Monolith)

Online Web Application

User Account

Application

Shopping Cart

Application

Product Catalog Application

Display Product

Update Product

User DefaultDisplay Image

Product Rating

Check Inventory

SendEmail

Product Review

Location Availability

UserInfo

Promotion Recommend

AddRemove

Billing ShippingTax

Calculation

Shopping Cart Feature

Product Cart Feature

User Account Feature

Microservice called by shopping cart feature

Microservice called by product catalog feature

Microservice called by user account feature

Page 7: Unifying two Extremes€¦ · EAM & Microservices Unifying two Extremes Roger E. Rhoades 13.06.2018, Wien 13.06.2018 1

MicroservicesTeam assignment & Microservice Decomposition

13.06.2018 7https://www.martinfowler.com/articles/microservices.html

UI Expert

Middleware

DBAs

Microservices

Cross-Functional Teams organized by Capabilities (functional domains)Silos

Classical development approach (Monolith)

Page 8: Unifying two Extremes€¦ · EAM & Microservices Unifying two Extremes Roger E. Rhoades 13.06.2018, Wien 13.06.2018 1

MicroservicesModularity and Technology Stack

13.06.2018 8

Independent application stacks, few dependencies

https://www.martinfowler.com/articles/microservices.html

Multiple components in a single application, shared database & processes

MicroservicesClassical development approach (Monolith)

Page 9: Unifying two Extremes€¦ · EAM & Microservices Unifying two Extremes Roger E. Rhoades 13.06.2018, Wien 13.06.2018 1

Basics• Reactive Manifesto

(responsive, resilient, elastic, message-driven)

Modularity• CQRS Command Query Responsibility Segregation

• Encapsulation / Atomic

• Public interfaces (Service Discovery and Location)

Performance and scalability• Stateless, message-oriented, event-driven

• Horizontally elastic scalable

• Local distribution (e.g. avoids latency)

• Shared nothing

• Technology independence

Organizational maintainability• Collective service ownership

• „Small“ (manageable by a 3 to 9 person team)

• Products, not projects

13.06.2018 9

Microservice Characteristics (organizational and design principles)

Technical maintainability• Micro vs. macro architecture

• Build to replace (single-responsibility principle)

• Partitioned according to functional domains

(domain-driven design / business capabilities)

• Automation of the entire SDLC

• Decentralized management

• Lightweight communication

Availability• Resilient, e.g. 12-Factor-App

• B.A.S.E. Basically Available Soft State Eventual

Consistency

• CAP Theorem - Consistency Availability Partition

Tolerance

• DURS Deployable Updateable Replaceable, Scalable

• Eventual Consistency

• Runs in its own process

Page 10: Unifying two Extremes€¦ · EAM & Microservices Unifying two Extremes Roger E. Rhoades 13.06.2018, Wien 13.06.2018 1

13.06.2018 10

Microservices

Advantages

• Better business-it alignment due to organization of the microservices according to functional domains

• Modularity with all of its advantages (e.g. independent scalability, maintainability, etc.)

• Designed for failure, improved fault isolation

• Maintainability, reliability by taking advantage of the interchangeability of components

• Agility by keeping changes localized

• Possibility to choose the best possible technologies for the given requirements and change the technologies over time

• Teams can work independently of one another

• Responsibilities (both technical and organizational) are clearer

Disadvantages

• Modularity and all of its disadvantages (e.g. complexity, integration)

• Technological heterogeneity on the macro architecture level

• High complexity at the macro architecture level due to high number of small components. Complexity can become unmanageable.

• Testing and deployment is more difficultFlexible Complex

Page 11: Unifying two Extremes€¦ · EAM & Microservices Unifying two Extremes Roger E. Rhoades 13.06.2018, Wien 13.06.2018 1

Agenda

13.06.2018 11

Unifying EAM& Microservices

Enterprise Architecture Management (EAM)

Microservices

Page 12: Unifying two Extremes€¦ · EAM & Microservices Unifying two Extremes Roger E. Rhoades 13.06.2018, Wien 13.06.2018 1

EAM Definition

13.06.2018 12

EAM translates the business strategy into business capabilities to achieve the desired business goals and deliver measurable performance improvements.

Enterprise Architecture Management is a well-defined management practice used to analyze, design, and plan the required components of the business strategy (e.g. organizational structure, business processes, information, technologies, …).

Page 13: Unifying two Extremes€¦ · EAM & Microservices Unifying two Extremes Roger E. Rhoades 13.06.2018, Wien 13.06.2018 1

EAMBusiness Capabilities

• A business capability is a business function that describes what a

business does, not where, why, or how it is done

• A business capability abstracts related components required to run the

business and implement the business strategy, e.g. organization,

processes, technologies, etc.

13.06.2018 13

Why HowWhat

Vision & StrategyBusiness

CapabilityExecution

Page 14: Unifying two Extremes€¦ · EAM & Microservices Unifying two Extremes Roger E. Rhoades 13.06.2018, Wien 13.06.2018 1

13.06.2018 14

Business CapabilitiesAs-Is (Current) Capability Map

Travel Management

Traveler Mgmt

IdentityManagement

ProfileManagement

Personalization

Travel Inquiry

Search

Browse

TravelerConsulting

Reservation Management

Booking Ticketing

ChangeManagement

ItineraryManagement

Travel Accounting

Travel Payments

Travel Logistics

Check-In

Travel Regulations

AirportManagement

ItineraryManagement

Loyalty Programs

Loyalty Mgmt -Partner

Loyalty Mgmt -Intern

Traveler Support

Tech Support

Call Center

IssueManagement

Products & Services

Product PortfolioMgmt

Product CatalogMgmt

Product Design &Development

Service Quality

Account Management

CRM

ComplaintsManagement

CustomerRetention

Example of a capability map for a travel portal:

Page 15: Unifying two Extremes€¦ · EAM & Microservices Unifying two Extremes Roger E. Rhoades 13.06.2018, Wien 13.06.2018 1

Business CapabilitiesTarget Capability Map

13.06.2018 15

Products & Services

Product PortfolioMgmt

Product CatalogMgmt

Product Design &Development

Service Quality

Account Management

CRM

ComplaintsManagement

CustomerRetention

CustomerAcquistion

CorporateCustomer Mgmt

ContractManagement

Current

New

Changed

Legend

Expense Management

Request &Approval

ExpenseCapture

Expense Posting ExpenseReporting

Example: Leisure travel company expands into business travel

Target capabilities depict the enterprise in its future state defined by the business strategy

Page 16: Unifying two Extremes€¦ · EAM & Microservices Unifying two Extremes Roger E. Rhoades 13.06.2018, Wien 13.06.2018 1

Business CapabilityFurther Refinement of Specific Business Capabilities

13.06.2018 16

Expense Management

Request & Approval Expense Capture Expense Posting Expense Reporting

Policy Compliance

Reimbursement

DisputeManagement

Credit CardCapture

Mobile PhoneCapture

Manual Entry

Mileage Tracking

VAT Calculation

Integration (e.g.Accounting)

User Reports

Auditing

Fraud Detection

Page 17: Unifying two Extremes€¦ · EAM & Microservices Unifying two Extremes Roger E. Rhoades 13.06.2018, Wien 13.06.2018 1

Agenda

13.06.2018 17

Enterprise Architecture Management (EAM)

Microservices

Unifying EAM& Microservices

Page 18: Unifying two Extremes€¦ · EAM & Microservices Unifying two Extremes Roger E. Rhoades 13.06.2018, Wien 13.06.2018 1

13.06.2018 18

EAM & MicroservicesTwo Extremes

EAM Microservices

Page 19: Unifying two Extremes€¦ · EAM & Microservices Unifying two Extremes Roger E. Rhoades 13.06.2018, Wien 13.06.2018 1

Strategy Planning

13.06.2018 19

Tools used from Strategy to Execution

Scaled Agile Framework

Value Stream Mapping

Products & Services

Product PortfolioMgmt

Product CatalogMgmt

Product Design &Development

Service Quality

Capability-Based Planning

Operating Model Domain-Driven Design

Road-Mapping Microservices

Page 20: Unifying two Extremes€¦ · EAM & Microservices Unifying two Extremes Roger E. Rhoades 13.06.2018, Wien 13.06.2018 1

13.06.2018 20

Business Capabilities

Business Capabilities link strategy to execution

Why HowWhat

Vision & StrategyBusiness

CapabilityExecution

Page 21: Unifying two Extremes€¦ · EAM & Microservices Unifying two Extremes Roger E. Rhoades 13.06.2018, Wien 13.06.2018 1

13.06.2018 21

From Business Strategy to Microservices (abbreviated)

Vision & Strategy ExecutionBusiness

Capability

Microservices can / should implement lower-level business capabilities

Why HowWhat

Reimbursement

Capability

Reimbursement Microservice

Win Business Customers

Page 22: Unifying two Extremes€¦ · EAM & Microservices Unifying two Extremes Roger E. Rhoades 13.06.2018, Wien 13.06.2018 1

Mapping Business Capabilities to Microservices

13.06.2018 22

Expense Management

Request & Approval Expense Capture

Policy Compliance

Reimbursement

DisputeManagement

Credit CardCapture

Mobile PhoneCapture

Manual Entry

Mileage Tracking

...

Policy ComplianceMicroservice

Request & Approval Feature

Expense Capture Feature

Reimbursement Microservice

Dispute Microservice

Credit Card Capture Microservice

Mobile Phone Capture

Microservice

Manual Entry Microservice

Mileage Tracking Microservice

Page 23: Unifying two Extremes€¦ · EAM & Microservices Unifying two Extremes Roger E. Rhoades 13.06.2018, Wien 13.06.2018 1

13.06.2018 23

From Business Strategy to Microservices (extended)

BusinessGoals & Strategy

Target Business Capabilities

6P TargetOperating Model

People

Process

Partner

Policy

Property

Platform (IT)

IT CapabilitiesIT FeaturesMicroservices

IT Epics Roadmap

Target

Meet in the Middle, i.e.:1) Derive the microservices from the strategy2) Update your capability map based on

newly implemented microservices

Page 24: Unifying two Extremes€¦ · EAM & Microservices Unifying two Extremes Roger E. Rhoades 13.06.2018, Wien 13.06.2018 1

13.06.2018 24

Danke für Ihre Aufmerksamkeit!

Fragen?

Roger E. RhoadesTrainer, Berater

[email protected]+49 152 53 44 33 55

www.albionacademy.com