agile architecture agile dev practices 2013 keynote

Post on 19-Jan-2015

1.269 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

Keynote: Agile Dev Practices 2013 Adam Boczek, codecentric – “Agile Architecture – Yet Another Oxymoron?” We at codecentric, as a technically focused agile organization, get in our projects quite often confronted with the assessment of a customer’s software architecture, or more precisely with the assessment of the existing solution architecture. In many cases it is ok for us to stay in this technical scope and not to touch other, much wider architectural concepts like e.g. enterprise architecture. However, due to the fact, that more and more organizations want to transform to a more agile organization, the alignment between IT and Business, and thus between IT-architecture and Business-architecture becomes much more relevant for us in our projects than in the past and causes many questions to arise. Can we talk in this context about agile architecture? And if so, is it a model of a system or maybe just a process of creating it? Or maybe both? How long can I delay my architectural decisions? Can I refactor my agile architecture? And so on… In this talk I won’t give you perfect answers to all these questions, however I’m pretty sure I will open your eyes and let you create your own point of view.

TRANSCRIPT

AGILE YET ANOTHER OXYMORON?ARCHITECTURE

Adam Boczek

@nativeagile

@codecentric

Agile Dev Practices 2013 | Keynote 06/03/2013| Potsdam | Germany

OXYMORON.

#CONTROLLED CHAOS#OPEN SECRET#DARK LIGHT#LIVING DEAD

#AGILE ARCHITECTURE?

PROCESS?FLAVOR?BEHAVIOR?

AGILE ARCHITECTURE

AGILE ARCHITECTUREAS ANARCHITECTURALPROCESS?

THE MOTIVATIONBECAUSE OF BUSINESSFOR THE BUSINESS

BASED ON INNOVATION

TYPES OF INNOVATION#EVOLUTIONARY#REVOLUTIONARY#DISRUPTIVE

EVOLUTIONARYINNOVATION

VWBEETLE1938-1978

REVOLUTIONARYINNOVATION

ELECTRICCAR

DISRUPTIVE INNOVATION

INTERNET

EVOLUTIONARY INNOVATION KEEPS YOUR BUSINESS RUNNING ONLY

REVOLUTIONARY INNOVATIONGUARANTEES NOWADAYS THE BUSINESS SUCCESS

DISRUPTIVE INNOVATIONCAN ALWAYS HAPPEN AND IS EASY TO EVALUATE

THEY (BUSINESS) HAVE THEIR OWN

BUSINESS ARCHITECTURE*

PROCESSES

ENTITIESCommunication

FACADES

GOALS

* chris Reynolds

THEY (BUSINESS) MAY WANT TO

CHANGE EVERYTHING

PROCESSES

ENTITIESCommunication

FACADES

GOALS

THEY (BUSINESS)

NEED US (IT)

DISCREPANCYBETWEEN BUSINESS NEEDS AND IT DELIVERY

’80s ’90s ‘00s ‘10s

Business Need for Change

IT Ability To Deliver

Agile

Architecture?

WE HAVE OUR OWN

IT ARCHITECTURE*

Development

DEPLOYMENTQUALITY

Functionality

Scenarios

* Based on the concept by Philippe Kruchten

EnterpriseArchitecture

Development

DEPLOYMENTQUALITY

Functionality

Scenarios

PROCESSES

ENTITIESCommunication

FACADES

GOALS

http://blog.codecentric.de/en/2013/01/business-architecture-for-it-dummies/

CLEANARCHITECTURE*

Enterprise Business Rules

Application Business Rules

Interface Adapters

Frameworks & Drivers

Entities

Controllers

Ext. Interfaces

Use Cases

* Robert C. Martin (Uncle Bob)

INFLUENCE OF THE EVOLUTIONARYINNOVATION ON THE IT

Enterprise Business Rules

Application Business Rules

Interface Adapters

Frameworks & Drivers

Entities

Controllers

Ext. Interfaces

Use Cases

INFLUENCE OF THE REVOLUTIONARYINNOVATION ON THE IT

Enterprise Business Rules

Application Business Rules

Interface Adapters

Frameworks & Drivers

Entities

Controllers

Ext. Interfaces

Use Cases

INFLUENCE OF THE DISRUPTIVEINNOVATION ON THE IT

Enterprise Business Rules

Application Business Rules

Interface Adapters

Frameworks & DriversEntities

Controllers

Ext. Interfaces

Use Cases

AGILE PROCESS BASED “ARCHITECTURE”

#Iterative

#Incremental

LEAN PROCESSBASED „ARCHITECTURE“

#Defer Commitment and Decide As Late As Possible

#Deliver As Fast As Possible

#See and Optimize the Whole

AGILE ARCHITECTUREAS ANARCHITECTURALPROCESS?

AGILE ARCHITECTUREAS AN ARCHITECTURALFLAVOR?

AGILEARCHITECTURE

TRANSPARENCY AND INSPECTION?

AGILEARCHITECTUREADAPTATION?

ARCHITECTURE* IS LIKE

CONCRETE

* By Ian Graham

YOU CAN’T REFACTORARCHITECTUREIF SOMETHING WENT WRONGYOU HAVE TO

REDESIGN THE SYSTEM…

OR MAYBE…?

CLEANARCHITECTURE

Entities

Controllers

Ext. Interfaces

Use Cases

Active RecordDomain driven DesignCQRSAND MORE…

CLEAN HYBRIDARCHITECTURE

Ext. Interfaces

Entities

Controllers

Use Cases

Entities

Controllers

Use Cases

Entities

Controllers

Use Cases

Active Record CQRSDomain DrivenDesign

AGILE ARCHITECTUREAS AN ARCHITECTURALFLAVOR?

AGILE ARCHITECTUREAS ANARCHITECTURALBEHAVIOR?

I HAD A DREAMTRANSPARENCYINSPECTIONADAPTATION

MEDICAL ROBOTS

HUMAN OPTIMIZING

HUMAN HEALING

WHAT!?!SYSTEMTHAT ISSELF-OPTIMIZING = PRO-ACTIVESELF-HEALING = RE-ACTIVE

SELF-OPTIMIZING

QUERYOPTIMIZER

SELF-OPTIMIZING

LOADBALANCER

SELF-HEALING

WORKERPROCESSRECYCLING

AGILE ARCHITECTUREMEANS

ARCHITECTURALINTELLIGENCE

ABILITY OF THE SYSTEMTO MONITOR, OPTIMIZE, AND HEAL

ITSELF

QUALITY ATTRIBUTES

PERFORMANCE AND SCALABILITYAVAILABILITY AND RESILIENCE

EVOLUTIONACCESSIBILITY

INTERNATIONALIZATION LOCATION

REGULATION USABILITY SECURITY

FOUNDATION OFARCHITECTURAL INTELLIGENCE

FOUNDATION OFARCHITECTURAL INTELLIGENCE

REVERSIBLE COMPUTATION*LOGICAL REVERSIBILITY

* Lange, McKenzie, Tapp

Initial state

Final state

ConfigurationWith State Transition

SIMPLIFICATION#ONE-TO-ONE FUNCTIONS#INPUT AND OUTPUT VALUES#TIMESTAMPS

T1 | State 1 T2 | State 2 T3 | State 3

Storage

T1 | State 1

T2 | State 2

T3 | State 3

EVENT SOURCINGCAPTURE ALL CHANGES TO AN APPLICATION STATE AS A SEQUENCE OF EVENTS*

* M. Fowler

T1 | State 1 T2 | State 2 T3 | State 3

Consumer C

T1 | State 1

T2 | State 2

T3 | State 3

Consumer A

T1 | State 1

T2 | State 2

T3 | State 3

Consumer B

T1 | State 1

T2 | State 2

T3 | State 3

PLENTY OF APPLICATION POSSIBILITIES

#OPERATIONAL INTELLIGENCE#ACTIVE STRATEGY PATTERNS#ADAPTIVE USER EXPERIENCE#AUTOMATIC ERROR REMOVAL

AND MORE…

ARCHITECTURAL INTELLIGENCEFOR OPERATIONAL INTELLIGENCE

Process Execution Platform

Jee, Activity Process ControlCenter

Big Data, HadoopInspection

Adaptation

AGILE ARCHITECTUREAS ANARCHITECTURALBEHAVIOR?

PROCESS?FLAVOR?BEHAVIOR?

AGILE ARCHITECTURE

UP-FRONT ONLY

HYBRID ARCHITECTURE

ARCHITECTURALINTELLIGENCE

Adam Boczekmanagement Consultant

Agile Coach

Enterprise Architect

@nativeagile

adam.boczek@codecentric.de

http://codecentric.de

@codecentric

THANK YOU!

top related