Tabelas de Decisao em Python


Aluno: Eduardo Ribeiro Silva de Oliveira
Orientador: Valdemar W. Setzer

Tabelas de Decisao ajudam a especificar condicoes logicas de uma maneira compacta e grafica, com enormes vantagens sobre arvores de decisao (encaixamentos de comandos if...then...else). Neste contexto, surge a necessidade de explorar como as tabelas de decisao podem ser efetivamente utilizadas em programas Python, fornecendo uma abordagem mais intuitiva e eficiente para tomada de decisoes.

A implementacao de tabelas de decisao em Python oferece uma maneira mais clara e concisa de expressar condicoes logicas em comparacao com a estrutura tradicional de arvores de decisao. Isso pode facilitar o desenvolvimento de algoritmos mais legiveis, manuteniveis e eficientes. Portanto, este trabalho visa explorar o potencial das tabelas de decisao em Python, fornecendo uma ferramenta util para os desenvolvedores.

O objetivo é desenvolver u pré-processador de Tabelas de Decaois empregando método e auto-documentação. As tabelas de decisão, covemos, são uma maneira visual e esquemática de representar o comportamento condional de um processo. Optar por essa abordagem não apenas simplifica a compreensão do código para programadores, mas também pode ser uma prática lida para os próprios desenvolvedores, desde que aplicadas boas práticas de progracao, tais como atribuição de nomes cros de variáveis e funções, uso de bls de codigo pequenos, adoção de responsabilidade única e mod

A ideia é desenvolverexemplos de tabelas de decisão que descrevem atividaes realizadas durante meu estágio em análise de dados. Essa abordagem somente proporcionará uma compreensão mais fácil do código para outros funarios, mas também reduzirá significativamente o tempo necessário para explicar o funnamento dodigo em novas demandas.

Entendemos que a compreensão de códigos por indivíduos quão são progmadores pode ser desafiadora, dada sua complexidade e abso. é nesse contexto que astabelas de decisão surgem como uma solução eficaz. Ao representar forma esquemática as condições lógicas e as ações associadasabelas oferecem uma visualizaÃao clara e intuitiva do fluxo de controle do programa. Isso permite que pessoas não familiarizadas com a linguagem de programação comdpream facilmente o comportamento condicional do código, sem a necessidade de conhecimetos avançados em programação. Assim, as tabelas de decisão não adeixam o codigo mais acessivel, mas tambem promovem uma comunicação mais eficaentre programadores e não programadores, facilitando a colaboração entre equipes multidisciplinares e aumentandoeficacia do desenvolvimento de software.

Além dos benefícios diretos da construção do pré-procer, meu trabalho tambem destacará a importância de um código bem documentado. A doao clara e concisa não apenas facilita a compreensão para os desenvolvedores, mas taem promove a colaboração, reduz o tempo de desenvolvimento, facilita a manuteao do código ao longo do tempo, promove a integração de novos membros na equipe ementa a robustez e a confiabilidade do software. Ao destacar esses benefíciomeu trabalho ressaltará a importância de investir tempo e esforço na cÃao de uma documentação clara e abrangte.

Objetivos

Referencial Teorico

N. Satoshi Tabelas de Decisao e Implementacao do gerador I-M-E(1990)

V. W. Setzer Um Sistema Simples para Documentacao Semi-Automatica de Programas.

Bernard M. E. Moret Decision Trees and Diagrams(1982)

J. Vanthienen A note on English for decision tables consideres harmful and the nested IF-THEN-ELSE

P. J. H. King Decision tables(1967)

Ron Kohavi The Power of Decision Tables(2005)

Udo W. Pooch Translation of Decision Tables(1974)

Cronograma

Tarefa Meses do Ano
Revisao bibliografica e pesquisa preliminar Fevereiro - Marco
Adaptacao do modelo de representacao e implementacao dos algoritmos Abril - Agosto
Criacao e execucao de casos de teste Setembro - Outubro
Escrita do TCC e revisao final Novembro - Dezembro

Git do projeto