Um Processo de Desenvolvimento de Software para Uso no Ambiente Acadêmico Equipe • • • • • • • • • • Aliandro Higino Guedes Lima Danilo de Sousa Ferreira Fábio Luiz Leite Júnior Giselle Regina Chaves da Rocha Gustavo Wagner Diniz Mendes Renata França de Pontes Verlaynne Kelley da Hora Rocha Vinicius Farias Dantas Yuska Paola Costa Aguiar Francilene Procópio Garcia Roteiro • • • • Introdução; Problemática; Proposta; Desenvolvimento; Estudo; Concepção; O Processo; Implantação; • Ganhos; Conclusão; • Trabalhos Futuros. Introdução • Os alunos de Computação devem aprender: Importância do uso de um Processo de Desenvolvimento Necessidade de usar um processo adequado ao escopo do projeto a ser desenvolvido Problemática • Perfil dos projetos feitos na disciplina (LES): Escopo pequeno; Prazo curto; Desenvolvedores com pouco prática. Proposta • Um Processo que: se adeque a projetos de pequeno e médio porte; Com prazo de entrega de quatro meses; De fácil aprendizagem; Que seja robusto para o perfil dos alunos. Desenvolvimento • Estudo; • Concepção; • Implantação. Desenvolvimento Estudo • RUP[1]; • UP1[2]; • XP[3]; • XP1[4]; • Relato de experiências de alunos. Desenvolvimento Concepção • Fluxo de Trabalho; • Documentos de definição de cada fase; • Exemplos. O Processo Fluxo O Processo Definição de Papéis • • • • • Cliente; Usuário; Testador; Desenvolvedor; Gerente. O Processo Conversa com o Cliente • Gerar o documento de visão O Processo Fase Inicialização • Definição e priorização das User Stories; • Projeto Arquitetural; • Modelo Lógico. O Processo Fase Planejamento • De Release: Aloca as User Stories. • De Iteração: Quebrar User Stories em tarefas; Teste de aceitação para cada User Story. O Processo TAT – Tabela de Alocação de Tarefas Iteração 1: 05/05/2004 a 16/05/2004 Tarefa Descrição Responsável Estimativa de Tempo Tempo Real Status O Processo Fase de Implementação • Padrões de Codificação; • Padrões de Projeto; • Refatoramento; • Propriedade Coletiva de Código; • Testes. O Processo Reunião de Acompanhamento • Reuniões semanais; • Big Chart; • TAT; • Tabela de Riscos. Desenvolvimento Implantação • Disciplina de Laboratório de Engenharia de Software da Universidade Federal de Campina Grande – PB • Períodos 2003.1, 2003.2 e 2004.1 • Relatórios de experiência de 2003.1 e 2003.2 Ganhos Artefatos Número de Artefatos RUP UP1 YP 18 15 9 Número de artefatos X Processo utilizado Ganhos Sucesso dos Projetos • 8 Períodos; 120 alunos; 70 projetos. RUP Grau de Sucesso dos Projetos UP1 YP 10% 50% 90% Conclusão • Curva de aprendizado: Processos anteriores - seis semanas; YP - três semanas. Trabalhos Futuros • A continuação do easYProcess será focado: Melhoria do processo através do feedback obtido; Extensões com a introdução de novos artefatos de usabilidade; Criação de uma plataforma integrada de software; Testar sua aplicação em empresas locais com projetos de pequeno e médio porte. Informações • www.dsc.ufcg.edu.br/~yp • [email protected] Referências •[1][Rational Software] - http://www.rational.com •[2][UP1] - http://www.dsc.ufcg.edu.br/~pasqueli/Les/up1.htm •[3][XP] – http://www.extremeprogramming.org •[4][XP1] http://www.dsc.ufcg.edu.br/~jacques/cursos/2002.2/projii/xp1/xp1.html Obrigada pela Atenção!