Temas 

para o seu TCC, PIBIC e PIBITI

Se você é aluno de graduação e procura tópicos para o seu trabalho de conclusão de curso (TCC), iniciação científica (IC) ou iniciação tecnológica, farei aqui algumas  sugestões, porém a lista não é exaustiva. Se você tem uma ideia, que é de alguma forma relacionada a minha área de pesquisa, não existe em entrar em contato. Você pode escrever para [alcemir (at) prp • uespi • br].

Para o seu TCC ou IC, você pode executar o projeto e implementação de ferramentas orientadas à engenharia de software usando uma ou mais das seguintes técnicas: mineração de repositórios de software; análise de dados; processamento de linguagem natural; e algoritmos de aprendizado de máquina.

OBS: Tenho especial interesse se quiser fazer um TCC-Startup

Temas Gerais 

O contexto do seu trabalho pode envolver uma ou mais dos seguintes temas abaixo:

Tecnologias

Técnicas

Abordagens de desenvolvimento

Ferramentas

Se você ainda não consegue desenvolver ideias para seu trabalho à partir dos temas acima, abaixo eu deixo algumas para você pegar e executar. Esta lista também não é exaustiva e posso ter outras para discussão, me procure no campus o na rede para conversarmos.

Ideias para Pesquisa

Tipar ou não tipar código Dart?

Esta ideia é inspirada no artigo do workshop VEM'13 intitulado: "Tipar ou não tipar? Compreendendo quais fatores influenciam a escolha por um sistema de tipos", onde os autores investigaram os motivos e características de desta decisão em sistemas de linguagem Groovy disponíveis no GitHub.

Temas envolvidos:

Estabilidade de API de pacotes do pub.dev

Esta ideia é inspirada no artigo do workshop VEM'16 intitulado: "Um estudo em larga escala sobre estabilidade de APIs", onde os autores investigaram questões relativas a evolução e estabilidade de APIS.

Algumas possíveis questões de pesquisa:

i)  Qual a frequência de mudanças nas bibliotecas pub.dev?

ii) Como a frequência de breaking changes se comporta ao longo do tempo?

iii)   Qual o impacto real das breaking changes em aplicações clientes?

iv)   Qual a similaridade com o trabalho das evidencias do Xavier et al. [VEM’16]?

Temas envolvidos:

Minerar dívida técnica em Flutter Apps/Packages

A ideia é utilizar o plugin de DT para projetos flutter em repositórios de software escritos utilizando Dart/Flutter

Elementos  de referência para a ideia: 

Temas envolvidos:

Como desenvolvedores Flutter lidam com dívida técnica? 

A ideia é explorar referencias bibliográfica para entender como o os pesquisadores tem usado os datasets de DT.

Elementos  de referência para a ideia: 


Possíveis Questões de Pesquisa:

Temas envolvidos:

Classificação automática de tipos de manutenção de software

A ideia é criar uma ferramenta para minerar e classificar tipos de manutenção de software. Esta ideia é inspirada alguns artigos publicados sobre temas correlatos (MSR'18JSME'01 e EMSE'17) onde os autores investigaram formas de classificação de atividade de manutenção em repositórios de software.

Temas envolvidos:

Infraestrutura para experimentação com repositórios de software

A ideia é criar uma plataforma para facilitar e automatizar tarefas de estudos empíricos envolvendo a mineração de repositórios de software. Na prática, seria juntar a GiFT (Diogo) + SEAGLE + RepositoryMiner + VisminerTD para criar uma infraestrutura extensível de experimentação com repositórios de software.

Elementos  de referência para a ideia: 

Temas envolvidos:

Como pesquisadores usam os datasets de dívida técnica? 

A ideia é explorar referencias bibliográfica para entender como o os pesquisadores tem usado os datasets de DT.

Elementos  de referência para a ideia: 


Possíveis Questões de Pesquisa:

Temas envolvidos:

Ideias para Produto/Startup

Plataforma de dados escolares em blockchain

A ideia é construir uma plataforma para armazenar diplomas, histórico escolar em blockchain para efeito de imutabilidade. Existe portaria do MEC que exige este tipo de plataforma para universidades federais e isto deverá ser aplicado às demais Instituições de Ensino Superior também.

Tema envolvido:

Plataforma de controle de qualidade em blockchain

A ideia é construir uma plataforma para controlar todo o processo de produção de um determinado produto, para garantir procedência do mesmo.

Tema envolvido:

Livro-razão para empresas em blockchain

A ideia é construir uma plataforma para armazenar histórico de transações realizadas por empresas para fins de auditoria.

Tema envolvido:

Pontos fidelidade em sistema orientado à blockchain

A ideia é construir uma plataforma para armazenar recompensas creditadas à usuários de produtos/serviços de uma dada empresa.

Tema envolvido:

Jogos Sérios para o Aprendizado de Engenharia de Software

A ideia é construir uma sites/aplicativos para que estudantes com interesse em aprender os conceitos de engenaria de software possam jogar. Sua criatividade é o seu guia.

Possíveis referências:

Tema envolvido:

Aplicativos de propósito específico

A ideia é construir uma aplicativo para dispositivos móveis em um contexto quaisquer. Sua criatividade é o seu guia.

Tema envolvido: