41
Agilní architektura Jaroslav Lach

Agilní architektura

Embed Size (px)

Citation preview

Page 1: Agilní architektura

Agilní architektura

Jaroslav Lach

Page 2: Agilní architektura

Představení

Jaroslav LachIT-architekt a školitel

Goodea Consulting s.r.o.

Specializace

Data, databáze, datová architektura

Metodiky ArchiMate, TOGAF, DYA

Návrh softwaru

Agilní přístup

Page 3: Agilní architektura

Jaké je Vaše očekávání?

Otázka

Page 4: Agilní architektura

Agenda• Co je to arhitektura

• Agilní manifest

• Metodiky Scrum, Nexus a SAFe

• Agilní organizace a jak jich dosahovat

Page 5: Agilní architektura

“Architecture is

the fundamental organisation of a system

embodied in its components

their relationships to each other and to the environment

and the principles guiding its design and evolution.”

(IEEE Computer Society Std. 1471 – 2000)

Co je to architektura

Page 6: Agilní architektura

Architektura v životním cyklu IS?

Požadavky

Návrh

Realizace

Test

Nasazení

Page 7: Agilní architektura

Než se začne něco dělat...

Projekt

Projekt

2019

Information

management

Nový

požadavek Legislativa

Nová

technologie

Vylepšení

Page 8: Agilní architektura
Page 9: Agilní architektura

Tradiční proces realizace IT řešení

Business

case

Globální

návrh

Realizace NasazeníNávrh

Business projekt

Infra projekt (evropský tender)

1-2 měsíce

Návrh/ Realizace /

Test / Nasazení

2 měsíce 9 měsíců

Test

Agilní přístup

Page 10: Agilní architektura

Odkud se bere potřeba agilního přístupu?

Page 11: Agilní architektura

Odkud se bere potřeba agilního přístupu?

Page 12: Agilní architektura

Odkud se bere potřeba agilního přístupu?

Page 13: Agilní architektura

Odkud se bere potřeba agilního přístupu?

Page 14: Agilní architektura

• Konec 90 let: Capability Maturity Model. Procesy a jejich

kontrola se dlouhodobě staly důležitým cílem mnoha

organizací

• Procesy většinou založené na vodopádovém přístupu

Odkud se bere potřeba agilního přístupu?

Page 15: Agilní architektura

Manifest agilního vývoje softwaru

We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to

value:

Individuals and interactions over processes and tools

Working software over comprehensive documentation

Customer collaboration over contract negotiation

Responding to change over following a plan

That is, while there is value in the items on the right, we value the items on the left more

Kent BeckMike Beedle

Arie van BennekumAlistair CockburnWard Cunningham

Martin Fowler

James GrenningJim HighsmithAndrew HuntRon Jeffries

Jon KernBrian Marick

Robert C. MartinSteve Mellor

Ken SchwaberJeff SutherlandDave Thomas

Page 16: Agilní architektura

1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.

2. Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.

3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.

4. Business people and developers must work together daily throughout the project.

5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.

6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.

Principy agilního vývoje I.

Page 17: Agilní architektura

7. Working software is the primary measure of progress.

8. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.

9. Continuous attention to technical excellence and good design enhances agility.

10. Simplicity--the art of maximizing the amount of work not done--is essential.

11. The best architectures, requirements, and designs emerge from self-organizing teams.

12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.

Principy agilního vývoje II.

Page 18: Agilní architektura

• Multidsciplinární team

• Product owner

• Scrum master

Metodika Scrum

SCRUM

Team Události

Artefakty

• Sprint

• Sprint planning

• Daily Scrum

• Sprint review

• Sprint Retrospective

• Product backlog

• Sprint backlog

• Increment

• Definition of Done

Page 19: Agilní architektura

Zmenšení rizika

Page 20: Agilní architektura

Tradiční přístup Agilní přístup

Page 21: Agilní architektura

Co nám metodika Scrum přináší

• Zrychlení vývoje

• Soustředění se na to podstatné

• Lepší kvalitu

• Vyšší akceptaci koncovými uživateli díky účasti na vývoji

• Důvěra a svěření odpovědnosti mění chování lidí

Page 22: Agilní architektura

Scaled Scrum: Nexus

Page 23: Agilní architektura

SAFe: Scaled Agile Framework

Page 24: Agilní architektura

• Paradox agilního přístupu:

Dodržování metodiky je důležitější než koncový produkt

Agilní přístup a Scrum nejsou synonyma

• Scrum se nehodí na všechno Velké legacy systémy mají pomalou

dynamiku

Gartner: Pace layered application strategy

Funguje, jen když jsou splněny určité podmínky:

Kultura

Product owner

Page 25: Agilní architektura

We are uncovering better ways of doing business by doing it and helping others do it. Through this work we have come to value:

Individuals and interactions over processes and tools

Delivering value over comprehensive documentation

Customer collaboration over contract negotiation

Initiating change over following a plan

That is, while there is value in the items on the right, we value the items on the left more

Manifesto for agile organizations

Page 26: Agilní architektura

Jak agilní jsou architektonické rámce?

DYA TOGAF

Jiné rámce?

Page 27: Agilní architektura

• Princip: Just enough, just in time

• Architekt je stakeholder

• Architektura je agilní jenom tehdy, když prokazatelně napomáhá změně

• Komunikace

• Stakeholders management

• Usnadňuje život vývojovým teamům

Agilní architekt

Page 28: Agilní architektura

Vodopád

Návrh

Realizace

Test

Nasazení

Aplikace

Page 29: Agilní architektura

Iterativní přístup

IT projektPožadavky

Aplikace

Page 30: Agilní architektura

O co bychom se měli snažit

IT projektPožadavky

Aplikace

Koncový

uživatel

Nové

požadavky

Page 31: Agilní architektura

End User Computing

Primary application

Data layer / API

Local

application

Local

application

Local

application

Local

application

Page 32: Agilní architektura

Konfigurace

Aplikace

Con

fig

Page 33: Agilní architektura

• Tohle děláme už dlouho, ale spíše okrajově

• Iniciativa vývojových teamů

• Zákazník to nechce zaplatit

• Úkol pro architekty!

Je to něco nového?

Page 34: Agilní architektura

Servisně orientované architektury

Page 35: Agilní architektura

REST

Interoperability

Self-defining documents

Uniform Resource Identifiers

Scalability

Page 36: Agilní architektura

• Client-Server

• Stateless

• Caching to improve network performance

• Uniform interface

• Layerd system

• Code-on-demand

• Separation of resources from representations

• Manipulation of resource through representations

• Self-descriptive messages

• Hypermedia as the engine of application state

REST constraints

Page 37: Agilní architektura

Cloudová řešení

Page 38: Agilní architektura

Dotazy

Page 39: Agilní architektura

Školení Agilní architektura

19-20.11.2015

Praha

Page 40: Agilní architektura

Kontakt

Jaroslav LachIT-architekt a školitel

Goodea Consulting s.r.o.

[email protected]

nl.linkedin.com/in/JaroslavLach

+31 6 134 529 89

Page 41: Agilní architektura

www.goodea.eu