SlideShare une entreprise Scribd logo
1  sur  33
Télécharger pour lire hors ligne
Microservices – die Architektur
für Agile-Entwicklung?
Christian Baranowski
Web - Application Mobile - Application
Application
Server
Presentation-LayerBusiness-LayerData-Layer
DatabaseFilesystem …
external Services
Feature
Product Owner
User Stories
Developers & Testers
Scrum Master
Agile Entwicklung und Software Architektur
Web - Application Mobile - Application
Application
Server
Presentation-LayerBusiness-LayerData-Layer
DatabaseFilesystem …
external Services
Product Owner
User Stories
Developers & Testers
Scrum Master
Agile Entwicklung und Software Architektur
Feature
Data Sprint Logic Sprint UI Sprint
Any organization that designs a system (defined
broadly) will produce a design whose structure is a
copy of the organization's communication structure.
-- Melvyn Conway, 1967
Agile Entwicklung und Software Architektur
Web - Application Mobile - Application
Application
Server
Presentation-LayerBusiness-LayerData-Layer
DatabaseFilesystem …
external Services
Feature
Product Owner
UX Team
Middelware Team
DB Team
User Stories
Component Teams
Conway's Law in action
Agile Entwicklung und Software Architektur
Component Teams
Web - Application Mobile - Application
Application
Server
Presentation-LayerBusiness-LayerData-Layer
DatabaseFilesystem …
external Services
Feature
Product Owner
User Stories
Agile Entwicklung und Software Architektur
Feature Feature
Epics
Feature Teams
… selbstorganisierte Teams
agile „FeaturesTeams“ sind…
… Teams die über längere Zeit
zusammen „Feature“ realisieren
agile „FeaturesTeams“ sind…
… Teams die alle notwendigen Arbeiten zur
Bereitstellung des „Feature“ verantwortet 

agile „FeaturesTeams“ sind…
… alle Teammitglieder zu 100%
einem „Feature“ Team zugeordnet
in agilen „FeaturesTeams“ sind…
Feature Teams and Agile
• Manifesto for Agile Software Development
• Our highest priority is to satisfy the customer through early and
continuous delivery of valuable software.
• Business people and developers must work together daily
throughout the project.
• The most efficient and effective method of conveying
information to and within a development team is face-to-face
conversation.
• The best architectures, requirements, and designs emerge from
self-organizing teams.
…designs emerge from self-organizing teams
Feature Team A Feature Team B Feature Team C
Business
Expert
Business
Expert
Business
Expert
Java
MySQL
Tomcat
Java
OSGi
jQuery
NodeJS
MongoDB
AngularJS
Microservice Architektur
Feature Team A Feature Team B Feature Team C
http://martinfowler.com/articles/microservices.html
How big is a microservice?
The largest sizes reported
follow Amazon's notion of
the Two Pizza Team
Monolithische und Microservice Architekturen
Loose Kopplung der einzelnen Services in
Anwendungen ermöglicht die Aufteilung
der Software in mehrere getrennte
Projekte.
Eine Microservice Architektur
ermöglicht agile Lösungen durch die
richtige Technologie für das richtige
Probleme. Kurz gesagt Polyglotte
Lösungen und Plattformen!
Einzelne Services lassen sich getrennt
Erstellen und in Betrieb nehmen dies
führt zu einfachen und schnellen
Continuous Delivery Pipelines.
Die Teams sind für den gesamten
Lebenszyklus des Service verantwortlich
von der Entwicklung bis in den Betrieb.
Abstimmung zwischen den
Teams beschränkt sich auf die
Vereinbarung der Schnittstellen
und Schnittstellenverträge.
Abstimmung zwischen den Teams
gemeinsame Datenbank
Feature Team A
Feature Team B
Abstimmung zwischen den Teams
REST API (Service)
Feature Team A Feature Team B
Abstimmung zwischen den Teams
Link
Feature Team A
Feature Team B
Abstimmung zwischen den Teams
MQ
Messaging
Feature Team A Feature Team B
Microservices Baukasten von Netflix
Service A
Service B
Service B
Eureka
Zuul
Ribbon Client
Ribbon Client
https://github.com/Netflix/eureka
https://github.com/Netflix/zuul
https://github.com/Netflix/ribbon
Hystrix
https://github.com/Netflix/Hystrix
Microservice Skalierung
Z
axis
–
data
partitoning
Scale
by
splitting
sim
ilarthings
X axis – horizontal duplication
Scale by cloning
Y axis – functional
decomposition
Scaling by splitting different things.
Quelle: THE ART OF SCALABILITY, MARTIN L. ABBOTT & MICHAEL T. FISHER
Microservices eignet sich nicht für jede
Software Architektur. Der Architekturstil
richtet sich besonderes an große
Lösungen z.B. Internet Dienste mit
besonderen Anforderungen an Skalierung.
Eine Microservice Architektur
führt zusätzliche Komplexität in
eine Architektur ein, mit der
umgegangen werden muss.
Eine monolithische Architektur
ist einfach zu bauen und für
kleine Projekte geeignet.
Transaktion Management in einer
Microservices Architektur mit
unterschiedlichen Datenbanken
ist eine große Herausforderung.
Polyglotte Plattform können
auch zu einem Technologie
Dschungel führen.
Es gibt neben Microservices auch
andere Möglichkeiten z.B. Plugin
Architekturen wie OSGi die es
ermöglichen Teile getrennt zu bauen.
Microservices – die
Architektur für Agile-
Entwicklung?

Contenu connexe

Tendances

CodeTalks Vortrag: Automatisierung mit Ansible & Jenkins @ LeanIX Enterprise ...
CodeTalks Vortrag: Automatisierung mit Ansible & Jenkins @ LeanIX Enterprise ...CodeTalks Vortrag: Automatisierung mit Ansible & Jenkins @ LeanIX Enterprise ...
CodeTalks Vortrag: Automatisierung mit Ansible & Jenkins @ LeanIX Enterprise ...LeanIX GmbH
 
Warum empfehle ich meinen Kunden das Spring Framework?
Warum empfehle ich meinen Kunden das Spring Framework? Warum empfehle ich meinen Kunden das Spring Framework?
Warum empfehle ich meinen Kunden das Spring Framework? Michael Plöd
 
Microservices mit dem MicroProfile
Microservices mit dem MicroProfileMicroservices mit dem MicroProfile
Microservices mit dem MicroProfileOPEN KNOWLEDGE GmbH
 
Mehr Sicherheit durch Automatisierung
Mehr Sicherheit durch AutomatisierungMehr Sicherheit durch Automatisierung
Mehr Sicherheit durch AutomatisierungOPEN KNOWLEDGE GmbH
 
BATbern41 Microservices@Enterprise
BATbern41 Microservices@EnterpriseBATbern41 Microservices@Enterprise
BATbern41 Microservices@EnterpriseBATbern
 
Die dunkle Seite der Microservices - und wie du sie besiegen kannst
Die dunkle Seite der Microservices - und wie du sie besiegen kannst Die dunkle Seite der Microservices - und wie du sie besiegen kannst
Die dunkle Seite der Microservices - und wie du sie besiegen kannst inovex GmbH
 
Das ist doch alles nur Frontend - Wer braucht da schon Architektur?
Das ist doch alles nur Frontend - Wer braucht da schon Architektur?Das ist doch alles nur Frontend - Wer braucht da schon Architektur?
Das ist doch alles nur Frontend - Wer braucht da schon Architektur?OPEN KNOWLEDGE GmbH
 
BATbern41 Die Evolution zu Microservices
BATbern41 Die Evolution zu MicroservicesBATbern41 Die Evolution zu Microservices
BATbern41 Die Evolution zu MicroservicesBATbern
 
DevDay 2017: Bert Radke - Der Frontend Monolith
DevDay 2017: Bert Radke - Der Frontend MonolithDevDay 2017: Bert Radke - Der Frontend Monolith
DevDay 2017: Bert Radke - Der Frontend MonolithDevDay Dresden
 
Hilfe, ich will meinen Monolithen zurück!
Hilfe, ich will meinen Monolithen zurück!Hilfe, ich will meinen Monolithen zurück!
Hilfe, ich will meinen Monolithen zurück!OPEN KNOWLEDGE GmbH
 
Softwerkskammer Chemnitz Special Pecha Kucha Night
Softwerkskammer Chemnitz Special Pecha Kucha NightSoftwerkskammer Chemnitz Special Pecha Kucha Night
Softwerkskammer Chemnitz Special Pecha Kucha NightChristinaLerch1
 
micro services
micro servicesmicro services
micro servicessmancke
 
Auf gehts in die Cloud: „Das kann doch nicht so schwer sein!“
Auf gehts in die Cloud: „Das kann doch nicht so schwer sein!“Auf gehts in die Cloud: „Das kann doch nicht so schwer sein!“
Auf gehts in die Cloud: „Das kann doch nicht so schwer sein!“OPEN KNOWLEDGE GmbH
 
DevDay 2017: Ralf Knobloch - "Einfacher leben mit DevOps bei der MMS !!" - De...
DevDay 2017: Ralf Knobloch - "Einfacher leben mit DevOps bei der MMS !!" - De...DevDay 2017: Ralf Knobloch - "Einfacher leben mit DevOps bei der MMS !!" - De...
DevDay 2017: Ralf Knobloch - "Einfacher leben mit DevOps bei der MMS !!" - De...DevDay Dresden
 
Cloud Architekturen - von "less Server" zu Serverless
Cloud Architekturen - von "less Server" zu ServerlessCloud Architekturen - von "less Server" zu Serverless
Cloud Architekturen - von "less Server" zu ServerlessOPEN KNOWLEDGE GmbH
 
Webcast Azure Integration Migration - Von BizTalk in die Cloud
Webcast Azure Integration Migration - Von BizTalk in die CloudWebcast Azure Integration Migration - Von BizTalk in die Cloud
Webcast Azure Integration Migration - Von BizTalk in die CloudQUIBIQ Hamburg
 
Auf geht‘s in die Cloud: „Das kann doch nicht so schwer sein!“
Auf geht‘s in die Cloud: „Das kann doch nicht so schwer sein!“Auf geht‘s in die Cloud: „Das kann doch nicht so schwer sein!“
Auf geht‘s in die Cloud: „Das kann doch nicht so schwer sein!“OPEN KNOWLEDGE GmbH
 
Azure Bootcamp Hamburg
Azure Bootcamp Hamburg Azure Bootcamp Hamburg
Azure Bootcamp Hamburg Lennart Passig
 

Tendances (20)

CodeTalks Vortrag: Automatisierung mit Ansible & Jenkins @ LeanIX Enterprise ...
CodeTalks Vortrag: Automatisierung mit Ansible & Jenkins @ LeanIX Enterprise ...CodeTalks Vortrag: Automatisierung mit Ansible & Jenkins @ LeanIX Enterprise ...
CodeTalks Vortrag: Automatisierung mit Ansible & Jenkins @ LeanIX Enterprise ...
 
Warum empfehle ich meinen Kunden das Spring Framework?
Warum empfehle ich meinen Kunden das Spring Framework? Warum empfehle ich meinen Kunden das Spring Framework?
Warum empfehle ich meinen Kunden das Spring Framework?
 
Microservices mit dem MicroProfile
Microservices mit dem MicroProfileMicroservices mit dem MicroProfile
Microservices mit dem MicroProfile
 
Mehr Sicherheit durch Automatisierung
Mehr Sicherheit durch AutomatisierungMehr Sicherheit durch Automatisierung
Mehr Sicherheit durch Automatisierung
 
BATbern41 Microservices@Enterprise
BATbern41 Microservices@EnterpriseBATbern41 Microservices@Enterprise
BATbern41 Microservices@Enterprise
 
Die dunkle Seite der Microservices - und wie du sie besiegen kannst
Die dunkle Seite der Microservices - und wie du sie besiegen kannst Die dunkle Seite der Microservices - und wie du sie besiegen kannst
Die dunkle Seite der Microservices - und wie du sie besiegen kannst
 
Das ist doch alles nur Frontend - Wer braucht da schon Architektur?
Das ist doch alles nur Frontend - Wer braucht da schon Architektur?Das ist doch alles nur Frontend - Wer braucht da schon Architektur?
Das ist doch alles nur Frontend - Wer braucht da schon Architektur?
 
BATbern41 Die Evolution zu Microservices
BATbern41 Die Evolution zu MicroservicesBATbern41 Die Evolution zu Microservices
BATbern41 Die Evolution zu Microservices
 
DevDay 2017: Bert Radke - Der Frontend Monolith
DevDay 2017: Bert Radke - Der Frontend MonolithDevDay 2017: Bert Radke - Der Frontend Monolith
DevDay 2017: Bert Radke - Der Frontend Monolith
 
Hilfe, ich will meinen Monolithen zurück!
Hilfe, ich will meinen Monolithen zurück!Hilfe, ich will meinen Monolithen zurück!
Hilfe, ich will meinen Monolithen zurück!
 
Enterprise Java on Steroids
Enterprise Java on SteroidsEnterprise Java on Steroids
Enterprise Java on Steroids
 
Softwerkskammer Chemnitz Special Pecha Kucha Night
Softwerkskammer Chemnitz Special Pecha Kucha NightSoftwerkskammer Chemnitz Special Pecha Kucha Night
Softwerkskammer Chemnitz Special Pecha Kucha Night
 
Serverless Survival Guide
Serverless Survival GuideServerless Survival Guide
Serverless Survival Guide
 
micro services
micro servicesmicro services
micro services
 
Auf gehts in die Cloud: „Das kann doch nicht so schwer sein!“
Auf gehts in die Cloud: „Das kann doch nicht so schwer sein!“Auf gehts in die Cloud: „Das kann doch nicht so schwer sein!“
Auf gehts in die Cloud: „Das kann doch nicht so schwer sein!“
 
DevDay 2017: Ralf Knobloch - "Einfacher leben mit DevOps bei der MMS !!" - De...
DevDay 2017: Ralf Knobloch - "Einfacher leben mit DevOps bei der MMS !!" - De...DevDay 2017: Ralf Knobloch - "Einfacher leben mit DevOps bei der MMS !!" - De...
DevDay 2017: Ralf Knobloch - "Einfacher leben mit DevOps bei der MMS !!" - De...
 
Cloud Architekturen - von "less Server" zu Serverless
Cloud Architekturen - von "less Server" zu ServerlessCloud Architekturen - von "less Server" zu Serverless
Cloud Architekturen - von "less Server" zu Serverless
 
Webcast Azure Integration Migration - Von BizTalk in die Cloud
Webcast Azure Integration Migration - Von BizTalk in die CloudWebcast Azure Integration Migration - Von BizTalk in die Cloud
Webcast Azure Integration Migration - Von BizTalk in die Cloud
 
Auf geht‘s in die Cloud: „Das kann doch nicht so schwer sein!“
Auf geht‘s in die Cloud: „Das kann doch nicht so schwer sein!“Auf geht‘s in die Cloud: „Das kann doch nicht so schwer sein!“
Auf geht‘s in die Cloud: „Das kann doch nicht so schwer sein!“
 
Azure Bootcamp Hamburg
Azure Bootcamp Hamburg Azure Bootcamp Hamburg
Azure Bootcamp Hamburg
 

En vedette

Automotive Business Manager Bury St Edmunds
Automotive Business Manager Bury St EdmundsAutomotive Business Manager Bury St Edmunds
Automotive Business Manager Bury St EdmundsDarren Roach
 
Yin and Yang - Product Manager and Usability/Ux-Professionals in der Software...
Yin and Yang - Product Manager and Usability/Ux-Professionals in der Software...Yin and Yang - Product Manager and Usability/Ux-Professionals in der Software...
Yin and Yang - Product Manager and Usability/Ux-Professionals in der Software...Prof. Dr. Alexander Maedche
 
Favorire i feature teams con architetture microservices
Favorire i feature teams con architetture microservicesFavorire i feature teams con architetture microservices
Favorire i feature teams con architetture microservicesGiulio Roggero
 
The Architecture of Understanding
The Architecture of UnderstandingThe Architecture of Understanding
The Architecture of UnderstandingPeter Morville
 
muCon 2015 "The Business Behind Microservices: Organisational, Architectural,...
muCon 2015 "The Business Behind Microservices: Organisational, Architectural,...muCon 2015 "The Business Behind Microservices: Organisational, Architectural,...
muCon 2015 "The Business Behind Microservices: Organisational, Architectural,...Daniel Bryant
 
USECON_RoX_update-software-AG_Experience-als-Wettbewerbsdifferenzierung
USECON_RoX_update-software-AG_Experience-als-WettbewerbsdifferenzierungUSECON_RoX_update-software-AG_Experience-als-Wettbewerbsdifferenzierung
USECON_RoX_update-software-AG_Experience-als-WettbewerbsdifferenzierungUSECON
 
Schnell-Dokumentation - ein Beispiel
Schnell-Dokumentation - ein BeispielSchnell-Dokumentation - ein Beispiel
Schnell-Dokumentation - ein BeispielSabine Schmelzer
 
Java micro-services
Java micro-servicesJava micro-services
Java micro-servicesJames Lewis
 
CQRS in der Praxis - Newsletter Double-Opt-In
CQRS in der Praxis - Newsletter Double-Opt-InCQRS in der Praxis - Newsletter Double-Opt-In
CQRS in der Praxis - Newsletter Double-Opt-InPHP in DD
 
DevOps in der Praxis
DevOps in der PraxisDevOps in der Praxis
DevOps in der Praxisinovex GmbH
 
Software Product Lines by Dr. Indika Kumara
Software Product Lines by Dr. Indika KumaraSoftware Product Lines by Dr. Indika Kumara
Software Product Lines by Dr. Indika KumaraThejan Wijesinghe
 
Software Product Management: Strategic Success Factor
Software Product Management: Strategic Success FactorSoftware Product Management: Strategic Success Factor
Software Product Management: Strategic Success FactorSamuel A. Fricker
 
CQRS basierte Architekturen mit Microservices
CQRS basierte Architekturen mit MicroservicesCQRS basierte Architekturen mit Microservices
CQRS basierte Architekturen mit MicroservicesMichael Plöd
 
BizDevOps - Die prozessorientierte IT-Organisation
BizDevOps - Die prozessorientierte IT-OrganisationBizDevOps - Die prozessorientierte IT-Organisation
BizDevOps - Die prozessorientierte IT-OrganisationUwe Weng
 
Delivering with Microservices - How to Iterate Towards Sophistication
Delivering with Microservices - How to Iterate Towards SophisticationDelivering with Microservices - How to Iterate Towards Sophistication
Delivering with Microservices - How to Iterate Towards SophisticationThoughtworks
 
Individualität durch Store Design | Ansgar Schmidt und Henning Ziepke auf dem...
Individualität durch Store Design | Ansgar Schmidt und Henning Ziepke auf dem...Individualität durch Store Design | Ansgar Schmidt und Henning Ziepke auf dem...
Individualität durch Store Design | Ansgar Schmidt und Henning Ziepke auf dem...Vorname Nachname
 
Farbe wahrnehmen - oder warum ein bildschönes Mädchen blaues Haar hätte
Farbe wahrnehmen - oder warum ein bildschönes Mädchen blaues Haar hätteFarbe wahrnehmen - oder warum ein bildschönes Mädchen blaues Haar hätte
Farbe wahrnehmen - oder warum ein bildschönes Mädchen blaues Haar hätteMathias Schunke
 
Prodir-Präsentation 2013
Prodir-Präsentation 2013Prodir-Präsentation 2013
Prodir-Präsentation 2013prodir
 
Aras PLM Tools
Aras PLM ToolsAras PLM Tools
Aras PLM ToolsAras
 

En vedette (20)

Automotive Business Manager Bury St Edmunds
Automotive Business Manager Bury St EdmundsAutomotive Business Manager Bury St Edmunds
Automotive Business Manager Bury St Edmunds
 
Yin and Yang - Product Manager and Usability/Ux-Professionals in der Software...
Yin and Yang - Product Manager and Usability/Ux-Professionals in der Software...Yin and Yang - Product Manager and Usability/Ux-Professionals in der Software...
Yin and Yang - Product Manager and Usability/Ux-Professionals in der Software...
 
Favorire i feature teams con architetture microservices
Favorire i feature teams con architetture microservicesFavorire i feature teams con architetture microservices
Favorire i feature teams con architetture microservices
 
The Architecture of Understanding
The Architecture of UnderstandingThe Architecture of Understanding
The Architecture of Understanding
 
muCon 2015 "The Business Behind Microservices: Organisational, Architectural,...
muCon 2015 "The Business Behind Microservices: Organisational, Architectural,...muCon 2015 "The Business Behind Microservices: Organisational, Architectural,...
muCon 2015 "The Business Behind Microservices: Organisational, Architectural,...
 
Zeb Pitch
Zeb PitchZeb Pitch
Zeb Pitch
 
USECON_RoX_update-software-AG_Experience-als-Wettbewerbsdifferenzierung
USECON_RoX_update-software-AG_Experience-als-WettbewerbsdifferenzierungUSECON_RoX_update-software-AG_Experience-als-Wettbewerbsdifferenzierung
USECON_RoX_update-software-AG_Experience-als-Wettbewerbsdifferenzierung
 
Schnell-Dokumentation - ein Beispiel
Schnell-Dokumentation - ein BeispielSchnell-Dokumentation - ein Beispiel
Schnell-Dokumentation - ein Beispiel
 
Java micro-services
Java micro-servicesJava micro-services
Java micro-services
 
CQRS in der Praxis - Newsletter Double-Opt-In
CQRS in der Praxis - Newsletter Double-Opt-InCQRS in der Praxis - Newsletter Double-Opt-In
CQRS in der Praxis - Newsletter Double-Opt-In
 
DevOps in der Praxis
DevOps in der PraxisDevOps in der Praxis
DevOps in der Praxis
 
Software Product Lines by Dr. Indika Kumara
Software Product Lines by Dr. Indika KumaraSoftware Product Lines by Dr. Indika Kumara
Software Product Lines by Dr. Indika Kumara
 
Software Product Management: Strategic Success Factor
Software Product Management: Strategic Success FactorSoftware Product Management: Strategic Success Factor
Software Product Management: Strategic Success Factor
 
CQRS basierte Architekturen mit Microservices
CQRS basierte Architekturen mit MicroservicesCQRS basierte Architekturen mit Microservices
CQRS basierte Architekturen mit Microservices
 
BizDevOps - Die prozessorientierte IT-Organisation
BizDevOps - Die prozessorientierte IT-OrganisationBizDevOps - Die prozessorientierte IT-Organisation
BizDevOps - Die prozessorientierte IT-Organisation
 
Delivering with Microservices - How to Iterate Towards Sophistication
Delivering with Microservices - How to Iterate Towards SophisticationDelivering with Microservices - How to Iterate Towards Sophistication
Delivering with Microservices - How to Iterate Towards Sophistication
 
Individualität durch Store Design | Ansgar Schmidt und Henning Ziepke auf dem...
Individualität durch Store Design | Ansgar Schmidt und Henning Ziepke auf dem...Individualität durch Store Design | Ansgar Schmidt und Henning Ziepke auf dem...
Individualität durch Store Design | Ansgar Schmidt und Henning Ziepke auf dem...
 
Farbe wahrnehmen - oder warum ein bildschönes Mädchen blaues Haar hätte
Farbe wahrnehmen - oder warum ein bildschönes Mädchen blaues Haar hätteFarbe wahrnehmen - oder warum ein bildschönes Mädchen blaues Haar hätte
Farbe wahrnehmen - oder warum ein bildschönes Mädchen blaues Haar hätte
 
Prodir-Präsentation 2013
Prodir-Präsentation 2013Prodir-Präsentation 2013
Prodir-Präsentation 2013
 
Aras PLM Tools
Aras PLM ToolsAras PLM Tools
Aras PLM Tools
 

Similaire à Microservices – die Architektur für Agile-Entwicklung?

Modernisierung in Zeiten wie diesen
Modernisierung in Zeiten wie diesenModernisierung in Zeiten wie diesen
Modernisierung in Zeiten wie diesenenpit GmbH & Co. KG
 
Migration von Aftersales Systemen auf eine Cloud Plattform
Migration von Aftersales Systemen auf eine Cloud PlattformMigration von Aftersales Systemen auf eine Cloud Plattform
Migration von Aftersales Systemen auf eine Cloud PlattformQAware GmbH
 
Steinzeit war gestern! Wege der Cloud-nativen Evolution.
Steinzeit war gestern! Wege der Cloud-nativen Evolution.Steinzeit war gestern! Wege der Cloud-nativen Evolution.
Steinzeit war gestern! Wege der Cloud-nativen Evolution.QAware GmbH
 
Steinzeit war gestern! Wege der cloud-nativen Evolution
Steinzeit war gestern! Wege der cloud-nativen EvolutionSteinzeit war gestern! Wege der cloud-nativen Evolution
Steinzeit war gestern! Wege der cloud-nativen EvolutionQAware GmbH
 
Steinzeit war gestern! Wege der Cloud-nativen Evolution.
Steinzeit war gestern! Wege der Cloud-nativen Evolution.Steinzeit war gestern! Wege der Cloud-nativen Evolution.
Steinzeit war gestern! Wege der Cloud-nativen Evolution.QAware GmbH
 
Pragmatic SOA - Beschränken auf das Wesentliche
Pragmatic SOA - Beschränken auf das WesentlichePragmatic SOA - Beschränken auf das Wesentliche
Pragmatic SOA - Beschränken auf das Wesentliche1&1
 
Microprofile.io - Cloud Native mit Java EE
Microprofile.io - Cloud Native mit Java EEMicroprofile.io - Cloud Native mit Java EE
Microprofile.io - Cloud Native mit Java EEMichael Hofmann
 
Steinzeit war gestern! Wege der cloud-nativen Evolution
Steinzeit war gestern! Wege der cloud-nativen EvolutionSteinzeit war gestern! Wege der cloud-nativen Evolution
Steinzeit war gestern! Wege der cloud-nativen EvolutionQAware GmbH
 
Sponsorenbeschreibung Tools4AgileTeams 2012
Sponsorenbeschreibung Tools4AgileTeams 2012Sponsorenbeschreibung Tools4AgileTeams 2012
Sponsorenbeschreibung Tools4AgileTeams 2012Martin Seibert
 
Software Architecture Design Patterns der COMLINE Cloud Service Platform - CSP
Software Architecture Design Patterns der COMLINE Cloud Service Platform - CSPSoftware Architecture Design Patterns der COMLINE Cloud Service Platform - CSP
Software Architecture Design Patterns der COMLINE Cloud Service Platform - CSPChristian Guenther
 
Oracle Mobile Cloud Service im Einsatz
Oracle Mobile Cloud Service im EinsatzOracle Mobile Cloud Service im Einsatz
Oracle Mobile Cloud Service im EinsatzVolker Linz
 
Entwicklung mit Volt MX und Co. | Teil 1
Entwicklung mit Volt MX und Co. | Teil 1Entwicklung mit Volt MX und Co. | Teil 1
Entwicklung mit Volt MX und Co. | Teil 1DNUG e.V.
 
Nutzen und Anwendungspotentiale von Enterprise Wikis
Nutzen und Anwendungspotentiale von Enterprise WikisNutzen und Anwendungspotentiale von Enterprise Wikis
Nutzen und Anwendungspotentiale von Enterprise Wikispunkt. netServices
 
Microservices und das Entity Control Boundary Pattern
Microservices und das Entity Control Boundary PatternMicroservices und das Entity Control Boundary Pattern
Microservices und das Entity Control Boundary PatternBrockhaus Consulting GmbH
 
Event-Streaming in Echtzeit: Der MongoDB-Kafka-Connector in Action!
Event-Streaming in Echtzeit: Der MongoDB-Kafka-Connector in Action!Event-Streaming in Echtzeit: Der MongoDB-Kafka-Connector in Action!
Event-Streaming in Echtzeit: Der MongoDB-Kafka-Connector in Action!confluent
 
Compliance und Governance in der DevOps-Acht
Compliance und Governance in der DevOps-AchtCompliance und Governance in der DevOps-Acht
Compliance und Governance in der DevOps-AchtBATbern
 
Innovationen aus der Cloud ganz einfach nutzen
Innovationen aus der Cloud ganz einfach nutzenInnovationen aus der Cloud ganz einfach nutzen
Innovationen aus der Cloud ganz einfach nutzenAmazon Web Services
 
Slides zum Impulsreferat: HCL UDP - DNUG Stammtisch Salzburg
Slides zum Impulsreferat: HCL UDP - DNUG Stammtisch SalzburgSlides zum Impulsreferat: HCL UDP - DNUG Stammtisch Salzburg
Slides zum Impulsreferat: HCL UDP - DNUG Stammtisch SalzburgDNUG e.V.
 
Innovations- und Informationskultur mit Web 2.0 (2010)
Innovations- und Informationskultur mit Web 2.0 (2010)Innovations- und Informationskultur mit Web 2.0 (2010)
Innovations- und Informationskultur mit Web 2.0 (2010)Intelliact AG
 

Similaire à Microservices – die Architektur für Agile-Entwicklung? (20)

Modernisierung in Zeiten wie diesen
Modernisierung in Zeiten wie diesenModernisierung in Zeiten wie diesen
Modernisierung in Zeiten wie diesen
 
Migration von Aftersales Systemen auf eine Cloud Plattform
Migration von Aftersales Systemen auf eine Cloud PlattformMigration von Aftersales Systemen auf eine Cloud Plattform
Migration von Aftersales Systemen auf eine Cloud Plattform
 
Steinzeit war gestern! Wege der Cloud-nativen Evolution.
Steinzeit war gestern! Wege der Cloud-nativen Evolution.Steinzeit war gestern! Wege der Cloud-nativen Evolution.
Steinzeit war gestern! Wege der Cloud-nativen Evolution.
 
Steinzeit war gestern! Wege der cloud-nativen Evolution
Steinzeit war gestern! Wege der cloud-nativen EvolutionSteinzeit war gestern! Wege der cloud-nativen Evolution
Steinzeit war gestern! Wege der cloud-nativen Evolution
 
Steinzeit war gestern! Wege der Cloud-nativen Evolution.
Steinzeit war gestern! Wege der Cloud-nativen Evolution.Steinzeit war gestern! Wege der Cloud-nativen Evolution.
Steinzeit war gestern! Wege der Cloud-nativen Evolution.
 
Pragmatic SOA - Beschränken auf das Wesentliche
Pragmatic SOA - Beschränken auf das WesentlichePragmatic SOA - Beschränken auf das Wesentliche
Pragmatic SOA - Beschränken auf das Wesentliche
 
Microprofile.io - Cloud Native mit Java EE
Microprofile.io - Cloud Native mit Java EEMicroprofile.io - Cloud Native mit Java EE
Microprofile.io - Cloud Native mit Java EE
 
Steinzeit war gestern! Wege der cloud-nativen Evolution
Steinzeit war gestern! Wege der cloud-nativen EvolutionSteinzeit war gestern! Wege der cloud-nativen Evolution
Steinzeit war gestern! Wege der cloud-nativen Evolution
 
Sponsorenbeschreibung Tools4AgileTeams 2012
Sponsorenbeschreibung Tools4AgileTeams 2012Sponsorenbeschreibung Tools4AgileTeams 2012
Sponsorenbeschreibung Tools4AgileTeams 2012
 
Software Architecture Design Patterns der COMLINE Cloud Service Platform - CSP
Software Architecture Design Patterns der COMLINE Cloud Service Platform - CSPSoftware Architecture Design Patterns der COMLINE Cloud Service Platform - CSP
Software Architecture Design Patterns der COMLINE Cloud Service Platform - CSP
 
Oracle Mobile Cloud Service im Einsatz
Oracle Mobile Cloud Service im EinsatzOracle Mobile Cloud Service im Einsatz
Oracle Mobile Cloud Service im Einsatz
 
Entwicklung mit Volt MX und Co. | Teil 1
Entwicklung mit Volt MX und Co. | Teil 1Entwicklung mit Volt MX und Co. | Teil 1
Entwicklung mit Volt MX und Co. | Teil 1
 
Nutzen und Anwendungspotentiale von Enterprise Wikis
Nutzen und Anwendungspotentiale von Enterprise WikisNutzen und Anwendungspotentiale von Enterprise Wikis
Nutzen und Anwendungspotentiale von Enterprise Wikis
 
Microservices und das Entity Control Boundary Pattern
Microservices und das Entity Control Boundary PatternMicroservices und das Entity Control Boundary Pattern
Microservices und das Entity Control Boundary Pattern
 
Event-Streaming in Echtzeit: Der MongoDB-Kafka-Connector in Action!
Event-Streaming in Echtzeit: Der MongoDB-Kafka-Connector in Action!Event-Streaming in Echtzeit: Der MongoDB-Kafka-Connector in Action!
Event-Streaming in Echtzeit: Der MongoDB-Kafka-Connector in Action!
 
Compliance und Governance in der DevOps-Acht
Compliance und Governance in der DevOps-AchtCompliance und Governance in der DevOps-Acht
Compliance und Governance in der DevOps-Acht
 
Innovationen aus der Cloud ganz einfach nutzen
Innovationen aus der Cloud ganz einfach nutzenInnovationen aus der Cloud ganz einfach nutzen
Innovationen aus der Cloud ganz einfach nutzen
 
JavaFX Real-World Apps
JavaFX Real-World AppsJavaFX Real-World Apps
JavaFX Real-World Apps
 
Slides zum Impulsreferat: HCL UDP - DNUG Stammtisch Salzburg
Slides zum Impulsreferat: HCL UDP - DNUG Stammtisch SalzburgSlides zum Impulsreferat: HCL UDP - DNUG Stammtisch Salzburg
Slides zum Impulsreferat: HCL UDP - DNUG Stammtisch Salzburg
 
Innovations- und Informationskultur mit Web 2.0 (2010)
Innovations- und Informationskultur mit Web 2.0 (2010)Innovations- und Informationskultur mit Web 2.0 (2010)
Innovations- und Informationskultur mit Web 2.0 (2010)
 

Plus de Christian Baranowski

OSGi and Spring Data for simple (Web) Application Development
OSGi and Spring Data  for simple (Web) Application DevelopmentOSGi and Spring Data  for simple (Web) Application Development
OSGi and Spring Data for simple (Web) Application DevelopmentChristian Baranowski
 
BDD - Behavior Driven Development Webapps mit Groovy Spock und Geb
BDD - Behavior Driven Development Webapps mit Groovy Spock und GebBDD - Behavior Driven Development Webapps mit Groovy Spock und Geb
BDD - Behavior Driven Development Webapps mit Groovy Spock und GebChristian Baranowski
 
Komponententests und Testabdeckung
Komponententests und TestabdeckungKomponententests und Testabdeckung
Komponententests und TestabdeckungChristian Baranowski
 
Einführung Vorgehensmodelle und Agile Software Entwicklung
Einführung Vorgehensmodelle und Agile Software EntwicklungEinführung Vorgehensmodelle und Agile Software Entwicklung
Einführung Vorgehensmodelle und Agile Software EntwicklungChristian Baranowski
 
Software Testing und Qualitätssicherung
Software Testing und QualitätssicherungSoftware Testing und Qualitätssicherung
Software Testing und QualitätssicherungChristian Baranowski
 
Einführung Software Testing und Qualitätssicherung
Einführung Software Testing und QualitätssicherungEinführung Software Testing und Qualitätssicherung
Einführung Software Testing und QualitätssicherungChristian Baranowski
 
Datenbankzugriff mit der Java Persistence Api
Datenbankzugriff mit der Java Persistence ApiDatenbankzugriff mit der Java Persistence Api
Datenbankzugriff mit der Java Persistence ApiChristian Baranowski
 

Plus de Christian Baranowski (20)

OSGi and Spring Data for simple (Web) Application Development
OSGi and Spring Data  for simple (Web) Application DevelopmentOSGi and Spring Data  for simple (Web) Application Development
OSGi and Spring Data for simple (Web) Application Development
 
BDD - Behavior Driven Development Webapps mit Groovy Spock und Geb
BDD - Behavior Driven Development Webapps mit Groovy Spock und GebBDD - Behavior Driven Development Webapps mit Groovy Spock und Geb
BDD - Behavior Driven Development Webapps mit Groovy Spock und Geb
 
Komponententests und Testabdeckung
Komponententests und TestabdeckungKomponententests und Testabdeckung
Komponententests und Testabdeckung
 
OSGi Web Development in Action
OSGi Web Development in ActionOSGi Web Development in Action
OSGi Web Development in Action
 
Spock and Geb in Action
Spock and Geb in ActionSpock and Geb in Action
Spock and Geb in Action
 
Continuous Delivery in Action
Continuous Delivery in ActionContinuous Delivery in Action
Continuous Delivery in Action
 
Gradle and Continuous Delivery
Gradle and Continuous DeliveryGradle and Continuous Delivery
Gradle and Continuous Delivery
 
Spock and Geb
Spock and GebSpock and Geb
Spock and Geb
 
Semantic Versioning
Semantic VersioningSemantic Versioning
Semantic Versioning
 
OSGi Community Updates 2012
OSGi Community Updates 2012OSGi Community Updates 2012
OSGi Community Updates 2012
 
OSGi Mars World in Action
OSGi Mars World in ActionOSGi Mars World in Action
OSGi Mars World in Action
 
Warum OSGi?
Warum OSGi?Warum OSGi?
Warum OSGi?
 
Top10- Software Engineering Books
Top10- Software Engineering BooksTop10- Software Engineering Books
Top10- Software Engineering Books
 
Domain Driven Design - 10min
Domain Driven Design - 10minDomain Driven Design - 10min
Domain Driven Design - 10min
 
SDC - Einführung in Scala
SDC - Einführung in ScalaSDC - Einführung in Scala
SDC - Einführung in Scala
 
Einführung Vorgehensmodelle und Agile Software Entwicklung
Einführung Vorgehensmodelle und Agile Software EntwicklungEinführung Vorgehensmodelle und Agile Software Entwicklung
Einführung Vorgehensmodelle und Agile Software Entwicklung
 
Software Testing und Qualitätssicherung
Software Testing und QualitätssicherungSoftware Testing und Qualitätssicherung
Software Testing und Qualitätssicherung
 
Einführung Software Testing und Qualitätssicherung
Einführung Software Testing und QualitätssicherungEinführung Software Testing und Qualitätssicherung
Einführung Software Testing und Qualitätssicherung
 
Datenbankzugriff mit der Java Persistence Api
Datenbankzugriff mit der Java Persistence ApiDatenbankzugriff mit der Java Persistence Api
Datenbankzugriff mit der Java Persistence Api
 
Java Servlets und AJAX
Java Servlets und AJAX Java Servlets und AJAX
Java Servlets und AJAX
 

Microservices – die Architektur für Agile-Entwicklung?

  • 1. Microservices – die Architektur für Agile-Entwicklung? Christian Baranowski
  • 2. Web - Application Mobile - Application Application Server Presentation-LayerBusiness-LayerData-Layer DatabaseFilesystem … external Services Feature Product Owner User Stories Developers & Testers Scrum Master Agile Entwicklung und Software Architektur
  • 3. Web - Application Mobile - Application Application Server Presentation-LayerBusiness-LayerData-Layer DatabaseFilesystem … external Services Product Owner User Stories Developers & Testers Scrum Master Agile Entwicklung und Software Architektur Feature Data Sprint Logic Sprint UI Sprint
  • 4. Any organization that designs a system (defined broadly) will produce a design whose structure is a copy of the organization's communication structure. -- Melvyn Conway, 1967
  • 5. Agile Entwicklung und Software Architektur Web - Application Mobile - Application Application Server Presentation-LayerBusiness-LayerData-Layer DatabaseFilesystem … external Services Feature Product Owner UX Team Middelware Team DB Team User Stories Component Teams Conway's Law in action
  • 6. Agile Entwicklung und Software Architektur Component Teams
  • 7. Web - Application Mobile - Application Application Server Presentation-LayerBusiness-LayerData-Layer DatabaseFilesystem … external Services Feature Product Owner User Stories Agile Entwicklung und Software Architektur Feature Feature Epics Feature Teams
  • 8. … selbstorganisierte Teams agile „FeaturesTeams“ sind…
  • 9. … Teams die über längere Zeit zusammen „Feature“ realisieren agile „FeaturesTeams“ sind…
  • 10. … Teams die alle notwendigen Arbeiten zur Bereitstellung des „Feature“ verantwortet 
 agile „FeaturesTeams“ sind…
  • 11. … alle Teammitglieder zu 100% einem „Feature“ Team zugeordnet in agilen „FeaturesTeams“ sind…
  • 12. Feature Teams and Agile • Manifesto for Agile Software Development • Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. • Business people and developers must work together daily throughout the project. • The most efficient and effective method of conveying information to and within a development team is face-to-face conversation. • The best architectures, requirements, and designs emerge from self-organizing teams.
  • 13. …designs emerge from self-organizing teams Feature Team A Feature Team B Feature Team C Business Expert Business Expert Business Expert Java MySQL Tomcat Java OSGi jQuery NodeJS MongoDB AngularJS
  • 14. Microservice Architektur Feature Team A Feature Team B Feature Team C http://martinfowler.com/articles/microservices.html How big is a microservice? The largest sizes reported follow Amazon's notion of the Two Pizza Team
  • 16. Loose Kopplung der einzelnen Services in Anwendungen ermöglicht die Aufteilung der Software in mehrere getrennte Projekte.
  • 17. Eine Microservice Architektur ermöglicht agile Lösungen durch die richtige Technologie für das richtige Probleme. Kurz gesagt Polyglotte Lösungen und Plattformen!
  • 18. Einzelne Services lassen sich getrennt Erstellen und in Betrieb nehmen dies führt zu einfachen und schnellen Continuous Delivery Pipelines.
  • 19. Die Teams sind für den gesamten Lebenszyklus des Service verantwortlich von der Entwicklung bis in den Betrieb.
  • 20. Abstimmung zwischen den Teams beschränkt sich auf die Vereinbarung der Schnittstellen und Schnittstellenverträge.
  • 21. Abstimmung zwischen den Teams gemeinsame Datenbank Feature Team A Feature Team B
  • 22. Abstimmung zwischen den Teams REST API (Service) Feature Team A Feature Team B
  • 23. Abstimmung zwischen den Teams Link Feature Team A Feature Team B
  • 24. Abstimmung zwischen den Teams MQ Messaging Feature Team A Feature Team B
  • 25. Microservices Baukasten von Netflix Service A Service B Service B Eureka Zuul Ribbon Client Ribbon Client https://github.com/Netflix/eureka https://github.com/Netflix/zuul https://github.com/Netflix/ribbon Hystrix https://github.com/Netflix/Hystrix
  • 26. Microservice Skalierung Z axis – data partitoning Scale by splitting sim ilarthings X axis – horizontal duplication Scale by cloning Y axis – functional decomposition Scaling by splitting different things. Quelle: THE ART OF SCALABILITY, MARTIN L. ABBOTT & MICHAEL T. FISHER
  • 27. Microservices eignet sich nicht für jede Software Architektur. Der Architekturstil richtet sich besonderes an große Lösungen z.B. Internet Dienste mit besonderen Anforderungen an Skalierung.
  • 28. Eine Microservice Architektur führt zusätzliche Komplexität in eine Architektur ein, mit der umgegangen werden muss.
  • 29. Eine monolithische Architektur ist einfach zu bauen und für kleine Projekte geeignet.
  • 30. Transaktion Management in einer Microservices Architektur mit unterschiedlichen Datenbanken ist eine große Herausforderung.
  • 31. Polyglotte Plattform können auch zu einem Technologie Dschungel führen.
  • 32. Es gibt neben Microservices auch andere Möglichkeiten z.B. Plugin Architekturen wie OSGi die es ermöglichen Teile getrennt zu bauen.
  • 33. Microservices – die Architektur für Agile- Entwicklung?