SlideShare a Scribd company logo
MICRO SERVICES AND MACRO
ECONOMICS - A SHORT HISTORY
HOW DID WE GET HERE?
WHAT CAME BEFORE ..TO BUILD
THE HISTORY OF STRUCTURE
ā–ø ā€œthe quality of being organised"
WHAT CAME BEFORE ..TO BUILD
THE HISTORY OF STRUCTURE
ā–ø ā€œthe quality of being organised"
ā–ø Programming-in-the-large versus programming-in-the-
small (Hans Kron and Frank DeRemer 1975)
WHAT CAME BEFORE ..TO BUILD
THE HISTORY OF STRUCTURE
ā–ø ā€œthe quality of being organised"
ā–ø Programming-in-the-large versus programming-in-the-
small (Hans Kron and Frank DeRemer 1975)
ā–ø We distinguish the activity of writing large programs from
that of writing small ones. By large programs we mean
systems consisting of many small programs (ā€œmodulesā€)
written by different people, possibly in different
languages.
WHAT CAME BEFORE ..TO BUILD
THE HISTORY OF STRUCTURE
ā–ø ā€œthe quality of being organised"
ā–ø Programming-in-the-large versus programming-in-the-
small (Hans Kron and Frank DeRemer 1975)
ā–ø We distinguish the activity of writing large programs from
that of writing small ones. By large programs we mean
systems consisting of many small programs (ā€œmodulesā€)
written by different people, possibly in different
languages.
ā–ø Module Interconnection language
2016
MODULES!1976
MICRO
SERVICES!
WHAT HAVE WE
LEARNT IN 40 YEARS?
COMPUTER ENGINEERING VS COMPUTER SCIENCE
ā–ø Definitions
ā–ø Computer science is the study of the principles and use of
computers.
COMPUTER ENGINEERING VS COMPUTER SCIENCE
ā–ø Definitions
ā–ø Computer science is the study of the principles and use of
computers.
ā–ø Computer engineering is a discipline that integrates
several fields of electrical engineering and computer
science required to develop computer hardware and
software.
COMPUTER ENGINEERING VS COMPUTER SCIENCE
ā–ø Definitions
ā–ø Computer science is the study of the principles and use of
computers.
ā–ø Computer engineering is a discipline that integrates
several fields of electrical engineering and computer
science required to develop computer hardware and
software.
ā–ø Module Interaction Language
COMPUTER ENGINEERING VS COMPUTER SCIENCE
ā–ø Definitions
ā–ø Computer science is the study of the principles and use of
computers.
ā–ø Computer engineering is a discipline that integrates
several fields of electrical engineering and computer
science required to develop computer hardware and
software.
ā–ø Module Interaction Language
ā–ø Representational State Transfer application programming
interface, RESTful API
THE NATURAL WAY OF THINGS - REWINDING THE TAPE OF SOFTWARE
ā–ø Copes rule
ā–ø ā€œā€¦.over the past 542 million years, the mean size of
marine animals has increased 150-fold.ā€
Jonathan Payne, a paleobiologist at Stanford School of Earth, Energy & Environmental Sciences
Microservices Manchester: Microservices and Macro-Economics - A Shorty History By Marco Cullen
THE NATURAL WAY OF THINGS - REWINDING THE TAPE OF SOFTWARE
ā–ø Copes rule
ā–ø ā€œā€¦.over the past 542 million years, the mean size of
marine animals has increased 150-fold.ā€
ā–ø ā€œFor reasons that we don’t completely understand, the
classes with large body size appear to be the ones that
over time have become differentially more diverse.ā€
Jonathan Payne, a paleobiologist at Stanford School of Earth, Energy & Environmental Sciences
THE NATURAL WAY OF THINGS - REWINDING THE TAPE OF SOFTWARE
ā–ø Copes rule
ā–ø ā€œā€¦.over the past 542 million years, the mean size of
marine animals has increased 150-fold.ā€
ā–ø ā€œFor reasons that we don’t completely understand, the
classes with large body size appear to be the ones that
over time have become differentially more diverse.ā€
ā–ø ā€œIt’s really a story of the survival and diversification of big
things relative to small thingsā€
Jonathan Payne, a paleobiologist at Stanford School of Earth, Energy & Environmental Sciences
ENSURING SUCCESS
FROM HUTS TO HOUSES
A LORD A FOREMAN AN ARTISAN
3 PROPERTIES THAT SUCCESSFUL PROJECTS OFTEN SHARE
ā–ø Person of authority
ā–ø Process
ā–ø Technical authorship through expertise and experience
Harvard Business School - ā€˜ā€¦Factors common to successful projects’
A LORD A FOREMAN AN ARTISAN
3 PROPERTIES THAT SUCCESSFUL PROJECTS OFTEN SHARE
ā–ø …. a project will not fail because of the type of tools used
or the type of methodology employed
Harvard Business School - ā€˜ā€¦Factors common to successful projects’
A LORD A FOREMAN AN ARTISAN
3 PROPERTIES THAT SUCCESSFUL PROJECTS OFTEN SHARE
Citation Frequency
Clear requirements and specifications 60.5
Clear objectives and goals 55.8
Realistic schedule 53.5
Effective project management skills - PM 53.5
Support from top management 51.2
User/client involvement and feedback 46.5
Realistic budget 46.5
Skilled and sufficient staff 44.2
Frozen requirement 41.9
Critical success factors for software projects: A comparative study
WHY CANT WE MAKE
SOFTWARE LIKE WE MAKE
HOUSES?
…THERE WERE
PROBLEMS
WE TRIED…….
EVOLUTIONARY ARCHITECTURE
ITS MORE THAN JUST A HOUSE
INSPIRATION FROM NATURE
ā–ø Cellular
ā–ø Iterative
ā–ø Specialised
ā–ø Bounded
ā–ø Obligated
DOMAIN DRIVEN
DESIGN
CONTRACT DRIVENDESIGN
BOUNDED
FUNCTIONAL CONTEXT
AND SCALE
MICRO SERVICES, DESIGN
DESIGN DESIGN DESIGN.. HOW DOES MICRO SERVICES FIT IN?
ā–ø Service can be defined as
ā–ø domain bounded
ā–ø contract bounded
DESIGN DESIGN DESIGN.. HOW DOES MICRO SERVICES FIT IN?
ā–ø Service can be defined as
ā–ø domain bounded
ā–ø contract bounded
ā–ø This has desirable scaling properties relative to…
HOW LONG IS A
PIECE OF SPRINT
ARE YOU USING
DOCKER?
WHAT’S A REAL
MAN DAY?
IS THAT MY SIZE? IT FITS PERFECTLY
ā–ø LOC output varies by 2 orders of magnitude
ā–ø a 1000 lines / dev-weak
ā–ø a 1000 lines / dev-year [Windows 95]
ā–ø There is a wide range of productivity between projects
ā–ø What influences or contributes to this?
ā–ø http://martinfowler.com/bliki/
CannotMeasureProductivity.html
IS THAT MY SIZE? IT FITS PERFECTLY
ā–ø Why is productivity hard to measure
IS THAT MY SIZE? IT FITS PERFECTLY
ā–ø Why is productivity hard to measure
ā–ø There is no definition that captures holistically the value
in a way that is both relevant to the client and to the
business.
IS THAT MY SIZE? IT FITS PERFECTLY
ā–ø Why is productivity hard to measure
ā–ø There is no definition that captures holistically the value
in a way that is both relevant to the client and to the
business.
ā–ø People agree functionality points are quite good but
they don’t relate the value of what was delivered to the
business with a view to future work, i.e. was their
duplication, can we re-use?
IS THAT MY SIZE? IT FITS PERFECTLY
ā–ø Why is productivity hard to measure
ā–ø There is no definition that captures holistically the value
in a way that is both relevant to the client and to the
business.
ā–ø People agree functionality points are quite good but
they don’t relate the value of what was delivered to the
business with a view to future work, i.e. was their
duplication, can we re-use?
ā–ø Lets focus on process and maybe we get productivity?
INSPIRATION FROM NATURE
ā–ø Cellular
ā–ø Iterative
ā–ø Specialised
ā–ø Bounded
ā–ø Obligated
DOMAIN DRIVEN
DESIGN
CONTRACT DRIVENDESIGN
BOUNDED
FUNCTIONAL CONTEXT
WHO KNOWS WHAT
ā–ø I know what i know, but not what he knows
ā–ø Heterogeneous structures require specialisation
ā–ø Different components evolve at different speeds
ā–ø How do we on board and off board specialist
knowledge?
ā–ø Do i have to know what he knows to do what i know?
INSPIRATION FROM NATURE
ā–ø Cellular
ā–ø Iterative
ā–ø Specialised
ā–ø Bounded
ā–ø Obligated
DOMAIN DRIVEN
DESIGN
CONTRACT DRIVENDESIGN
BOUNDED
FUNCTIONAL CONTEXT
A MACRO IMPACT
MICRO SERVICES
WHATS AFFECTED
ā–ø Business interaction modalities
ā–ø daily routines - scrum, standup
ā–ø time and length of interactions
ā–ø Processes and benchmarks
ā–ø New processes to deliver functioning software at a high rate of mutation -
Dev/Ops
ā–ø New automated methods for ensuring adherence to function - Acc. Tests
ā–ø Integration - CI/CD
ā–ø New metrics - performance testing* ——- SLA
A MORE NATURAL WAY TO
THINK ORGANISE AND DELIVER
MICRO SERVICES
WHAT IS AFFECTED
ā–ø ..running a micro services project results in various
outcomes which implicitly help project management and
thus the path to delivery
ā–ø Repeatable processes and thus a repeatable product
WHAT IS AFFECTED
ā–ø ..running a micro services project results in various
outcomes which implicitly help project management and
thus the path to delivery
ā–ø Repeatable processes and thus a repeatable product
ā–ø Well defined areas of responsibility, knowledge and
accountability
WHAT IS AFFECTED
ā–ø ..running a micro services project results in various
outcomes which implicitly help project management and
thus the path to delivery
ā–ø Repeatable processes and thus a repeatable product
ā–ø Well defined areas of responsibility, knowledge and
accountability
ā–ø A clear set of interaction modalities between all parties
including the software and people alike!
WHATS NOT AFFECTED
ā–ø … so If my project is a micro services project, it WILL
succeed?
ā–ø methodology and tooling not highly correlated with
success.
A LORD A FOREMAN AN ARTISAN
3 PROPERTIES THAT SUCCESSFUL PROJECTS OFTEN SHARE
Citation Frequency
Clear requirements and specifications 60.5
Clear objectives and goals 55.8
Realistic schedule 53.5
Effective project management skills - PM 53.5
Support from top management 51.2
User/client involvement and feedback 46.5
Realistic budget 46.5
Skilled and sufficient staff 44.2
Frozen requirement 41.9
Critical success factors for software projects: A comparative study
WHATS NOT AFFECTED
ā–ø … so If my project is a micro services project, it WILL
succeed?
ā–ø methodology and tooling not highly correlated with
success.
ā–ø ……they are however strongly correlated with cost*
WHATS NOT AFFECTED
ā–ø … so If my project is a micro services project, it WILL
succeed?
ā–ø methodology and tooling not highly correlated with
success.
ā–ø ……they are however strongly correlated with cost*
ā–ø …but my operational overheads are higher now and i
have duplication of effort, how do i end up saving on
cost?
WHATS IS AFFECTED - THE MACRO OF MICRO
ā–ø Where are my costs reduced
ā–ø Reduction in cost to requirements change
ā–ø changes are often bounded, reducing complexity
ā–ø cross cutting changes are more easily decomposed
ā–ø Late changes cost less - a major contributor to cost
and one of the top 10 reasons related to project
success.
WHATS IS AFFECTED
ā–ø Where are my costs reduced
ā–ø Organisationally now we can deal with a high rate of
mutation
ā–ø Able to change direction with lesser cost impact
relative to more traditional monolithic structures.
ā–ø Synergises at scale with Agile, containerisation and
established developer working and hiring patterns.
WHATS IS AFFECTED - THE MACRO OF MICRO
WHATS IS AFFECTED
ā–ø Where are my costs reduced
ā–ø Working software is one of the best ways to measure
progress.
WHATS IS AFFECTED - THE MACRO OF MICRO
School of Computer Science and software Engineering - The University of Western Australia 2012
WHATS IS AFFECTED
ā–ø Where are my costs reduced
ā–ø Working software is one of the best ways to measure
progress
ā–ø Working software vs effort is 1 measure of productivity
WHATS IS AFFECTED - THE MACRO OF MICRO
School of Computer Science and software Engineering - The University of Western Australia 2012
WHATS IS AFFECTED
ā–ø Where are my costs reduced
ā–ø Working software is one of the best ways to measure
progress
ā–ø Working software vs effort is 1 measure of productivity
ā–ø Micro Services results in working code deployed sooner
than more traditionally linear approaches to product
development.
WHATS IS AFFECTED - THE MACRO OF MICRO
School of Computer Science and software Engineering - The University of Western Australia 2012
A MACRO IMPACT ON YOUR
BUSINESS ECONOMICS
MICRO SERVICES

More Related Content

PDF
BPM2014
Keith Swenson
Ā 
PDF
Project control is not a joke…
Renzo Streglio
Ā 
PDF
Paper mythical manmonth
Vu Hung Nguyen
Ā 
PDF
GOTO LONDON 2016: Concursus Event sourcing Evolved (Updated)
OpenCredo
Ā 
PDF
Haufe #msaday - Seven More Deadly Sins of Microservices by Daniel Bryant
OpenCredo
Ā 
PDF
Voxxed Bristol 2017 - From C to Q, one event at a time: Event Sourcing illust...
OpenCredo
Ā 
PDF
Evolving Project Management: from the sin to the virtue by Antonio Cobo
OpenCredo
Ā 
PDF
ServerlessConf: Serverless for the Enterprise - Rafal Gancarz
OpenCredo
Ā 
BPM2014
Keith Swenson
Ā 
Project control is not a joke…
Renzo Streglio
Ā 
Paper mythical manmonth
Vu Hung Nguyen
Ā 
GOTO LONDON 2016: Concursus Event sourcing Evolved (Updated)
OpenCredo
Ā 
Haufe #msaday - Seven More Deadly Sins of Microservices by Daniel Bryant
OpenCredo
Ā 
Voxxed Bristol 2017 - From C to Q, one event at a time: Event Sourcing illust...
OpenCredo
Ā 
Evolving Project Management: from the sin to the virtue by Antonio Cobo
OpenCredo
Ā 
ServerlessConf: Serverless for the Enterprise - Rafal Gancarz
OpenCredo
Ā 

Viewers also liked (14)

PDF
Vault: Beyond secret storage - Using Vault to harden your infrastructure
OpenCredo
Ā 
PDF
Reactive Microservices By Lorenzo Nicora
OpenCredo
Ā 
PPTX
O'Reilly 2016: "Continuous Delivery with Containers: The Trials and Tribulati...
OpenCredo
Ā 
PDF
Microservices Manchester: Security, Microservces and Vault by Nicki Watt
OpenCredo
Ā 
PDF
Haufe #msaday - Building a Microservice Ecosystem by Daniel Bryant
OpenCredo
Ā 
PDF
High Load Strategy 2016 - Project Management: from Stone Age to DevOps
OpenCredo
Ā 
PDF
A Visual Introduction to Event Sourcing and CQRS by Lorenzo Nicora
OpenCredo
Ā 
PDF
muCon 2016: Authentication in Microservice Systems By David Borsos
OpenCredo
Ā 
PPTX
Microservices Manchester: Authentication in Microservice Systems by David Borsos
OpenCredo
Ā 
PDF
Spring Boot Microservices vs Akka Actor Cluster
OpenCredo
Ā 
PDF
QCON London 2017 - Monitoring Serverless Architectures by Rafal Gancarz
OpenCredo
Ā 
PDF
London Hashicorp Meetup #8 - Testing Programmable Infrastructure By Matt Long
OpenCredo
Ā 
PDF
Haufe #msaday - The Actor model: an alternative approach to concurrency By Lo...
OpenCredo
Ā 
PPTX
ThingMonk 2016 - Concursus Event sourcing for the IOT By Tareq Abedrabbo & Do...
OpenCredo
Ā 
Vault: Beyond secret storage - Using Vault to harden your infrastructure
OpenCredo
Ā 
Reactive Microservices By Lorenzo Nicora
OpenCredo
Ā 
O'Reilly 2016: "Continuous Delivery with Containers: The Trials and Tribulati...
OpenCredo
Ā 
Microservices Manchester: Security, Microservces and Vault by Nicki Watt
OpenCredo
Ā 
Haufe #msaday - Building a Microservice Ecosystem by Daniel Bryant
OpenCredo
Ā 
High Load Strategy 2016 - Project Management: from Stone Age to DevOps
OpenCredo
Ā 
A Visual Introduction to Event Sourcing and CQRS by Lorenzo Nicora
OpenCredo
Ā 
muCon 2016: Authentication in Microservice Systems By David Borsos
OpenCredo
Ā 
Microservices Manchester: Authentication in Microservice Systems by David Borsos
OpenCredo
Ā 
Spring Boot Microservices vs Akka Actor Cluster
OpenCredo
Ā 
QCON London 2017 - Monitoring Serverless Architectures by Rafal Gancarz
OpenCredo
Ā 
London Hashicorp Meetup #8 - Testing Programmable Infrastructure By Matt Long
OpenCredo
Ā 
Haufe #msaday - The Actor model: an alternative approach to concurrency By Lo...
OpenCredo
Ā 
ThingMonk 2016 - Concursus Event sourcing for the IOT By Tareq Abedrabbo & Do...
OpenCredo
Ā 
Ad

Similar to Microservices Manchester: Microservices and Macro-Economics - A Shorty History By Marco Cullen (20)

PDF
The histories of microservices
Steve Upton
Ā 
PPTX
What are microservices
Krunalkumar Rajdip
Ā 
PDF
Microservicessai 141024145932-conversion-gate01 (1)
Michel Habert
Ā 
PDF
Boeing and PLM Program Management and Requirements with Aras
Aras
Ā 
PDF
From dev to ops and beyond - getting it done
Edorian
Ā 
PPT
8 project planning
randhirlpu
Ā 
PDF
Software Engineering Advice from Google's Jeff Dean for Big, Distributed Systems
adrianionel
Ā 
PPTX
Software Engineering Fundamentals in Computer Science
Arti Parab Academics
Ā 
PPTX
(Fall2016)Lecture1.pptx
garkapifye
Ā 
PPTX
Software Engineering Primer
Georg Buske
Ā 
PDF
Spm tutorials
Vinod Kumar
Ā 
PDF
When Should You Consider Meta Architectures
Daniel Cukier
Ā 
PDF
When Should You Consider Meta Architectures
ccsl-usp
Ā 
PPT
OO Development 1 - Introduction to Object-Oriented Development
Randy Connolly
Ā 
PPT
Spm
Suresh Kumar
Ā 
PPT
Bahrs.peter
NASAPMC
Ā 
DOCX
Personality attrib software_arch
Anil Sharma
Ā 
PPTX
Surviving as a Monolith in a Microservices World - by Blair Olynyk, Hyperwallet
Hyperwallet
Ā 
PDF
Software Task Estimation
Venkat Alagarsamy
Ā 
PPTX
Microservices Architecture
Joshua Costa
Ā 
The histories of microservices
Steve Upton
Ā 
What are microservices
Krunalkumar Rajdip
Ā 
Microservicessai 141024145932-conversion-gate01 (1)
Michel Habert
Ā 
Boeing and PLM Program Management and Requirements with Aras
Aras
Ā 
From dev to ops and beyond - getting it done
Edorian
Ā 
8 project planning
randhirlpu
Ā 
Software Engineering Advice from Google's Jeff Dean for Big, Distributed Systems
adrianionel
Ā 
Software Engineering Fundamentals in Computer Science
Arti Parab Academics
Ā 
(Fall2016)Lecture1.pptx
garkapifye
Ā 
Software Engineering Primer
Georg Buske
Ā 
Spm tutorials
Vinod Kumar
Ā 
When Should You Consider Meta Architectures
Daniel Cukier
Ā 
When Should You Consider Meta Architectures
ccsl-usp
Ā 
OO Development 1 - Introduction to Object-Oriented Development
Randy Connolly
Ā 
Spm
Suresh Kumar
Ā 
Bahrs.peter
NASAPMC
Ā 
Personality attrib software_arch
Anil Sharma
Ā 
Surviving as a Monolith in a Microservices World - by Blair Olynyk, Hyperwallet
Hyperwallet
Ā 
Software Task Estimation
Venkat Alagarsamy
Ā 
Microservices Architecture
Joshua Costa
Ā 
Ad

More from OpenCredo (12)

PDF
Webinar - Design Thinking for Platform Engineering
OpenCredo
Ā 
PDF
MuCon 2019: Exploring Your Microservices Architecture Through Network Science...
OpenCredo
Ā 
PDF
Goto Chicago; Journeys To Cloud Native Architecture: Sun, Sea And Emergencies...
OpenCredo
Ā 
PPTX
Mucon 2018: Heuristics for Identifying Microservice Boundaries By Erich Eichi...
OpenCredo
Ā 
PDF
Journeys To Cloud Native Architecture: Sun, Sea And Emergencies - Nicki Watt
OpenCredo
Ā 
PDF
Machine Learning Game Changer for IT - Maartens Lourens
OpenCredo
Ā 
PDF
Kafka Summit 2018: A Journey Building Kafka Connectors - Pegerto Fernandez
OpenCredo
Ā 
PDF
MuCon 2017: A not So(A) Trivial Question by Tareq Abedrabbo
OpenCredo
Ā 
PDF
DevOpsCon Berlin 2017: Project Management from Stone Age to DevOps By Antoni...
OpenCredo
Ā 
PDF
Hashidays London 2017 - Evolving your Infrastructure with Terraform By Nicki ...
OpenCredo
Ā 
PDF
Succeeding with DevOps Transformation - Rafal Gancarz
OpenCredo
Ā 
PDF
Progscon 2017: Serverless Architectures - Rafal Gancarz
OpenCredo
Ā 
Webinar - Design Thinking for Platform Engineering
OpenCredo
Ā 
MuCon 2019: Exploring Your Microservices Architecture Through Network Science...
OpenCredo
Ā 
Goto Chicago; Journeys To Cloud Native Architecture: Sun, Sea And Emergencies...
OpenCredo
Ā 
Mucon 2018: Heuristics for Identifying Microservice Boundaries By Erich Eichi...
OpenCredo
Ā 
Journeys To Cloud Native Architecture: Sun, Sea And Emergencies - Nicki Watt
OpenCredo
Ā 
Machine Learning Game Changer for IT - Maartens Lourens
OpenCredo
Ā 
Kafka Summit 2018: A Journey Building Kafka Connectors - Pegerto Fernandez
OpenCredo
Ā 
MuCon 2017: A not So(A) Trivial Question by Tareq Abedrabbo
OpenCredo
Ā 
DevOpsCon Berlin 2017: Project Management from Stone Age to DevOps By Antoni...
OpenCredo
Ā 
Hashidays London 2017 - Evolving your Infrastructure with Terraform By Nicki ...
OpenCredo
Ā 
Succeeding with DevOps Transformation - Rafal Gancarz
OpenCredo
Ā 
Progscon 2017: Serverless Architectures - Rafal Gancarz
OpenCredo
Ā 

Recently uploaded (20)

PPTX
What-is-the-World-Wide-Web -- Introduction
tonifi9488
Ā 
PDF
Cloud-Migration-Best-Practices-A-Practical-Guide-to-AWS-Azure-and-Google-Clou...
Artjoker Software Development Company
Ā 
PDF
CIFDAQ's Market Wrap : Bears Back in Control?
CIFDAQ
Ā 
PPTX
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
Ā 
PDF
Software Development Methodologies in 2025
KodekX
Ā 
PPTX
cloud computing vai.pptx for the project
vaibhavdobariyal79
Ā 
PPTX
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
Ā 
PPTX
AI in Daily Life: How Artificial Intelligence Helps Us Every Day
vanshrpatil7
Ā 
PDF
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
Ā 
PDF
How-Cloud-Computing-Impacts-Businesses-in-2025-and-Beyond.pdf
Artjoker Software Development Company
Ā 
PDF
Trying to figure out MCP by actually building an app from scratch with open s...
Julien SIMON
Ā 
PDF
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
Ā 
PPTX
Dev Dives: Automate, test, and deploy in one place—with Unified Developer Exp...
AndreeaTom
Ā 
PPTX
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
Ā 
PDF
The Future of Artificial Intelligence (AI)
Mukul
Ā 
PDF
Accelerating Oracle Database 23ai Troubleshooting with Oracle AHF Fleet Insig...
Sandesh Rao
Ā 
PPTX
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
Ā 
PDF
Get More from Fiori Automation - What’s New, What Works, and What’s Next.pdf
Precisely
Ā 
PDF
BLW VOCATIONAL TRAINING SUMMER INTERNSHIP REPORT
codernjn73
Ā 
PDF
Brief History of Internet - Early Days of Internet
sutharharshit158
Ā 
What-is-the-World-Wide-Web -- Introduction
tonifi9488
Ā 
Cloud-Migration-Best-Practices-A-Practical-Guide-to-AWS-Azure-and-Google-Clou...
Artjoker Software Development Company
Ā 
CIFDAQ's Market Wrap : Bears Back in Control?
CIFDAQ
Ā 
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
Ā 
Software Development Methodologies in 2025
KodekX
Ā 
cloud computing vai.pptx for the project
vaibhavdobariyal79
Ā 
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
Ā 
AI in Daily Life: How Artificial Intelligence Helps Us Every Day
vanshrpatil7
Ā 
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
Ā 
How-Cloud-Computing-Impacts-Businesses-in-2025-and-Beyond.pdf
Artjoker Software Development Company
Ā 
Trying to figure out MCP by actually building an app from scratch with open s...
Julien SIMON
Ā 
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
Ā 
Dev Dives: Automate, test, and deploy in one place—with Unified Developer Exp...
AndreeaTom
Ā 
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
Ā 
The Future of Artificial Intelligence (AI)
Mukul
Ā 
Accelerating Oracle Database 23ai Troubleshooting with Oracle AHF Fleet Insig...
Sandesh Rao
Ā 
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
Ā 
Get More from Fiori Automation - What’s New, What Works, and What’s Next.pdf
Precisely
Ā 
BLW VOCATIONAL TRAINING SUMMER INTERNSHIP REPORT
codernjn73
Ā 
Brief History of Internet - Early Days of Internet
sutharharshit158
Ā 

Microservices Manchester: Microservices and Macro-Economics - A Shorty History By Marco Cullen

  • 1. MICRO SERVICES AND MACRO ECONOMICS - A SHORT HISTORY HOW DID WE GET HERE?
  • 2. WHAT CAME BEFORE ..TO BUILD THE HISTORY OF STRUCTURE ā–ø ā€œthe quality of being organised"
  • 3. WHAT CAME BEFORE ..TO BUILD THE HISTORY OF STRUCTURE ā–ø ā€œthe quality of being organised" ā–ø Programming-in-the-large versus programming-in-the- small (Hans Kron and Frank DeRemer 1975)
  • 4. WHAT CAME BEFORE ..TO BUILD THE HISTORY OF STRUCTURE ā–ø ā€œthe quality of being organised" ā–ø Programming-in-the-large versus programming-in-the- small (Hans Kron and Frank DeRemer 1975) ā–ø We distinguish the activity of writing large programs from that of writing small ones. By large programs we mean systems consisting of many small programs (ā€œmodulesā€) written by different people, possibly in different languages.
  • 5. WHAT CAME BEFORE ..TO BUILD THE HISTORY OF STRUCTURE ā–ø ā€œthe quality of being organised" ā–ø Programming-in-the-large versus programming-in-the- small (Hans Kron and Frank DeRemer 1975) ā–ø We distinguish the activity of writing large programs from that of writing small ones. By large programs we mean systems consisting of many small programs (ā€œmodulesā€) written by different people, possibly in different languages. ā–ø Module Interconnection language
  • 7. COMPUTER ENGINEERING VS COMPUTER SCIENCE ā–ø Definitions ā–ø Computer science is the study of the principles and use of computers.
  • 8. COMPUTER ENGINEERING VS COMPUTER SCIENCE ā–ø Definitions ā–ø Computer science is the study of the principles and use of computers. ā–ø Computer engineering is a discipline that integrates several fields of electrical engineering and computer science required to develop computer hardware and software.
  • 9. COMPUTER ENGINEERING VS COMPUTER SCIENCE ā–ø Definitions ā–ø Computer science is the study of the principles and use of computers. ā–ø Computer engineering is a discipline that integrates several fields of electrical engineering and computer science required to develop computer hardware and software. ā–ø Module Interaction Language
  • 10. COMPUTER ENGINEERING VS COMPUTER SCIENCE ā–ø Definitions ā–ø Computer science is the study of the principles and use of computers. ā–ø Computer engineering is a discipline that integrates several fields of electrical engineering and computer science required to develop computer hardware and software. ā–ø Module Interaction Language ā–ø Representational State Transfer application programming interface, RESTful API
  • 11. THE NATURAL WAY OF THINGS - REWINDING THE TAPE OF SOFTWARE ā–ø Copes rule ā–ø ā€œā€¦.over the past 542 million years, the mean size of marine animals has increased 150-fold.ā€ Jonathan Payne, a paleobiologist at Stanford School of Earth, Energy & Environmental Sciences
  • 13. THE NATURAL WAY OF THINGS - REWINDING THE TAPE OF SOFTWARE ā–ø Copes rule ā–ø ā€œā€¦.over the past 542 million years, the mean size of marine animals has increased 150-fold.ā€ ā–ø ā€œFor reasons that we don’t completely understand, the classes with large body size appear to be the ones that over time have become differentially more diverse.ā€ Jonathan Payne, a paleobiologist at Stanford School of Earth, Energy & Environmental Sciences
  • 14. THE NATURAL WAY OF THINGS - REWINDING THE TAPE OF SOFTWARE ā–ø Copes rule ā–ø ā€œā€¦.over the past 542 million years, the mean size of marine animals has increased 150-fold.ā€ ā–ø ā€œFor reasons that we don’t completely understand, the classes with large body size appear to be the ones that over time have become differentially more diverse.ā€ ā–ø ā€œIt’s really a story of the survival and diversification of big things relative to small thingsā€ Jonathan Payne, a paleobiologist at Stanford School of Earth, Energy & Environmental Sciences
  • 16. A LORD A FOREMAN AN ARTISAN 3 PROPERTIES THAT SUCCESSFUL PROJECTS OFTEN SHARE ā–ø Person of authority ā–ø Process ā–ø Technical authorship through expertise and experience Harvard Business School - ā€˜ā€¦Factors common to successful projects’
  • 17. A LORD A FOREMAN AN ARTISAN 3 PROPERTIES THAT SUCCESSFUL PROJECTS OFTEN SHARE ā–ø …. a project will not fail because of the type of tools used or the type of methodology employed Harvard Business School - ā€˜ā€¦Factors common to successful projects’
  • 18. A LORD A FOREMAN AN ARTISAN 3 PROPERTIES THAT SUCCESSFUL PROJECTS OFTEN SHARE Citation Frequency Clear requirements and specifications 60.5 Clear objectives and goals 55.8 Realistic schedule 53.5 Effective project management skills - PM 53.5 Support from top management 51.2 User/client involvement and feedback 46.5 Realistic budget 46.5 Skilled and sufficient staff 44.2 Frozen requirement 41.9 Critical success factors for software projects: A comparative study
  • 19. WHY CANT WE MAKE SOFTWARE LIKE WE MAKE HOUSES?
  • 22. INSPIRATION FROM NATURE ā–ø Cellular ā–ø Iterative ā–ø Specialised ā–ø Bounded ā–ø Obligated DOMAIN DRIVEN DESIGN CONTRACT DRIVENDESIGN BOUNDED FUNCTIONAL CONTEXT
  • 24. DESIGN DESIGN DESIGN.. HOW DOES MICRO SERVICES FIT IN? ā–ø Service can be defined as ā–ø domain bounded ā–ø contract bounded
  • 25. DESIGN DESIGN DESIGN.. HOW DOES MICRO SERVICES FIT IN? ā–ø Service can be defined as ā–ø domain bounded ā–ø contract bounded ā–ø This has desirable scaling properties relative to…
  • 26. HOW LONG IS A PIECE OF SPRINT
  • 29. IS THAT MY SIZE? IT FITS PERFECTLY ā–ø LOC output varies by 2 orders of magnitude ā–ø a 1000 lines / dev-weak ā–ø a 1000 lines / dev-year [Windows 95] ā–ø There is a wide range of productivity between projects ā–ø What influences or contributes to this? ā–ø http://martinfowler.com/bliki/ CannotMeasureProductivity.html
  • 30. IS THAT MY SIZE? IT FITS PERFECTLY ā–ø Why is productivity hard to measure
  • 31. IS THAT MY SIZE? IT FITS PERFECTLY ā–ø Why is productivity hard to measure ā–ø There is no definition that captures holistically the value in a way that is both relevant to the client and to the business.
  • 32. IS THAT MY SIZE? IT FITS PERFECTLY ā–ø Why is productivity hard to measure ā–ø There is no definition that captures holistically the value in a way that is both relevant to the client and to the business. ā–ø People agree functionality points are quite good but they don’t relate the value of what was delivered to the business with a view to future work, i.e. was their duplication, can we re-use?
  • 33. IS THAT MY SIZE? IT FITS PERFECTLY ā–ø Why is productivity hard to measure ā–ø There is no definition that captures holistically the value in a way that is both relevant to the client and to the business. ā–ø People agree functionality points are quite good but they don’t relate the value of what was delivered to the business with a view to future work, i.e. was their duplication, can we re-use? ā–ø Lets focus on process and maybe we get productivity?
  • 34. INSPIRATION FROM NATURE ā–ø Cellular ā–ø Iterative ā–ø Specialised ā–ø Bounded ā–ø Obligated DOMAIN DRIVEN DESIGN CONTRACT DRIVENDESIGN BOUNDED FUNCTIONAL CONTEXT
  • 35. WHO KNOWS WHAT ā–ø I know what i know, but not what he knows ā–ø Heterogeneous structures require specialisation ā–ø Different components evolve at different speeds ā–ø How do we on board and off board specialist knowledge? ā–ø Do i have to know what he knows to do what i know?
  • 36. INSPIRATION FROM NATURE ā–ø Cellular ā–ø Iterative ā–ø Specialised ā–ø Bounded ā–ø Obligated DOMAIN DRIVEN DESIGN CONTRACT DRIVENDESIGN BOUNDED FUNCTIONAL CONTEXT
  • 38. WHATS AFFECTED ā–ø Business interaction modalities ā–ø daily routines - scrum, standup ā–ø time and length of interactions ā–ø Processes and benchmarks ā–ø New processes to deliver functioning software at a high rate of mutation - Dev/Ops ā–ø New automated methods for ensuring adherence to function - Acc. Tests ā–ø Integration - CI/CD ā–ø New metrics - performance testing* ——- SLA
  • 39. A MORE NATURAL WAY TO THINK ORGANISE AND DELIVER MICRO SERVICES
  • 40. WHAT IS AFFECTED ā–ø ..running a micro services project results in various outcomes which implicitly help project management and thus the path to delivery ā–ø Repeatable processes and thus a repeatable product
  • 41. WHAT IS AFFECTED ā–ø ..running a micro services project results in various outcomes which implicitly help project management and thus the path to delivery ā–ø Repeatable processes and thus a repeatable product ā–ø Well defined areas of responsibility, knowledge and accountability
  • 42. WHAT IS AFFECTED ā–ø ..running a micro services project results in various outcomes which implicitly help project management and thus the path to delivery ā–ø Repeatable processes and thus a repeatable product ā–ø Well defined areas of responsibility, knowledge and accountability ā–ø A clear set of interaction modalities between all parties including the software and people alike!
  • 43. WHATS NOT AFFECTED ā–ø … so If my project is a micro services project, it WILL succeed? ā–ø methodology and tooling not highly correlated with success.
  • 44. A LORD A FOREMAN AN ARTISAN 3 PROPERTIES THAT SUCCESSFUL PROJECTS OFTEN SHARE Citation Frequency Clear requirements and specifications 60.5 Clear objectives and goals 55.8 Realistic schedule 53.5 Effective project management skills - PM 53.5 Support from top management 51.2 User/client involvement and feedback 46.5 Realistic budget 46.5 Skilled and sufficient staff 44.2 Frozen requirement 41.9 Critical success factors for software projects: A comparative study
  • 45. WHATS NOT AFFECTED ā–ø … so If my project is a micro services project, it WILL succeed? ā–ø methodology and tooling not highly correlated with success. ā–ø ……they are however strongly correlated with cost*
  • 46. WHATS NOT AFFECTED ā–ø … so If my project is a micro services project, it WILL succeed? ā–ø methodology and tooling not highly correlated with success. ā–ø ……they are however strongly correlated with cost* ā–ø …but my operational overheads are higher now and i have duplication of effort, how do i end up saving on cost?
  • 47. WHATS IS AFFECTED - THE MACRO OF MICRO ā–ø Where are my costs reduced ā–ø Reduction in cost to requirements change ā–ø changes are often bounded, reducing complexity ā–ø cross cutting changes are more easily decomposed ā–ø Late changes cost less - a major contributor to cost and one of the top 10 reasons related to project success.
  • 48. WHATS IS AFFECTED ā–ø Where are my costs reduced ā–ø Organisationally now we can deal with a high rate of mutation ā–ø Able to change direction with lesser cost impact relative to more traditional monolithic structures. ā–ø Synergises at scale with Agile, containerisation and established developer working and hiring patterns. WHATS IS AFFECTED - THE MACRO OF MICRO
  • 49. WHATS IS AFFECTED ā–ø Where are my costs reduced ā–ø Working software is one of the best ways to measure progress. WHATS IS AFFECTED - THE MACRO OF MICRO School of Computer Science and software Engineering - The University of Western Australia 2012
  • 50. WHATS IS AFFECTED ā–ø Where are my costs reduced ā–ø Working software is one of the best ways to measure progress ā–ø Working software vs effort is 1 measure of productivity WHATS IS AFFECTED - THE MACRO OF MICRO School of Computer Science and software Engineering - The University of Western Australia 2012
  • 51. WHATS IS AFFECTED ā–ø Where are my costs reduced ā–ø Working software is one of the best ways to measure progress ā–ø Working software vs effort is 1 measure of productivity ā–ø Micro Services results in working code deployed sooner than more traditionally linear approaches to product development. WHATS IS AFFECTED - THE MACRO OF MICRO School of Computer Science and software Engineering - The University of Western Australia 2012
  • 52. A MACRO IMPACT ON YOUR BUSINESS ECONOMICS MICRO SERVICES