arquitetura - enxuta & Ágil

63
{ Arquitetura do Negócio: Enxuta & Ágil { }

Upload: paulo-vasconcellos

Post on 05-Jul-2015

1.134 views

Category:

Technology


1 download

DESCRIPTION

Palestra sobre Arquitetura (de negócios, de software, corporativa).

TRANSCRIPT

Page 1: Arquitetura - Enxuta & Ágil

{Arquitetura do Negócio:

Enxuta & Ágil

{ }

Page 2: Arquitetura - Enxuta & Ágil

Paulo Vasconcellos

25 anos em TI

Desenvolvendo Software

Gerenciando Projetos

Analisando Negócios

Treinando

Palestrando

Escrevendo e

Fumando

Page 3: Arquitetura - Enxuta & Ágil

{ }A correta definição sobre

o que precisa ser feito

é a parte mais difícil da

construção de um software.

Nenhuma outra compromete

tanto um projeto quando

mal executada.

E nenhuma é mais difícil

de ser corrigida.

Fred Brooks

“No Silver Bullet” (1986)

Page 4: Arquitetura - Enxuta & Ágil

Pauta

Arquitetura?

Uma (Re)Visão Unificada

Arquitetura do Negócio

Enxuta & Ágil?

Arquitetura de Sistemas

Lean Architecture

A Proposta DCI – Tudo a ver?

Page 5: Arquitetura - Enxuta & Ágil

Arquitetura

Page 6: Arquitetura - Enxuta & Ágil

Três Características Fundamentais*

Firmitas

Estável, Sustentável

Utilitas

Útil, Funcional

Venustas

Bela!

* Tríade Vitruviana

Page 7: Arquitetura - Enxuta & Ágil

E Uma Definição*

Arquitetura é antes de mais nada construção

Concebida com o propósito primordial de

organizar o espaço para determinada

finalidade e visando a

determinada intenção

Mas a intenção

plástica

distingue a

arquitetura da

simples construção.

* Lúcio Costa (Wikipédia)

Page 8: Arquitetura - Enxuta & Ágil

Em TI: Arquitetura Corporativa

Page 9: Arquitetura - Enxuta & Ágil

Arquitetura Tecnológica

Hardware, Sw Básico...

O que temos

Page 10: Arquitetura - Enxuta & Ágil

Arquitetura de Informações

Bases de Dados...

O que sabemos

Hardware, Sw Básico...

O que temos

Page 11: Arquitetura - Enxuta & Ágil

Arquitetura de Sistemas

Sistemas, Funcionalidades

O que fazemos

Bases de Dados...

O que sabemos

Hardware, Sw Básico...

O que temos

Page 12: Arquitetura - Enxuta & Ágil

Arquitetura do Negócio

Por quê?

Para quem?

Sistemas, Funcionalidades

O que fazemos

Bases de Dados...

O que sabemos

Hardware, Sw Básico...

O que temos

Page 13: Arquitetura - Enxuta & Ágil

Arquitetura Corporativa

Alguém já

viu?

Page 14: Arquitetura - Enxuta & Ágil

E cabeça de bacalhau?

Page 15: Arquitetura - Enxuta & Ágil

Arquitetura do Negócio

Page 16: Arquitetura - Enxuta & Ágil

Combinação de Quatro “Peças”

Page 17: Arquitetura - Enxuta & Ágil

Expressa em Três Visões

Page 18: Arquitetura - Enxuta & Ágil

Visão do Negócio

Page 19: Arquitetura - Enxuta & Ágil

Visão da Estrutura

Page 20: Arquitetura - Enxuta & Ágil

Visão dos Processos

Page 21: Arquitetura - Enxuta & Ágil

Expressão?

Page 22: Arquitetura - Enxuta & Ágil

Há o modo “quadradão”

Page 23: Arquitetura - Enxuta & Ágil

Há um padrão “quadradão”?

Business Modeling

A Practical Guide to

Realizing Business Value

David M. Bridgeland e Ron Zahavi

(Morgan Kaufmann, 2009)

Business Modeling with UML

Business Patterns at Work

Hans-Erik Eriksson e Magnus Penker

(Wiley, 2000)

Page 24: Arquitetura - Enxuta & Ágil

E há modos mais... “redondos”

Page 25: Arquitetura - Enxuta & Ágil

Para (quase) todos os Gostos:

Page 26: Arquitetura - Enxuta & Ágil

Duas Sugestões

The Back of the Napkin

Solving Problems and

Selling Ideas with Pictures

Dan Roam

(Portfolio, 2008)

Business Model Generation

Alexander Osterwalder et al

(BusinessModelGeneration.com, 2010)

Page 27: Arquitetura - Enxuta & Ágil

Expressam o Negócio?

Page 28: Arquitetura - Enxuta & Ágil

Visão do Negócio

Page 29: Arquitetura - Enxuta & Ágil

Visão da Estrutura

Page 30: Arquitetura - Enxuta & Ágil

Visão dos Processos

Page 31: Arquitetura - Enxuta & Ágil

Enfim, a Arquitetura do Negócio

Page 32: Arquitetura - Enxuta & Ágil

Já deve ter DEV se perguntando:

Onde fui amarrar

meu burrinho?

Page 33: Arquitetura - Enxuta & Ágil

E se a gente chamar isso aqui de

Domínio?

Page 34: Arquitetura - Enxuta & Ágil

Oba! DDD?

TDD!

DSL?

SOA!

AOP!

OOAD?OssO?

Page 35: Arquitetura - Enxuta & Ágil

Arquitetura de Sistemas

Page 36: Arquitetura - Enxuta & Ágil

A gente precisa voltar aqui, no

Domínio

Page 37: Arquitetura - Enxuta & Ágil

E falar (pouco) sobre Complexidade

Complexo Complicado

Caótico Simples

Modelo Cynefin

por David Snowden

Emergente Boas Práticas

Novo Melhores Práticas

Desordem

Page 38: Arquitetura - Enxuta & Ágil

Complicado ou Complexo?

Matriz

Acordo & Certeza

por Ralph Stacey

Simples

Complicado

Complexo

Caótico

Page 39: Arquitetura - Enxuta & Ágil

Acordos & Dúvidas

Simples

Complicado

Complexo

Caótico

Pró

xim

o d

o A

cordo

Dis

tante

do A

cordo

Certezas

Dúvidas

Page 40: Arquitetura - Enxuta & Ágil

Estrutura & Comportamento

Modelo da Estrutura-Comportamento

por Jurgen Appelo

Estrutura

(H

abilid

ade p

ara C

om

preender)

Comportamento

(Habilidade para Prever)

Page 41: Arquitetura - Enxuta & Ágil

Estrutura: Simples ou Complicada

Estrutura

(H

abilid

ade p

ara C

om

preender)

Comportamento

(Habilidade para Prever)

Sim

ple

sCom

plicada

Page 42: Arquitetura - Enxuta & Ágil

Comportamento: Do Ordenado ao Caótico

Estrutura

(H

abilid

ade p

ara C

om

preender)

Comportamento

(Habilidade para Prever)

Sim

ple

sCom

plicadaOrdenado Complexo Caótico

Page 43: Arquitetura - Enxuta & Ágil

Simplificação != Linearização

Estrutura

(H

abilid

ade p

ara C

om

preender)

Comportamento

(Habilidade para Prever)

Sim

ple

sCom

plicadaOrdenado Complexo Caótico

Linearização

Page 44: Arquitetura - Enxuta & Ágil

Mais sobre Complexidade?

Management 3.0

Leading Agile Developers,

Developing Agile Leaders

Jurgen Appelo

(Addison-Wesley, 2011)

Page 45: Arquitetura - Enxuta & Ágil

Estrutura & Processos

Sim

ple

sCom

plicadaOrdenado Complexo Caótico

Page 46: Arquitetura - Enxuta & Ágil

Pensando o Sistema

Page 47: Arquitetura - Enxuta & Ágil

Forma & Funcionalidade

Page 48: Arquitetura - Enxuta & Ágil

Classes e ObjetosCla

sses

Objetos

Page 49: Arquitetura - Enxuta & Ágil

Classes (bem dumb) e ObjetosCla

sses

Objetos

Page 50: Arquitetura - Enxuta & Ágil

Papéis (Roles)Cla

sses

Objetos

Methodle

ss R

ole

s (

Interfaces)

Methodfull Roles

Page 51: Arquitetura - Enxuta & Ágil

Injetando “Inteligência”Cla

sses

Objetos

Methodle

ss R

ole

s (

Interfaces)

Methodfull Roles

Page 52: Arquitetura - Enxuta & Ágil

ContextoCla

sses

Objetos

Methodle

ss R

ole

s (

Interfaces)

Methodfull Roles

Page 53: Arquitetura - Enxuta & Ágil

Contexto = 1 ObjetoCla

sses

Objetos

Methodle

ss R

ole

s (

Interfaces)

Methodfull Roles

Page 54: Arquitetura - Enxuta & Ágil

Contexto = 1 Caso de UsoCla

sses

Objetos

Methodle

ss R

ole

s (

Interfaces)

Methodfull Roles

Page 55: Arquitetura - Enxuta & Ágil

Caso de Uso é um Script (roteiro)Cla

sses

Objetos

Methodle

ss R

ole

s (

Interfaces)

Methodfull Roles

Que ensina

atores

A desempenhar

Papéis

Page 56: Arquitetura - Enxuta & Ágil

Pois é, Casos de Uso!Cla

sses

Objetos

Methodle

ss R

ole

s (

Interfaces)

Methodfull Roles

Page 57: Arquitetura - Enxuta & Ágil

Mas, o que é de fato ImportanteCla

sses

Objetos

Methodle

ss R

ole

s (

Interfaces)

Methodfull Roles

Page 58: Arquitetura - Enxuta & Ágil

A Arquitetura é uma Só!Cla

sses

Objetos

Methodle

ss R

ole

s (

Interfaces)

Methodfull Roles

Page 59: Arquitetura - Enxuta & Ágil

Sobre esta forma de pensar

DCI (Data – Context – Interaction)

Apresentada por Trygve Reenskaug, mesmo

criador do MVC, em 2008

Na Wikipedia: http://bit.ly/valeDCI

Trabalhada por James Coplien & Gertrud BjØrnvig

http://www.leansoftwarearchitecture.com/

Page 60: Arquitetura - Enxuta & Ágil

Referências

Lean Architecture

For Agile Software Development

James O. Coplien & Gertrud BjØrnvig

(Wiley, 2010)

Scaling Lean & Agile

Development

Craig Larman & Bas Vodde

(Addison-Wesley, 2009)

Page 61: Arquitetura - Enxuta & Ágil

Créditos & Débitos

Você pode:

Copiar, distribuir, exibir e executar a obra

Criar obras derivadas

Desde que:

Dê crédito ao autor original

Não tenha fins comerciais

Disponibilize suas obras com a mesma licença.

Esta apresentação contém imagens de HikingArtist.com, disponibilizadas com licença

equivalente no Flickr.

Apresentação liberada sob licença

Creative Commons

Page 62: Arquitetura - Enxuta & Ágil

Contato

[email protected]

twitter.com/pfvasconcellos

LinkedIn.com/in/pfvasconcellos

pfvasconcellos

facebook.com/pfvasconcellos

Page 63: Arquitetura - Enxuta & Ágil

pfvasconcellos.com