MAC0342 Laboratório de Programação eXtrema
OBJETIVOS: Familiarizar o estudante com métodos ágeis de desenvolvimento de software orientado a objetos de alta qualidade.
RESPONSÁVEIS: Alfredo Goldman Vel Lejbman, Fabio Kon e Marco Aurélio Gerosa
PROGRAMA: Os métodos ágeis de desenvolvimento de software têm se mostrado bastante eficazes para o desenvolvimento de sistemas de software de pequeno, médio e grande porte. Neste curso, os estudantes utilizam o método de Programação eXtrema (XP), sob a orientação do professor, para desenvolver um sistema de software orientado a objetos de alta complexidade e qualidade. Através dessa experiência prática no laboratório, se faz possível a aquisição de conhecimentos e a assimilação de práticas dos métodos ágeis que serão extremamente importantes para o estudante em sua futura carreira, seja ela acadêmica ou empresarial, como desenvolvedor de software de qualidade.
EMENTA: - O Manifesto Ágil - As Práticas de XP - Testes Automatizados - Refatoração: técnicas sistemáticas para melhorar o projeto de software pré-existente - Planejamento Ágil - Padronização de Estilo e Clareza de Código - Ferramentas para Desenvolvimento Colaborativo de Software
PRÉ-REQUISITO: MAC0242.
PRÉ-REQUISITO NÃO-OFICIAL RECOMENDADO: MAC0441.
CARGA HORÁRIA SEMANAL E NÚMERO DE CRÉDITOS: 4 horas, 4 créditos-trabalho.
CRITÉRIO DE AVALIAÇÃO DA APRENDIZAGEM: Média ponderada de notas em presença, comprometimento ao método, empenho, auto-avaliação e qualidade do software desenvolvido.
NORMA DE RECUPERAÇÃO: Alunos que ficarem com média final entre 3,0 e 4,9 ficarão de recuperação e será lhes passado um trabalho adicional de implementação de software que será avaliado pelo docente responsável no período da recuperação.
BIBLIOGRAFIA BÁSICA:
- K. Beck, eXtreme Programming: Explained, Addison-Wesley, 2000.
- K. Beck, Test-Driven Development: By Example, Addison-Wesley, 2002.
- K. Beck and C. Andrés, Extreme Programming Explained: Embrace Change, 2nd Edition, Addison-Wesley Professional, 2004.
- K. Beck and M. Fowler, Planning Extreme Programming, Addison-Wesley, 2000.
- A. Cockburn, Agile Software Development, Addison-Wesley Longman, 2002.
- M. Cohn, Succeeding with Agile: Software Development Using Scrum, Addison-Wesley, 2009.
- E. Derby and D. Larsen, Agile Retrospectives Making Good Teams Great, Pragmatic Bookshelf, 2006.
- M. Fowler, Refactoring: Improving the Design of Existing Code, Addison-Wesley, 2000.
- E. Gamma, R. Helm, R. Johnson, and J. Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley, 1995.
- B.W. Kernighan and R. Pike, The Practice of Programming, Addison-Wesley, 1998.
- P. McBreen, Questioning Extreme Programming, Addison Wesley, 2003.
OBSERVAÇÃO: Disciplina optativa eletiva no currículo do BCC.
[Veja dados da disciplina no JúpiterWeb. Veja o vídeo de apresentação da disciplina no canal do BCC no YouTube]