QCon SP 2011 - A Semente não entendida de Todas as Metodologias

Preview:

DESCRIPTION

É muito fácil ficar confuso com tantas novas metodologias ou processos que existem no mercado de TI. Desde tradicionais que envolvem coisas como ISO ou CMMi até as ditas 'modernas' e 'ágeis' como Scrum, Extreme Programming, Crystal, e agora Lean e Kanban.Mais do que isso, muitas empresas estão realmente adotando e implementando essas metodologias, muitos estão treinando como implementá-las, muitos ainda tentando entender a diferença entre uma e outra. Porém, existem questões fundamentais que permeiam todas essas metodologias e que, surpreendentemente, parece que poucos estão dando real atenção e, justamente por isso, a maioria das implementações dita 'ágeis' nas empresas está destinada a fracassar. Nesta palestra vamos tentar entender qual é o ponto fundamental que será a diferença entre sucesso e fracasso na implementações ágeis

Citation preview

a apresentação já vai começar ...

A Semente Não Entendida de

Todas as “Metodologias”

A Semente Não Entendida de

Todas as “Metodologias”

AGILE

LEAN

Bicycle-Shed

“Bikeshedding”(Lei da Trivialidade de Parkinson)

1988 ...

iMac2.5Ghz quad core i5

6Mb L34Gb DDR3 RAM

500GbAMD Radeon 6750M

$ 1199

iPhone1Ghz A4

512Mb RAM32Gb SSD

$ 299

PC-AT12.5 Mhz1Mb RAM20Mb HD+$ 1000

AUTO10 CLS20 PRINT “TRABALHO DE ESCOLA”30 PRINT “ ”40 PRINT “...”...

“It’s a Unix System”

IME-USP

ab

= 1.618

... 1998

2000

<campeonato> <nome>...</nome> <partida> ... <partida> ... <partida> <data>...</data> <timeA>...</timeA> <timeB>...</timeB> <resultado>...</resultado> </partida> <partida> ... </partida> </partida> ...</campeonato>

INSERT INTO XML_STORE [XMLBLOB] VALUES "<campeonato>...</campeonato>";

Set conn = Server.CreateObject("ADODB.Connection")conn.open "..."Set rs = conn.execute("SELECT * FROM XMLBLOB WHERE ID = X")

Set objXML = Server.CreateObject("MSXML2.DOMDocument")objXML.loadXML(rs.fields("XMLBLOB"))

Set objXSLT = Server.CreateObject("MSXML2.DOMDocument")objXSLT.load(Server.MapPath("campeonato_brasileiro.xsl"))

Response.Write(objXML.transformNode(objXSLT))

rs.closeconn.close

INSERT INTO XML_STORE [XMLBLOB] VALUES "<campeonato>...</campeonato>";

Set conn = Server.CreateObject("ADODB.Connection")conn.open "..."Set rs = conn.execute("SELECT * FROM XMLBLOB WHERE ID = X")

Set objXML = Server.CreateObject("MSXML2.DOMDocument")objXML.loadXML(rs.fields("XMLBLOB"))

Set objXSLT = Server.CreateObject("MSXML2.DOMDocument")objXSLT.load(Server.MapPath("campeonato_brasileiro.xsl"))

Response.Write(objXML.transformNode(objXSLT))

rs.closeconn.close

INSERT INTO XML_STORE [XMLBLOB] VALUES "<campeonato>...</campeonato>";

Set conn = Server.CreateObject("ADODB.Connection")conn.open "..."Set rs = conn.execute("SELECT * FROM XMLBLOB WHERE ID = X")

Set objXML = Server.CreateObject("MSXML2.DOMDocument")objXML.loadXML(rs.fields("XMLBLOB"))

Set objXSLT = Server.CreateObject("MSXML2.DOMDocument")objXSLT.load(Server.MapPath("campeonato_brasileiro.xsl"))

Response.Write(objXML.transformNode(objXSLT))

rs.closeconn.close

INSERT INTO XML_STORE [XMLBLOB] VALUES "<campeonato>...</campeonato>";

Set conn = Server.CreateObject("ADODB.Connection")conn.open "..."Set rs = conn.execute("SELECT * FROM XMLBLOB WHERE ID = X")

Set objXML = Server.CreateObject("MSXML2.DOMDocument")objXML.loadXML(rs.fields("XMLBLOB"))

Set objXSLT = Server.CreateObject("MSXML2.DOMDocument")objXSLT.load(Server.MapPath("campeonato_brasileiro.xsl"))

Response.Write(objXML.transformNode(objXSLT))

rs.closeconn.close

INSERT INTO XML_STORE [XMLBLOB] VALUES "<campeonato>...</campeonato>";

Set conn = Server.CreateObject("ADODB.Connection")conn.open "..."Set rs = conn.execute("SELECT * FROM XMLBLOB WHERE ID = X")

Set objXML = Server.CreateObject("MSXML2.DOMDocument")objXML.loadXML(rs.fields("XMLBLOB"))

Set objXSLT = Server.CreateObject("MSXML2.DOMDocument")objXSLT.load(Server.MapPath("campeonato_brasileiro.xsl"))

Response.Write(objXML.transformNode(objXSLT))

rs.closeconn.close

Anos 80 Fim Anos 90 Século XXI

Perl

C

Anos 80 Fim Anos 90 Século XXI

Basic

dBase III

Clipper

Pascal

Delphi

ASP

PHP

Python

.NET

Java

ABAP

Ruby

ObjCVB6

Lingo

A Semente Não Entendida de

Todas as Metodologias?

a vocação

Produtividade “1” Produtividade “50”

Produtividade “50”$1000

$1000 $3000

$1000 $3000

Taxa/hora

Taxa/hora

Taxa/hora

Taxa/hora

Taxa/hora

quantidade

preç

odemandaoferta

quantidade

preç

odemandaoferta

quantidade

preç

odemandaoferta

equilíbrio de mercado

quantidade

preç

odemandaoferta

equilíbrio de mercado“Commodity”

A maioria faz “X”, portanto também vou

LOL

Cargo Cult

Um commodity é um bem ou serviço para o qual há demanda, mas que é ofertado sem diferenciação qualitativa notável por todo o mercado.

Commoditização acontece à medida que o mercado de bens e serviços perde diferenciação por toda sua base de fornecimento - normalmente porque todos estão fazendo a mesma coisa.

Um commodity é um bem ou serviço para o qual há demanda, mas que é ofertado sem diferenciação qualitativa notável por todo o mercado.

Commoditização acontece à medida que o mercado de bens e serviços perde diferenciação por toda sua base de fornecimento - normalmente porque todos estão fazendo a mesma coisa.

Um commodity é um bem ou serviço para o qual há demanda, mas que é ofertado sem diferenciação qualitativa notável por todo o mercado.

Commoditização acontece à medida que o mercado de bens e serviços perde diferenciação por toda sua base de fornecimento - normalmente porque todos estão fazendo a mesma coisa.

“Eu só trabalho aqui ...”

“Eu só trabalho aqui ...”

“Não é meu papel”

“Eu só trabalho aqui ...”

“Não é meu papel”

“Mas eu !z como a metodologia

diz ...”

Um commodity é um bem ou serviço para o qual há demanda, mas que é ofertado sem diferenciação qualitativa notável por todo o mercado.

Eu?

Oportunidade > Salário

Obrigado