Agile Brazil 2010

76
Highlights do André Faria Bruno Lui Luiz Faias Jr.

description

Lesssons learned in the Agile Brazil 2010 Coference

Transcript of Agile Brazil 2010

Page 1: Agile Brazil 2010

Highlights do

André FariaBruno LuiLuiz Faias Jr.

Page 2: Agile Brazil 2010

Coaching para Liderança de Equipes Ágeispor Manoel Pimentel

Page 3: Agile Brazil 2010

Ação“A essência do coach é promover a ação do coachee e ajudá-lo a descobrir suas competências.”

Page 4: Agile Brazil 2010

Ajudar a Aprenderao invés de ensinar

Page 5: Agile Brazil 2010

Qual é a sua meta??

Page 6: Agile Brazil 2010

O que Motiva?? Dinheiro?

Reconhecimento?

Page 7: Agile Brazil 2010

Forças contrárias??Forças favoráveis?

Page 8: Agile Brazil 2010

Limitantes? ?Crenças?

Page 9: Agile Brazil 2010

O que é importante para

você na sua vida?

?A sua meta tem relação

com isso?

Page 10: Agile Brazil 2010

Qual é a sua missão?

?Sua meta te conecta a

sua missão?

Page 11: Agile Brazil 2010

O coachee descobre seu

caminho e toma

responsabilidade por ele

Page 12: Agile Brazil 2010

Coaching não é

TreinamentoTerapia

Mentoring

Consultoria

Page 13: Agile Brazil 2010

CoachingFoco no Futuro

FacilitaçãoLúdico

Cognitivo

Aprendizado

Page 14: Agile Brazil 2010

Descobrir novos caminhos

Page 15: Agile Brazil 2010

Coaching de Guerrilhapor Francisco Trindade

Page 16: Agile Brazil 2010

Como influenciar

uma equipe ?•Sem autoridade•De dentro da equipe

•Você não é considerado um coach

Page 17: Agile Brazil 2010

Conquiste o Respeito

Page 18: Agile Brazil 2010

Quem é o Líder

?

Page 19: Agile Brazil 2010

Coaching Agility with David Hussman

Page 20: Agile Brazil 2010

Keep the band together“If your separate them you don’t get 4 great bands”

Page 21: Agile Brazil 2010

More code doesn’t mean more value

Page 22: Agile Brazil 2010

Success over Tags, Names, Titles...

Page 23: Agile Brazil 2010

Working in Pairs

Page 24: Agile Brazil 2010

Há muito o que ensinar

BurndownBacklogs

Cross Function Teams

Reviews Daily Meetings

TDDKanban

Iteration Zero

Kaizen

Refactoring

User StoriesAcceptance Tests

Personas

Value StreamRelease Planning

Iterations

Burn ChartsContinuous Integration

Continuous Deployment

Evolutionary Design

DDD

CharteringSustainable Palce

Page 25: Agile Brazil 2010

Change

Page 26: Agile Brazil 2010

Coaching Goals

Tangible

Testable

Trackable

Page 27: Agile Brazil 2010

Listen and Ask

Page 28: Agile Brazil 2010

First Why then How

Page 29: Agile Brazil 2010

PersonasName

Description Values

You are You will

You haveYou want

Page 30: Agile Brazil 2010

TheOneI’ve

Created

Socrates

Description Values

A person who teaches

bu askning the right

questions helping others

to discover their paths

and make the best

choice for themselves.

PatienceHumilityWisdomRespectMasteryEvolution

Page 31: Agile Brazil 2010

User Story Mappingtime

activity

task

sub-tasks or task details

http://www.agileproductdesign.com/presentations/user_story_mapping/index.html

Page 32: Agile Brazil 2010

Release Planning Gamepor Philippe Kruchten

Page 33: Agile Brazil 2010

The Essence of Agileby Martin Fowler

Page 34: Agile Brazil 2010

Semantic Diffusion

Page 35: Agile Brazil 2010

Requirements Instability

Page 36: Agile Brazil 2010

Evolve the Process

“In software development perfect

is a verb not an adjective.”Kent Beck

Page 37: Agile Brazil 2010

The Value of Software Designby Martin Fowler

Page 38: Agile Brazil 2010

Is it really true?

“We need to put less effort on

quality so we can build more

features for our next realease”

Page 39: Agile Brazil 2010

Software Quality

Pleasent user interface

(external) Few defects (external)good modular design (invisible for the users)

(internal)

Page 40: Agile Brazil 2010

Internal Quality Value

“As time pass add new features get

harder and harder

Thats when having a clean code,

refactored and tested has its value”

Page 41: Agile Brazil 2010

Technical Debt

We don’t have time for design

We must ship now and deal

with consequences

Now we know how we

should have done it

(mistakes) - happens even

with good teams.

We don’t have time for design

What’s layering?

Reckless Prudent

Deliberated

Inadvertent

Page 42: Agile Brazil 2010

Continuous Integration and Deploymentby Martin Fowler

Page 43: Agile Brazil 2010

If it’s painfulThen do it more often

Page 44: Agile Brazil 2010

If it’s painfulThen do it more often

Everybody should integrate

at least once a day

Page 45: Agile Brazil 2010

If it’s painfulThen do it more often

Everybody should integrate

at least once a dayWhitout CI people are

reluctant to refactoring

Page 46: Agile Brazil 2010

It’s only when software is in

production that it provides benefits.

Page 47: Agile Brazil 2010

It’s only when software is in

production that it provides benefits.

Working over night and on weekends?

Page 48: Agile Brazil 2010

It’s only when software is in

production that it provides benefits.

Same story... if it’s painful...

Working over night and on weekends?

Page 49: Agile Brazil 2010

It’s only when software is in

production that it provides benefits.

Same story... if it’s painful...

Working over night and on weekends?

Build a pipeline and keep the last

binaries in an artifact repository

Page 50: Agile Brazil 2010

“We get a clean enviroment and

then we configure it automatically,

Next we deploy automatically, Run

the smoke tests to make sure that

the enviroment is ok, then run the

acceptance tests automatically.

Every step runs automatically”.

Page 51: Agile Brazil 2010

Learning and Coolness - Beyound XP by Klaus Wuestefeld

Page 52: Agile Brazil 2010

O erro nas estimativas não importa!

Page 53: Agile Brazil 2010

Cleaners

Page 54: Agile Brazil 2010

Agility in Contextby Philippe Kruchten

Page 55: Agile Brazil 2010

Are you agile?

Page 56: Agile Brazil 2010

Culture

“Culture is a fuzzy set of attitudes, beliefs,

behavioural norms, and basic assumptions and

values that are shared by a group of people,

and that influence each member's behaviour

and his/her interpretations of the "meaning" of

other people's behaviour.”(Spencer-Oatey, 2000, p.4) 

Page 57: Agile Brazil 2010

Culture

Value

BehaviorBeliefs

MemePlex

Page 58: Agile Brazil 2010

A Pattern•experience a couple of sucessful with a practivce

•describe it

•simplify it (slogan, cute name)

•pass it on, write a book, pass it on

•without the original context where it was successfull

This lack of contextualition leads to adaptation

Page 59: Agile Brazil 2010

Agile ReligionMy agile is better than your agile

Page 60: Agile Brazil 2010

Agile ReligionMy agile is better than your agile

Page 61: Agile Brazil 2010

Agile ReligionMy agile is better than your agile

Agility does not come in a can.

Page 62: Agile Brazil 2010

Different methods for

different issues

XP (práticas)Scrum (gestão)Lean (princípios)

Page 63: Agile Brazil 2010

Context, Context, Context

•business domain

•number of instances (one, sass, a dozen, millions)

•maturity of organization (small startup,...)

•level of innovation

•new product, old classic, just better, faster, larger

•culture •communication, trust, shared mental models, education

Page 64: Agile Brazil 2010

What is agility?

“The ability of an organization to

react and adapt to changes in its

environment faster than the rate

of the changes.”

Page 65: Agile Brazil 2010

Introdução a Programação Extremapor Dairton Bassi, Giovani Bassi, Daniel Widlt, Bruno Pedroso, Hugo Corbucci eRenato Willi

Page 66: Agile Brazil 2010

Comunicação

Page 67: Agile Brazil 2010

Simplicidade

Page 68: Agile Brazil 2010

Feedback

Page 69: Agile Brazil 2010

Respeito

Page 70: Agile Brazil 2010

Coragem

Page 71: Agile Brazil 2010

Kanban: Em Busca de um Ritmo Sustentávelpor Alisson Vale

Page 72: Agile Brazil 2010

- A quantidade do WIP está diretamente

relacionada a Lead Time.

- Controlar WIP reduz “Lead Time” médio.

- Quanto mais tarefas está fazendo mais

retrabalho e defeitos podem aparecer.

Page 73: Agile Brazil 2010

Core concepts of Kanban:

- Make work visible

- Limit work in progress

- Help work to flow

“Stop starting, start finishing”.

Page 74: Agile Brazil 2010

Erros Comuns de TDDpor Maurício Aniche

- Esquecer de ver o teste falhar- Esquecer de refatorar- Refatorar outro trecho de código enquanto trabalha em um teste- Não começar pelo teste mais simples possível (para ganhar confiança)- Rodar apenas o teste coerente (Deve rodar toda a suite)- Escrever testes complexos- Não implementar o código mais simples que faça o teste passar.- Nomes não claros para os testes- Não refatorar o código de testes.

Page 75: Agile Brazil 2010

Refatoração de Testespor Eduardo Guerra

“Alterar o código sem alterar o comportamento visando deixá-lo limpo.”

Elementos do teste:- Alvo do teste: Instância que está sendo utilizada- Ação: Qualquer manipulação do código de teste de um ou mais alvos- Asserção: Comparação do comportamento

Page 76: Agile Brazil 2010

Imageshttp://www.flickr.com/photos/tracy_olson/

http://www.flickr.com/photos/heliomedeiros/http://www.flickr.com/photos/royskeane/

http://www.flickr.com/photos/strict/http://www.flickr.com/photos/wallyg/

http://www.flickr.com/photos/claudio_ar/http://www.flickr.com/photos/fatboyke/

http://www.flickr.com/photos/hamed/http://www.flickr.com/photos/aheram/

http://www.flickr.com/photos/johnmueller/http://www.flickr.com/photos/coyote-agile/

http://www.flickr.com/photos/roadsidepictures/http://www.flickr.com/photos/marquette/

http://www.flickr.com/photos/shelleygibb/http://www.flickr.com/photos/rwoan/

http://www.flickr.com/photos/sanfora/http://www.flickr.com/photos/joshfassbind/

http://www.flickr.com/photos/filicudi/http://www.flickr.com/photos/tsmyther/

http://www.flickr.com/photos/rogersmith/http://www.flickr.com/photos/joshfassbind/

http://www.flickr.com/photos/sveinhal/http://www.flickr.com/photos/dg_pics

http://www.flickr.com/photos/toptechwriter/