Dívida Técnica

Uma nova perspectiva para lidar com problemas do desenvolvimento de software

Resumo:

A qualidade de softwares que passam por atividades de evolução frequentemente diminui ao longo do tempo ao se considerar aspectos como sua estrutura interna, adesão a normas, documentação e facilidade de entendimento para futuros desenvolvimento. Um motivo para isso acontecer é que essas atividades são frequentemente realizadas sob forte restrição de tempo e recursos.

Lidar com essa questão considerando o conceito de Dívida Técnica (DT) tem ajudado profissionais e pesquisadores a debaterem problemas associados à evolução do software. DT descreve o efeito de artefatos imaturos no desenvolvimento de software que traz um benefício a curto prazo para o projeto em termos de maior produtividade e menor custo, mas que poderão ter de ser ajustados com juros mais tarde.

O resultado desses artefatos pode ser observado em atrasos inesperados na realização de modificações necessárias e na dificuldade em atingir os critérios de qualidade acordados para o projeto.

Este tutorial irá apresentar o conceito de DT, passando pela discussão de seus elementos básicos, tipos que podem afetar projetos de software, causas que levam à ocorrência de itens da dívida e folclores associados à área. Também serão apresentadas alternativas para a gestão dos itens de DT presentes em um projeto através da análise das estratégias existentes e de critérios que podem ser utilizados na priorização do tratamento de itens da dívida. Por fim, serão discutidas ações que podem ser realizadas para apoiar a identificação de itens de DT, realizando uma análise sobre estratégias manuais e automatizadas. O conteúdo do tutorial será transmitido utilizando um conjunto de estudos práticos intercalados com apresentações conceituais.

Instrutores:

  • Rodrigo Oliveira Spínola

Doutor e Mestre em Engenharia de Sistemas e Computação pela COPPE/UFRJ. Realizou estágio de Pós-Doutorado na University of Maryland e no Fraunhofer Center for Experimental Software Engineering, onde realizou pesquisas sobre dívida técnica e engenharia de software experimental. Atualmente é professor titular do Programa de Pós- Graduação em Sistemas e Computação da Universidade Salvador e pesquisador do Fraunhofer Bahia. Sua pesquisa é focada em Dívida Técnica, utilizando a engenharia de software experimental como ferramenta de apoio para realização dos trabalhos. Prof. Spínola lidera o Time de Pesquisa em Dívida Técnica (www.tdresearchteam.com). É membro do comitê de várias conferências nacionais e internacionais como ESEM, EASE, SBQS, PROFES e TechDebt, além de atuar como revisor de periódicos como JSS e IST. Adquiriu ampla experiência na indústria antes de se dedicar exclusivamente à academia, incluindo 5 anos como diretor de uma empresa desenvolvedora de software. Possui também experiência em transferência de tecnologia para a indústria, tendo fornecido consultorias e treinamentos para empresas públicas e privadas de diferentes portes.

 

  • Nicolli Souza Rios Alves

Mestre em Sistemas e Computação pela Universidade Salvador (2016), mesma instituição onde obteve seu Bacharelado em Ciência da Computação (2013). Atualmente é aluna de Doutorado em Ciência da Computação na Universidade Federal da Bahia. Suas pesquisas estão focadas no tema Dívida Técnica, área na qual já vem realizando estudos há 4 anos (desde sua iniciação científica). Todos os seus trabalhos têm sido fundamentados no paradigma da Engenharia de Software Experimental, tendo experiência na realização de estudos quantitativos e, principalmente, qualitativos. Atualmente trabalha no projeto de pesquisa "Organização de um conjunto de descobertas empíricas sobre causas e efeitos da Dívida Técnica em projetos de software através de uma família de surveys distribuída globalmente". É pesquisadora do Time de Pesquisa em Dívida Técnica (www.tdresearchteam.com).