Metodologia Crystal Clear (Crystal Clear Methodologies)

  • View
    2.908

  • Download
    4

Embed Size (px)

DESCRIPTION

Trabalho desenvolvido para a disciplina de Engenharia de Software gil do curso de Ps-graduao em Engenharia de Software Centrada em Mtodos geis do Centro Universitrio UNA. Abstract Crystal family is a group of methodologies created by Alistair Cockburn. The methodology has approach to people management. As Crystal Family is very sensitive to human factors, it is not purposely completely defined, been necessary to adapt it to each project. To chose which method use, we should consider the number of people and the criticality of the project. Crystal Clear is a Crystal's family member, and was done to projects with two to eight people, sitting in the same room or near offices, so all people can easily communicate with each other. Resumo A Familia Crystal e um conjunto de metodologias criada por Alistair Cockburn. A metodologia possui uma abordagem voltada a gestao de pessoas. Como Crystal Family e muito sensivel a fatores humanos, ela nao e, propositalmente, completamente definida, devendo se adaptar a cada projeto. Para a escolha de qual metodologia usar deve-se considerar o numero de pessoas e a criticidade do projeto. Crystal Clear e membro da familia Crystal, e e voltada para projetos com duas a oito pessoas, sentadas na mesma sala ou escritorios proximos, de forma que todas as pessoas possam se comunicar facilmente.

Transcript

  • 1. Crystal Clear Methodologies Thiago Sinsio, Briner Nunes Homem, Carlos Alexandre Correia, Daniel Augusto da Silva Centro Universitrio UNA Caixa Postal 30140-071 Belo Horizonte MG Brasil Curso de Ps Graduao em Engenharia de Software Centrada em Mtodos geis thiagosinesio@gmail.com, briner.nunes@cdlbh.com.br, ccorreiax@gmail.com, danielccunibh@gmail.com Abstract Crystal family is a group of methodologies created by Alistair Cockburn. The methodology has approach to people management. As Crystal Family is very sensitive to human factors, it is not purposely completely defined, been necessary to adapt it to each project. To chose which method use, we should consider the number of people and the criticality of the project. Crystal Clear is a Crystal's family member, and was done to projects with two to eight people, sitting in the same room or near offices, so all people can easily communicate with each other. Resumo A Famlia Crystal um conjunto de metodologias criada por Alistair Cockburn. A metodologia possui uma abordagem voltada gesto de pessoas. Como Crystal Family muito sensvel a fatores humanos, ela no , propositalmente, completamente definida, devendo se adaptar a cada projeto. Para a escolha de qual metodologia usar deve-se considerar o nmero de pessoas e a criticidade do projeto. Crystal Clear membro da famlia Crystal, e voltada para projetos com duas a oito pessoas, sentadas na mesma sala ou escritrios prximos, de forma que todas as pessoas possam se comunicar facilmente. 1
  • 2. 1. Introduo a Metodologias geis A indstria de desenvolvimento de software uma das mais importantes dos tempos atuais. Alm de empregar milhares de trabalhadores em todo o mundo, cria e participa de produtos essenciais para nossa sobrevivncia Gnal (2012). Devido ao constante desenvolvimento dos sistemas de informao, a crescente demanda de seus servios, bem como as diferentes formas que o mundo dos negcios assumiram ao longo dos anos, diferentes mtodos e modelos de desenvolvimento de software foram inventados e utilizados nas ltimas cinco dcadas Gnal (2012). At o ano de 2001, a maioria dos modelos de processo de desenvolvimento de software eram baseados no modelo Cascata, onde h uma grande fase de planificao que da suporte a todo o restante do projeto. Atravs da utilizao desse modelo, qualquer alterao de requisito exige regresso fase de planificao, onde pode causar grande impacto em todo o projeto, esse fator faz com que as empresas tenham grande dificuldade em aceitar mudanas nos requisitos nas fases posteriores ao planejamento Toms (2009). Alguns mtodos tradicionais so muito orientados a documentao, limitando os desenvolvedores a seguir e aplicar determinados processos. Como reao a esses problemas trazidos pelos mtodos tradicionais, comeou a surgir na indstria de software ao longo das ltimas duas dcadas a compreenso da importncia do fator humano, importncia da colaborao e comunicao entre a equipe de desenvolvimento e os clientes e a capacidade de responder as mudanas Gnal (2012); Agile Manifesto (2001). Filho (2011) relata que o modelo de desenvolvimento em Cascata est correlacionado com falhas no projeto e reduo da produtividade. Com o grande crescimento das demandas por software se faz necessrio criar e entregar mais rapidamente os produtos de software com mais qualidade e que melhor reflitam as reais necessidades dos clientes Libardi e Barbosa (2010). Libardi e Barbosa (2010), argumentam que o desenvolvimento de software precisa ser reconhecido como um processo complexo. A grande mudana no pensamento tradicional do processo de desenvolvimento de software reconhecer que os softwares no so construdos com a mesma equipe, da mesma forma, sob as mesmas circunstncias e ter a conscincia que durante todo o processo pode haver imprevistos e mudanas a equipe precisa ter aes para trabalhar nessas situaes. As ideias que guiam o desenvolvimento gil tiveram incio antes da dcada de 90, porm s em 2001 os princpios desta metodologia foram publicados sob a forma de manifesto. O manifesto denominado Manifesto for Agile Software Developer define 12 princpios, a partir dos quais foram criados os Modelos geis de Processo, dentre eles a Crystal Clear Methodologies Toms (2009). Highsmith (2002) define agilidade como a habilidade de criar e responder a mudanas, de modo a lucrar em um ambiente turbulento de negcios. 2
  • 3. 2. Introduo a Crystal Family A famlia Crystal foi criada por Alistair Cockburn e possui uma abordagem voltada gesto de pessoas, propositalmente pouco definida e muito sensvel a fatores humanos, focados nas habilidades e talentos das pessoas. Seus princpios so adaptados para cada projeto de acordo com sua complexidade, adotando um conjunto de polticas e convenes para cada situao. A Crystal Methodologies, uma famlia de metodologias com um cdigo gentico em comum, que podem ser adaptados de acordo com o projeto ou o nmero de integrantes da equipe. Sendo assim, importante ressaltar que no h uma metodologia Crystal. Existem diferentes tipos de metodologias Crystal para diferentes tipos de projeto. Apesar de ser pouco definida, a famlia Crystal possui valores comuns, como: entregas frequentes; equipe com especialidades distintas e com boa proximidade e integrao; no limitao de quaisquer prticas de desenvolvimento; visa comunicao eficaz e bom fluxo de informaes; os projetos possuem ciclo de desenvolvimento incremental e com liberao de verses variando de um a quatro meses. Aps cada iterao so feitas reflexes sobre possveis melhorias. Cada organizao avalia o projeto por duas vises: nmero de pessoas e consequncia dos erros. Como a metodologia no detalhadamente definida e varia de acordo com o projeto, utilizam-se cores para indicar a complexidade ou dureza da metodologia, sendo que, quanto mais escura, mais complexa ela . Sendo assim, a escolha da cor baseada no nmero de pessoas que necessitam ser coordenadas e na criticidade do projeto, ou seja, o grau do dano que pode ser causado pelo seu mau funcionamento. O nome Crystal caracteriza os projetos atravs de duas dimenses: tamanho e criticidade, que correspondem a cor e dureza dos minerais. Crystal Clear considerada uma metodologia leve, sendo assim para equipes de 2 a 8 pessoas, podendo chegar at 12 em casos especiais utiliza-se Clear; Yellow, para equipes por volta de 10 a 20 membros; Orange e Orange Web so apropriados para times de 20 a 75 participantes; Red para equipes de 75 a 100 membros; e Maroon de 200 para cima. preciso analisar trs fatores para o entendimento de como proceder na adaptao e classificao por cor: a coordenao e comunicao (representada pelo nmero de pessoas); criticidade do sistema e prioridade do projeto Cockburn (2004). 3
  • 4. Figura 1. Demostra a classificao por cores das Metodologias Crystal, sendo que quanto mais escura a cor mais complexo e crtico ser o projeto. Figura 2. Ilustra a relao da escolha da cor com a quantidade de pessoas no projeto. 3. Cdigo gentico da Famlia Crystal O cdigo gentico da Famlia Crystal baseia-se em: Modelo de jogo econmico-cooperativo; Prioridades selecionadas; Propriedades selecionadas; Princpios selecionados; Tcnicas selecionadas; 4
  • 5. 3.1.Modelo de jogo econmico-cooperativo O modelo de jogo econmico-cooperativo diz que o desenvolvimento de software uma srie de "jogos" cujos movimentos consistem basicamente em inveno e comunicao. Cada jogo tem dois objetivos conflitantes: entrega de software funcional e preparao para a prxima etapa do jogo. O jogo nunca se repete, de modo que cada projeto exige estratgias ligeiramente diferentes de todos os jogos anteriores. O modelo de jogo econmico-cooperativo leva as pessoas a pensarem sobre seu trabalho em um projeto de uma forma muito especfica, focada e eficaz Cockburn (2004). 3.2.Prioridades selecionadas Segurana no resultado do projeto (entrega do software); Eficincia no desenvolvimento; Habitabilidade das convenes (o time precisa aceitar o processo). A principal prioridade a primeira. As duas ltimas so conflitantes, um processo eficiente pode ser intolervel pelas pessoas Cockburn (2004). 3.3.Propriedades selecionadas A Famlia Crystal enfoca sete propriedades Entrega Frequente (Frequent Delivery); Comunicao Cara a Cara (Close Communication); Melhoria Reflexiva (Reflective Improvement); Segurana Pessoal (Personal Safety); Foco (Focus); Fcil acesso a especialistas (Easy Access to Expert Users); Ambiente tcnico com testes automatizados, Gerenciamento de Configurao e Integrao Continua (technical environment with automated testing, configuration management and frequent integration) Cockburn (2004). Os trs primeiros devem estar presentes em todos projetos. 3.3.1. Propriedade 1: Entrega frequente (Frequent Delivery) A propriedade mais importante de qualquer projeto, grande ou pequeno, gil ou no, o de garantir entrega funcional e cdigo testado a cada poucos meses. As vantagens so inmeras: Os patrocinadores recebem feedback sobre a taxa de progresso da equipe; Os usurios tem a chance de ver seus produtos em funcionamento ainda na fase de desenvolvimento e assim conseguem saber se o que est sendo feito est de acordo com suas necessidades; Desenvolvedores mantem seu foco; A equipe se mantm motivada atravs de realizaes. 3.3.2. Propriedade 2: Melhoria Reflexiva (Reflective Improvement) Uma das principais realizaes dessa propried