Programa
UNIVERSIDADE ESTADUAL DE FEIRA DE SANTANA
DEPARTAMENTO DE CIÊNCIAS EXATAS
PROFESSOR(A): ROBERTO ALMEIDA BITTENCOURT
PERÍODO LETIVO: 2017.2
PROGRAMA DA DISCIPLINA
PGCA 031 – T.E.C.C. – ENGENHARIA DE SOFTWARE CENTRADA NO HUMANO
CARGA HORÁRIA/CREDITAÇÃO
60 horas / (T:30; P:30; E:00)
PRÉ-REQUISITOS
Sem pré-requisitos
EMENTA
Fatores psicológicos e cognitivos em engenharia de software. Fatores sociológicos e culturais em engenharia de software. Fatores gerenciais e organizacionais em engenharia de software. Engenharia de software como trabalho colaborativo. Interface sócio-técnica em engenharia de software. Filosofias de design, práticas de engenharia e ferramentas que alavanquem aspectos humanos e colaborativos de engenharia de software. Aspectos humanos e colaborativos no ciclo de vida do software. Desenvolvimento de software baseado em comunidades. Mineração de repositórios de software e software analytics.
OBJETIVOS
Geral:
· Ser capaz de realizar atividades de pesquisa sobre aspectos humanos e sociais da área de engenharia de software através do uso de metodologias, abordagens, estratégias e métodos, embasando-se num referencial teórico e no estado-da-arte da área de engenharia de software centrada no humano.
Específicos:
· Conhecer, compreender e aplicar as metodologias, abordagens, estratégias e métodos de pesquisa em engenharia de software centrada no humano;
· Compreender, resumir e avaliar artigos científicos da área de engenharia de software centrada no humano, de modo a demonstrar conhecimento abrangente na área bem como capacidade de análise crítica;
· Sintetizar conhecimentos prévios em tópicos específicos da área de engenharia de software centrada no humano e apresentá-los oralmente para a audiência técnico-científica na forma de seminários;
· Planejar, executar e avaliar uma pesquisa na área de engenharia de software centrada no humano, a partir da análise de cenários reais na área de engenharia de software.
CONTEÚDO PROGRAMÁTICO
1. Visão geral da disciplina:
1.1. Engenharia de software centrada no humano;
1.2. Organização da disciplina;
1.3. Avaliação da disciplina.
2. Pesquisa empírica em engenharia de software.
3. Pesquisa quantitativa em engenharia de software.
4. Pesquisa qualitativa engenharia de software.
5. Processos de software.
6. Design de software.
7. Arquitetura de software.
8. Modelagem de software.
9. Evolução de software.
10. Contextualização de tarefas.
11. Busca de código.
12. Questões feitas por desenvolvedores de software.
13. Posse e expertise de software, especialmente de código-fonte.
14. Análise dos IDEs e suas interfaces.
15. Adoção de Ferramentas para apoiar a produção de software.
16. Desenvolvimento distribuído de software.
17. Desenvolvimento de software de código aberto e suas barreiras.
18. Mídias Sociais em engenharia de software.
19. Redes Sociais em engenharia de software.
20. Congruência Sócio-Técnica de organizações de software.
21. Estruturas sociais e seu impacto na qualidade de software.
22. Produtividade de desenvolvedores de software.
23. Cultura de desenvolvedores de software.
24. Educação em engenharia de software.
METODOLOGIA
A metodologia será um híbrido de discussões de artigos apresentados pelo professor, apresentação de artigos pelos estudantes e sua discussão, e a concepção, realização e apresentação escrita e oral, pelos estudantes, dos trabalhos propostos.
MATERIAL UTILIZADO
Quadro branco, pincel, apagador, computador e projetor multimídia.
AVALIAÇÃO
A avaliação será dividida em três dimensões, a partir de medidas tomadas durante a disciplina por artefatos desenvolvidos pelos estudantes: resumos críticos, apresentações de artigos e trabalho.
Dimensões de avaliação:
A medida de cada uma das três dimensões será calculada da seguinte forma:
1. Resumos críticos: média aritmética simples das notas dos 75% melhores resumos críticos de cada estudante, exigidos durante a disciplina, levando em conta: visão geral do artigo (problema, solução resumida e solução detalhada); a análise crítica do artigo (concordância parcial ou total com o artigo, prós e contras do artigo, consequências da leitura do artigo).
2. Apresentações: média aritmética simples das notas das apresentações dos artigos pelos estudantes, levando em conta: a qualidade da apresentação; a qualidade dos slides; visão geral do artigo (problema, solução resumida e solução detalhada); a análise crítica do artigo (concordância parcial ou total com o artigo, prós e contras do artigo, consequências da leitura do artigo).
3. Trabalho: avaliação do artigo científico resultante da pesquisa proposta por cada dupla de estudantes, levando em conta: redação científica apropriada das seções do artigo; fundamentação teórica adequada; metodologia científica consistente; análise dos resultados, discussão e conclusões a partir de procedimentos científicos; apresentação oral do artigo.
Média Parcial:
A média parcial será a média aritmética simples das medidas de cada dimensão de avaliação.
Obtendo média igual ou superior a 7,0 (sete), o estudante pode ser aprovado, caso cumpra os requisitos de frequência.
Aprovação na disciplina:
Para ser aprovado na disciplina, o estudante precisa cumprir ambos os seguintes requisitos:
· Ter frequência igual ou superior a 75% da carga horária efetiva ministrada na disciplina, caso contrário haverá reprovação por frequência;
· Ser aprovado na avaliação da disciplina, caso contrário haverá reprovação por nota.
CRONOGRAMA
Aula 01 - Apresentação da disciplina
Aula 02 - Pesquisa empírica
Aula 03 - Pesquisa quantitativa
Aula 04 - Pesquisa qualitativa
Aula 05 - Processos
Aula 06 - Design
Aula 07 - Arquitetura
Aula 08 - Modelagem
Aula 09 - Evolução
Aula 10 - Contextos de Tarefas
Aula 11 - Busca de Código
Aula 12 - Apresentação das propostas de trabalhos
Aula 13 - Questões de Desenvolvedores
Aula 14 - Posse e Expertise
Aula 15 - IDEs
Aula 16 - Palestra convidada
Aula 17 - Apresentação dos instrumentos e procedimentos de coleta e análise de dados dos trabalhos
Aula 18 - Apresentação dos instrumentos e procedimentos de coleta e análise de dados dos trabalhos
Aula 19 - Adoção de Ferramentas
Aula 20 - Desenvolvimento Distribuído de Software
Aula 21 - Iniciantes em Software de Código Aberto
Aula 22 - Mídias Sociais
Aula 23 - Redes Sociais
Aula 24 - Congruência Sócio-Técnica
Aula 25 - Estruturas Sociais e Qualidade
Aula 26 - Produtividade de Desenvolvedores
Aula 27 - Cultura de Desenvolvedores
Aula 28 - Educação em Engenharia de Software
Aula 29 - Apresentação dos trabalhos
Aula 30 - Apresentação dos trabalhos
REFERÊNCIAS
LIVROS-TEXTO
Artigos científicos sobre engenharia de software centrada no humano.
LEITURA COMPLEMENTAR
Artigos científicos sobre engenharia de software centrada no humano.