SlideShare une entreprise Scribd logo
1  sur  23
Chrysler Comprehensive
    Compensation
         System


       C3
C3
Objetivo:

Unificar vários sistemas de pagamento em um [1]



Motivação:

Diminuição do retrabalho gerado pela descentralização dos
sistemas de folha de pagamento [7]
C3
Situação:
    •   Sistemas com 20 anos de idade [7]
    •   Input via cartão perfurado [7]
    •   COBOL [1]
C3
Responsáveis:

Tom Hadfield (Diretor de Sistemas de Folha de Pagamento)
sob a supervisão de Susan Unger (CIO) [3]



Meta:

Gerar a folha de pagamento de 86.000 funcionários [3]
C3
1993:

Início do Projeto [1]



1995:

Início efetivo da implementação (2 anos para iniciar o
desenvolvimento)



Martin Fowler foi contratado como consultor "part time" para
melhoria de performance
C3
Tecnologia:

Smalltalk com GemStone [3]




"Gemstone" fornece um "ecossistema" para
desenvolvimento distribuído, multiusuário e transacional,
usando a linguagem Smalltalk, numa arquitetura
cliente/servidor de três camadas e acesso à base de dados
relacionais [4]
C3
1996:

Nenhum contracheque impresso até essa data [1]



Kent Beck:

• Chamado como consultor para melhorias de performance
  (assim como Fowler) [5]
• Tornou-se "líder técnico" (Head Coach)
• Chama Ron Jeffries para trabalhar no projeto [3][6]
C3
       Kent Beck, Ron Jeffries e
          posteriormente Ward
       Cunningham tornariam-se os
           criadores do XP [3]




"O XP foi criado por desenvolvedores para desenvolvedores!" [8]
C3
1996 (cont.):

"Just made the whole thing up in two weeks (XP), marker in
hand at the whiteboard." (Kent Beck) [8]


O grupo focou apenas naquilo que agregava valor ao cliente,
descartando o resto
C3
1997:

O c3 entra em produção gerando a folha de pagamento de
10.000 funcionários [1]. O sistema abrangia o "Executive
System", pagando gerentes e técnicos mensalmente [7]



Novas entregas menores, em iterações curtas, foram
realizadas no ano que se seguiu [8]
C3

Este resultado promissor serviu de
    propulsor para técnicas de
 desenvolvimento que norteiam o
eXtreme Programming. A teoria
desta metodologia surgiu mais tarde,
  graças ao sucesso da prática.
C3
1999:

O projeto é cancelado sem conseguir alcançar a meta dos
86.000 contracheques [1]



Motivo:

Saída do principal detentor dos requisitos e canal de
comunicação com o cliente
C3



"XP não é garantia de sucesso"
      (Martin Fowler) [1]
C3




mas...
C3


Parte do grupo de desenvolvedores
do c3, ainda na Chrysler, foi usado
  para o desenvolvimento de um
     "portal de software" [1]
C3


Durante o ano de 2002, apenas 1
 (um!!!) bug foi encontrado em
         produção [1]
C3



A média da frequência dos "releases"
  para produção era de apenas 2
        (duas) semanas [1]
C3


   Graças às práticas do XP, seus
projetos são conhecidos como "Very
       Low Defect Projects"
(Projetos com baixíssima taxa de defeitos). [2]
C3
The C3 Team at Chrysler Corporation:

Ann Anderson, Ralph Beattie, Kent Beck, David Bryant, Marie
DeArment, Martin Fowler, Margaret Fronczak, Rich Garzaniti,
Dennis Gore, Brian Hacker, Chet Hendrickson, Ron Jeffries,
Doug Joppie, David Kim, Paul Kowalsky, Debbie Mueller, Tom
Murasky, Richard Nutter, Adrian Pantea, and Don Thomas
Técnicas utilizadas no projeto C3

•   Fazer “a coisa” o mais simples possível
•   Refatoração de código
•   Integração contínua
•   O cliente faz parte do time
•   Requisitos simplificados (história do usuário)
•   Planejamento baseado em iterações
•   Estimativa feita pelo time
•   Estimativa baseada em história do usuário
•   Testes implementados antes da codificação
•   Testes unitários e funcionais
•   Programação em pares
•   Reuniões diárias de forma simples e com todo time
C3
Referências:

[1] C3 - Martin Fowler (http://martinfowler.com/bliki/C3.html)

[2] VeryLowDefectProjectMartin - Fowler, Janeiro de 2004
( http://martinfowler.com/bliki/VeryLowDefectProject.html)

[3] Chrysler Comprehensive Compensation System - Wikipedia, Novembro de
2011
(http://en.wikipedia.org/wiki/Chrysler_Comprehensive_Compensation_System)

[4] GemStone Programming Guide - GemStone Systems, Inc , Julho de 1996
(http://www.laputan.org/pub/sag/GPG.PDF)
C3
Referências (cont.):

[5] Chrysler Comprehensive Compensation - Kent Beck, (http://c2.com/cgi/wiki?
ChryslerComprehensiveCompensation)

[6] Ron Jeffries - (http://c2.com/cgi/wiki?RonJeffries)

[7] Case Study: Chrysler Goes to “Extremes” - The C3 Team at Chrysler
Corporation, Outubro de 1998 -
(http://xprogramming.com/publications/dc9810cs.pdf)

[8] Sams Teach Yourself Extreme Programming in 24 Hours - Stewart Baird
(http://vapvarun.com/study/softE/teach%20yourself%20extreme
%20programming%20in%2024%20hours/0-672-32441-5_2fch02lev1sec1.htm)

Contenu connexe

Tendances

DevOps Transformation in Technical
DevOps Transformation in TechnicalDevOps Transformation in Technical
DevOps Transformation in TechnicalOpsta
 
Cloud Native Bern 05.2023 — Zero Trust Visibility
Cloud Native Bern 05.2023 — Zero Trust VisibilityCloud Native Bern 05.2023 — Zero Trust Visibility
Cloud Native Bern 05.2023 — Zero Trust VisibilityRaphaël PINSON
 
CI and CD with Jenkins
CI and CD with JenkinsCI and CD with Jenkins
CI and CD with JenkinsMartin Málek
 
Red Hat OpenShift Operators - Operators ABC
Red Hat OpenShift Operators - Operators ABCRed Hat OpenShift Operators - Operators ABC
Red Hat OpenShift Operators - Operators ABCRobert Bohne
 
#ATAGTR2019 Presentation "DevSecOps with GitLab" By Avishkar Nikale
#ATAGTR2019 Presentation "DevSecOps with GitLab" By Avishkar Nikale#ATAGTR2019 Presentation "DevSecOps with GitLab" By Avishkar Nikale
#ATAGTR2019 Presentation "DevSecOps with GitLab" By Avishkar NikaleAgile Testing Alliance
 
GitOps 101 Presentation.pdf
GitOps 101 Presentation.pdfGitOps 101 Presentation.pdf
GitOps 101 Presentation.pdfssuser31375f
 
Kubernetes GitOps featuring GitHub, Kustomize and ArgoCD
Kubernetes GitOps featuring GitHub, Kustomize and ArgoCDKubernetes GitOps featuring GitHub, Kustomize and ArgoCD
Kubernetes GitOps featuring GitHub, Kustomize and ArgoCDSunnyvale
 
Code Factory avec GitLab CI et Rancher
Code Factory avec GitLab CI et RancherCode Factory avec GitLab CI et Rancher
Code Factory avec GitLab CI et RancherSUSE
 
Red Hat OpenShift Container Platform Overview
Red Hat OpenShift Container Platform OverviewRed Hat OpenShift Container Platform Overview
Red Hat OpenShift Container Platform OverviewJames Falkner
 
AGILE UNIFIED PROCESS
AGILE UNIFIED PROCESSAGILE UNIFIED PROCESS
AGILE UNIFIED PROCESSEder Nogueira
 
CD using ArgoCD(KnolX).pdf
CD using ArgoCD(KnolX).pdfCD using ArgoCD(KnolX).pdf
CD using ArgoCD(KnolX).pdfKnoldus Inc.
 
Docker, mais qu’est-ce que c’est ?
Docker, mais qu’est-ce que c’est ?Docker, mais qu’est-ce que c’est ?
Docker, mais qu’est-ce que c’est ?Julien Maitrehenry
 
Kubecon US 2019: Kubernetes Multitenancy WG Deep Dive
Kubecon US 2019: Kubernetes Multitenancy WG Deep DiveKubecon US 2019: Kubernetes Multitenancy WG Deep Dive
Kubecon US 2019: Kubernetes Multitenancy WG Deep DiveSanjeev Rampal
 
CI-CD with AWS Developer Tools and Fargate_AWSPSSummit_Singapore
CI-CD with AWS Developer Tools and Fargate_AWSPSSummit_SingaporeCI-CD with AWS Developer Tools and Fargate_AWSPSSummit_Singapore
CI-CD with AWS Developer Tools and Fargate_AWSPSSummit_SingaporeAmazon Web Services
 
Bare Metal Cluster with Kubernetes, Istio and Metallb | Nguyen Phuong An, Ngu...
Bare Metal Cluster with Kubernetes, Istio and Metallb | Nguyen Phuong An, Ngu...Bare Metal Cluster with Kubernetes, Istio and Metallb | Nguyen Phuong An, Ngu...
Bare Metal Cluster with Kubernetes, Istio and Metallb | Nguyen Phuong An, Ngu...Vietnam Open Infrastructure User Group
 

Tendances (20)

DevOps Transformation in Technical
DevOps Transformation in TechnicalDevOps Transformation in Technical
DevOps Transformation in Technical
 
Cloud Native Bern 05.2023 — Zero Trust Visibility
Cloud Native Bern 05.2023 — Zero Trust VisibilityCloud Native Bern 05.2023 — Zero Trust Visibility
Cloud Native Bern 05.2023 — Zero Trust Visibility
 
CI and CD with Jenkins
CI and CD with JenkinsCI and CD with Jenkins
CI and CD with Jenkins
 
Red Hat OpenShift Operators - Operators ABC
Red Hat OpenShift Operators - Operators ABCRed Hat OpenShift Operators - Operators ABC
Red Hat OpenShift Operators - Operators ABC
 
#ATAGTR2019 Presentation "DevSecOps with GitLab" By Avishkar Nikale
#ATAGTR2019 Presentation "DevSecOps with GitLab" By Avishkar Nikale#ATAGTR2019 Presentation "DevSecOps with GitLab" By Avishkar Nikale
#ATAGTR2019 Presentation "DevSecOps with GitLab" By Avishkar Nikale
 
GitOps 101 Presentation.pdf
GitOps 101 Presentation.pdfGitOps 101 Presentation.pdf
GitOps 101 Presentation.pdf
 
Kubernetes GitOps featuring GitHub, Kustomize and ArgoCD
Kubernetes GitOps featuring GitHub, Kustomize and ArgoCDKubernetes GitOps featuring GitHub, Kustomize and ArgoCD
Kubernetes GitOps featuring GitHub, Kustomize and ArgoCD
 
Code Factory avec GitLab CI et Rancher
Code Factory avec GitLab CI et RancherCode Factory avec GitLab CI et Rancher
Code Factory avec GitLab CI et Rancher
 
Tdd and bdd
Tdd and bddTdd and bdd
Tdd and bdd
 
VietOpenStack meetup 7th Auto-scaling
VietOpenStack meetup 7th  Auto-scalingVietOpenStack meetup 7th  Auto-scaling
VietOpenStack meetup 7th Auto-scaling
 
Red Hat OpenShift Container Platform Overview
Red Hat OpenShift Container Platform OverviewRed Hat OpenShift Container Platform Overview
Red Hat OpenShift Container Platform Overview
 
AGILE UNIFIED PROCESS
AGILE UNIFIED PROCESSAGILE UNIFIED PROCESS
AGILE UNIFIED PROCESS
 
Meetup 23 - 03 - Application Delivery on K8S with GitOps
Meetup 23 - 03 - Application Delivery on K8S with GitOpsMeetup 23 - 03 - Application Delivery on K8S with GitOps
Meetup 23 - 03 - Application Delivery on K8S with GitOps
 
CD using ArgoCD(KnolX).pdf
CD using ArgoCD(KnolX).pdfCD using ArgoCD(KnolX).pdf
CD using ArgoCD(KnolX).pdf
 
Docker, mais qu’est-ce que c’est ?
Docker, mais qu’est-ce que c’est ?Docker, mais qu’est-ce que c’est ?
Docker, mais qu’est-ce que c’est ?
 
Kubecon US 2019: Kubernetes Multitenancy WG Deep Dive
Kubecon US 2019: Kubernetes Multitenancy WG Deep DiveKubecon US 2019: Kubernetes Multitenancy WG Deep Dive
Kubecon US 2019: Kubernetes Multitenancy WG Deep Dive
 
Intro to kubernetes
Intro to kubernetesIntro to kubernetes
Intro to kubernetes
 
Ansible
AnsibleAnsible
Ansible
 
CI-CD with AWS Developer Tools and Fargate_AWSPSSummit_Singapore
CI-CD with AWS Developer Tools and Fargate_AWSPSSummit_SingaporeCI-CD with AWS Developer Tools and Fargate_AWSPSSummit_Singapore
CI-CD with AWS Developer Tools and Fargate_AWSPSSummit_Singapore
 
Bare Metal Cluster with Kubernetes, Istio and Metallb | Nguyen Phuong An, Ngu...
Bare Metal Cluster with Kubernetes, Istio and Metallb | Nguyen Phuong An, Ngu...Bare Metal Cluster with Kubernetes, Istio and Metallb | Nguyen Phuong An, Ngu...
Bare Metal Cluster with Kubernetes, Istio and Metallb | Nguyen Phuong An, Ngu...
 

En vedette

Modern Software Methodologies(Agile ,Scrum & Lean) + CASE STUDY(Google)
Modern Software Methodologies(Agile ,Scrum & Lean) + CASE STUDY(Google)Modern Software Methodologies(Agile ,Scrum & Lean) + CASE STUDY(Google)
Modern Software Methodologies(Agile ,Scrum & Lean) + CASE STUDY(Google)Aditya Taneja
 
Metodologia xp
Metodologia xpMetodologia xp
Metodologia xpCrisCobol
 
Programación Extrema (Extream Programming XP)
Programación Extrema (Extream Programming XP)Programación Extrema (Extream Programming XP)
Programación Extrema (Extream Programming XP)Cesar Acosta
 
Introdução a Metodologia XP (E Xtreme Programming)
Introdução a Metodologia XP (E Xtreme Programming)Introdução a Metodologia XP (E Xtreme Programming)
Introdução a Metodologia XP (E Xtreme Programming)Rennan Martini
 
Практика работы с крупными проектами - от Scrum с XP к Kanban
Практика работы с крупными проектами - от Scrum с XP к KanbanПрактика работы с крупными проектами - от Scrum с XP к Kanban
Практика работы с крупными проектами - от Scrum с XP к KanbanAlexander Byndyu
 
Scrum and Kanban - Getting the Most from Each
Scrum and Kanban - Getting the Most from EachScrum and Kanban - Getting the Most from Each
Scrum and Kanban - Getting the Most from EachMichael Sahota
 
Metodologias Ágeis em Gerenciamento de Projetos
Metodologias Ágeis em Gerenciamento de ProjetosMetodologias Ágeis em Gerenciamento de Projetos
Metodologias Ágeis em Gerenciamento de ProjetosDaniel de Amaral
 
Metodologias agiles Programacion Xtrema
Metodologias agiles Programacion Xtrema Metodologias agiles Programacion Xtrema
Metodologias agiles Programacion Xtrema Lis Pater
 

En vedette (10)

Modern Software Methodologies(Agile ,Scrum & Lean) + CASE STUDY(Google)
Modern Software Methodologies(Agile ,Scrum & Lean) + CASE STUDY(Google)Modern Software Methodologies(Agile ,Scrum & Lean) + CASE STUDY(Google)
Modern Software Methodologies(Agile ,Scrum & Lean) + CASE STUDY(Google)
 
Metodologia xp
Metodologia xpMetodologia xp
Metodologia xp
 
Programación Extrema (Extream Programming XP)
Programación Extrema (Extream Programming XP)Programación Extrema (Extream Programming XP)
Programación Extrema (Extream Programming XP)
 
Programación Extrema - XP
Programación Extrema - XPProgramación Extrema - XP
Programación Extrema - XP
 
Introdução a Metodologia XP (E Xtreme Programming)
Introdução a Metodologia XP (E Xtreme Programming)Introdução a Metodologia XP (E Xtreme Programming)
Introdução a Metodologia XP (E Xtreme Programming)
 
Практика работы с крупными проектами - от Scrum с XP к Kanban
Практика работы с крупными проектами - от Scrum с XP к KanbanПрактика работы с крупными проектами - от Scrum с XP к Kanban
Практика работы с крупными проектами - от Scrum с XP к Kanban
 
Metodologias agiles
Metodologias agilesMetodologias agiles
Metodologias agiles
 
Scrum and Kanban - Getting the Most from Each
Scrum and Kanban - Getting the Most from EachScrum and Kanban - Getting the Most from Each
Scrum and Kanban - Getting the Most from Each
 
Metodologias Ágeis em Gerenciamento de Projetos
Metodologias Ágeis em Gerenciamento de ProjetosMetodologias Ágeis em Gerenciamento de Projetos
Metodologias Ágeis em Gerenciamento de Projetos
 
Metodologias agiles Programacion Xtrema
Metodologias agiles Programacion Xtrema Metodologias agiles Programacion Xtrema
Metodologias agiles Programacion Xtrema
 

Similaire à Chrysler c3 project

Modelos de Processo de Desenvolvimento de Software 2 - Prof.ª Cristiane Fidelix
Modelos de Processo de Desenvolvimento de Software 2 - Prof.ª Cristiane FidelixModelos de Processo de Desenvolvimento de Software 2 - Prof.ª Cristiane Fidelix
Modelos de Processo de Desenvolvimento de Software 2 - Prof.ª Cristiane FidelixCris Fidelix
 
Conhecendo o eXtreme Programming
Conhecendo o eXtreme ProgrammingConhecendo o eXtreme Programming
Conhecendo o eXtreme ProgrammingDaniel Wildt
 
Qualidade de Software com Microsoft Visual Studio
Qualidade de Software com Microsoft Visual StudioQualidade de Software com Microsoft Visual Studio
Qualidade de Software com Microsoft Visual StudioAdriano Bertucci
 
O uso de softwares na engenharia civil
O uso de softwares na engenharia civilO uso de softwares na engenharia civil
O uso de softwares na engenharia civildebvieir
 
IBM Domino 9 cluster - zero to hero
IBM Domino 9 cluster - zero to heroIBM Domino 9 cluster - zero to hero
IBM Domino 9 cluster - zero to heroAndré Luís Cardoso
 
Construção de um Alojamento Residencial
Construção de um Alojamento ResidencialConstrução de um Alojamento Residencial
Construção de um Alojamento ResidencialMarco Coghi
 
Tecno Risco 10052006 V1
Tecno Risco 10052006 V1Tecno Risco 10052006 V1
Tecno Risco 10052006 V1Luciano Basile
 
.NET Core + Docker: containers e seus benefícios no deployment de aplicações ...
.NET Core + Docker: containers e seus benefícios no deployment de aplicações ....NET Core + Docker: containers e seus benefícios no deployment de aplicações ...
.NET Core + Docker: containers e seus benefícios no deployment de aplicações ...Renato Groff
 
WBMA2013 - Método Ágil para desenvolvimento de software confiável
WBMA2013 - Método Ágil para desenvolvimento de software confiávelWBMA2013 - Método Ágil para desenvolvimento de software confiável
WBMA2013 - Método Ágil para desenvolvimento de software confiávelAlan Braz
 
Engenharia De Software e O Software Livre
Engenharia De Software e O Software LivreEngenharia De Software e O Software Livre
Engenharia De Software e O Software LivreFabio Sperotto
 
1- Apresentacao Metodologia RCP
1- Apresentacao Metodologia RCP1- Apresentacao Metodologia RCP
1- Apresentacao Metodologia RCPFrank Coelho
 
1 apresentacao metodologia rcp
1  apresentacao metodologia rcp1  apresentacao metodologia rcp
1 apresentacao metodologia rcpFrank Coelho
 
Docker + Bancos de Dados - DBA Brasil 3.0 - Abril-2018
Docker + Bancos de Dados - DBA Brasil 3.0 - Abril-2018Docker + Bancos de Dados - DBA Brasil 3.0 - Abril-2018
Docker + Bancos de Dados - DBA Brasil 3.0 - Abril-2018Renato Groff
 
Defesa Mestrado - FTSProc - Um Processo para Minimizar as Dificuldades de Pro...
Defesa Mestrado - FTSProc - Um Processo para Minimizar as Dificuldades de Pro...Defesa Mestrado - FTSProc - Um Processo para Minimizar as Dificuldades de Pro...
Defesa Mestrado - FTSProc - Um Processo para Minimizar as Dificuldades de Pro...Estevão Hess
 

Similaire à Chrysler c3 project (20)

Modelos de Processo de Desenvolvimento de Software 2 - Prof.ª Cristiane Fidelix
Modelos de Processo de Desenvolvimento de Software 2 - Prof.ª Cristiane FidelixModelos de Processo de Desenvolvimento de Software 2 - Prof.ª Cristiane Fidelix
Modelos de Processo de Desenvolvimento de Software 2 - Prof.ª Cristiane Fidelix
 
Conhecendo o eXtreme Programming
Conhecendo o eXtreme ProgrammingConhecendo o eXtreme Programming
Conhecendo o eXtreme Programming
 
Qualidade de Software com Microsoft Visual Studio
Qualidade de Software com Microsoft Visual StudioQualidade de Software com Microsoft Visual Studio
Qualidade de Software com Microsoft Visual Studio
 
O uso de softwares na engenharia civil
O uso de softwares na engenharia civilO uso de softwares na engenharia civil
O uso de softwares na engenharia civil
 
IBM Domino 9 cluster - zero to hero
IBM Domino 9 cluster - zero to heroIBM Domino 9 cluster - zero to hero
IBM Domino 9 cluster - zero to hero
 
AL QAEDA
AL QAEDAAL QAEDA
AL QAEDA
 
Construção de um Alojamento Residencial
Construção de um Alojamento ResidencialConstrução de um Alojamento Residencial
Construção de um Alojamento Residencial
 
Tecno Risco 10052006 V1
Tecno Risco 10052006 V1Tecno Risco 10052006 V1
Tecno Risco 10052006 V1
 
BIMnet - Apresentação 08 Termosul
BIMnet - Apresentação 08 TermosulBIMnet - Apresentação 08 Termosul
BIMnet - Apresentação 08 Termosul
 
.NET Core + Docker: containers e seus benefícios no deployment de aplicações ...
.NET Core + Docker: containers e seus benefícios no deployment de aplicações ....NET Core + Docker: containers e seus benefícios no deployment de aplicações ...
.NET Core + Docker: containers e seus benefícios no deployment de aplicações ...
 
WBMA2013 - Método Ágil para desenvolvimento de software confiável
WBMA2013 - Método Ágil para desenvolvimento de software confiávelWBMA2013 - Método Ágil para desenvolvimento de software confiável
WBMA2013 - Método Ágil para desenvolvimento de software confiável
 
Engenharia De Software e O Software Livre
Engenharia De Software e O Software LivreEngenharia De Software e O Software Livre
Engenharia De Software e O Software Livre
 
Falando sobre DevOps no azure
Falando sobre DevOps no azureFalando sobre DevOps no azure
Falando sobre DevOps no azure
 
Minicurso SCRUM
Minicurso SCRUMMinicurso SCRUM
Minicurso SCRUM
 
Ufs na nuvem gp 2017-2
Ufs na nuvem   gp 2017-2 Ufs na nuvem   gp 2017-2
Ufs na nuvem gp 2017-2
 
1- Apresentacao Metodologia RCP
1- Apresentacao Metodologia RCP1- Apresentacao Metodologia RCP
1- Apresentacao Metodologia RCP
 
1 apresentacao metodologia rcp
1  apresentacao metodologia rcp1  apresentacao metodologia rcp
1 apresentacao metodologia rcp
 
Docker + Bancos de Dados - DBA Brasil 3.0 - Abril-2018
Docker + Bancos de Dados - DBA Brasil 3.0 - Abril-2018Docker + Bancos de Dados - DBA Brasil 3.0 - Abril-2018
Docker + Bancos de Dados - DBA Brasil 3.0 - Abril-2018
 
Defesa Mestrado - FTSProc - Um Processo para Minimizar as Dificuldades de Pro...
Defesa Mestrado - FTSProc - Um Processo para Minimizar as Dificuldades de Pro...Defesa Mestrado - FTSProc - Um Processo para Minimizar as Dificuldades de Pro...
Defesa Mestrado - FTSProc - Um Processo para Minimizar as Dificuldades de Pro...
 
cv
cvcv
cv
 

Chrysler c3 project

  • 1. Chrysler Comprehensive Compensation System C3
  • 2. C3 Objetivo: Unificar vários sistemas de pagamento em um [1] Motivação: Diminuição do retrabalho gerado pela descentralização dos sistemas de folha de pagamento [7]
  • 3. C3 Situação: • Sistemas com 20 anos de idade [7] • Input via cartão perfurado [7] • COBOL [1]
  • 4. C3 Responsáveis: Tom Hadfield (Diretor de Sistemas de Folha de Pagamento) sob a supervisão de Susan Unger (CIO) [3] Meta: Gerar a folha de pagamento de 86.000 funcionários [3]
  • 5. C3 1993: Início do Projeto [1] 1995: Início efetivo da implementação (2 anos para iniciar o desenvolvimento) Martin Fowler foi contratado como consultor "part time" para melhoria de performance
  • 6. C3 Tecnologia: Smalltalk com GemStone [3] "Gemstone" fornece um "ecossistema" para desenvolvimento distribuído, multiusuário e transacional, usando a linguagem Smalltalk, numa arquitetura cliente/servidor de três camadas e acesso à base de dados relacionais [4]
  • 7. C3 1996: Nenhum contracheque impresso até essa data [1] Kent Beck: • Chamado como consultor para melhorias de performance (assim como Fowler) [5] • Tornou-se "líder técnico" (Head Coach) • Chama Ron Jeffries para trabalhar no projeto [3][6]
  • 8. C3 Kent Beck, Ron Jeffries e posteriormente Ward Cunningham tornariam-se os criadores do XP [3] "O XP foi criado por desenvolvedores para desenvolvedores!" [8]
  • 9. C3 1996 (cont.): "Just made the whole thing up in two weeks (XP), marker in hand at the whiteboard." (Kent Beck) [8] O grupo focou apenas naquilo que agregava valor ao cliente, descartando o resto
  • 10. C3 1997: O c3 entra em produção gerando a folha de pagamento de 10.000 funcionários [1]. O sistema abrangia o "Executive System", pagando gerentes e técnicos mensalmente [7] Novas entregas menores, em iterações curtas, foram realizadas no ano que se seguiu [8]
  • 11. C3 Este resultado promissor serviu de propulsor para técnicas de desenvolvimento que norteiam o eXtreme Programming. A teoria desta metodologia surgiu mais tarde, graças ao sucesso da prática.
  • 12. C3 1999: O projeto é cancelado sem conseguir alcançar a meta dos 86.000 contracheques [1] Motivo: Saída do principal detentor dos requisitos e canal de comunicação com o cliente
  • 13. C3 "XP não é garantia de sucesso" (Martin Fowler) [1]
  • 15. C3 Parte do grupo de desenvolvedores do c3, ainda na Chrysler, foi usado para o desenvolvimento de um "portal de software" [1]
  • 16. C3 Durante o ano de 2002, apenas 1 (um!!!) bug foi encontrado em produção [1]
  • 17. C3 A média da frequência dos "releases" para produção era de apenas 2 (duas) semanas [1]
  • 18. C3 Graças às práticas do XP, seus projetos são conhecidos como "Very Low Defect Projects" (Projetos com baixíssima taxa de defeitos). [2]
  • 19. C3 The C3 Team at Chrysler Corporation: Ann Anderson, Ralph Beattie, Kent Beck, David Bryant, Marie DeArment, Martin Fowler, Margaret Fronczak, Rich Garzaniti, Dennis Gore, Brian Hacker, Chet Hendrickson, Ron Jeffries, Doug Joppie, David Kim, Paul Kowalsky, Debbie Mueller, Tom Murasky, Richard Nutter, Adrian Pantea, and Don Thomas
  • 20. Técnicas utilizadas no projeto C3 • Fazer “a coisa” o mais simples possível • Refatoração de código • Integração contínua • O cliente faz parte do time • Requisitos simplificados (história do usuário) • Planejamento baseado em iterações • Estimativa feita pelo time • Estimativa baseada em história do usuário • Testes implementados antes da codificação • Testes unitários e funcionais • Programação em pares • Reuniões diárias de forma simples e com todo time
  • 21.
  • 22. C3 Referências: [1] C3 - Martin Fowler (http://martinfowler.com/bliki/C3.html) [2] VeryLowDefectProjectMartin - Fowler, Janeiro de 2004 ( http://martinfowler.com/bliki/VeryLowDefectProject.html) [3] Chrysler Comprehensive Compensation System - Wikipedia, Novembro de 2011 (http://en.wikipedia.org/wiki/Chrysler_Comprehensive_Compensation_System) [4] GemStone Programming Guide - GemStone Systems, Inc , Julho de 1996 (http://www.laputan.org/pub/sag/GPG.PDF)
  • 23. C3 Referências (cont.): [5] Chrysler Comprehensive Compensation - Kent Beck, (http://c2.com/cgi/wiki? ChryslerComprehensiveCompensation) [6] Ron Jeffries - (http://c2.com/cgi/wiki?RonJeffries) [7] Case Study: Chrysler Goes to “Extremes” - The C3 Team at Chrysler Corporation, Outubro de 1998 - (http://xprogramming.com/publications/dc9810cs.pdf) [8] Sams Teach Yourself Extreme Programming in 24 Hours - Stewart Baird (http://vapvarun.com/study/softE/teach%20yourself%20extreme %20programming%20in%2024%20hours/0-672-32441-5_2fch02lev1sec1.htm)