Disciplinas‎ > ‎

Engenharia de Software - 2016.3

O objetivo da disciplina é o estudo dirigido de resultados recentes na área de Engenharia de Software em conjunto com o Prof. Rohit Gheyi. A disciplina é baseada na leitura de artigos, mapeamento sistemático e avaliação experimental por parte dos alunos, buscando direcionar o trabalho de dissertação de mestrado e tese de doutorado dentro da área de Engenharia de Software.

Professor: Hyggo Almeida (hyggo .at. dsc.ufcg.edu.br)

 

Lista de discussão: https://groups.google.com/forum/#!forum/es-ufcg-pg

Horário das aulas: terças (10-12) e quintas, 08-10.

Local: Auditorio Mario Hattori

Formato da disciplina

A disciplina será baseada na realização de mapeamento sistemático e avaliação experimental de tópicos específicos de Engenharia de Software, de acordo com o interesse e proposição do aluno, de preferência alinhados com o trabalho de mestrado ou doutorado. Após uma definição inicial de tópicos de estudo, será realizado o mapeamento sistemático, sob supervisão do professor. Os seguintes itens são definidos para cada tópico abordado, sendo cobrados em sala de aula, como um guia do mapeamento (independente da metodologia de mapeamento aplicada):
  1. Qual é o problema primordial a ser resolvido? Onde esse problema ocorre, em que cenários práticos? Quais são as evidências práticas que demonstram que o problema, de fato, é um problema? Qual o impacto da resolução desse problema (social, financeiro, negócio, etc)? Se o impacto não for diretamente mensurável, qual o argumento de que a abordagem, em algum momento, servirá para alguma coisa?
  2. Quem são os principais pesquisadores e praticantes? Quais as principais referências? Quais são os argumentos que embasam suas abordagens?
  3. Como os principais pesquisadores e praticantes (item 2) resolvem o problema primordial? Como demonstram que resolvem? Quais resolvem da melhor/pior forma, de acordo com quais parâmetros? Quais as limitações dos estudos/resultados e quais os impactos destas limitações sobre o argumento de resolução? Qual o impacto de implantação das soluções (social, financeiro, negócio, etc)?
  4. Qual a melhor prática considerando uma aplicação em um cenário específico definido por você (ex: projetos web), de acordo com parâmetros definidos por você (ex: buscando desempenho, a melhor prática é X, apesar de ter maior custo)?
  5. Avaliação experimental: projete e execute um experimento que demonstre que a melhor prática X funciona. 

Avaliação

A avaliação será realizada a cada marco com base na apresentação dos resultados parciais e finais do mapeamento sistemático, assim como em um artigo final produzido por cada aluno.

Datas importantes

  • Apresentação final: 21/02/2017.

Bibliografia básica (clássica)

  • Software Engineering: A Practitioner's Approach, Roger Pressman, Bruce Maxim (última edição).
  • Software Engineering, Ian Sommerville (última edição).