SlideShare a Scribd company logo
2018 Pivotal DevOps Day_Pivotal 소개 및 세션 아젠다 소개
마이크로서비스 전환 방법론과 사례
김영태
• Cloud Native Applications Journey
• Domain Driven Design
• AppTx Methodology
• Liberty Mutual Case
Agenda
Part 1
Cloud Native Applications Journey
© Copyright 2017 Pivotal Software, Inc. All rights Reserved.
Technical Filter
Type (ex. COTS, ISV), Suitability Factors, etc.
Application Portfolio
Business Filter
Criticality, Risk Tolerance, Change Frequency, etc.
Prioritized Backlog
App Tx Iterative Process
App Patterns PCF
App
Measurement &
Learning
Select top
app in
migration
backlog
Continued
iteration
Create / update patterns,
provide feedback to enhance
filtering and backlog velocity
Application
Transformation
Funnel
Use of tooling and templates
to quickly make effective
candidate selection,
constantly prioritize work
and continuously share
feedback to accelerate
future efforts
Technical Triage:
App Foundry
Automated suitability assessment
and decisioning framework.
Currently a closed beta, targeting
GA this fall.
Upload binary or map
to source control Parsers for most common
languages (Java, .NET,
PHP, Ruby, etc.)
Extensible rules (100s
available currently)
UI dashboard to help
triage decisioning
Understanding Your Application Portfolio
TECHNICALCONDITION
BUSINESS VALUEWORSE BETTER
WORSEBETTER
Tolerate Invest
MigrateEliminate
Focus here and start with the most
impactful custom apps built 0 to 7
years ago with supported tech
Understand:
● Technical condition (Y-Axis), e.g.
○ Scalability
○ Performance
● Business value, (X-Axis)e.g.
○ Criticality
○ Competitive advantage
● Operational cost (Size), e.g.
○ License
○ Hardware
● Risk (Color), e.g.
○ Compliance
○ Skill set
Methodology and Techniques
• Portfolio level
goals definition
• Cloud suitability
assessment and
education
• Define OKRs
• Discuss
timeline, staffing,
risk,
dependencies,
etc.
• One-week iterations
• Hands-on code within 2-3 days
• 1s to 10s of apps moved in 1s of
weeks
• Working code used to inform a
cookbook of patterns
Product Backlog
(Pivotal Tracker)
Boris
Event
Storming
OKRs
Slice
Analysis
Snap /
SnapE
Patterns
ScopingDiscovery
Ongoing Delivery Cycle
Value
Stream
Fixed Timeline Engagement
Supported by a Paired Team
Part 2
Domain Driven Design
© Copyright 2017 Pivotal Software, Inc. All rights Reserved.
“...the real breakthrough of object
design comes when the code expresses
the concepts of a model.”
“Anyone responsible for changing code
must learn to express a model through
the code. Every developer must be
involved in some level of discussion
about the model and have contact with
domain experts.”
- Eric Evans, Domain-Driven Design
Domain-Driven Design
“In the end the code is the model and the
model is the code.” - Vaughn Vernon,
Domain-Driven Design Distilled
As opposed to:
1. Business Overview
1.1 Requirement
This interface is used to send Sched CGO
messages from SHIP-PRO to ODS. SHIP-PRO will
send the SyncSCHD_CGO BO to MBS and MBS
will push the data to ODS as
SCHD_CGO_WRAPPER BO.
This interface will also be added to the AMS view
for monitoring.
Domain Driven Design
Aggregates
AGGREGATES mark off the scope
within which invariants have to be
maintained at every stage of the
lifecycle
● Transactional Boundary
● Public access only via the
Aggregate Root
“Generally speaking, there is a correspondence of one team per BOUNDED CONTEXT. One team can maintain
multiple BOUNDED CONTEXTS, but it is hard … for multiple teams to work on one together.” - Evans
Bounded Context
Vaughn Vernon, Domain-Driven Design Distilled
Event Driven Architecture
Part 3
AppTx Methodology
© Copyright 2017 Pivotal Software, Inc. All rights Reserved.
Working Code
Slices
Patterns
OKRs
Event Storming
Boris
SnapE
Implementation
rinse&repeat
OKRs
Ambitious
Where to?
Objectives
Key Results
+
-increase
decrease%
#
Are we going
the right
way?
AppTx
70 - 80%
Config Customer Test
Environment Quicker
Incrementally Handle
PROD traffic
Create Guidance for App
Transformation
1 Process state migrated
to PCF
1 State transition from
PCF to legacy env.
Reduce manual steps by
25%
Setup & complete
< 2 day
Reduce # of tools used
by 1/3
1 Central cookbook of
transformation recipes
5 Testing guidelines
10 Spring Boot templates
Mission: Reduce time to onboard new customers
Could Measure Should Measure
Objectives Key Results
brainstorm
brainstorm decide
order
define
Objective
Objective
Objective
Monitor by Status and Confidence
OKRs
Event Storming
Simple Tools
Discount
Bounded Context
Show
Payment
Payment
Movie
Venue
Movie
Chosen
Date
Chosen
Venue
Chosen
Seat
Chosen
Payment
Started
Discount
Code
Entered
Card
Payment
Chosen
Payment
Complet
ed
Ticket
Purchas
ed
!
Domain
Event
Relevant Business Event
“Seat Chosen”, “Ticket Purchased”
Aggregate
Brains
Accepts Actions / Generates “Events”
Partner
Venue
Chosen
3rd
Party
Coupon
Entered
Mobile
Payment
Chosen
3rd
Party
Payment
Chosen
Slice candidate
?
2018 Pivotal DevOps Day_Pivotal 소개 및 세션 아젠다 소개
OKRs
Event Storming
Boris
More Tools
Service
Service based on Context
Payment Service”
Queue
Message Queue
“Seat Request”
UI External
Link to External
System
Service
Service
Service
Service
Service
Service
Ext
Ext
Q
Q
Q
UI
UI
2018 Pivotal DevOps Day_Pivotal 소개 및 세션 아젠다 소개
Inform Architecture Event Flow
Contexts to µService API Discovery
Scenario Modeling Orchestration to
Choreography
Validate Slice
Candidate
Fill the Backlog
OKRs
Event Storming
Boris
SnapE
SnapE
API
Data Source /
Storage
UI Risks
Stories
Rabbit
MQ
REST /
JSON
CICS
GW
Other
Purchase
History
AdminUI
Dependent
On...
GET
/purchasesGET
/purchasesGET
/purchases
2018 Pivotal DevOps Day_Pivotal 소개 및 세션 아젠다 소개
OKRs
Event Storming
Boris
SnapE
Implementation
Pivotal Tracker
© Copyright 2018 Pivotal Software, Inc. All rights reserved.
Requirements from Snap-E are managed in Pivotal
Tracker
Everyone on the team has access to the tool and can
at any time see what the team is working on.
We break work down into small, granular user stories
that have user value.
We stack rank the stories so that the highest priority
and highest value things are at the top.
We release frequently to keep feedback loops short in
order to learn if our product is on the right track.
Commit Code Change
Automate Build, Test,
Deploy
Store Binaries & Build
Artifacts
Deploy, UAT, Stage App
Zero Downtime
Upgrade to Production
SampleTool
Chain
Gitlab ArtifactoryConcourse
Pivotal HA
Services
(API
Driven)
Build pipeline that automates
smoke, acceptance, unit and
integration tests as feasible
SDLC space
promotion driven by
automated process
Patching and
upgrades fulfilled on a
rolling basis with zero
downtime
</>
Clean up SCC,
dependency and config
mgmt, tweak code and
address other 12-factor
concerns as needed
Automate the Release Pipeline
Various Patterns for Microservices
API Gateway, Edge
Server, B4FFInverse Conway
Event Shunting ACL, Context
Mapping, Strangler
Bridge, Router,
Proxy, Facade
Eventual
Consistency, Sagas,
ESB >> microservices
Tool Case by icons producer is licensed under CC 3.0
Cookbooks
Reusable patterns are documented as cookbooks to
be reused by other developers
Learn techniques for identifying problem areas,
decomposing monolithic apps, and organizing code for
continuous delivery.
Introduce technologies that help you build more
maintainable, adaptable systems.
Get access to playbooks and blueprints used by
dozens of enterprises to build a long-lasting practice
around app transformation.
Working Code
Slices
Patterns
OKRs
Event Storming
Boris
SnapE
Implementation
rinse&repeat
Direction / Stay on Track Business Flow / Potential Slices
Event Flow/ Inform Architecture
Size / Risk
Repeatable Recipes
Part 4
Liberty Mutual Case
© Copyright 2017 Pivotal Software, Inc. All rights Reserved.
Liberty Mutual’s Experiences with...
• Conway’s Law
• Entropy
• Breaking Down Monoliths for real
• MSA w/DDD to API-First
Conway’s law holds true
Source: https://martinfowler.com/articles/microservices.html#CharacteristicsOfAMicroserviceArchitecture
“Any organization that designs a system
(defined broadly) will produce a design
whose structure is a copy of the
organization's communication structure.”
- Conway’s Law
Source: http://melconway.com/Home/Conways_Law.html
Entropy always tends to increase within monoliths
Source: http://facstaff.gpc.edu/~mkim/C1211&1212Lec/C1212_Lecture.htm
Logical Separation Physical Separation
Decoupled UI
Microservices
Architecture
Before After *
* one aggregate
Deconstructing monolithic databases
API-First
Thank you.

More Related Content

PDF
2018 Pivotal DevOps Day_DevOps 플랫폼 소개 및 데모 (Pivotal Application Service, Pivo...
PDF
굿 소프트웨어 컴퍼니로의 여정(Journey To Be a Good Software Company)
PPTX
Netflix MSA and Pivotal
PDF
2018 Pivotal DevOps Day_DevOps 플랫폼 팀 육성/운영 사례
PDF
LIVE DEMO: Pivotal Cloud Foundry
PDF
Tools and Recipes to Replatform Monolithic Apps to Modern Cloud Environments
PDF
How to Scale Operations for a Multi-Cloud Platform using PCF
PPTX
Microsoft Cloud-Native Workshop Slides
2018 Pivotal DevOps Day_DevOps 플랫폼 소개 및 데모 (Pivotal Application Service, Pivo...
굿 소프트웨어 컴퍼니로의 여정(Journey To Be a Good Software Company)
Netflix MSA and Pivotal
2018 Pivotal DevOps Day_DevOps 플랫폼 팀 육성/운영 사례
LIVE DEMO: Pivotal Cloud Foundry
Tools and Recipes to Replatform Monolithic Apps to Modern Cloud Environments
How to Scale Operations for a Multi-Cloud Platform using PCF
Microsoft Cloud-Native Workshop Slides

What's hot (20)

PDF
How to Overcome Data Challenges When Refactoring Monoliths to Microservices
PPTX
Microservices - Event-driven & the hidden landmines
PDF
Java Application Modernization Patterns and Stories from the IBM Garage
PDF
LIVE DEMO: Pivotal Cloud Foundry
PDF
Pivotal Cloud Foundry: A Technical Overview
PDF
CF Push for Beginners
PDF
Pivotal Developer-Ready Infrastructure Slides
PDF
Upgrade your InfoSec, Ops and Dev teams with PCF 1.12
PDF
Pivotal Cloud Foundry: A Technical Overview
PDF
Accelerate Digital Transformation with Pivotal Cloud Foundry on Azure
PDF
Pivotal Cloud Foundry 1.10: First Look - Windows at Scale, Network Isolation
PDF
API Microservices with Node.js and Docker
PDF
PKS: The What and How of Enterprise-Grade Kubernetes
PDF
Microservice Scars - Alt.net 2hr
PPTX
Adopting Azure, Cloud Foundry and Microservice Architecture at Merrill Corpor...
PDF
Pivotal Cloud Foundry 2.1: Making Transformation Real Webinar
PDF
I Segreti per Modernizzare con Successo le Applicazioni (Pivotal Cloud-Native...
PPTX
Cloud-Native Workshop New York- Pivotal
PDF
Lo Scenario Cloud-Native (Pivotal Cloud-Native Workshop: Milan)
PDF
Four Steps Toward a Safer Continuous Delivery Practice (Hint: Add Monitoring)
How to Overcome Data Challenges When Refactoring Monoliths to Microservices
Microservices - Event-driven & the hidden landmines
Java Application Modernization Patterns and Stories from the IBM Garage
LIVE DEMO: Pivotal Cloud Foundry
Pivotal Cloud Foundry: A Technical Overview
CF Push for Beginners
Pivotal Developer-Ready Infrastructure Slides
Upgrade your InfoSec, Ops and Dev teams with PCF 1.12
Pivotal Cloud Foundry: A Technical Overview
Accelerate Digital Transformation with Pivotal Cloud Foundry on Azure
Pivotal Cloud Foundry 1.10: First Look - Windows at Scale, Network Isolation
API Microservices with Node.js and Docker
PKS: The What and How of Enterprise-Grade Kubernetes
Microservice Scars - Alt.net 2hr
Adopting Azure, Cloud Foundry and Microservice Architecture at Merrill Corpor...
Pivotal Cloud Foundry 2.1: Making Transformation Real Webinar
I Segreti per Modernizzare con Successo le Applicazioni (Pivotal Cloud-Native...
Cloud-Native Workshop New York- Pivotal
Lo Scenario Cloud-Native (Pivotal Cloud-Native Workshop: Milan)
Four Steps Toward a Safer Continuous Delivery Practice (Hint: Add Monitoring)
Ad

Similar to 2018 Pivotal DevOps Day_Pivotal 소개 및 세션 아젠다 소개 (20)

PDF
Which Application Modernization Pattern Is Right For You?
PDF
Building Real-Time Gen AI Applications with SingleStore and Confluent
PPTX
xRM - as an Evolution of CRM
PPTX
Challenges of Mobile HR framework and program
PDF
OSSF 2018 - Brandon Jung of GitLab - Is Your DevOps 'Tool Tax' Weighing You D...
PDF
Automating Applications with Habitat - Sydney Cloud Native Meetup
PPT
MOND Semantics Integration
PPTX
Keys to continuous testing for faster delivery euro star webinar
PDF
Platform governance, gestire un ecosistema di microservizi a livello enterprise
PPT
A Software Factory Integrating Rational & WebSphere Tools
PDF
Delivering New Digital Experiences Fast - Introducing Choreo
PDF
Unleashing the Future: Building a Scalable and Up-to-Date GenAI Chatbot with ...
PDF
IBM Collaborative Lifecycle Management Solution for DevOps v6
PPTX
Kochi mulesoft meetup 02
PPTX
7 steps to Enterprise PaaS
PDF
Why Your Digital Transformation Strategy Demands Middleware Modernization
PDF
Sukumar Nayak-Agile-DevOps-Cloud Management
PDF
Cloud Migration: Azure acceleration with CAST Highlight
PPTX
Contino Webinar - Migrating your Trading Workloads to the Cloud
PPTX
MMS2011_BC34_Plas_Final
Which Application Modernization Pattern Is Right For You?
Building Real-Time Gen AI Applications with SingleStore and Confluent
xRM - as an Evolution of CRM
Challenges of Mobile HR framework and program
OSSF 2018 - Brandon Jung of GitLab - Is Your DevOps 'Tool Tax' Weighing You D...
Automating Applications with Habitat - Sydney Cloud Native Meetup
MOND Semantics Integration
Keys to continuous testing for faster delivery euro star webinar
Platform governance, gestire un ecosistema di microservizi a livello enterprise
A Software Factory Integrating Rational & WebSphere Tools
Delivering New Digital Experiences Fast - Introducing Choreo
Unleashing the Future: Building a Scalable and Up-to-Date GenAI Chatbot with ...
IBM Collaborative Lifecycle Management Solution for DevOps v6
Kochi mulesoft meetup 02
7 steps to Enterprise PaaS
Why Your Digital Transformation Strategy Demands Middleware Modernization
Sukumar Nayak-Agile-DevOps-Cloud Management
Cloud Migration: Azure acceleration with CAST Highlight
Contino Webinar - Migrating your Trading Workloads to the Cloud
MMS2011_BC34_Plas_Final
Ad

More from VMware Tanzu Korea (20)

PDF
꿀밋업시리즈3탄_Spring Boot를 활용한 마이크로서비스 개발과 페어프로그래밍(TDD)
PDF
꿀밋업2탄_도메인 모델에 따른 데이터 분리 저장과 API 연결
PDF
꿀밋업1탄_왜_마이크로서비스인가
PDF
2018 Pivotal DevOps Day_마이크로서비스 전환 방법론과 사례
PDF
Pivotal Concourse를 활용한 CI/CD pipeline automated build-up & Workflow managemen...
PDF
숨겨진 마이크로서비스: 초고속 응답과 고가용성을 위한 캐시 서비스 디자인
PDF
클라우드 네이티브 플랫폼의 미래 - Kubernetes 기반의 PCF 로드맵
PDF
MSA 전략 2: 마이크로서비스, 어떻게 구현할 것인가?
PDF
MSA 전략 1: 마이크로서비스, 어떻게 디자인 할 것인가?
PDF
클라우드 네이티브 IT를 위한 4가지 요소와 상관관계 - DevOps, CI/CD, Container, 그리고 MSA
PDF
Pivotal 101세미나 발표자료 (PAS,PKS)
PDF
Pivotal Labs 고객사례 - Coinone
PPTX
Spring Project와 최신 Pivotal Cloud Foundry 업데이트
PDF
클라우드 네이티브로의 전환을 위한 여정
PDF
Cloud native enterprise
PDF
gp text roadmap presentation
PDF
GPCloud ( GP on PKS)
PDF
Gemfire Introduction
PDF
Greenplum User Case
PDF
Greenplum Roadmap
꿀밋업시리즈3탄_Spring Boot를 활용한 마이크로서비스 개발과 페어프로그래밍(TDD)
꿀밋업2탄_도메인 모델에 따른 데이터 분리 저장과 API 연결
꿀밋업1탄_왜_마이크로서비스인가
2018 Pivotal DevOps Day_마이크로서비스 전환 방법론과 사례
Pivotal Concourse를 활용한 CI/CD pipeline automated build-up & Workflow managemen...
숨겨진 마이크로서비스: 초고속 응답과 고가용성을 위한 캐시 서비스 디자인
클라우드 네이티브 플랫폼의 미래 - Kubernetes 기반의 PCF 로드맵
MSA 전략 2: 마이크로서비스, 어떻게 구현할 것인가?
MSA 전략 1: 마이크로서비스, 어떻게 디자인 할 것인가?
클라우드 네이티브 IT를 위한 4가지 요소와 상관관계 - DevOps, CI/CD, Container, 그리고 MSA
Pivotal 101세미나 발표자료 (PAS,PKS)
Pivotal Labs 고객사례 - Coinone
Spring Project와 최신 Pivotal Cloud Foundry 업데이트
클라우드 네이티브로의 전환을 위한 여정
Cloud native enterprise
gp text roadmap presentation
GPCloud ( GP on PKS)
Gemfire Introduction
Greenplum User Case
Greenplum Roadmap

Recently uploaded (20)

PDF
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PDF
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
PPTX
Online Work Permit System for Fast Permit Processing
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PPTX
ISO 45001 Occupational Health and Safety Management System
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PDF
System and Network Administraation Chapter 3
PPTX
Odoo POS Development Services by CandidRoot Solutions
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PDF
Softaken Excel to vCard Converter Software.pdf
PDF
PTS Company Brochure 2025 (1).pdf.......
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PDF
System and Network Administration Chapter 2
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PDF
AI in Product Development-omnex systems
PPTX
CHAPTER 2 - PM Management and IT Context
PPTX
ai tools demonstartion for schools and inter college
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
Wondershare Filmora 15 Crack With Activation Key [2025
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
Online Work Permit System for Fast Permit Processing
Internet Downloader Manager (IDM) Crack 6.42 Build 41
ISO 45001 Occupational Health and Safety Management System
Operating system designcfffgfgggggggvggggggggg
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
System and Network Administraation Chapter 3
Odoo POS Development Services by CandidRoot Solutions
Odoo Companies in India – Driving Business Transformation.pdf
Softaken Excel to vCard Converter Software.pdf
PTS Company Brochure 2025 (1).pdf.......
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
System and Network Administration Chapter 2
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
AI in Product Development-omnex systems
CHAPTER 2 - PM Management and IT Context
ai tools demonstartion for schools and inter college

2018 Pivotal DevOps Day_Pivotal 소개 및 세션 아젠다 소개

  • 3. • Cloud Native Applications Journey • Domain Driven Design • AppTx Methodology • Liberty Mutual Case Agenda
  • 4. Part 1 Cloud Native Applications Journey © Copyright 2017 Pivotal Software, Inc. All rights Reserved.
  • 5. Technical Filter Type (ex. COTS, ISV), Suitability Factors, etc. Application Portfolio Business Filter Criticality, Risk Tolerance, Change Frequency, etc. Prioritized Backlog App Tx Iterative Process App Patterns PCF App Measurement & Learning Select top app in migration backlog Continued iteration Create / update patterns, provide feedback to enhance filtering and backlog velocity Application Transformation Funnel Use of tooling and templates to quickly make effective candidate selection, constantly prioritize work and continuously share feedback to accelerate future efforts
  • 6. Technical Triage: App Foundry Automated suitability assessment and decisioning framework. Currently a closed beta, targeting GA this fall. Upload binary or map to source control Parsers for most common languages (Java, .NET, PHP, Ruby, etc.) Extensible rules (100s available currently) UI dashboard to help triage decisioning
  • 7. Understanding Your Application Portfolio TECHNICALCONDITION BUSINESS VALUEWORSE BETTER WORSEBETTER Tolerate Invest MigrateEliminate Focus here and start with the most impactful custom apps built 0 to 7 years ago with supported tech Understand: ● Technical condition (Y-Axis), e.g. ○ Scalability ○ Performance ● Business value, (X-Axis)e.g. ○ Criticality ○ Competitive advantage ● Operational cost (Size), e.g. ○ License ○ Hardware ● Risk (Color), e.g. ○ Compliance ○ Skill set
  • 8. Methodology and Techniques • Portfolio level goals definition • Cloud suitability assessment and education • Define OKRs • Discuss timeline, staffing, risk, dependencies, etc. • One-week iterations • Hands-on code within 2-3 days • 1s to 10s of apps moved in 1s of weeks • Working code used to inform a cookbook of patterns Product Backlog (Pivotal Tracker) Boris Event Storming OKRs Slice Analysis Snap / SnapE Patterns ScopingDiscovery Ongoing Delivery Cycle Value Stream Fixed Timeline Engagement Supported by a Paired Team
  • 9. Part 2 Domain Driven Design © Copyright 2017 Pivotal Software, Inc. All rights Reserved.
  • 10. “...the real breakthrough of object design comes when the code expresses the concepts of a model.” “Anyone responsible for changing code must learn to express a model through the code. Every developer must be involved in some level of discussion about the model and have contact with domain experts.” - Eric Evans, Domain-Driven Design Domain-Driven Design
  • 11. “In the end the code is the model and the model is the code.” - Vaughn Vernon, Domain-Driven Design Distilled As opposed to: 1. Business Overview 1.1 Requirement This interface is used to send Sched CGO messages from SHIP-PRO to ODS. SHIP-PRO will send the SyncSCHD_CGO BO to MBS and MBS will push the data to ODS as SCHD_CGO_WRAPPER BO. This interface will also be added to the AMS view for monitoring. Domain Driven Design
  • 12. Aggregates AGGREGATES mark off the scope within which invariants have to be maintained at every stage of the lifecycle ● Transactional Boundary ● Public access only via the Aggregate Root
  • 13. “Generally speaking, there is a correspondence of one team per BOUNDED CONTEXT. One team can maintain multiple BOUNDED CONTEXTS, but it is hard … for multiple teams to work on one together.” - Evans Bounded Context
  • 14. Vaughn Vernon, Domain-Driven Design Distilled Event Driven Architecture
  • 15. Part 3 AppTx Methodology © Copyright 2017 Pivotal Software, Inc. All rights Reserved.
  • 17. OKRs
  • 19. Config Customer Test Environment Quicker Incrementally Handle PROD traffic Create Guidance for App Transformation 1 Process state migrated to PCF 1 State transition from PCF to legacy env. Reduce manual steps by 25% Setup & complete < 2 day Reduce # of tools used by 1/3 1 Central cookbook of transformation recipes 5 Testing guidelines 10 Spring Boot templates Mission: Reduce time to onboard new customers
  • 20. Could Measure Should Measure Objectives Key Results brainstorm brainstorm decide order define Objective Objective Objective
  • 21. Monitor by Status and Confidence
  • 24. Discount Bounded Context Show Payment Payment Movie Venue Movie Chosen Date Chosen Venue Chosen Seat Chosen Payment Started Discount Code Entered Card Payment Chosen Payment Complet ed Ticket Purchas ed ! Domain Event Relevant Business Event “Seat Chosen”, “Ticket Purchased” Aggregate Brains Accepts Actions / Generates “Events” Partner Venue Chosen 3rd Party Coupon Entered Mobile Payment Chosen 3rd Party Payment Chosen Slice candidate ?
  • 28. Service Service based on Context Payment Service” Queue Message Queue “Seat Request” UI External Link to External System Service Service Service Service Service Service Ext Ext Q Q Q UI UI
  • 30. Inform Architecture Event Flow Contexts to µService API Discovery Scenario Modeling Orchestration to Choreography Validate Slice Candidate Fill the Backlog
  • 32. SnapE API Data Source / Storage UI Risks Stories Rabbit MQ REST / JSON CICS GW Other Purchase History AdminUI Dependent On... GET /purchasesGET /purchasesGET /purchases
  • 35. Pivotal Tracker © Copyright 2018 Pivotal Software, Inc. All rights reserved. Requirements from Snap-E are managed in Pivotal Tracker Everyone on the team has access to the tool and can at any time see what the team is working on. We break work down into small, granular user stories that have user value. We stack rank the stories so that the highest priority and highest value things are at the top. We release frequently to keep feedback loops short in order to learn if our product is on the right track.
  • 36. Commit Code Change Automate Build, Test, Deploy Store Binaries & Build Artifacts Deploy, UAT, Stage App Zero Downtime Upgrade to Production SampleTool Chain Gitlab ArtifactoryConcourse Pivotal HA Services (API Driven) Build pipeline that automates smoke, acceptance, unit and integration tests as feasible SDLC space promotion driven by automated process Patching and upgrades fulfilled on a rolling basis with zero downtime </> Clean up SCC, dependency and config mgmt, tweak code and address other 12-factor concerns as needed Automate the Release Pipeline
  • 37. Various Patterns for Microservices API Gateway, Edge Server, B4FFInverse Conway Event Shunting ACL, Context Mapping, Strangler Bridge, Router, Proxy, Facade Eventual Consistency, Sagas, ESB >> microservices Tool Case by icons producer is licensed under CC 3.0
  • 38. Cookbooks Reusable patterns are documented as cookbooks to be reused by other developers Learn techniques for identifying problem areas, decomposing monolithic apps, and organizing code for continuous delivery. Introduce technologies that help you build more maintainable, adaptable systems. Get access to playbooks and blueprints used by dozens of enterprises to build a long-lasting practice around app transformation.
  • 39. Working Code Slices Patterns OKRs Event Storming Boris SnapE Implementation rinse&repeat Direction / Stay on Track Business Flow / Potential Slices Event Flow/ Inform Architecture Size / Risk Repeatable Recipes
  • 40. Part 4 Liberty Mutual Case © Copyright 2017 Pivotal Software, Inc. All rights Reserved.
  • 41. Liberty Mutual’s Experiences with... • Conway’s Law • Entropy • Breaking Down Monoliths for real • MSA w/DDD to API-First
  • 42. Conway’s law holds true Source: https://martinfowler.com/articles/microservices.html#CharacteristicsOfAMicroserviceArchitecture “Any organization that designs a system (defined broadly) will produce a design whose structure is a copy of the organization's communication structure.” - Conway’s Law Source: http://melconway.com/Home/Conways_Law.html
  • 43. Entropy always tends to increase within monoliths Source: http://facstaff.gpc.edu/~mkim/C1211&1212Lec/C1212_Lecture.htm
  • 47. Before After * * one aggregate Deconstructing monolithic databases