Crystal Encenação Requerimento de Documento Planejamento Lançamento Agendamento Varias Interações Inspeção Do Usuário Normas de Procedimentos Paralelismo e Fluxo Monitoramento do Processo Construção Demonstração Revisão 1 Introdução O Crystal é uma família de diferentes metodologias em que a mais apropriada pode ser escolhida de acordo com seu projeto. Os diferentes membros da família podem ser adaptados para caber em variáveis circunstanciais. O núcleo da filosofia Crystal pode ser visto em alguns conceitos: Desenvolvimento de software é frequentemente visto como um jogo cooperativo de invenção e de comunicação, com o objetivo primordial de entregar algo útil, software funcionando, e em segundo plano fixar uma meta de criação para o próximo jogo. Duas consequências dessa filosofia são que diferentes projetos precisam ser executados de maneira diferente, e que os montantes de modelagem e de comunicação que as pessoas precisam fazer devem ser feitos sob medida, ou seja, apenas a quantidade de que necessitam para conjuntamente movam o jogo a frente. 2 História • A família de metodologias Crystal foi iniciada em 1992, antes do XP,FDD entre outras. Entretanto foi nomeada como "Crystal" apenas em 1997,antes do manifesto ágil. Essa metodologia foi uma das precursoras do modo ágil de se desenvolver software. Um processo que é diferente do XP, FDD entre outros métodos ágeis pelo fato de que o Crystal é uma família de metodologias e não somente uma. O criador do Crystal, cita que essa é considerada o seu esforço para construir um conjunto de convenções que aumenta as chances de sucesso, e, ao mesmo tempo, a chance de ser praticada ao longo do tempo. 3 PRÉ-REQUISITOS PARA O USO DO CRYSTAL Como uma das grandes precursoras das metodologias ágeis, a família Crystal não impõe qualquer restrição ou prérequisito ao seu uso. Os únicos cuidados a serem tomados são a verificação de valores, princípios e práticas das metodologias para que o desenvolvedor assegure que seu processo possa se adaptar a essa tecnologia. 4 VALORES A família Crystal possui dois valores que são seguidos por todas suas metodologias, são eles: •O Foco na comunicação interpessoal; •Alta tolerância. O primeiro significa que ferramentas de trabalho, produtos e processos estão ali apenas para apoiar os humanos. Já o segundo reconhece a variação de cultura das pessoas. Dentro da margem de tolerância da família Crystal, é permitido que a equipe opte por trabalhar em uma maneira de alta cerimônia ou uma de alta disciplina - adotando partes de outras metodologias como, por exemplo, o XP -. 5 PRINCÍPIOS Os princípios dessa família podem ser sumarizados diante os tópicos seguintes. •A equipe pode diminuir trabalhos intermediários produzindo, com mais freqüência, códigos executáveis, bem como otimizar os canais de comunicação entre as pessoas. •Como cada projeto é diferente e evolui ao longo do tempo, o conjunto de convenções que a equipe adota também deve ser moldado e evolutivo. As duas regras mais comuns para a família Crystal são: 6 As duas regras mais comuns para a família Crystal são: O projeto deve usar um desenvolvimento incremental, com incrementos de quatro meses ou menos (com forte preferência para incrementos de um a três meses); A equipe deve possuir oficinas para reflexão no pré e pósincremento (com preferência para a realização também em meados do incremento). As duas técnicas básicas no Crystal são: •A metodologia de sintonização técnica (methodology tuning technique): utilizando entrevistas no projeto e oficinas (workshops) em equipes para converter uma metodologia base em uma metodologia de inicio para o projeto; • A técnica usada para estudar reflexões de uma oficina. 7 Os stakeholders de maior poder nesse processo estão livres a substituir ou incrementar essas duas técnicas, desde que exista outro caminho para o alcance de suas metas. Bem como os fatos acima puderam comprovar, é possível fazer com que outro tipo de metodologia se pareça com o Crystal Sendo esse um importante fato para comprovação de qualidades e características dessa metodologia. 8 Características Cada método Crystal é caracterizado por uma cor, de acordo com o número de envolvidos. Crystal Clear é uma metodologia leve, para equipes de 1 a 8 pessoas, podendo chegar até 12 em casos especiais; , para equipes por volta de 10 a 20 membros; e a variante são apropriados para times de 20 a 50 participantes e para equipes de 50 a 100 membros. Cada um dos métodos com graus de gerenciamento e de comunicação ajustados de acordo com o tamanho da equipe. 9 ESTIMATIVAS E PRAZOS Assim como o número de indivíduos participantes do processo, estimativas e prazos variam de acordo com a cor da metodologia escolhida. No caso do Crystal Clear os projetos são de curta duração, sem definição explícita de quanto tempo o mesmo leva. No caso do Crystal Orange os projetos já são definidos para ter um tempo de duração entre um e dois anos. Vale lembrar que os projetos à medida que suas cores escurecem, não necessariamente tem seu tempo de duração aumentado. Embora esse fato ocorra na maioriadas vezes. 10 ARQUITETURA Encenação Requerimento de Documento Planejamento Lançamento Agendamento Varias Interações Inspeção Do Usuário Normas de Procedimentos Paralelismo e Fluxo Figura 01 Monitoramento do Processo Construção Demonstração Revisão 11 •Staging (Encenação ): Planejamento do próximo incremento do sistema. A equipe seleciona os requisitos que serão implementados na iteração e o prazo para sua entrega; 12 •Edição e revisão: Construção, demonstração e revisão dos objetivos do incremento; 13 •Monitoramento: O processo é monitorado com relação ao progresso e estabilidade da equipe. É medido em marcos e em estágios de estabilidade 14 •Paralelismo e fluxo: Em Crystal Orange as diferentes equipes podem operar com máximo paralelismo. Isto é permitido através do monitoramento da estabilidade e da sincronização entre as equipes 15 • Inspeções de usuários: são sugeridas duas a três inspeções feitas por usuários a cada incremento 16 Workshops refletivos: são reuniões que ocorrem antes e depois de cada iteração com objetivo de analisar o progresso do projeto. 17 Local matters: são os procedimentos a serem aplicados, que variam de acordo com o tipo de projeto. 18 Standards (padrões): padrões de notação, convenções de produto, formatação e qualidade usadas no projeto. 19 Tools: ferramentas mínimas utilizadas. Para Crystal Clear: compiladores, gerenciadores de versão e configuração, ferramentas de versão, programação, teste, comunicação, monitoramento de projeto, desenho e medição de performance. 20 REGRAS E RESPONSABILIDADES (papeis) Daremos o exemplo dos stakeholders das duas metodologias mais utilizadas (clara e alaranjada). Uma dessas pessoas – descritas na Figura 02- deve assumir a atribuição de coordenador do projeto. Ao menos um será o Business Expert, e também uma ou mais pessoas irão partilhar o papel de colheita de requisitos. Além de termos a definição de um programadordesigner sênior principal. Os outros podem ser um mescla de diferentes níveis de conhecimento. 21 Figura 02 22 Figura 03 23 Observa-se que na Figura 03 a gama de participantes do processo se torna muito superior à Figura 02. Ademais, não podemos esquecer que no Crystal Orange as equipes de desenvolvimento podem ser múltiplas, e caso haja necessidade divididas nos seguintes grupos: Planejamento de sistema (System planning); Monitoramento do projeto (Project monitoring); Arquitetura (Architecture); Tecnólogia (Technology); Funções (Functions); Infra-estrutura (Infrastructure); Testes externos (External test.); 24 Documentação O Crystal, seguindo valores e princípios do manifesto ágil, não tem a documentação como seu ponto forte ou até mesmo relevante ao desenvolvimento. Como as diversas metodologias ágeis, esse processo não prioriza e nem cobra de seus desenvolvedores documentações robustas e precisas, ao invés disso sugere valores de alta tolerância e comunicação interpessoal para os indivíduos participantes. 25 Vantagens + Crystal/Clear é permitir que cada organização implemente as atividades que lhe parecem adequadas. +Toda a especificação e projeto são feitos informalmente. +Todo projeto tem necessidades, convenções e uma metodologia diferentes. +Comunicação melhor e lançamentos freqüentes reduzem a necessidade de construir produtos intermediários do processo. + A família Crystal não impõe qualquer restrição ou prérequisito ao seu uso 26 Conclusão Concluímos com esse trabalho a eficácia do metodologia da Família CRYSTAL ,que se adapta a qualquer projeto, seja ela grande ou pequeno simples ou complexo. Concluímos também que a família Crystal não é apenas uma metodologia e sim varias metodologias para diferentes caos por isso é chamada de Família. 27 Referencias 28 Comentario •A empresa Ebucks - loja virtal norte americana utiliza-se de uma das metodologias da família Crystal. 29 Créditos Muito Obrigado a todos por esperar a apresentação da Fabrica UNITEC ® 30