SlideShare a Scribd company logo
1 of 14
Download to read offline
endava.com
QUALITY. PRODUCTIVITY. INNOVATION.
Software Architecture as
Systems Dissolve
Eoin Woods
OOP 2016
Munich, February 2016
20160114.1
2
Software
Architecture as
Systems Dissolve
 Ages of Software Systems
 Ages of Software Architecture
 Software Architecture Assessed
 The Future?
QUALITY. PRODUCTIVITY. INNOVATION.
3
3
Software Architecture
Ever evolving but always important
• Many definitions by many people
• Stakeholders
• Structures
• Principles and Decisions
• System Qualities
• Manages risk - evolves as challenges change
QUALITY. PRODUCTIVITY. INNOVATION.
4
4
Systems are Dissolving!
QUALITY. PRODUCTIVITY. INNOVATION.
5
5
The 5 Ages of Software Systems
QUALITY. PRODUCTIVITY. INNOVATION.
Monolithic
(1980s)
Distributed
Monoliths
(1990s)
Internet
Connected
(2000s)
Internet is
the System
(2010s)
Intelligent
Connected
(2020s)
6
6
Concerns Across the Ages
QUALITY. PRODUCTIVITY. INNOVATION.
Monolithic
(80s)
Distributed
(90s)
Internet
Connected
(2000s)
Internet is
the System
(2010s)
Intelligent
Connected
(2020s)
7
7
The 5 Ages of Software Architecture
QUALITY. PRODUCTIVITY. INNOVATION.
Program
Structure
(1980s)
- Modules
- Info hiding
Emergence
(1990s)
- Definitions
- Concepts
- WICSA
conference
Development
(2000s)
- Views
- NFRs
- Stakeholders
- Styles
- Assessment
- Methods
- Books
Maturity
(2010s)
- Decisions
- Agility
- Sustainability
- Evolution
The future …
(2020s)
8
8
Necessity Leads to Invention
QUALITY. PRODUCTIVITY. INNOVATION.
Monolitic
Foundations
Models of Structure
Distributed
Views, Stakeholders,
Styles, Assessment
Internet
Connected
Non-Functional Qualities,
Agility, Evolution
Internet as a
System
Decisions, Principles,
Sustainability, …
Intelligent
Connected
9
9
Software Architecture’s Successes
What has software architecture been good at?
• Structure, connections, responsibilities
• Stakeholders
• Multiple-views of systems
• Styles and patterns
• Non-functional requirements
• Cost to build transparency (capex)
• Principles and decisions
• Agility (?)
QUALITY. PRODUCTIVITY. INNOVATION.
10
10
Software Architecture’s Misses
What have software architecture‘s blind spots been?
• Dynamic structures
• Data and algorithms as architectural elements
• Operating the systems
• Cost-to-operate transparency (opex)
QUALITY. PRODUCTIVITY. INNOVATION.
11
11
How Architecture has Helped
QUALITY. PRODUCTIVITY. INNOVATION.
Monolithic
Client/Server
Internet
Connected
Internet as a
System
Intelligent
Connected
Program Structure
Structure + Connections +
Responsibilities + Stakeholders
+ Styles + Assessment
+ NFRs + Agility + Evolution
…. operations?
+ Sustainability + Principles + Decisions
… emergent properties?
… dynamic structures?
… operations? (again)
… costs moving to opex?
What’s next?
… algorithmic architecture?
… data determining qualities?
… operations? (yet again)
…. cost prediction?
12
12
Software Architecture’s Future
Less More
Defined Structure Emergent Runtime Structure
Certainty Probability
Structural Design Data and Algorithm Design
Operations Process Operations Policy & Automation
Capex Opex
Decisions Principles, Policies, Algorithms
QUALITY. PRODUCTIVITY. INNOVATION.
Software architecture has been good at structure, certainty
and relationships … the rest is work-in-progress!
13
13
Software Architecture’s Future
What remains important
• Stakeholders
• Principles and policies
• Multiple views of an architecture
• Non-functional qualities
• Assessment
The future …
• Dynamic composition & structure
• Emergent properties at runtime
• Integrating “intelligence” into systems
• Data, algorithms as architectural elements
• Designing the running costs … and energy efficiency!
QUALITY. PRODUCTIVITY. INNOVATION.
14
Thank you
QUALITY. PRODUCTIVITY. INNOVATION.
Eoin Woods
Endava
eoin.woods@endava.com
+44 207 367 1000
en_ewoods

More Related Content

What's hot

Reducing inertia in organizations is the key to a successful DevOps transition
Reducing inertia in organizations is the key to a successful DevOps transitionReducing inertia in organizations is the key to a successful DevOps transition
Reducing inertia in organizations is the key to a successful DevOps transitionJoep Piscaer
 
Resource Adaptive Systems
Resource Adaptive SystemsResource Adaptive Systems
Resource Adaptive SystemsTom Mueck
 
Fifty Years of Software Engineering
Fifty Years of Software EngineeringFifty Years of Software Engineering
Fifty Years of Software Engineeringtwasserman
 
Kaseya Connect 2012 - Deploying Apps With Software Deployment And Update
Kaseya Connect 2012 - Deploying Apps With Software Deployment And UpdateKaseya Connect 2012 - Deploying Apps With Software Deployment And Update
Kaseya Connect 2012 - Deploying Apps With Software Deployment And UpdateKaseya
 
Deferring the Last Responsible Moment
Deferring the Last Responsible MomentDeferring the Last Responsible Moment
Deferring the Last Responsible MomentEoin Woods
 
Camelot - Manyhats club meetup 23 10 18
Camelot - Manyhats club meetup 23 10 18Camelot - Manyhats club meetup 23 10 18
Camelot - Manyhats club meetup 23 10 18NSC42 Ltd
 
Cultivating Your Design Heuristics
Cultivating Your Design HeuristicsCultivating Your Design Heuristics
Cultivating Your Design HeuristicsRebecca Wirfs-Brock
 
Innoslate the Gateway to SysML 2.0 and Beyond
Innoslate the Gateway to SysML 2.0 and BeyondInnoslate the Gateway to SysML 2.0 and Beyond
Innoslate the Gateway to SysML 2.0 and BeyondSarahCraig7
 
Intergen Think! Event: Deploying and Managing Windows 8 in the Workplace
Intergen Think! Event: Deploying and Managing Windows 8 in the WorkplaceIntergen Think! Event: Deploying and Managing Windows 8 in the Workplace
Intergen Think! Event: Deploying and Managing Windows 8 in the WorkplaceIntergen
 
Splunk live university of alberta 2015
Splunk live university of alberta 2015Splunk live university of alberta 2015
Splunk live university of alberta 2015dostatni
 
Digitization solutions - A new breed of software
Digitization solutions - A new breed of softwareDigitization solutions - A new breed of software
Digitization solutions - A new breed of softwareUwe Friedrichsen
 
How to make the move towards hybrid cloud computing
How to make the move towards hybrid cloud computingHow to make the move towards hybrid cloud computing
How to make the move towards hybrid cloud computingDavid Strom
 
The do's and dont's of cloud computing - StatPro Cloud Summit 2012
The do's and dont's of cloud computing - StatPro Cloud Summit 2012The do's and dont's of cloud computing - StatPro Cloud Summit 2012
The do's and dont's of cloud computing - StatPro Cloud Summit 2012StatPro Group
 
Nero Technology Consulting Services
Nero Technology Consulting ServicesNero Technology Consulting Services
Nero Technology Consulting ServicesAnthony Oren
 
Using OpenStack to Control VM Chaos
Using OpenStack to Control VM ChaosUsing OpenStack to Control VM Chaos
Using OpenStack to Control VM ChaosDavid Strom
 
Architecting Applications the Microsoft Way
Architecting Applications the Microsoft WayArchitecting Applications the Microsoft Way
Architecting Applications the Microsoft WayClint Edmonson
 
Secure DevOps - Evolution or Revolution?
Secure DevOps - Evolution or Revolution?Secure DevOps - Evolution or Revolution?
Secure DevOps - Evolution or Revolution?Security Innovation
 
Application architecture jumpstart
Application architecture jumpstartApplication architecture jumpstart
Application architecture jumpstartClint Edmonson
 

What's hot (20)

Reducing inertia in organizations is the key to a successful DevOps transition
Reducing inertia in organizations is the key to a successful DevOps transitionReducing inertia in organizations is the key to a successful DevOps transition
Reducing inertia in organizations is the key to a successful DevOps transition
 
Resource Adaptive Systems
Resource Adaptive SystemsResource Adaptive Systems
Resource Adaptive Systems
 
Fifty Years of Software Engineering
Fifty Years of Software EngineeringFifty Years of Software Engineering
Fifty Years of Software Engineering
 
Kaseya Connect 2012 - Deploying Apps With Software Deployment And Update
Kaseya Connect 2012 - Deploying Apps With Software Deployment And UpdateKaseya Connect 2012 - Deploying Apps With Software Deployment And Update
Kaseya Connect 2012 - Deploying Apps With Software Deployment And Update
 
Deferring the Last Responsible Moment
Deferring the Last Responsible MomentDeferring the Last Responsible Moment
Deferring the Last Responsible Moment
 
Camelot - Manyhats club meetup 23 10 18
Camelot - Manyhats club meetup 23 10 18Camelot - Manyhats club meetup 23 10 18
Camelot - Manyhats club meetup 23 10 18
 
Cultivating Your Design Heuristics
Cultivating Your Design HeuristicsCultivating Your Design Heuristics
Cultivating Your Design Heuristics
 
Innoslate the Gateway to SysML 2.0 and Beyond
Innoslate the Gateway to SysML 2.0 and BeyondInnoslate the Gateway to SysML 2.0 and Beyond
Innoslate the Gateway to SysML 2.0 and Beyond
 
Intergen Think! Event: Deploying and Managing Windows 8 in the Workplace
Intergen Think! Event: Deploying and Managing Windows 8 in the WorkplaceIntergen Think! Event: Deploying and Managing Windows 8 in the Workplace
Intergen Think! Event: Deploying and Managing Windows 8 in the Workplace
 
Splunk live university of alberta 2015
Splunk live university of alberta 2015Splunk live university of alberta 2015
Splunk live university of alberta 2015
 
Digitization solutions - A new breed of software
Digitization solutions - A new breed of softwareDigitization solutions - A new breed of software
Digitization solutions - A new breed of software
 
How to make the move towards hybrid cloud computing
How to make the move towards hybrid cloud computingHow to make the move towards hybrid cloud computing
How to make the move towards hybrid cloud computing
 
The do's and dont's of cloud computing - StatPro Cloud Summit 2012
The do's and dont's of cloud computing - StatPro Cloud Summit 2012The do's and dont's of cloud computing - StatPro Cloud Summit 2012
The do's and dont's of cloud computing - StatPro Cloud Summit 2012
 
Nero Technology Consulting Services
Nero Technology Consulting ServicesNero Technology Consulting Services
Nero Technology Consulting Services
 
Using OpenStack to Control VM Chaos
Using OpenStack to Control VM ChaosUsing OpenStack to Control VM Chaos
Using OpenStack to Control VM Chaos
 
LSCITS-engineering
LSCITS-engineeringLSCITS-engineering
LSCITS-engineering
 
Architecting Applications the Microsoft Way
Architecting Applications the Microsoft WayArchitecting Applications the Microsoft Way
Architecting Applications the Microsoft Way
 
Secure DevOps - Evolution or Revolution?
Secure DevOps - Evolution or Revolution?Secure DevOps - Evolution or Revolution?
Secure DevOps - Evolution or Revolution?
 
DevOps
DevOpsDevOps
DevOps
 
Application architecture jumpstart
Application architecture jumpstartApplication architecture jumpstart
Application architecture jumpstart
 

Viewers also liked

Osos polares
Osos polaresOsos polares
Osos polaressari97_
 
Au-delà...du miroir !
Au-delà...du miroir !Au-delà...du miroir !
Au-delà...du miroir !Eric LEGER
 
Char - Recommendation Ltr - Snow
Char - Recommendation Ltr - SnowChar - Recommendation Ltr - Snow
Char - Recommendation Ltr - SnowCharmaine Carpenter
 
Flyer morte-assistida (1)
Flyer morte-assistida (1)Flyer morte-assistida (1)
Flyer morte-assistida (1)j_sdias
 
1994 Computing studies
1994 Computing studies1994 Computing studies
1994 Computing studiesMichelle Davis
 
A Semantic Account of Quantification in English
A Semantic Account of Quantification in EnglishA Semantic Account of Quantification in English
A Semantic Account of Quantification in EnglishWhitney Vandiver
 
Choice of control group in clinical trials
Choice of control group in clinical trialsChoice of control group in clinical trials
Choice of control group in clinical trialsNagendra SR
 
Young Children's Use of Digital Technologies in the home Results from a Euro...
Young Children's Use of Digital Technologies in the home  Results from a Euro...Young Children's Use of Digital Technologies in the home  Results from a Euro...
Young Children's Use of Digital Technologies in the home Results from a Euro...Malene Charlotte Larsen
 
Social Intimacy in Social Media - How Youth Practice Friendships and Construc...
Social Intimacy in Social Media - How Youth Practice Friendships and Construc...Social Intimacy in Social Media - How Youth Practice Friendships and Construc...
Social Intimacy in Social Media - How Youth Practice Friendships and Construc...Malene Charlotte Larsen
 

Viewers also liked (13)

Amway (key changes)
Amway (key changes)Amway (key changes)
Amway (key changes)
 
Osos polares
Osos polaresOsos polares
Osos polares
 
Au-delà...du miroir !
Au-delà...du miroir !Au-delà...du miroir !
Au-delà...du miroir !
 
K14
K14K14
K14
 
Char - Recommendation Ltr - Snow
Char - Recommendation Ltr - SnowChar - Recommendation Ltr - Snow
Char - Recommendation Ltr - Snow
 
Flyer morte-assistida (1)
Flyer morte-assistida (1)Flyer morte-assistida (1)
Flyer morte-assistida (1)
 
Kotler pom13e instructor_03
Kotler pom13e instructor_03Kotler pom13e instructor_03
Kotler pom13e instructor_03
 
1994 Computing studies
1994 Computing studies1994 Computing studies
1994 Computing studies
 
A Semantic Account of Quantification in English
A Semantic Account of Quantification in EnglishA Semantic Account of Quantification in English
A Semantic Account of Quantification in English
 
Choice of control group in clinical trials
Choice of control group in clinical trialsChoice of control group in clinical trials
Choice of control group in clinical trials
 
Young Children's Use of Digital Technologies in the home Results from a Euro...
Young Children's Use of Digital Technologies in the home  Results from a Euro...Young Children's Use of Digital Technologies in the home  Results from a Euro...
Young Children's Use of Digital Technologies in the home Results from a Euro...
 
Social Intimacy in Social Media - How Youth Practice Friendships and Construc...
Social Intimacy in Social Media - How Youth Practice Friendships and Construc...Social Intimacy in Social Media - How Youth Practice Friendships and Construc...
Social Intimacy in Social Media - How Youth Practice Friendships and Construc...
 
Kommunalnet
KommunalnetKommunalnet
Kommunalnet
 

Similar to Software Architecture as Systems Dissolve (OOP2016)

Software Architecture as Systems Dissolve
Software Architecture as Systems DissolveSoftware Architecture as Systems Dissolve
Software Architecture as Systems DissolveEoin Woods
 
[2015/2016] Software systems engineering PRINCIPLES
[2015/2016] Software systems engineering PRINCIPLES[2015/2016] Software systems engineering PRINCIPLES
[2015/2016] Software systems engineering PRINCIPLESIvano Malavolta
 
IA CAMP 2015: As Yet Untitled
IA CAMP 2015: As Yet UntitledIA CAMP 2015: As Yet Untitled
IA CAMP 2015: As Yet UntitledNobuya Sato
 
DevOps and the cloud: all hail the (developer) king - Daniel Bryant, Steve Poole
DevOps and the cloud: all hail the (developer) king - Daniel Bryant, Steve PooleDevOps and the cloud: all hail the (developer) king - Daniel Bryant, Steve Poole
DevOps and the cloud: all hail the (developer) king - Daniel Bryant, Steve PooleJAXLondon_Conference
 
Pattern driven Enterprise Architecture
Pattern driven Enterprise ArchitecturePattern driven Enterprise Architecture
Pattern driven Enterprise ArchitectureWSO2
 
Iterative Architecture: Your Path to on-time Delivery
Iterative Architecture: Your Path to on-time DeliveryIterative Architecture: Your Path to on-time Delivery
Iterative Architecture: Your Path to on-time DeliveryAsanka Abeysinghe
 
Cloud Computing Explained: Guide to Enterprise Implementation
Cloud Computing Explained: Guide to Enterprise ImplementationCloud Computing Explained: Guide to Enterprise Implementation
Cloud Computing Explained: Guide to Enterprise ImplementationJohn Rhoton
 
The DevOps Panel - Innotech Austin CD Summit
The DevOps Panel - Innotech Austin CD SummitThe DevOps Panel - Innotech Austin CD Summit
The DevOps Panel - Innotech Austin CD SummitErnest Mueller
 
DevOps Evolution - The Next Generation ?
DevOps Evolution - The Next Generation ?DevOps Evolution - The Next Generation ?
DevOps Evolution - The Next Generation ?Marc Hornbeek
 
JavaTM – A Strategic Foundation for Your eOrganization
JavaTM – A Strategic Foundation for Your eOrganizationJavaTM – A Strategic Foundation for Your eOrganization
JavaTM – A Strategic Foundation for Your eOrganizationRajeev Arora
 
JAXLondon 2015 "DevOps and the Cloud: All Hail the (Developer) King"
JAXLondon 2015 "DevOps and the Cloud: All Hail the (Developer) King"JAXLondon 2015 "DevOps and the Cloud: All Hail the (Developer) King"
JAXLondon 2015 "DevOps and the Cloud: All Hail the (Developer) King"Daniel Bryant
 
Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...
Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...
Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...Kai Wähner
 
Building DevOps in the enterprise: Transforming challenges into organizationa...
Building DevOps in the enterprise: Transforming challenges into organizationa...Building DevOps in the enterprise: Transforming challenges into organizationa...
Building DevOps in the enterprise: Transforming challenges into organizationa...Jonah Kowall
 
How to choose tools for DevOps and Continuous Delivery - Unicom DevOps Summit...
How to choose tools for DevOps and Continuous Delivery - Unicom DevOps Summit...How to choose tools for DevOps and Continuous Delivery - Unicom DevOps Summit...
How to choose tools for DevOps and Continuous Delivery - Unicom DevOps Summit...Skelton Thatcher Consulting Ltd
 
Agile Software Architecture
Agile Software ArchitectureAgile Software Architecture
Agile Software ArchitectureChris F Carroll
 
Microdeployments for microservices dev ops nashville
Microdeployments for microservices   dev ops nashvilleMicrodeployments for microservices   dev ops nashville
Microdeployments for microservices dev ops nashvilleNathaniel (Ned) Bauerle
 
DDD Tactical Design with Clean Architecture - Ivan Paulovich
DDD Tactical Design with Clean Architecture - Ivan PaulovichDDD Tactical Design with Clean Architecture - Ivan Paulovich
DDD Tactical Design with Clean Architecture - Ivan PaulovichIvan Paulovich
 

Similar to Software Architecture as Systems Dissolve (OOP2016) (20)

Software Architecture as Systems Dissolve
Software Architecture as Systems DissolveSoftware Architecture as Systems Dissolve
Software Architecture as Systems Dissolve
 
[2015/2016] Software systems engineering PRINCIPLES
[2015/2016] Software systems engineering PRINCIPLES[2015/2016] Software systems engineering PRINCIPLES
[2015/2016] Software systems engineering PRINCIPLES
 
IA CAMP 2015: As Yet Untitled
IA CAMP 2015: As Yet UntitledIA CAMP 2015: As Yet Untitled
IA CAMP 2015: As Yet Untitled
 
DevOps and the cloud: all hail the (developer) king - Daniel Bryant, Steve Poole
DevOps and the cloud: all hail the (developer) king - Daniel Bryant, Steve PooleDevOps and the cloud: all hail the (developer) king - Daniel Bryant, Steve Poole
DevOps and the cloud: all hail the (developer) king - Daniel Bryant, Steve Poole
 
Pattern driven Enterprise Architecture
Pattern driven Enterprise ArchitecturePattern driven Enterprise Architecture
Pattern driven Enterprise Architecture
 
Iterative Architecture: Your Path to on-time Delivery
Iterative Architecture: Your Path to on-time DeliveryIterative Architecture: Your Path to on-time Delivery
Iterative Architecture: Your Path to on-time Delivery
 
Software Architecture in an Agile World
Software Architecture in an Agile WorldSoftware Architecture in an Agile World
Software Architecture in an Agile World
 
Cloud Computing Explained: Guide to Enterprise Implementation
Cloud Computing Explained: Guide to Enterprise ImplementationCloud Computing Explained: Guide to Enterprise Implementation
Cloud Computing Explained: Guide to Enterprise Implementation
 
The DevOps Panel - Innotech Austin CD Summit
The DevOps Panel - Innotech Austin CD SummitThe DevOps Panel - Innotech Austin CD Summit
The DevOps Panel - Innotech Austin CD Summit
 
DevOps Evolution - The Next Generation ?
DevOps Evolution - The Next Generation ?DevOps Evolution - The Next Generation ?
DevOps Evolution - The Next Generation ?
 
JavaTM – A Strategic Foundation for Your eOrganization
JavaTM – A Strategic Foundation for Your eOrganizationJavaTM – A Strategic Foundation for Your eOrganization
JavaTM – A Strategic Foundation for Your eOrganization
 
JAXLondon 2015 "DevOps and the Cloud: All Hail the (Developer) King"
JAXLondon 2015 "DevOps and the Cloud: All Hail the (Developer) King"JAXLondon 2015 "DevOps and the Cloud: All Hail the (Developer) King"
JAXLondon 2015 "DevOps and the Cloud: All Hail the (Developer) King"
 
Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...
Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...
Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...
 
Building DevOps in the enterprise: Transforming challenges into organizationa...
Building DevOps in the enterprise: Transforming challenges into organizationa...Building DevOps in the enterprise: Transforming challenges into organizationa...
Building DevOps in the enterprise: Transforming challenges into organizationa...
 
L01 Introduction to Enterprise Software
L01 Introduction to Enterprise SoftwareL01 Introduction to Enterprise Software
L01 Introduction to Enterprise Software
 
How to choose tools for DevOps and Continuous Delivery - Unicom DevOps Summit...
How to choose tools for DevOps and Continuous Delivery - Unicom DevOps Summit...How to choose tools for DevOps and Continuous Delivery - Unicom DevOps Summit...
How to choose tools for DevOps and Continuous Delivery - Unicom DevOps Summit...
 
Agile Software Architecture
Agile Software ArchitectureAgile Software Architecture
Agile Software Architecture
 
Microdeployments for microservices dev ops nashville
Microdeployments for microservices   dev ops nashvilleMicrodeployments for microservices   dev ops nashville
Microdeployments for microservices dev ops nashville
 
DDD Tactical Design with Clean Architecture - Ivan Paulovich
DDD Tactical Design with Clean Architecture - Ivan PaulovichDDD Tactical Design with Clean Architecture - Ivan Paulovich
DDD Tactical Design with Clean Architecture - Ivan Paulovich
 
Quality 4.0 and reimagining quality
Quality 4.0 and reimagining qualityQuality 4.0 and reimagining quality
Quality 4.0 and reimagining quality
 

More from Eoin Woods

API Vulnerabilties and What to Do About Them
API Vulnerabilties and What to Do About ThemAPI Vulnerabilties and What to Do About Them
API Vulnerabilties and What to Do About ThemEoin Woods
 
Secure by Design - Security Design Principles for the Working Architect
Secure by Design - Security Design Principles for the Working ArchitectSecure by Design - Security Design Principles for the Working Architect
Secure by Design - Security Design Principles for the Working ArchitectEoin Woods
 
Using Software Architecture Principles in Practice
Using Software Architecture Principles in PracticeUsing Software Architecture Principles in Practice
Using Software Architecture Principles in PracticeEoin Woods
 
Secure by Design - Security Design Principles for the Rest of Us
Secure by Design - Security Design Principles for the Rest of UsSecure by Design - Security Design Principles for the Rest of Us
Secure by Design - Security Design Principles for the Rest of UsEoin Woods
 
System Security Beyond the Libraries
System Security Beyond the LibrariesSystem Security Beyond the Libraries
System Security Beyond the LibrariesEoin Woods
 
Getting Your System to Production and Keeping it There
Getting Your System to Production and Keeping it ThereGetting Your System to Production and Keeping it There
Getting Your System to Production and Keeping it ThereEoin Woods
 
Common WebApp Vulnerabilities and What to Do About Them
Common WebApp Vulnerabilities and What to Do About ThemCommon WebApp Vulnerabilities and What to Do About Them
Common WebApp Vulnerabilities and What to Do About ThemEoin Woods
 

More from Eoin Woods (7)

API Vulnerabilties and What to Do About Them
API Vulnerabilties and What to Do About ThemAPI Vulnerabilties and What to Do About Them
API Vulnerabilties and What to Do About Them
 
Secure by Design - Security Design Principles for the Working Architect
Secure by Design - Security Design Principles for the Working ArchitectSecure by Design - Security Design Principles for the Working Architect
Secure by Design - Security Design Principles for the Working Architect
 
Using Software Architecture Principles in Practice
Using Software Architecture Principles in PracticeUsing Software Architecture Principles in Practice
Using Software Architecture Principles in Practice
 
Secure by Design - Security Design Principles for the Rest of Us
Secure by Design - Security Design Principles for the Rest of UsSecure by Design - Security Design Principles for the Rest of Us
Secure by Design - Security Design Principles for the Rest of Us
 
System Security Beyond the Libraries
System Security Beyond the LibrariesSystem Security Beyond the Libraries
System Security Beyond the Libraries
 
Getting Your System to Production and Keeping it There
Getting Your System to Production and Keeping it ThereGetting Your System to Production and Keeping it There
Getting Your System to Production and Keeping it There
 
Common WebApp Vulnerabilities and What to Do About Them
Common WebApp Vulnerabilities and What to Do About ThemCommon WebApp Vulnerabilities and What to Do About Them
Common WebApp Vulnerabilities and What to Do About Them
 

Recently uploaded

Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendArshad QA
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfCionsystems
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 

Recently uploaded (20)

Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and Backend
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdf
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 

Software Architecture as Systems Dissolve (OOP2016)

  • 1. endava.com QUALITY. PRODUCTIVITY. INNOVATION. Software Architecture as Systems Dissolve Eoin Woods OOP 2016 Munich, February 2016 20160114.1
  • 2. 2 Software Architecture as Systems Dissolve  Ages of Software Systems  Ages of Software Architecture  Software Architecture Assessed  The Future? QUALITY. PRODUCTIVITY. INNOVATION.
  • 3. 3 3 Software Architecture Ever evolving but always important • Many definitions by many people • Stakeholders • Structures • Principles and Decisions • System Qualities • Manages risk - evolves as challenges change QUALITY. PRODUCTIVITY. INNOVATION.
  • 4. 4 4 Systems are Dissolving! QUALITY. PRODUCTIVITY. INNOVATION.
  • 5. 5 5 The 5 Ages of Software Systems QUALITY. PRODUCTIVITY. INNOVATION. Monolithic (1980s) Distributed Monoliths (1990s) Internet Connected (2000s) Internet is the System (2010s) Intelligent Connected (2020s)
  • 6. 6 6 Concerns Across the Ages QUALITY. PRODUCTIVITY. INNOVATION. Monolithic (80s) Distributed (90s) Internet Connected (2000s) Internet is the System (2010s) Intelligent Connected (2020s)
  • 7. 7 7 The 5 Ages of Software Architecture QUALITY. PRODUCTIVITY. INNOVATION. Program Structure (1980s) - Modules - Info hiding Emergence (1990s) - Definitions - Concepts - WICSA conference Development (2000s) - Views - NFRs - Stakeholders - Styles - Assessment - Methods - Books Maturity (2010s) - Decisions - Agility - Sustainability - Evolution The future … (2020s)
  • 8. 8 8 Necessity Leads to Invention QUALITY. PRODUCTIVITY. INNOVATION. Monolitic Foundations Models of Structure Distributed Views, Stakeholders, Styles, Assessment Internet Connected Non-Functional Qualities, Agility, Evolution Internet as a System Decisions, Principles, Sustainability, … Intelligent Connected
  • 9. 9 9 Software Architecture’s Successes What has software architecture been good at? • Structure, connections, responsibilities • Stakeholders • Multiple-views of systems • Styles and patterns • Non-functional requirements • Cost to build transparency (capex) • Principles and decisions • Agility (?) QUALITY. PRODUCTIVITY. INNOVATION.
  • 10. 10 10 Software Architecture’s Misses What have software architecture‘s blind spots been? • Dynamic structures • Data and algorithms as architectural elements • Operating the systems • Cost-to-operate transparency (opex) QUALITY. PRODUCTIVITY. INNOVATION.
  • 11. 11 11 How Architecture has Helped QUALITY. PRODUCTIVITY. INNOVATION. Monolithic Client/Server Internet Connected Internet as a System Intelligent Connected Program Structure Structure + Connections + Responsibilities + Stakeholders + Styles + Assessment + NFRs + Agility + Evolution …. operations? + Sustainability + Principles + Decisions … emergent properties? … dynamic structures? … operations? (again) … costs moving to opex? What’s next? … algorithmic architecture? … data determining qualities? … operations? (yet again) …. cost prediction?
  • 12. 12 12 Software Architecture’s Future Less More Defined Structure Emergent Runtime Structure Certainty Probability Structural Design Data and Algorithm Design Operations Process Operations Policy & Automation Capex Opex Decisions Principles, Policies, Algorithms QUALITY. PRODUCTIVITY. INNOVATION. Software architecture has been good at structure, certainty and relationships … the rest is work-in-progress!
  • 13. 13 13 Software Architecture’s Future What remains important • Stakeholders • Principles and policies • Multiple views of an architecture • Non-functional qualities • Assessment The future … • Dynamic composition & structure • Emergent properties at runtime • Integrating “intelligence” into systems • Data, algorithms as architectural elements • Designing the running costs … and energy efficiency! QUALITY. PRODUCTIVITY. INNOVATION.
  • 14. 14 Thank you QUALITY. PRODUCTIVITY. INNOVATION. Eoin Woods Endava eoin.woods@endava.com +44 207 367 1000 en_ewoods