Controle avançado de versões com git. Ferramentas para gestão de dependências e compilação (como maven, gradle e cmake). Ferramentas para testes automatizados de unidade (como a família *Unit), aceitação e de integração (como cucumber). Cobertura de testes. Apresentação das formas de refatoração mais comuns. Integração contínua. Métricas de código-fonte. Beleza de código (clean code). Programação pareada e revisão de código (code review). Dívida técnica. Noções de arquitetura de software e padrões arquiteturais. Geração automática de documentação. Comunicação com o usuário.
Conhecer e aplicar os conceitos práticos relacionados à qualidade de software e as diferentes métricas para a sua avaliação.
Não possui.
A avaliação da disciplina é formativa* e somativa**. Os alunos devem entregar as resoluções de atividades e/ou exercícios no Ambiente Virtual de Aprendizagem semanalmente e realizar, ao final do período letivo, uma prova presencial aplicada nos polos da Univesp.
*A avaliação formativa ocorre quando há o acompanhamento dos alunos, passo a passo, nas atividades e trabalhos desenvolvidos, de modo a verificar suas facilidades e dificuldades no processo de aprendizagem e, se necessário, adequar alguns aspectos do curso de acordo com as necessidades identificadas.
**A avaliação somativa é geralmente aplicada no final de um curso ou período letivo. Esse tipo de avaliação busca quantificar o que o aluno aprendeu em relação objetivos de aprendizagem do curso, ou seja, a avaliação somativa quer comprovar se a meta educacional proposta e definida foi alcançada pelo aluno.