Olá sejam bem-vindos ao canal engenharia de software com ênfase o ML Eu sou professor julianes Guedes e eu já atuo na área de modelagem de software há vários anos eu tenho quatro livros publicados sobre modelagem de software e eu já ministrei diversas palestras e cursos técnicos sobre modelagem de software utilizando a linguagem uml na aula de hoje eu vou dar continuidade ao tema de processos de desenvolvimento de software dessa vez enfocando a a quarta aula sobre processos de desenvolvimento ágeis então Mais especificamente hoje eu vou abordar o método de desenvolvimento cistal Clear Então vamos dar
início a nossa aula então como eu falei essa é a quarta aula sobre o sobre processo de desenvolvimento ágeis e nós vamos falar sobre o crstal Clear Então na verdade o crstal clear ele pertence a uma família de métodos Crystal que foi criada pelo cockburn então existem vários métodos Crystal o Crystal Clear é o mais ágil de todos ele é foi desenvolvido para equipes com até oito desenvolvedores alguns autores dizem até 10 mas eu considero até oito desenvolvedores e com nível de risco relativamente pequeno existem outros ã métodos Crystal que vão se tornando mais formais
E à medida que o tamanho da equipe e o risco do projeto aumentam então nós temos o método Crystal Yellow que é para até 20 membros com risco de pequenas perdas financeiras o método Crystal Orange para até 40 membros com risco de grandes perdas financeiras e o método o método Crystal Red para até 80 membros alguns autores fala até 100 membros com risco de perda de vidas humanas e existem outros existe o método Crystal marum que é para h 120 membros mais de 100 membros eh com risco de perdas de vidas maior e tem Ah
o método Crystal safir ou coisa parecida que também são para equipes muito grandes com até 200 membros e com alto risco Ahã então vou falar um pouquinho sobre os papéis do cal Clear existe os papéis reais e existe os papéis virtuais os papéis reais como o nome já diz se referem a responsabilidades mais tradicionais orientados a tarefas são responsabilidades tangíveis e específicas que os indivíduos podem assumir dentro de um projeto Então os papéis são de desenvolvedor o o profissional que vai ificar o código projetista ou arquiteto que é é o que fará o projeto A
análise vai estabelecer a arquitetura do software esse tipo de coisa o testador o especialista de qualidade que como o nome já diz testo o software e garante que ele está H tendo uma boa qualidade tem o gerente ou coordenador do projeto que tenta eh gerenciar o projeto verificar se os passos estão sendo seguidos a contento se ele tenta mitigar a ocorrência de riscos esse tipo de coisa existe o patrocinador o cliente que é a pessoa que pede pelo software e tem os usuários ou usuário final entre outros possíveis papéis Esses são os principais Ah nós
temos ainda os papéis virtuais que são papéis que podem ser assumidos temporariamente por membros da equipe uma vez que isso se se faça necessário esses papéis eles são mais fluidos e adaptáveis e eles surgem eventualmente quando é necessário que o membro da equipe assuma uma tarefa ou responsabilidade adicional que não esteja adequada As definições dos papéis tradicionais então por exemplo um desenvolvedor ele pode ter que assumir assumir temporariamente a responsabilidade de entrevistar os usuários e Aqui nós temos uma figura tirada do vats slavic sobre o ciclo de vida Crystal Clear basicamente ele é composto por
pelo projeto que é dividido em diversas entregas cada entrega terá um conjunto de iterações Ah bom então cada iteração ela é composta por a subfase de estimação desenvolvimento e celebração elas duram poucas semanas normalmente então estimação é uma análise do que precisa ser feita o que se precisa ser feito determinando complexidade do que precisa ser desenvolvido ah entre outras características depois é feito o desenvolvimento propriamente dito e no momento que os o o as funcionalidades são desenvolvidas é feita a celebração que a conferência se elas estão corretas e são dadas como concluídas ã depois nós
temos a entrega que também é composta por várias iterações onde se entregam funcionalidades úteis ao cliente em torno de 2 meses e nós temos o o projeto que é como já foi explicado formato formado pelo conjunto de todas as entregas ã algumas características do Cristal Clear de acordo com vats lvic ele é centrado em pessoas então o foco para o sucesso do projeto é sempre melhorar o trabalho das pessoas envolvidas ele deve ser ultra leve ou muito leve então deve-se tentar reduzir a burocracia documentos e evitar sobrecarga ou seja over overhead de trabalho ã outra
característica é que ele seja na medida Então tem que se tentar começar com a desenvolver ou projetar algo menor do que se supõe que seja necessário então é um dos princípios ágeis a arte de não fazer maximizar o que não precisa ser feito certo então se evita fazer e se evita fazer determinados trabalhos porque ã muitas vezes de acordo com os os proponentes da Cristal Clear muitas vezes o que é fe o que se pensa ser necessário acaba se demonstrando inútil ou desnecessário no final Então se faz um pouco menos do que se acredita ser
necessário e se for preciso se aumenta apenas o suficiente para suprir as necessidades porque se considera que é mais fácil e barato aumentar um software do que depois cortar coisas que foram feitas e que no final se provaram inúteis desnecessárias Ah vou falar um pouco sobre os sete pilares do Crystal Clear então o primeiro deles são entregas frequentes então as entregas precisam correr a cada dois meses no máximo melhoria reflexiva a equipe deve está discutindo frequentemente se o projeto está no rumo certo e deve ser comunicados descobertas que possam impactar no projeto ah comunicação osmótica
toda a equipe precisa trabalhar em uma única sala é incentivado que os membros discutem a a conversa uns dos outros e se eles julgarem conveniente eles podem interromper eles podem participar eh acredita-se que é uma boa prática interferir no trabalho uns dos outros os membros devem se auxiliar mutuamente segurança pessoal os desenvolvedores eles devem ter a garantia de que eles podem opinar podem falar podem reclamar sem medo de repreensões ou represalias então isso é baseado em que se as pessoas não falam então as suas fraquezas viram fraquezas da equipe Então deve haver comunicação as pessoas
podem até dizer que estão tendo dificuldades ou que não estão gostando de algo foco os membros eles devem ter um conjunto pequeno de tópicos para trabalhar dois ou três no máximo e eles devem ter tempo espaço e paz para trabalhar neles sem que recebam novas atribuições além disso eles eh deve haver um acesso fácil a especialistas os especialistas são usuários Chaves que T conhecimento sobre um determinado setor um determinado processo então eles precisam estar disponíveis para colaborar com a equipe o que nem sempre é fácil e deve haver um ambiente tecnologicamente rico deve se permitir
um teste automatizado deve haver softwares para gerenciamento de configuração e mudanças gerenciamento de versões e deve a o ambiente deve permitir a integração frequente vantagens do Crystal Clear os Defensores desse desse processo eles afirmam que ele é flexível e pode se ajustar ao tipo de projeto tamanho da equipe e requisitos do projeto Lembrando que eles são desenvolvidos para equipes até de até oito pessoas mas eles podem se eh ajustar a menos eh profissionais ele é adaptável ele foi projetado para responder a novas situações e desafios ele promove comunicação efetiva e aprendizado entre equipe isso é
algo que é preconizado Ele deve promover comunicação efetiva E a equipe deve aprendizar deve deve aprender através dessa comunicação ele é focado os membros eles são incentivados a priorizar seu trabalho e eliminar distrações Como já foi falado antes eles devem enfocar poucas tarefas melhor a eficiência uma vez que elimina processos desnecessários e foca nas tarefas mais importantes ele como como di Como já foi falado ele eh estabelece que deve ser desenvolvido da medida fazer um pouco menos do que se acha que é necessário ã os componentes críticos essenciais eles são priorizados Eh ele também possui
um contrato de Preço Fixo o que axilia a determinar o tamanho da equipe e no planejamento do projeto de acordo com o orçamento disponível aqui também se aplica a técnica time Boxing ah a mesma que é utilizada no dsdm como foi falado na aula anterior ã ele permite uma qualidade do produto e previsibilidade melhorada uma vez que problemas são identificados e corrigidos mais rapidamente uma vez que o o projeto ele é constantemente reavaliado e os processos de trabalho sofrem constante ajuste e também isso auxilia determinar quanto tempo vai ser necessário para concluir as tarefas desvantagem
bom ah essa é uma desvantagem comum a muitos processos ágeis o cristal Clear ele Exige uma mudança cultural nas equipes e nas organizações Então pode haver uma certa dificuldade na adaptação dos novos papéis e responsabilidades pelos profissionais de uma empresa de uma organização isso pode levar a confusão e falta de direção exige tempo até os membros se acostumarem com os princípios e práticas ágeis ah alguns projetos eles podem ter requisitos ou restrições bastante rígidas isso prejudica muito a flexibilidade e adaptabilidade do Cristal Clear Talvez o cristal Clear não seja o mais adequado para uma situação
em que os requisitos e as restrições sejam tem um nível de rigidez muito alto ã e uma outra desvantagem pode ocorrer a falta de adesão da liderança então se a liderança ela não concordar com a metodologia então pode ser difícil obter apoio e os recursos necessários para fazer com que ela funcione por exemplo ã É necessário uma constante interação com usuário Chaves com partes interessadas a liderança pode não concordar com isso devido ao custo Por exemplo quando usar então e se usa o cristal Clear em pequenos projetos focados Então ela é adequada para projetos pequenos
e simples com objetivos claros e um escopo bem definido permite flexibilidade e adaptabilidade o que é importante em ambientes de ritmo acelerado e em rápida mudança também eh em deve-se usar cistal Clear com equipes colaborativas ele depende muito de comunicação e colaboração eficazes É uma opção boa para equipes que trabalham bem juntas e estão abertas a ideias novas abordagens novas embora o crstal Clear não seja adequado para projetos grandes e complexos quando o projeto é complexo mas tem um escopo bem definido o cristal Clear pode ser adequado hã Então ele pode auxiliar nessas situações a
equipe a ficar focada e a se adaptar a mudanças ah em equipes com também ele pode ser utilizado em equipes com experiência ágil limitada porque se a equipe ela tem pouca experiência com metodologias ágeis Cristal Clear pode ser uma opção boa para iniciantes ele é razoavelmente simples e fácil de entender e então ele é uma alternativa razoável para equipes iniciarem com os princípios de práticas ágeis e nós terminamos também mais esse processo eu espero que vocês tenham achado essa aula útil eu peço então que se vocês gostaram da aula que vocês curtam compartilhem essa aula
com quem possa se interessar e se ainda não se não se inscreveram se inscrevam no canal obrigado pela atenção and [Música]