SlideShare a Scribd company logo
{
Monolithic Delivery
ACCU Conference 2018
Chris Oldwood
{Exploring coupling
Monoliths
1. a large single upright block of stone, especially one
shaped into or serving as a pillar or monument.
- a very large and characterless building.
- a large block of concrete sunk in water, e.g. in the
building of a dock.
2. a large, impersonal political, corporate, or social
structure regarded as indivisible and slow to change.
Monolith (n)
https://www.google.co.uk/search?q=define+monolith
The Archetypal Monolith
https://cdn-images-1.medium.com/max/1200/1*QVCRxfsQwXHIlBlRDxIrLg.png
Monolithic Systems
http://static.righto.com/images/IBM_1406_Storage_Unit/machines.jpg
https://en.wikipedia.org/wiki/Commodore_PET#/media/File:Commodore_2001_Series-IMG_0448b.jpg
Monolithic Architecture
http://83.133.184.251/winworldpc.com/res/img/screenshots
https://pathowe.co.uk/wp-content/uploads/2017/02/iis-sql-750x503.png
 Monitors upstream data feeds
 Decides when to process data feeds
 Manages compute grid
 Processes data feeds in parallel
 Dispatches work to grid
 Aggregate results in parallel
“The Scheduler”
Monolithic Enterprises
http://www.hns.net/assets/img/data-centres/bristol.jpg
Microservices
https://i.stack.imgur.com/G0Syx.jpg
Monolithic Delivery
https://www.aanavandi.com/blog/wp-content/uploads/2016/11/securedownload-44.jpg
{Techniques for smaller deliveries
Decoupling Delivery
Smaller Units of Change
http://parkinsurance.co.uk/wp-content/uploads/2015/06/Josephine-Reitzel-2013-bike-messenger-worlds.jpg
Always Be Ready To Ship
http://wiki.c2.com/?AlwaysBeReadyToShip
“A principle (or consequence) of
highly iterative software
development methodologies is that
after the first iteration, the product
is always ‘ready to ship’. That is,
the product does something useful
and is in a releasable state.”
An example: sharing loyalty points:
 View shared balance
 Accrue shared value
 Spend shared value
 Join customers
 Split customers
Partial Deliveries
Emergent Design
https://martinfowler.com/ieeeSoftware/whoNeedsArchitect.pdf
“Software is not limited by physics,
like buildings are. It is limited by
imagination, by design, by
organization. In short, it is limited by
properties of people, not by properties
of the world. ‘We have met the enemy,
and he is us.’”
-- Ralph Johnson
Console
app
v0.1 v1.0
DB
Services
Services
Command
line tools
File-
system
Command
line tools
Scripts
Emergent Design is the continued
borrowing and repaying of short term
technical debt to allow practical
experience to drive evolution.
Refactor All The Things
“Perfection is achieved, not when
there is nothing more to add, but
when there is nothing left to take
away”
-- Antoine de Saint-Exupery
Deploy Frequently
https://qz.com/wp-content/uploads/2018/02/spacex-falcon-heavy-elon-musk-china-europe-esa-nasa-mars-sls-boeing.jpg
Monitoring
https://news.artnet.com/app/news-upload/2016/03/spy-booth-01-e1459190262771.jpg
{Friction inducing behaviours
Barriers to Delivery
Identify the Real Waste
https://twitter.com/raganwald/status/794527181225357312
Minimise Branching
https://upload.wikimedia.org/wikipedia/commons/thumb/0/01/Clapham_Junction_railway_statio
n_MMB_03_458XXX_458XXX_450XXX_377XXX_377XXX_455XXX_455XXX_455XXX.jpg
Shared Binaries
http://www.telford-live.com/2017/08/abandoned-house-in-telford/
{Sources of inspiration
References
http://cdn.loot.co.za/static/gallery/previews/f/n/w/fnwc-97-g120/preview.fnwc-97-g120.1.front.0566086654.jpg
http://www.systemsguild.com/tdmbooks/WWBCover.jpg
{Filling in the gaps
Q & A
Blog:
http://chrisoldwood.blogspot.co.uk
Articles:
http://chrisoldwood.com/articles.htm

More Related Content

PPT
Alamillo bridge
PDF
9657 Michael Hughes Black Belt Certificate
PPTX
The __far* Side
PPTX
A Test of Strength
PPT
In The Toolbox - LIVE!
PPT
Test-Driven SQL
PPT
Waltzing with Branches [ACCU]
PPT
Continuous Delivery
Alamillo bridge
9657 Michael Hughes Black Belt Certificate
The __far* Side
A Test of Strength
In The Toolbox - LIVE!
Test-Driven SQL
Waltzing with Branches [ACCU]
Continuous Delivery

More from Chris Oldwood (10)

PPT
Becoming a Bitter Programmer
PPT
Waltzing with Branches [Agile o/t Beach]
PPT
Using xUnit as a Swiss-Aarmy Testing Toolkit
PPT
xUnit Style Database Testing
PPT
Robust Software
PPT
Version Control - Patterns and Practices
PPT
Requiem (For Windows XP)
PPT
(Re)Reading the Classics
PPT
Recycle Bin 101
PPT
The Art of Code
Becoming a Bitter Programmer
Waltzing with Branches [Agile o/t Beach]
Using xUnit as a Swiss-Aarmy Testing Toolkit
xUnit Style Database Testing
Robust Software
Version Control - Patterns and Practices
Requiem (For Windows XP)
(Re)Reading the Classics
Recycle Bin 101
The Art of Code
Ad

Recently uploaded (20)

PDF
AI/ML Infra Meetup | Beyond S3's Basics: Architecting for AI-Native Data Access
PPTX
GSA Content Generator Crack (2025 Latest)
PDF
EaseUS PDF Editor Pro 6.2.0.2 Crack with License Key 2025
PDF
How to Make Money in the Metaverse_ Top Strategies for Beginners.pdf
DOCX
How to Use SharePoint as an ISO-Compliant Document Management System
PPTX
Why Generative AI is the Future of Content, Code & Creativity?
PPTX
Patient Appointment Booking in Odoo with online payment
PDF
Cost to Outsource Software Development in 2025
PDF
Product Update: Alluxio AI 3.7 Now with Sub-Millisecond Latency
PDF
Topaz Photo AI Crack New Download (Latest 2025)
PPTX
Monitoring Stack: Grafana, Loki & Promtail
PPTX
Tech Workshop Escape Room Tech Workshop
PDF
Types of Token_ From Utility to Security.pdf
PDF
MCP Security Tutorial - Beginner to Advanced
PDF
Wondershare Recoverit Full Crack New Version (Latest 2025)
PDF
How AI/LLM recommend to you ? GDG meetup 16 Aug by Fariman Guliev
PDF
Salesforce Agentforce AI Implementation.pdf
PPTX
"Secure File Sharing Solutions on AWS".pptx
PDF
AI/ML Infra Meetup | LLM Agents and Implementation Challenges
PDF
Autodesk AutoCAD Crack Free Download 2025
AI/ML Infra Meetup | Beyond S3's Basics: Architecting for AI-Native Data Access
GSA Content Generator Crack (2025 Latest)
EaseUS PDF Editor Pro 6.2.0.2 Crack with License Key 2025
How to Make Money in the Metaverse_ Top Strategies for Beginners.pdf
How to Use SharePoint as an ISO-Compliant Document Management System
Why Generative AI is the Future of Content, Code & Creativity?
Patient Appointment Booking in Odoo with online payment
Cost to Outsource Software Development in 2025
Product Update: Alluxio AI 3.7 Now with Sub-Millisecond Latency
Topaz Photo AI Crack New Download (Latest 2025)
Monitoring Stack: Grafana, Loki & Promtail
Tech Workshop Escape Room Tech Workshop
Types of Token_ From Utility to Security.pdf
MCP Security Tutorial - Beginner to Advanced
Wondershare Recoverit Full Crack New Version (Latest 2025)
How AI/LLM recommend to you ? GDG meetup 16 Aug by Fariman Guliev
Salesforce Agentforce AI Implementation.pdf
"Secure File Sharing Solutions on AWS".pptx
AI/ML Infra Meetup | LLM Agents and Implementation Challenges
Autodesk AutoCAD Crack Free Download 2025
Ad

Monolithic Delivery

Editor's Notes

  • #2: I’m a freelance developer working with “enterprise grade” technology. This talk is about the misconception that monolithic architectures are inherently bad, the problem is not necessarily the system’s architecture but might be the method of delivery.
  • #4: What is a “monolith” anyway?
  • #5: Possibly the most common visual metaphor for a monolith – opaque, impenetrable, undiscoverable, etc.
  • #6: True monolithic systems involved the delivery of a single piece of hardware and software, e.g. a mainframe or home computer.
  • #7: What do we mean today by a monolithic architecture?
  • #8: An example of a monolithic service.
  • #9: Is it possible to apply the same rigid approach to an entire suite of services? Of course – multiple supposedly discrete systems can be tightly coupled by their service contracts. Example of multiple systems needing upgrading together due to coupling.
  • #10: But nobody would design an entire enterprise to be tightly coupled, would they? Microservices are an organisational pattern intended to decouple delivery by spreading around the jam.
  • #11: My message - it’s not the architecture’s fault per-se, it’s the method of delivery that is tightly coupled.
  • #13: Smaller units of work (stories / tasks). The MVP is not “everything”. Okay to deliver partially implemented features. Hide behind toggle if necessary.
  • #15: An example of how to decompose into smaller deliverables and how ordering can be overcome.
  • #18: Evolution of calculation engine from single simple console app to multiple services, data stores, scripts, tools, etc.
  • #20: No just functions and methods but the structure and architecture. See Michael Stal’s blog.
  • #21: Even deploying to a development or test environment is deploying – do it regularly. Minimise the time it takes to get a fix or feature from idea into production. Deploying regularly gets you good at it and minimises the impact of changes as they are smaller and the time-to-fix is shorter.
  • #22: Know your system’s behaviour. Instrument everything you can afford to – see the trends and compensate before performance drops off a cliff. Know your clients. Help your clients to help themselves by providing you with non-functional data, e.g. version number, correlation ID, etc.
  • #25: Prefer trunk based development by default. Branching has its uses, but know the costs and keep it short, e.g. Spikes. If branching for release, do it late, aim for higher quality first to avoid needing to in future.