Engenharia de Software (Pós-Graduação)
Sobre a disciplina
Componente curricular: Engenharia de Software
Número de créditos: 4 créditos
Carga horária: 60h
Horário: Quartas (08h-10h) e Sextas (10h-12h)
Local: CD 107
Comunicação: Google Classroom
Professores: Wilkerson Andrade (Fase 1) e Rohit Gheyi (Fase 2)
Objetivos
Compreender estratégias de leitura e documentação (fichamento) de resultados recentes na área de Engenharia de Software;
Planejar e apresentar seminários sobre resultados recentes na área de Engenharia de Software;
Escrever artigo direcionado ao trabalho de dissertação de mestrado ou tese de doutorado dentro da área de Engenharia de Software.
Metodologia
A disciplina será dividida em duas fases. A primeira fase será baseada na leitura, fichamento e apresentação de artigos da área. A fase inicial da disciplina será acompanhada pelo professor Wilkerson Andrade. A segunda fase envolverá a escrita de um artigo e será guiada pelo professor Rohit Gheyi.
Avaliação
A avaliação da disciplina será individual considerando as seguintes atividades:
Fase 1 (50%): Fichamentos e seminário
Fase 2 (50%): Escrita de artigo
Artigos (Leitura, Fichamento e Apresentação)
Writing Good Software Engineering Research Papers - https://www.cs.cmu.edu/~Compose/shaw-icse03.pdf
No Silver Bullet: Essence and Accident in Software Engineering - http://worrydream.com/refs/Brooks-NoSilverBullet.pdf
Software Engineering at Google (2019) - https://arxiv.org/ftp/arxiv/papers/1702/1702.01715.pdf
A Case Study of Onboarding in Software Teams: Tasks and Strategies (2021) - https://doi.org/10.1109/ICSE43902.2021.00063
Controlled Concurrency Testing via Periodical Scheduling (2022) - https://wcventure.github.io/pdf/ICSE2022_PERIOD.pdf
An Empirical Investigation into the Impact of Refactoring on Regression Testing (2012) - http://web.cs.ucla.edu/~miryung/Publications/icsm2012-RefRT.pdf
Use of Test Doubles in Android Testing: An In-Depth Investigation (2022) - https://software.imdea.org/~alessandra.gorla/papers/Fazzini-MockICSE22.pdf
What Makes Effective Leadership in Agile Software Development Teams? (2022) - https://arxiv.org/pdf/2201.08058.pdf
What Makes a Good Commit Message? (2022) - https://arxiv.org/pdf/2202.02974.pdf
Why Don't Software Developers Use Static Analysis Tools to Find Bugs? (2013) - https://doi.org/10.1109/ICSE.2013.6606613
Why We Refactor? Confessions of GitHub Contributors (2016) - https://users.encs.concordia.ca/~nikolaos/publications/FSE_2016.pdf
Towards Automating Code Review Activities (2021) - https://arxiv.org/pdf/2101.02518.pdf
Commit Message Matters: Investigating Impact and Evolution of Commit Message Quality (2023) - http://stairs.ics.uci.edu/papers/2023/Commit_Messages.pdf
A Textual-based Technique for Smell Detection (2016) - https://fpalomba.github.io/pdf/Conferencs/C10.pdf
Collaboration Challenges in Building ML-Enabled Systems: Communication, Documentation, Engineering, and Process (2022) - https://dl.acm.org/doi/pdf/10.1145/3510003.3510209
Breaking the Flow: A Study of Interruptions During Software Engineering Activities (2024) - https://dl.acm.org/doi/pdf/10.1145/3597503.3639079
Do Automatic Test Generation Tools Generate Flaky Tests? (2024) - https://dl.acm.org/doi/pdf/10.1145/3597503.3608138
Datas das Apresentações
28/08: Writing Good Software Engineering Research Papers - Wilkerson (slides)
30/08: Seminário 01 - Software Engineering at Google (2019) - Victor Andrade e João Victor Soares
04/09: Seminário 02 - What Makes Effective Leadership in Agile Software Development Teams? (2022) - Iriedson
06/09: Seminário 03 - Commit Message Matters: Investigating Impact and Evolution of Commit Message Quality (2023) - Débora Souza e Gabriel Medeiros
11/09: Seminário 04 - Breaking the Flow: A Study of Interruptions During Software Engineering Activities (2024) - Matheus Oliveira e João Figueiredo
13/09: Seminário 05 - Improving Testing Behavior by Gamifying IntelliJ (2024) - Kláudio Medeiros e Franklin Regis
18/09: Seminário 06 - Do Automatic Test Generation Tools Generate Flaky Tests? (2024) - José Gabriel e Thyago Vieira
20/09: Seminário 07 - Enhancing Text-to-SQL Translation for Financial System Design (2024) - Andrielly Lucena e Helen Cavalcanti
25/09: Seminário -
27/09: Seminário 08 - Collaboration Challenges in Building ML-Enabled Systems: Communication, Documentation, Engineering, and Process (2022) - Izabella Silva e José Matheus
02/10: Seminário 09 - Augmented intelligence in programming learning: Examining student views on the use of ChatGPT for programming learning (2023) - José Robson e Leandra Silva
04/10: Seminário 10 - Evaluating Large Language Models in Class-Level Code Generation (2024) - Lucas Albuquerque e Pedro Henrique
09/10: Seminário 11 - Challenges, Strengths, and Strategies of Software Engineers with ADHD: A Case Study (2024) - Matheus Araújo