O que é Joint Application Design?
- #Desperte o potencial
- #Informática Básica
- #Arquitetura de Sistemas
Técnicas de Requisitos de outros tempos : JAD
Salve jovem padawan, inspirado no artigo anterior sobre como organizar uma boa reunião, resolvi aproveitar o gancho e falar sobre uma técnica desenvolvida pelos engenheiros da IBM, nos idos anos 70 e que vem passando por inúmeras melhorias ao longo dos anos, sempre visando atender as necessidades que a evoluções tecnológicas apresenta.
Nos agentes integrantes da Comunidade DEV, que dedicamos nossa carreira a desenvolver soluções para os problemas empresariais, através da criação de ferramentas informáticas cuja a função é atender áreas administrativas, comerciais, financeiras, industriais e etc.
Atuamos em inúmeras frentes de acordo com as solicitações dos clientes, porem o grande desafio é atender corretamente a solicitação e desenvolver o software corretamente no prazo e especificação acordado. Grandes fiascos ocorreram e milhões de dólares foram perdidos em processos não concluídos.
Para evitar situações foram desenvolvidas inúmeras metodologias para diminuir o risco e garantir entregas de acordo com o desejo do cliente. Vamos conhecer o Joint Application Design, criado por Arnie Lind na IBM Canada em 1974 e aprimorado na New York Telephone Company's.
O que é Joint Application Design?
É uma metodologia para levantamento de requisitos para projetos de médio e longo prazo, que usa o processo de reuniões, para analisar as necessidades do cliente, levantar os problemas, refinando a cada ciclo do processo até o resultado final, um documento com as especificações técnicas para a solução do problema.
Servindo para agilizar o processo de desenvolvimento de software e garantir a qualidade da entrega evitando retrabalhos e entregas ineficazes. Como é de conhecimento publico muitas entregas de software falham, algumas por estouro do prazo de entrega, outras por estouro do orçamento e algumas por não atenderem a expectativa e solucionarem o problema proposto.
Ao logo dos anos o JAD foi sofrendo inúmeras evoluções para atender a demandas atuais e contemplar as novas metodologias de desenvolvimento, estando em uso em milhares de empresas no mundo.
Conhecendo o Ciclo JAD
De uma maneira simplificada, imagine uma NECESSIDADE, ela irá gerar informação, esta informação refinada, passando por uma PREPARACAO, que sera agendada numa SESSAO, onde deve ser apresentada e discutida, passando por uma REVISAO, que sera o feedback da NECESSIDADE, sendo que os documentos gerados serão reavaliados e caso necessário refazendo todo o circuito.
Aprovado a documentação é passada a equipe técnica, que iniciara a codificação e o processo continua em reavaliações até a conclusão do mesmo, possibilitando desta forma um trabalho continuo para atender a NECESSIDADE.
Um ciclo continuo
A vantagem do JAD é justamente ser um processo de refinamento continuo estabelecendo as fronteiras de modo claro e objetivo e como está em constante revisão, evita que o projeto ultrapasse os limites, fator responsável pelo grande insucesso de projetos.
O cliente por desconhecimento técnico desconhece o processo de desenvolvimento e por isso quer tudo e mais um pouco, criando solicitações, que por sua vez fogem ao escopo original e vai expandindo ad infinitum o desenvolvimento e a entrega.
Uma equipa JAD
Vamos apresentar os diversos players, que compõem uma esquadra de desenvolvedores/consumidores JAD.
- Líder Equipe Técnica, responsável pela coordenação inicial e final dos trabalhos, dando apoio a situações de conflito técnico.
- Líder Área Usuária, responsável pela coordenação inicial e final dos trabalhos, dando apoio a situações de conflito operacional / funcional.
- Facilitador: o coringa responsável pelos apontamentos e confecção das atas de reunião, melhorias e coordenação dos conflitos, apaziguador responsável pelo norte do projeto.
- Secretario: agente operacional para a documentação das atas das reuniões, agenda de salas e toda a parte operacional das sessões.
- Gestor do projeto JAD, sua função é fazer a análise dos requisitos é estimar e alocar os recursos necessários para o desenrolar das atividades.
- Lidero do Projeto JAD líder das equipes de desenvolvimento técnico/funcional deve estimar os Cronograma para a elaboração do projeto.
- Membros JAD a depender da especificado do projetos serão os elementos que possuem conhecimento especifico do Sistema e Tecnologias.
Trabalho JAD
1° Ciclo dos Trabalhos Definição do projeto
Quadro com a expectativa do produto, base legal para alteração, base comercial ou qualquer outra demanda, que defina o Escopo do Projeto
Componentes Líder Equipe Técnica, Líder Área Usuária e Facilitador
Reunião de alto nível, onde serão estabelecidos os primeiros limites do projeto, criando a fronteira inicial, que será refinada nos próximos ciclos de levantamento.
2° Ciclo dos trabalhos: Traçando os objetivos do JAD
A partir deste momento serão reuniões mais técnicas, onde as equipes irão refinar e aprimorar os documentos gerados no primeiro ciclo, tendo como componente o Facilitador, o Gestor de Projeto JAD, o Líder do Projeto JAD, aqui define os ambientes, as tecnologias envolvidas, as massas de testes e outros Sistemas que possam ser afetados.
3° Ciclo dos trabalhos: Refinamento e especialização das atividades
Trabalhos de planejamento, projeto e análise, subsidiados pelos documentos gerados no 2° Ciclo, apresentando as atividades mais especializadas e com blocos de atividades parametrizáveis, caso exista alguma complexidade nas atividades o documento sofre um particionamento, voltando para o 2° Ciclo afim de validar a divisão, um pente fino das demandas e sistemas externos
4° Ciclo dos Trabalhos: Equipes JAD
Neste ciclo a solicitação está bem delimitada e passam a gerar os documentos funcionais para a passagem a equipe de desenvolvimento para poderem iniciar os trabalhos de codificação.
O Checklist das sessões JAD
O facilitador e o secretario serão responsáveis pelos primeiros passos e da documentação inicial.
1. Definição do Escopo do Projeto e primeiras fronteiras
1.1 Criação de um “quadro” com o macro projeto elaborado no 1° Ciclo
2. Seleção da equipe que irá participar do JAD:
2.1 Definida no 2° Ciclo de trabalho através do desenho do projeto expandindo
3. Kick-off primeira reunião do 3° Ciclo Primeira reunião do JAD (kick-off): - Apresentação do processo do JAD para iniciantes e definição dos papéis, incluindo nível de autoridade e responsabilidade.
4. Reuniões JAD de 3° Ciclo
4.1 Discussões para detalhar o que será feito no projeto
4.2 Discussões sobre como o projeto será feito
4.3 Planejamento de tarefas e responsáveis
4.4 Definição de cronograma
5. Reuniões JAD de 4° Ciclo
5.1Acompanhamento do projeto
5.2Acertos de rumo do projeto
5.3Reunião JAD final (finalização):
5.4Revisão dos objetivos atingidos
5.5Revisão do projeto
5.6Definição de novos passos (se houver)
Gestão do Tempo
Reforçando o tema explorando no artigo sobre Reuniões, o tempo é um artigo raro e cabe ao facilitador controlar o andamento dos trabalhos, evitando reuniões muito longas e com muito falatório desnecessário.
Outro papel chave do facilitador e evitar conflitos, sendo um maestro para afinar e controlar os elementos das sessões JAD.
Curiosidades sobre o JAD
A primeira aplicação pratica da metodologia ocorreu num Hospital e foi apresentado num seminário para enfermeiras e administradores do Pronto Socorro, que adotaram em sua atividade para levantamento de informações e tomadas decisão em ambiente emergencial típico de um PS.
Conclusão
Caro padawan espero ter sido claro, explicado de maneira sucinta e fácil. Na pratica o trabalho é mais fácil, pois é um trabalho mais intelectual de solucionar um problema, que será sempre partido para blocos menores de maneira, que fique bem claro os limites e fronteiras do projeto.
Se algo ficou obscuro ou hermético chama nos comentários, que podemos fazer um refinamento num trabalho continuo de melhoria.
Espero ter ajudado, lembre-se que é um trabalho continuo.
Mais momento jabá, para distrair, andanças pelas estradas portuguesas, apreciando o por do sol, maravilhado com tantas belezas e momentos únicos, visite meu vídeo e veja para onde fui desta vez: https://www.youtube.com/watch?v=XBK9bq3JVhw
https://www.linkedin.com/in/vagnerbellacosa/
https://github.com/VagnerBellacosa/
Pode me dar uma ajudinha no YouTube?
https://www.youtube.com/user/vagnerbellacosa