Você está na página 1de 102

Anais do 8º Congresso

Acadêmico de Tecnologia e
Informática (CATI 2016)

21 a 25 de novembro de 2016
Curso de Ciência da Computação - FACET
UNEMAT - Barra do Bugres
Anais do 8º Congresso Acadêmico de Tecnologia e
Informática (CATI 2016)

21 a 25 de novembro de 2016
Curso de Ciência da Computação - FACET
UNEMAT - Barra do Bugres
Este trabalho foi realizado com apoio do Edital FAPEMAT nº. 001/2016 - Edital de Apoio à
Realização de Eventos Científicos, Tecnológicos ou de Inovação, Processo nº. 241861/2016, da Fundação
de Amparo à Pesquisa do Estado de Mato Grosso – FAPEMAT – Mato Grosso – Brasil

Anais do 8º Congresso Acadêmico de Tecnologia e


Informática (CATI 2016)

Realização:

Curso de Ciência da Computação / FACET / UNEMAT – Barra do Bugres


Centro Acadêmico de Ciência da Computação (CACC)

Apoio:

Sociedade Brasileira de Computação (SBC)


Prefeitura Municipal de Barra do Bugres
Pró-Reitoria de Extensão e Cultura (PROEC/UNEMAT)
Parque Tecnológico de Mato Grosso
Fundação de Amparo à Pesquisa do Estado de Mato Grosso (FAPEMAT)
Secretaria de Estado de Ciência, Tecnologia e Inovação (SECITEC/MT)
Conselho Nacional de Desenvolvimento Científico e Tecnológico (CNPq)

ISSN 2448-119X

(Online: http://bbg.unemat.br/publicacoes/index.php/anaiscati)

21 a 25 de novembro de 2016
Barra do Bugres - MT
© 2016. Curso de Ciência da Computação – UNEMAT – Barra do Bugres e
Centro Acadêmico de Ciência da Computação (CACC).

Os autores são responsáveis pela escolha e a apresentação das informações contidas


nesta publicação, bem como pelas opiniões nela expressas, as quais não são
necessariamente as dos organizadores, da UNEMAT, do CACC e de seus apoiadores,
nem tampouco os comprometem.

Publicação elaborada com fins educativos. ACESSO GRATUITO. Permissão para fazer
cópias impressas ou digitais de todo ou parte desta publicação para uso pessoal ou
acadêmico sem taxas, desde que as cópias não sejam feitas ou distribuídas para renda ou
vantagem comercial e que as cópias contenham referência a esta publicação.
___________________________________________

Editor: Fernando Selleri Silva

Organização: Fernando Selleri Silva, Luan Felipe dos Santos da Silva,


Diógenes Antonio Marques José, Armando da Silva Filho, Luciano Zamperetti Wolski,
Elias Antonio Morgan e Rodrigo Fernando Shimazu

Projeto Gráfico e Diagramação: Leonardo Elias Alves, Zeus Sistemas e


PEEP (PROEC/UNEMAT – FAPEMAT)
___________________________________________

Contato

Congresso Acadêmico de Tecnologia e Informática (CATI)


Centro Acadêmico de Ciência da Computação (CACC)
Curso de Ciência da Computação (CCC)
Universidade do Estado de Mato Grosso (UNEMAT)
Campus Universitário Rene Barbour
Rua A, SN, Bairro São Raimundo
78.390-000, Barra do Bugres, MT
Fone/Fax: 65-3361-1413
E-mail: cati@unemat.br
Site: http://bbg.unemat.br/cati
Facebook: http://www.facebook.com/catiunemat
Twitter: http://twitter.com/catiunemat
Anais: http://bbg.unemat.br/publicacoes/index.php/anaiscati
Governo do Estado de Mato Grosso

Pedro Taques
Governador
Carlos Fávaro
Vice-Governador
Luzia Helena Trovo Marques de Souza
Secretária de Estado de Ciência, Tecnologia e Inovação
Lucia Braga Sousa
Superintendente de Desenvolvimento Científico, Tecnológico e de Inovação
Antônio Carlos Maximo
Presidente da Fundação de Amparo à Pesquisa do Estado de Mato Grosso
Flávio Teles Carvalho da Silva
Diretor Técnico-Científico da Fundação de Amparo à Pesquisa de Mato Grosso
Washington Fernando da Silva
Gestor do Parque Tecnológico de Mato Grosso

Universidade do Estado de Mato Grosso (UNEMAT)

Ana Maria Di Renzo


Reitora
Ariel Lopes Torres
Vice-Reitor
Alexandre Gonçalves Porto
Pró-Reitor de Extensão e Cultura
Anderson Marques do Amaral
Pró-Reitor de Assuntos Estudantis
Vera Lúcia da Rocha Maquêa
Pró-Reitora de Ensino de Graduação
Rodrigo Bruno Zanin
Pró-Reitor de Pesquisa e Pós-Graduação
Weily Toro Machado
Pró-Reitor de Gestão Financeira
Francisco Lledo dos Santos
Pró-Reitor de Planejamento e Tecnologia da Informação
Valter Gustavo Danzer
Pró-Reitor de Administração
Carlos Ednei Oliveira
Diretor Político-Pedagógico e Financeiro do Campus de Barra do Bugres
Dhyego Silva Domingos Brandão
Diretor Administrativo do Campus de Barra do Bugres
Anderson Dias Lima
Diretor da Faculdade de Ciências Exatas e Tecnológicas
Fernando Selleri Silva
Coordenador do Curso de Ciência da Computação
Luan Felipe dos Santos da Silva
Representante do Centro Acadêmico de Ciência da Computação

Conselho Nacional de Desenvolvimento Científico e Tecnológico (CNPq)

Mario Neto Borges


Presidente

Sociedade Brasileira de Computação (SBC)

Lisandro Zambenedetti Granville


Presidente
Cristiano Maciel
Secretário Regional em Mato Grosso
Pedro Clarindo da Silva Neto
Secretário Adjunto Regional em Mato Grosso

Município de Barra do Bugres

Julio Florindo
Prefeito
João Alves dos Santos
Vice-Prefeito
Rudiney Linhares
Secretário Municipal de Finanças
Ivone Rocha
Secretária Municipal de Educação, Cultura e Esportes
Viviane Ribeiro da Silva
Secretária Municipal de Desenvolvimento Econômico e Turismo
Vanderson Vitor da Silva
Presidente da Câmara Municipal de Vereadores
8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)

Coordenação
Luan Felipe dos Santos da Silva
Fernando Selleri Silva

Comissão Organizadora
Adriana Estéfany Conceição da Silva
Alexsandra Nascimento Carneiro
Anderson da Costa Ritter
Anna Paula Pereira
Armando da Silva Filho
Brenda Caroline Santos da Silva
Bruno de Souza
Christhoffer Alves de Lima Freitas
Cosme da Silva Lorim
Diógenes Antonio Marques José
Douglas Teles de Oliveira
Elias Antonio Morgan
Gustavo Alencar Silva
Hevelyn Hespanhol Câmara
Jonatan William Pereira Fernandes
José Fernandes Torres da Cunha
Julio Cesar de Camargo Junior
Klesley Hiago da Rocha Tavares
Leonardo Elias Alves
Luan Lino Madalena
Lucas Ribeiro Monti
Magaywer Moreira de Paiva
Priscila Larissa da Silva Antunes dos Santos
Rainner Steinheires Vilas Boas
Reyllan Raphael dos Santos
Rodrigo Fernando Shimazu
Romulo Stenio Billieri
Roniffer Samuel Soares Ribeiro de Oliveira
Ronygullity Petriky Silva oliveira
Samuel Bezerra de Lima
Thayna Ribeiro dos Santos
Thiego Ramos Moura
Victor Bitencourt de Oliveira
Weder Henrique Rodrigues da Silva
Willyan Alves da Silva
Apoio Técnico e Logístico
Adenir Rodrigues
Carlos Barbosa Andrade
Djalma Dias Bispo
Fábio Aparecido de Campos
Graziella Selleri Silva
Heliofábio da Rocha Santos
João Milani Junior
Marcelo Pereira Justino
Marcos Antonio Guerra
Mauro Aparecido Ferreira
Rodney Campos Faria
Thiago H. de B. Guedes

Equipe Técnica do Projeto da FAPEMAT


(Processo nº. 241861/2016)
Fernando Selleri Silva - Coordenador
Armando da Silva Filho - Professor
Diógenes Antonio Marques José - Professor
Roniffer Samuel Soares Ribeiro de Oliveira - Estudante
Ana Paula Lins Ferreira de Vasconcelos – Técnico
Comitê de Programa

Acelmo de Jesus Brito (UNEMAT/Barra do Bugres)


Adauto Bueno (UNEMAT/Barra do Bugres)
Alberto César Cavalcanti França (UFRPE/Recife)
Alexandre Berndt (UNEMAT – UFG/Goiás)
Ana Paula L. F. de Vasconcelos (UNEMAT/Barra do Bugres)
André Luís Sanson Gomes (UNEMAT/Barra do Bugres)
Angela Lima Peres (UNCISAL/Maceió)
Armando da Silva Filho (UNEMAT/Barra do Bugres)
Cláudia Landin Negreiros (UNEMAT/Barra do Bugres)
Dener Didoné (UNIC/Sorriso)
Diógenes Antonio Marques José (UNEMAT/Barra do Bugres)
Edinéia Aparecida dos Santos Galvanin (UNEMAT/Barra do Bugres)
Eduardo Oenning (UNEMAT/Barra do Bugres)
Elias Antônio Morgan (UNEMAT/Barra do Bugres)
Elyda Laisa Soares Xavier Freitas (UPE/Caruaru)
Everton Ricardo do Nascimento (UNEMAT – UFSC/Florianópolis)
Fabiano Ferreira Luz (USP/São Paulo)
Fahim Elias Costa Rihbane (UNEMAT/Barra do Bugres)
Felipe Santana Furtado Soares (CESAR – Open University/Reino Unido)
Fernando Kenji Kamei (IFAL/Maceió)
Fernando Selleri Silva (UNEMAT/Barra do Bugres) – Coordenação do Comitê
Francisco Airton Pereira Silva (UFPE – University of Sapienza/Itália)
Hércules Pelachim (UNEMAT/Barra do Bugres)
Igor Kuhnen (UNEMAT/Barra do Bugres)
Inédio Arcari (UNEMAT/Barra do Bugres)
Ivan Luiz Pires (UNEMAT – UFPR/Curitiba)
Ivanildo Monteiro de Azevedo (UNEMAT – FID/Diamantino)
Jean Zahn (UFF/Niterói)
Jessica Karoline França de Lira (UNEMAT/Barra do Bugres)
José Fernandes Torres da Cunha (UNEMAT/Barra do Bugres)
Judith Abi Rached Cruz (UNEMAT/Barra do Bugres)
Leandro Santos Passos (UNEMAT/Barra do Bugres)
Lenin Ernesto Abadié Otero (Accenture – Fac. Joaquim Nabuco/Recife)
Luciano Barco (UNEMAT/Barra do Bugres)
Luciano Zamperetti Wolski (UNEMAT/Barra do Bugres) – Representante de Área
Maricy Caregnato (UNEMAT – USP/São Paulo)
Minéia Cappellari Fagundes (UNEMAT/Barra do Bugres)
Pietro Pinto (IFPE/Caruaru)
Raquel da Silva Vieira Coelho (UNEMAT - FACCAMP/C. L. Paulista)
Rodrigo Fernando Shimazu (UNEMAT/Barra do Bugres) – Representante de Área
Tales Bogoni (UNEMAT/Colíder)
Willyan Alves da Silva (UNEMAT/Barra do Bugres)
Normas para Publicação
Datas Importantes
O CATI 2015 foi realizado no período de 21 a 25 de novembro de 2016, no Campus da
UNEMAT de Barra do Bugres. O cronograma do evento incluiu as seguintes datas
importantes:
 Submissão de trabalhos: 07/11/2016;
 Notificação dos autores: 14/11/2016;
 Envio da versão final: 21/11/2015;
 Disponibilização dos anais: 02/12/2016.

Formato de Submissões e Processo de Avaliação


As submissões ao CATI podem ser por meio de artigos completos ou artigos resumidos,
que devem ser submetidos em formato exclusivamente digital (arquivo PDF), através do
sistema JEMS (https://jems.sbc.org.br). Todas as submissões devem obrigatoriamente
seguir o modelo para publicação de artigos da SBC (http://goo.gl/Q9yglP).
Aspectos adicionais a serem observados:
 Os artigos completos devem ter de 6 (seis) a 8 (oito) páginas incluindo tabelas,
figuras e referências, correspondendo a trabalhos finalizados ou em processo de
finalização, contendo resultados significativos em termos de contribuição para a
pesquisa e/ou prática.
 Os artigos resumidos devem ter de 2 (duas) a 4 (quatro) páginas incluindo tabelas,
figuras e referências, correspondendo a trabalhos em andamento, com resultados
preliminares, ou propostas de pesquisa.
 Os trabalhos submetidos não devem ter sido publicados anteriormente e nem
estarem em processo de avaliação ou edição para publicação em outro local.
 Cada trabalho deve ser submetido para apenas uma trilha (completo ou resumido).
Os trabalhos que forem submetidos a mais de uma trilha são rejeitados.
 É importante que os trabalhos descrevam a motivação (justificativa),
fundamentação teórica (trabalhos relacionados), metodologia empregada e os
resultados obtidos (ou esperados, no caso de artigos resumidos), ressaltando as
contribuições tecnológicas e para a área abordada. Relatos de experiência,
oriundos da prática, também são bem-vindos.
 Com relação ao idioma, os trabalhos devem estar em Português ou Inglês.
 As submissões devem ser finalizadas (com os dados solicitados pelo ambiente de
submissão e o arquivo correspondente devidamente postado segundo as regras
estabelecidas) para serem consideradas.
 No arquivo da submissão, não deve constar nenhum tipo de identificação dos
autores. Caso o artigo (completo ou resumido) seja aceito, os autores devem
incluir na versão final seus dados (nomes, filiações e e-mails, bem como outras
informações necessárias ao artigo, como citações a outros trabalhos dos autores).
 A seleção dos trabalhos é realizada pela revisão por membros do Comitê de
Programa do CATI. O processo de revisão é conduzido de forma anônima (blind
review) por pelo menos dois revisores, com a arbitragem de um terceiro revisor
em caso de necessidade. As submissões são revisadas de acordo com os seguintes
critérios: adequação ao escopo do evento, revisão bibliográfica, metodologia,
contribuição para a área de Tecnologia, Informática e/ou Computação,
originalidade e clareza.
 Os artigos que forem aprovados são publicados nos anais do CATI, em formato
digital. Para tal, ao menos um autor de cada trabalho aprovado deve efetivar sua
inscrição no evento, por meio do site http://bbg.unemat.br/cati.
 No decorrer do evento, os artigos completos aprovados são apresentados em
sessões técnicas, com duração de 20min para cada trabalho, e os artigos resumidos
são apresentados em formato de pôster no tamanho A1.
 As submissões ao CATI implicam por parte dos autores na aceitação das normas
contidas nesta chamada, bem como na observação das normas sobre direitos
autorais. No caso de autoria conjunta, o responsável pela submissão deve ter
autorização dos demais coautores.
 Outras informações podem ser obtidas via e-mail cati@unemat.br.

Tópicos de Interesse
Os principais tópicos que norteiam as submissões ao CATI estão sintetizados da seguinte
forma, não se restringindo a eles:
 Algoritmos e Otimização;
 Arquitetura de Computadores;
 Avaliação de Desempenho;
 Banco de Dados;
 Bioinformática;
 Computação Aplicada à Saúde;
 Computação Gráfica e Processamento de Imagens;
 Computação Ubíqua e Pervasiva;
 Engenharia de Software;
 Geoprocessamento;
 Gestão do Conhecimento;
 Governança e Empreendedorismo;
 Informática na Educação;
 Inteligência Computacional;
 Interação Humano-Computador;
 Jogos e Entretenimento Digital;
 Linguagens de Programação;
 Matemática e Física Computacional;
 Redes de Computadores e Sistemas Distribuídos;
 Redes Sociais;
 Robótica e Sistemas Digitais;
 Segurança da Informação;
 Sistemas de Informação;
 Sistemas Embarcados e Móveis;
 Sistemas Multimídia e Web;
 Telecomunicações.
Apresentação

O Congresso Acadêmico de Tecnologia e Informática (CATI) é um dos principais


congressos na área de Tecnologia da Informação (TI) em Mato Grosso. O evento reúne
estudantes, professores, pesquisadores e outros profissionais na discussão dos principais
temas da área de Ciência da Computação, fomentando a Ciência, Tecnologia e Inovação.
O CATI surgiu no ano de 2007, por iniciativa de estudantes e professores do Curso de
Bacharelado em Ciência da Computação, da Universidade do Estado de Mato Grosso
(UNEMAT), Campus Universitário Rene Barbour – Barra do Bugres. Na época,
preocupados com a pouca oferta de eventos em TI no estado, estudantes e professores
idealizaram um congresso que fosse organizado com ambos os segmentos em conjunto,
promovendo a integralização das várias áreas de TI em Mato Grosso.
O 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016), foi
realizado pelo Curso de Ciência da Computação e o Centro Acadêmico de Ciência da
Computação na UNEMAT – Campus Universitário Rene Barbour, no período de 21 a 25
de novembro de 2016, em Barra do Bugres/MT. Em sua 8ª edição, a temática central do
evento foi “Inteligência Computacional e Robótica”. O evento recebeu congressistas que
atuam na academia e no mercado em instituições de outros estados como Universidade
Estadual de Ciências da Saúde de Alagoas (UNCISAL/Maceió), Universidade Federal
Fluminense (UFF/Niterói), Ennexas Brasil (São Paulo) e Fundação Robô Livre (Recife),
além de congressistas de Mato Grosso, que atuam no Instituto Federal de Mato Grosso
(IFMT), Sociedade Brasileira de Computação (SBC), Choice/Artemisia, Código5 e na
própria UNEMAT. Atividades como palestras, sessões de apresentação de trabalhos,
minicursos, relato de experiência, exposição, maratona de programação e maratona de
jogos fizeram parte da programação.
As submissões ao CATI 2016 totalizaram 26 trabalhos, sendo 14 Artigos
Completos (54%) e 12 Artigos Resumidos (46%). Quanto à instituição de origem, 11
submissões (42%) foram oriundas da UNEMAT, 12 submissões (46%) foram oriundas
de outras instituições e 3 submissões (12%) envolveram tanto autores da UNEMAT
quanto de outras instituições. Ao todo as submissões envolveram 10 instituições,
localizadas nos seguintes estados: Goiás; Mato Grosso; Minas Gerais; Paraná; Piauí; e
Santa Catarina. O Comitê de Programa, responsável por avaliar as submissões, contou
com a composição de membros da UNEMAT (Barra do Bugres, Sinop e Cáceres), dos
cursos de Ciência da Computação, Sistemas de Informação, Matemática e Engenharia de
Produção Agroindustrial, e membros de outras instituições (Accenture, FACCAMP, FID,
IFAL, IFPE, UFF, UFG, UFPE, UFPR, UFSC, UNCISAL, UNIC e USP). O processo de
revisão foi conduzido em pares e de forma anônima, buscando atribuir, para cada
submissão, um avaliador interno (UNEMAT) e um avaliador externo (outra instituição).
Em caso de empate, um terceiro avaliador foi atribuído.
Os Anais do CATI 2016, disponíveis na presente publicação, contêm 14 trabalhos,
sendo 8 Artigos Completos (57%) e 6 Artigos Resumidos (43%), devidamente aprovados
pelo Comitê de Programa, totalizando um percentual de aprovação de 54% das
submissões. Os trabalhos abrangem ao todo 14 tópicos de interesse, sendo que alguns
trabalhos abordam até três tópicos. Os tópicos mais abordados e a quantidade de trabalhos
que os abordaram foram: Sistemas Embarcados e Móveis (4); Informática na Educação
(3); Robótica e Sistemas Digitais (3); Matemática e Física Computacional (2); e Sistemas
de Informação (2). Outros tópicos, abordados em apenas um trabalho cada, foram:
Algoritmos e Otimização; Banco de Dados; Gestão do Conhecimento; Governança e
Empreendedorismo; Inteligência Computacional; Interação Humano-Computador; Jogos
e Entretenimento Digital; Redes de Computadores e Sistemas Distribuídos; e Segurança
da Informação.
O CATI 2016 contou com o apoio da Sociedade Brasileira de Computação (SBC),
Fundação de Amparo à Pesquisa do Estado de Mato Grosso (FAPEMAT – Processo nº.
241861/2016), Prefeitura Municipal de Barra do Bugres, Empresas de Barra do Bugres e
Tangará da Serra, Pró-Reitoria de Extensão e Cultura (PROEC/UNEMAT), Parque
Tecnológico de Mato Grosso, Secretaria de Estado de Ciência, Tecnologia e Inovação de
Mato Grosso (SECITEC/MT) e Conselho Nacional de Desenvolvimento Científico e
Tecnológico (CNPq). Registramos os agradecimentos aos apoiadores, patrocinadores,
estudantes, professores e outros profissionais que estiveram envolvidos na realização do
CATI 2016. A todos os participantes também o nosso muito obrigado!
Esperamos que os leitores apreciem o conteúdo dos trabalhos aqui publicados e
que estes trabalhos possam contribuir com o desenvolvimento e avanço de ações na área
de Ciência da Computação e de Tecnologia da Informação (TI). Boa leitura!

Coordenação do CATI 2016


Sumário

Artigos Completos

Controlando um Auto Modelo com um Programa Escrito em Java e o Hardware


Arduino ....................................................................................................................... 1
Elaine A. R. Pires (IFMT/Juína), Elisângela Alves da Rocha (UTFPR/Curitiba) e
Ivan Luiz Pires (UNEMAT/Colíder)

Aplicação de um Agente de Software para Controle de um Veículo Robótico


Utilizando o Arduino .................................................................................................. 8
Elaine A. R. Pires (IFMT/Juína), Elisângela Alves da Rocha (UTFPR/Curitiba) e
Ivan Luiz Pires (UNEMAT/Colíder)

A Utilização do Data Warehouse como Ferramenta de Apoio à Tomada de


Decisões em Clubes de Futebol ................................................................................. 16
Felipe Ribeiro de Almeida, Fernando Selleri Silva e
José Fernandes Torres da Cunha (UNEMAT/Barra do Bugres)

Estudo dos Domínios da Governança em Tecnologia da Informação na Empresa


União Avícola Agroindustrial .................................................................................... 23
Stefani G. Silva (FID/Diamantino), Ivanildo M. Azevedo e
Ana Paula L. F. de Vasconcelos (UFPE – UNEMAT/Barra do Bugres)

Aplicação de Gestão de Processos (BPM) na Produção de Material Digital para


Ambiente Virtual ........................................................................................................ 31
Adilson de Oliveira Pimenta Junior (Instituto Döll/Ponta Grossa)

Utilização do Moodle como Ambiente Virtual de Aprendizagem no Projeto


IF Sem Distâncias ....................................................................................................... 39
Ricardo Figueiredo Scarpatt e
Pedro Clarindo da Silva Neto (IFMT/ Tangará da Serra)

Desafio de Aplicativos: uma Experiência no Instituto Federal de Goiás (IFG)


Campus Luziânia ........................................................................................................ 47
Ernane Rosa Martins (IFG/Luziânia)

Remediação do Erro em Disciplinas de Algoritmos: uma Análise da


FARMA-ALG ............................................................................................................ 55
Rui Ogawa (UFPR – UNEMAT/Sinop)
Artigos Resumidos

Protótipo de um Sistema de Controle Automático de Faróis Veiculares Utilizando


Arduino ....................................................................................................................... 63
Tiago Gerke, Cleverson Sebastião dos Anjos, Thalita Scharr Rodrigues Pimenta,
Valter Luis Estevam Júnior e Roger Adriano Bressani Mazur (IFPR/Irati)

Aspectos Comportamentais do Algoritmo GraphMaster para a Implementação de


Chatterbots ................................................................................................................. 67
Danilo Rodrigues dos Santos, Fernando Selleri Silva e
Acelmo de Jesus Brito (UNEMAT/Barra do Bugres)

Testes de Penetração para Avaliação de Segurança em Redes de Computadores ..... 71


Matheus Marchezan de Marco (UTFPR/Medianeira)

Uso de Serious Games para Educação e Desenvolvimento de Jogos ........................ 75


Matheus A. S. Santana e Luciano Zamperetti Wolski (UNEMAT/Barra do Bugres)

Aplicativo para Comércio Eletrônico Conforme Princípios da Economia


Solidária ..................................................................................................................... 79
Valter Luis Estevam Júnior, João Luis Dremiski, Cleverson Sebastião dos Anjos,
Thalita Scharr Rodrigues Pimenta, Tiago Gerke, Elisson Otávio Gaievski e
Lucas Fernando Pontes Castro (IFPR/Irati)

Uso dos Métodos Numéricos de Passo Simples e Passo Múltiplo para Aproximar
a Solução de Problemas de Valor Inicial .................................................................... 83
Robson Araújo Lima, Luciano Zamperetti Wolski e
Minéia Cappellari Fagundes (UNEMAT/Barra do Bugres)
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Controlando um Auto Modelo com um Programa Escrito em
Java e o Hardware Arduino
Elaine A. R. Pires1, Elisângela A. R.2, Ivan Luiz P. Pires3
1
Instituto Federal de Mato Grosso – Campus Juína (IFMT)
Caixa Postal 255  – 78.320­000 – Juína – MT – Brasil
2
Universidade Tecnológica Federal do Paraná – Campus Curitiba (UTFPR)

Departamento de Computação
3

Universidade Estadual de Mato Grosso (UNEMAT) – Colíder, MT – Brasil
elaine.rocha@jna.ifmt.edu.br, eli_a_rocha@hotmail.com,
ivanpires@unemat.br

Abstract. The Java programming language has been growing as a high­level
language with great support of new functionalities through a wide variety of
available libraries. Furthermore, the communication between Java program
and   hardware   device,   like   a   Arduino,   is   possible   through   a   serial
communication.   Thus,   this   article   presents   a   Java   and   Arduino
communication approach, for auto model control.

Resumo.  A   linguagem   de   programação   Java   vem   crescendo   como   uma


linguagem   de   alto   nível   e   com   grande   suporte   de   novas   funcionalidades
através  de uma vasta variedade  de bibliotecas  disponíveis.  Além  disso,    é
possível comunicar de forma serial um programa Java com dispositivos de
hardware, como a plataforma de hardware livre Arduino. Assim, este artigo
apresenta   uma   abordagem   de   comunicação   entre   um   software   e   um
dispositivo de hardware para controlar um auto modelo.

1. Justificativa
Com o crescimento da linguagem de programação Java como uma linguagem de alto
nível e com grande suporte de novas funcionalidades, foram desenvolvidas uma vasta
variedade   de   bibliotecas,   sendo   desenvolvida   sob   uma   Máquina   Virtual   a   qual
possibilita   a   portabilidade   entre   diferentes   sistemas   operacionais.   Uma   das   grandes
características desta linguagem é sua interação com a comunicação serial, possibilitando
o controle de dispositivos de hardware com microcontroladores, como a plataforma de
hardware livre Arduino. O controle de dispositivos físicos através de software abre uma
gama   de   possibilidades   através   da  interação   do  mundo   real   com   uso   de   sensores   e
atuadores, para diversas áreas de aplicação, sejam elas educacionais, comerciais e para
fins de pesquisa.
Este artigo apresenta um protótipo para a comunicação de um software com um
dispositivo de hardware para controle de um auto modelo, mediado pela plataforma de

1
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

hardware  livre   Arduino.   Este  software  é   desenvolvido   em   Java,   o   que   o   torna


multiplataforma, e comunica com um software embarcado no hardware Arduino através
da porta serial, e este hardware comunica com um controle de rádio frequência do auto
modelo   através   de   portas   lógicas,   controlando­o.   Esta   pesquisa,   embora   apresente
resultados, é um passo preliminar na criação de uma base para aplicações que controlem
dispositivos de forma automática e em um próximo passo, autônoma.

2. Fundamentação Teórica
Os microcomputadores vem equipados com um recurso de comunicação que permite a
troca de dados entre dois sistemas, este tipo de comunicação pode ser tanto via serial
quanto paralela: na serial, os dados são enviados via sequencial e; na paralela, os dados
são enviados de forma paralela. Para fazer um sistema comunicar­se com outro sistema,
é   necessário   conhecer   circuitos,   padrões   de   comunicação   e   uma   linguagem   de
programação (RABELLO, 2009).
A linguagem de programação Java é uma linguagem de alto nível, que vem se
destacando no cenário de programação orientada a objeto, que pode ser caracterizada
pela simplicidade, arquitetura neutra, orientada a objeto, portável, distribuída, de alta
performance,  multithreaded,   robusta,   dinâmica   e   segura   (ORACLE,   2016).   Esta
linguagem   é   desenvolvida   sobre   a   Máquina   Virtual   Java   (LINDHOLM   e   YELLIN,
1999), e disponível para diferentes sistemas operacionais, sendo que a mesma classe é
capaz   de   ser   executada   tanto   para   Windows   (MICROSOFT,   2016),   Solaris   (SUN,
2016), Linux (LINUX, 2016) ou Mac OS (APPLE, 2016). Uma forte característica da
linguagem Java é o uso de bibliotecas para diferentes aplicações, como a API RXTX
(RXTX,   2016)   e   suas   classes  CommPortIdentifier,   SerialPort,   SerialPortEvent,
SerialPortEventListener usadas nesta pesquisa, as quais possibilitam a comunicação de
um programa escrito em Java com a porta Serial do hardware hospedeiro. 
A comunicação serial é um processo de transferência de dados de um bit por
vez, podendo incluir os dispositivos de rede, teclados, mouses, modems e terminais.
Quando é feita uma comunicação serial, cada byte (caractere) de dados que é enviado ou
recebido é feito a um bit por vez. Cada  bit  pode ser representado pelo estado lógico
ligado (1) ou desligado (0). A velocidade de envio dos dados por uma porta serial  é
expressa em bits por segundo, representado por  bps, na nomenclatura inglesa, ou em
baudot  rate  (“Taxa de  Baud”), que representa o número de bits  (zeros ou uns) que
podem   ser   enviados   ou   recebidos   em   um   segundo   (COMER,   2001).     Com   a
comunicação   serial,   um  software  pode   interagir   com   dispositivos   eletrônicos   para
interpretar os envios de bits de mensagem e executar determinadas funções e comunicar
com   programas   embarcados   nestes   dispositivos,   tais   como   placas   compostas   por
microcontroladores ou hardwares que são disponibilizados com toda a estrutura física
para estas aplicações, como o caso da plataforma de hardware livre Arduino, utilizado
nesta pesquisa.
O   Arduino   (ARDUINO,  2016)   é   uma   plataforma   de   prototipagem   eletrônica
open­source  que se baseia em  hardware  e  software  fáceis de usar, sendo destinado a
qualquer pessoa interessada em criar objetos ou ambientes interativos. O Arduino pode
sentir o estado do ambiente que o cerca por meio de sensores que receptam os sinais e
pode interagir com os seus arredores, controlando luzes, motores e outros atuadores,
conectados através de suas portas digitais e analógicas. O microcontrolador na placa é

2
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

programado com a linguagem de programação C (SCHILDT, 1997), com bibliotecas
próprias e no ambiente de desenvolvimento Arduino. Os projetos desenvolvidos com o
Arduino podem ser autônomos  ou podem comunicar­se com um computador para a
realização da tarefa, com uso de software específico. Existem várias placas que podem
se comunicar com o Arduino, estas podem ser adquiridas já montadas ou construídas
manualmente. A figura 1 apresenta o Arduino Duemilanove.

Figura 1. Arduino Duemilanove


(Fonte: (Arduino, 2016))

3. Metodologia
Inicialmente   realizou­se   uma   pesquisa   bibliográfica   como   aporte   teórico   sobre   a
linguagem   de   programação   Java,   bem   como   a   busca   por   bibliotecas   e  APIs  que
possibilitem  a  comunicação  de um programa  Java com  a porta  serial  para leitura  e
escrita.   Além   disso,   foram   levantadas   as   informações   sobre   o   Arduino,   desde   a
identificação   dos   componentes   e   seus   estudos   até   as   suas   funções   e   aplicações   de
exemplos.
Após foi realizado um estudo sobre a arquitetura do auto modelo, no intuito de
compreender   o   funcionamento   de   seus   componentes   eletrônicos.   O   auto   modelo
utilizado é um simples brinquedo de controle remoto sem recursos de hardwares para
programação.
Em seguida, foi construído o dispositivo eletrônico usado como interface entre
o auto modelo e o programa Java, além de testes para  comunicar o controle de rádio
frequência do auto modelo com o Arduino.  Para estes testes foram realizados pesquisas
até concluir a necessidade do uso de transistores para chavear a alimentação do controle
remoto do auto modelo e o Arduino, uma vez que trabalham respectivamente em 9 e 5
volts.
Por   fim,   foi   desenvolvido   um  software  em   Java   para   comunicar   com   o
Arduino. Esta comunicação foi possível com o uso da API RXTX, uma biblioteca com
vários métodos implementados para enviar e receber bytes pela porta USB, entre outras
funcionalidades.

4. Desenvolvimento do Protótipo
Como passo preliminar, foi desenvolvido um protótipo composto por um auto modelo

3
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

controlado por rádio frequência (RF), um software embarcado no microcontrolador do
Arduino e um  software  Java para interação do Humano­Hardware.  A figura 2 ilustra
esta arquitetura.

Figura 2. Arquitetura do protótipo desenvolvido.

O primeiro passo foi desmontar o controle do auto modelo para identificar em
sua placa os componentes  eletrônicos  usados para a rádio frequência, e o envio das
informações para avanço, retrocesso, virar à direita e à esquerda. Após a identificação,
foi realizada a solda dos fios para conexão ao Arduino, organizados da seguinte forma:
o fio 1 corresponde a ré, o fio 2 corresponde ao avanço do auto modelo, o fio 3 vira a
roda para a direita, o fio 4 gira a roda para esquerda e o fio 5 é o condutor elétrico
neutro responsável pelo aterramento (fio terra). A figura 3 ilustra os fios identificados.

Figura 3. Frente e verso da placa de controle de rádio frequência

Após, os 5 fios foram soldados em uma placa padrão para melhor organização
e   o   uso   de   quatro   transistores   para   regulagem   e   chaveamento   entre   a   voltagem
adequada, a fase e o neutro. A figura 4 ilustra os fios soldados na placa padrão e os
transistores, no qual o número 1 indica o fio terra conectado ao controle de RF do auto
modelo, os números 2 indicam contatos do aterramento para cada transistor, os números
3   indicam   os   fios   responsáveis   por   enviar   comando   para   o   auto   modelo,   sendo   da
esquerda para a direita respectivamente:  avançar, retroceder, virar as rodas dianteira
para a direita, virar as rodas dianteiras para a esquerda, e os fios 4 conectam os fios 3 de
comandos às portas do Arduino, após passagem pelo transistor.
Como fonte de alimentação, utilizou­se uma bateria de 9 volts, para alimentar o

4
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

controle de rádio frequência, e esta foi conectada ao Arduino possibilitando o envio
correto dos comandos para o controle de rádio frequência. Em função do uso desta fonte
de alimentação, houve a necessidade do uso destes transistores, pois o controle de Rádio
Frequência do auto modelo se alimenta de 9 volts e o Arduino de 5 volts, assim o
transistor foi utilizado como chaveador. 

Figura 4. Placa Padrão

No Arduino os fios recebidos da placa padrão foram conectados da seguinte
forma: o comando avançar foi conectado na porta 8, retroceder na porta 5, virar as rodas
dianteiras para a direita na porta 2 e virar as rodas dianteiras para a esquerda na porta
11.   Após   foi   desenvolvido   um   pequeno   programa   escrito   em   C   e   embarcado   no
microcontrolador do Arduino.  
Neste   programa   foi   indicado   a   taxa   de  Baud  9600   bits   por   segundo   para
comunicação serial do Arduino com o programa Java desenvolvido, as portas utilizadas
como saída para controle do auto modelo, além da leitura de entrada serial.  Ao receber
os caracteres pela porta serial, o programa executa as seguintes funções: caractere 1 para
o auto modelo avançar, 0 para parar de avançar; 3 para retroceder,  2 para parar de
retroceder; 5 para virar à direita, 4 para parar de virar à direita; 7 para virar à esquerda, e
6 para parar de virar à esquerda.
O Arduino Duemilanove usado possui 32 KB de memória flash para armazenar
o código, 1 KB de SRAM e 512 Bytes de EEPROM (que pode ser lido e escrito com a
biblioteca EEPROM). Cada um dos 14 pinos digitais no Duemilanove pode ser usado
como uma  entrada  ou saída,  operando em  5 volts, utilizando  as  funções  pinMode  ,
digitalWrite  e  digitalRead  presentes  na biblioteca  própria do Arduino   (ARDUINO,
2016). 
Para o desenvolvimento do programa embarcado foram utilizadas as funções
pinMode, digitalWrite e digitalRead. A função pinMode foi utilizada para indicar o uso
de cada porta como entrada ou saída, a função digitalWrite foi utilizada para o envio de
bits  para as portas especificadas e a função  digitalRead  foi utilizada para receber os
dados enviados pelo  software Java enviado pela porta serial.
O software para interação com o usuário, desenvolvido em Java, utiliza a API
RXTX para comunicação na porta serial, pois, de acordo com SCHILDT (1997), como o
Java   utiliza   uma   máquina   virtual   e   não   comunica   diretamente   com   o   Sistema
Operacional (SO), a comunicação com o hardware torna­se um pouco mais complexa,
dependendo do uso de API´s. A API RXTX é baseada na API Javacomm distribuída pela
própria SUN e possibilita a comunicação da porta paralela e USB de forma simplificada
(RXTX, 2010), sendo para o desenvolvimento do Software de interação com o usuário,

5
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

nesta   pesquisa,   foi   necessário   importar   somente   as   bibliotecas


gnu.io.CommPortIdentifier,   import   gnu.io.SerialPort,   import   gnu.io.SerialPortEvent,
import   gnu.io.SerialPortEventListener  e   utilizar   seus   métodos   e   o   evento
SerialPortEventListener.
O  software  de interação  com o usuário escrito em Java utiliza apenas  duas
classes: Principal e Arduino. Na classe Principal está a construção de uma interface
gráfica   construída   com   a   biblioteca  javax.swing  e   suas   classes   e   a   biblioteca
java.awt.event utilizando as classes KeyEvent e KeyListener para a leitura das teclas do
computador através de eventos específicos.  A classe Arduino configura os parâmetros
necessários para a comunicação da porta serial, utilizando os métodos da  API RXTX
possibilitando tanto o envio quanto o recebimento de Bytes pela porta USB. Além disso,
esta  classe possui os métodos  para o comando do auto modelo que são executados
quando as teclas do computador são pressionadas e o método enviar para transmissão do
comando   ao   Arduino.     As   teclas   são   utilizadas   com   eventos   para   acionamento   dos
métodos para controle do auto modelo. Utiliza­se a tecla “seta pra cima” pressionada
para invocar o método ligarFrente e ao não pressionar mais esta tecla é invocado o
método   desligarFrente   comandando   o   avanço   do   auto   modelo,   e   desta   forma   são
utilizadas também as teclas “seta esquerda”, “seta direita” e “seta para baixo”. A figura
5 apresenta o diagrama de classe deste software contendo as classes, eventos e pacotes
utilizados.

Figura 5. Diagrama de Classe do Protótipo Desenvolvido.

5. Conclusão e Trabalhos Futuros
Esta   pesquisa   apresentou   o     controle   de   um   dispositivo   físico   por   um  software,
utilizando a linguagem Java e o  hardware  Arduino. O uso da linguagem Java com a
biblioteca  RXTX  possibilitou   o   desenvolvimento   do  software  de   forma   simples   e   a
plataforma Arduino simplificou a interação com o dispositivo eletrônico. 
A principal contribuição deste trabalho é apresentar uma forma de controlar um
dispositivo físico por um software. Além disso, esta pesquisa pode servir de base para

6
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

novas abordagens de integração de software com hardware. 
Como trabalhos futuros estão a: extensão para controles de novos  hardwares e
software  de controle  pode ser substituída por  um agente de  software  ou um sistema
multiagentes.  Com   estas   características   pode­se   automatizar   questões   complexas   no
cenário de TI em diferentes aplicações (Bergenti et al, 2004).

Referências
Apple. (2016) “Mac OS X website”, http://www.apple.com/br/macosx/, Junho.
Arduino.   (2016)   “Arduino   Website:   playground”,
http://www.arduino.cc/playground/Portugues/HomePage, Junho.
Bergenti,   F.;   Gleizes,   M.   e   Zambonelli,   F.   (2004)   “Methodologies   and   Software
Engineering   For   Agent   Systems   –   The   Agent­Oriented   Software   Engineering
Handbook”, Kluwer Academic Publishers, p. 505.
Comer, D. (2001) “Redes de Computadores e Internet”, Bookman, 2ª edição traduzida,
Porto Alegre – RS, p. 48­52.
Lindholm, T. e Yellin, F. (1999) “The JavaTM Virtual Machine Specification”, Prentice
Hall, 2ª edição, Palo Alto, Califórnia, p. 496.
Linux. (2016) “Linux Online Website”, http://www.linux.org/info/index.html, Junho.
Microsoft.   (2016)   “Windows   Website”,
http://www.microsoft.com/windows/default.aspx, Junho.
Oracle   Corporation.   (2016)   “The   Java   Tutorials   Website”,
http://java.sun.com/docs/books/tutorial/index.html, Junho.
Rabello, L. M. (2009) “Comunicado  Técnico:  Programa em Linguagem  JAVA para
Comunicação Serial”, Embrapa Publicações, São Paulo ­ SP, p. 7.
Rxtx. (2016) “RXTX Original Website”, http://www.rxtx.org, Junho.
Schildt, H. (1997) “C Completo e Total”, Markron Books, 3ª edição, p. 827.
Sun. (2016) “Solaris Website”, http://br.sun.com/practice/software/solaris/, Junho.

7
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Aplicação de um Agente de Software para Controle de um
Veículo Robótico Utilizando o Arduino
Elaine A. R. Pires1, Elisângela A. Rocha2, Ivan Luiz P. Pires3
1
Instituto Federal de Mato Grosso – Campus Juína (IFMT)
Caixa Postal 255 – 78.320­000 – Juína – MT – Brasil
2
Universidade Tecnológica Federal do Paraná – Campus Curitiba (UTFPR)

Departamento de Computação
3

Universidade Estadual de Colíder (UNEMAT) – Colíder, MT – Brasil
elaine.rocha@jna.ifmt.edu.br, eli_a_rocha@hotmail.com,
ivanpires@unemat.br

Abstract. This paper presents an integrated approach of a software agent and
hardware devices using the Arduino prototyping board, sensors and electronic
actuators and SemantiCore framework. The aim of this work is to demonstrate
a   prototype   that   can   divert   objects   without   human   intervention   through   a
software agent.

Resumo. Este artigo apresenta uma abordagem de integração de um agente
de software e dispositivos de hardware utilizando a placa de prototipagem
Arduino,   sensores   e   atuadores   eletrônicos   e   o   framework   SemantiCore.   O
objetivo deste trabalho é demonstrar um protótipo que consegue desviar de
objetos sem intervenção humana por meio de um agente de software.

1. Introdução
Agentes de Software e Sistemas Multi­Agentes (SMAs) são poderosas tecnologias para
lidar com os diversos cenários na área de TI (Tecnologia da Informação) (Bergenti,
Gleizes e Zambonelli, 2004), com conceitos e estruturas de dados que permitem aplicar
características   como   autonomia,   aprendizado,   adaptabilidade   e   habilidade   social.   O
estudo   relacionado   à   construção   de   Agentes   de  Software  e   SMAs   converge   em
conceitos   da   Inteligência   Artificial   (IA)   e   da   Engenharia   de  Software  (ES),
sistematizando metodologias e plataformas de desenvolvimento que implementam as
teorias que os caracterizam. 
Uma das principais características de um Agente é o uso de sensores e atuadores
para   perceber   e   atuar   no   ambiente   e,   o   processo   de   decidir   quais   ações   tomar   em
resposta   a   cada   percepção.   Estas   características   constituem   de   uma   forma   geral,   o
processo deliberativo de um Agente. Existem dois tipos de Agentes: Reativos: reagem à
alterações no ambiente ou à mensagens de outros Agentes através de regras e planos
pré­definidos e Cognitivos: podem criar ações e planos para seguirem com base em suas
crenças e intenções (WOOLDRIDGE, 2009). Com o uso de uma estrutura mecânica e
eletrônica que possua sensores e atuadores físicos, que sentem e atuem em um ambiente

8
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

real, têm­se a possibilidade de criar um protótipo físico integrado com um Agente de
software   Reativo,   que   possa   aplicar   as   características   de   Agentes   de  Software  em
artefatos físicos, levando sua aplicação a um ambiente real. Além disso, espera­se que
este protótipo possa ser utilizado como ferramenta didática no auxílio de aplicações
práticas de conceitos da IA.
O objetivo deste trabalho é demonstrar a aplicação prática  de um Agente de
Software autônomo capaz de controlar um Robô equipado com sensores e atuadores. O
agente foi construído utilizando o framework SemantiCore (Escobar, 2006) e o Robô foi
construído com servo motores e um sensor de obstáculos controlados por um software
escrito na linguagem C e embarcado na plataforma de  hardware  Arduino (Arduino,
2016). 
A pesquisa deste artigo é um passo preliminar na demonstração da autonomia de
um Agente de Software integrado a um artefato de hardware. O foco deste trabalho está
no desenvolvimento do Agente de Software e na interação com o Arduino, abstraindo
detalhes eletrônicos e mecânicos envolvidos, como por exemplo a construção do auto
modelo utilizado. 

2. Fundamentação Teórica
Segundo (Wooldridge, 2009), um Agente de Software é um sistema de computador que
está situado em algum ambiente e é capaz de atuar autonomamente neste ambiente, a
fim   de   cumprir   seus   objetivos,   através   de   atuadores   e   sensores.   São   denominados
Agentes   Inteligentes   quando   são   capazes   de   perceber   seu   ambiente   e   responder   às
mudanças deste ambiente, e apresentar comportamentos orientados a objetivos, ou seja,
tomam iniciativas proativas para satisfazer seus objetivos interagindo ou não com outros
agentes (Figura 1).

Figura 1. Agentes interagem com ambientes por


meio de sensores e atuadores.

A   implementação   de   um   Agente   de  Software  e   de   Sistemas   Multi­Agentes


geralmente é realizada com linguagens orientada a objetos, e a estrutura de um agente
utiliza os conceitos de objetos a estruturação de seus elementos internos. Um agente
possui   diversas   características   não   presentes   em   um   objeto   como   instância   de   uma
classe, embora utilize­o.
Russel e Norvig (2004) apresentam como exemplos  didáticos  de comparação

9
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

para entendimento de sensores: os olhos, a boca e o nariz; e de atuadores: as pernas e os
braços.   Desta   forma,   um   Agente   Robótico   poder   ter   sensores   como   câmeras   que
detectariam o ambiente e motores como atuadores.
Pires et al (2010) apresentam um exemplo de integração de um software escrito
em Java e a plataforma  de hardware Arduino. Este trabalho aborda a linguagem  de
programação Java, bibliotecas e APIs que possibilitem a comunicação de um programa
Java   com   a   porta   serial   para   leitura   e   escrita.  Além   disso,   também   é   apresentado
informações sobre o Arduino, a identificação de componentes e suas funções, e uma
aplicação de exemplos. O objetivo deste trabalho é integrar um auto modelo com um
programa Java, para isto, o controle de rádio frequência do auto modelo comunica com
o microcontrolador Arduino e o Arduino comunica com um software Java.
Simões  et   al  (2006)     apresentam   a   possibilidade   de   desenvolvimento   de   um
motor   de   inferência   em   um   ambiente   embarcado,   utilizando   o   encadeamento
progressivo em um robô lego deixando­o capaz de tomar decisões em busca de um
objetivo específico de forma autônoma, considerando as limitações do hardware. Para
demonstrar a implementação foi realizado testes em um ambiente com caixas de papel
preenchidas   com   metal   onde   o   robô   deveria   desviar   dos   objetos,   o   robô   conseguiu
desviar dos objetos, porém não conseguiu executar mais de sete ciclos de inferência por
limitações de hardware do Lego.
Fernandes et al (2008) apresentam uma experiência com agentes inteligentes em
um jogo de cartas utilizando o  framework  JADE, que funciona como uma “thread”,
empregando   múltiplas   tarefas   ou   comportamentos   e   conversações   simultâneas.   O
protótipo  possui  agentes   que desempenham  dois   papéis,  que  são:  Agente   Jogador  e
Agente Juiz. Para a interação necessária, o jogo possui quatro agentes Jogadores e um
agente Juiz. Para iniciar o jogo deve­se iniciar o agente Juiz e posteriormente os quatro
agentes Jogadores, onde estes enviam uma mensagem ao juiz solicitando um registro,
após o juiz registrar quatro jogadores, ele define as equipes e inicia a partida, o jogo
termina quando uma equipe completa um total de 12 pontos.

3. Metodologia
Inicialmente   foram   realizadas   pesquisas   bibliográfica   como   aporte   teórico   sobre   a
linguagem de programação  Java, uma vez que o Agente de  Software  foi construído
nesta   linguagem.   A   linguagem   Java   foi   escolhida   por   ser   relatada   no   trabalho
relacionado   de   (Pires  et   al,   2010),   além   disso,   a   opção   em   utilizar   o  framework
SemantiCore foi decisiva para a escolha da linguagem Java. 
Foram realizados vários estudos e testes para a comunicação de um  software
Java com o Arduino, e optou­se por utilizar a biblioteca RXTX para a comunicação
serial através de envios de bytes na interface RS­232 a uma taxa de baud específica de
9600 bits por segundo. 
Em   seguida   foram   pesquisadas   algumas   plataformas   de   implementação   de
software agente, e optou­se por utilizar o framework SemantiCore para a construção do
Agente de Software. Esta escolha baseou­se na fácil manipulação da ferramenta, e nos
bons resultados apresentados nos testes realizados. 

10
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Além disso, foram levantadas as informações necessárias sobre eletrônica e o
uso do Arduino como ambiente de prototipagem. Foram realizados testes com diversos
sensores   e   atuadores   digitais   e   analógicos   para   experimentar   este   ambiente   de
hardware. Assim optou­se por utilizar o Arduino por sua facilidade de uso. 
Após a identificação dos componentes e suas formas de utilização, foi abordada
a programação do Arduino, que é baseada na linguagem C com o uso de bibliotecas
específicas que o acompanham. Além disso, o Ambiente de Desenvolvimento Integrado
do Arduino facilita todo o processo de upload para a placa e monitoramento da interface
serial, além de apresentar um compilador integrado. 
Com as informações e testes necessários foi desenvolvido um protótipo dividido
em quatro etapas: a construção física de um Robô, representado por um auto modelo
com três rodas e um sensor ultrassônico, que possa desviar de obstáculos; A construção
de software para embarcar no Arduino, contendo os controles dos sensores e atuadores
mecânicos   e   o   envio   e   recebimento   de   informações   do   Agente   de  Software;   A
comunicação   entre   o   Robô   e   o   Agente   de  Software  através   da   porta   serial;   e   a
construção do Software Agente que receba as informações lidas do ambiente e decida as
ações a serem executadas em respostas às suas percepções. 

4. Desenvolvimento e Integração do Agente de Software e do protótipo
Para aplicar  os conceitos  de Agente  de  Software, como a pró atividade,  o processo
deliberativo,   a   atuação   e   a   percepção   em   um  ambiente,   em   dispositivos   físicos,   foi
construído um Robô com sensores e atuadores eletrônicos e mecânicos, com uso do
Arduino. O Robô foi confeccionado em um processo artesanal, utilizando­se de carcaça
de   um   brinquedo   de   plástico,   duas   rodas   traseiras   de   borracha   conectadas   à   servo
motores, um em cada roda, uma roda livre na frente acompanhando  as  direções  da
tração nas rodas traseiras, um radar composto por um servo motor de rotação de 180° e
um sensor ultrassônico.
Para   alimentar   os   dispositivos   foi   utilizado   uma   fonte   de   12   volts   de   500
miliamperes,   conectados   ao   Arduino,   e   este   controla   as   tensões   devidas   para   os
dispositivos,   com   uso   de   um   oscilador   de   cristal.   Para   perceber   o   ambiente,   este
protótipo usa um Sensor Ultrassônico GH­311 para detectar a presença de objeto a uma
pequena distância (de no máximo até 8 metros) e retornar a detecção através de sinais
digitais. 
Para atuação no ambiente, o Robô faz uso de dois Servo motores analógicos com
rotação de 360°, capacidade de 60 rotações por minuto e torque de 3,3 kg/cm. Nestes
dois servos motores foram conectadas rodas de borrachas que garantem aderência ao
solo permitindo mover o Robô satisfatoriamente. Como o Servo motor utiliza ângulos
para   rotacionar­se,   utilizamos   90°   para   que   a   roda   permaneça   parada,   180°   para
direcionar em sentido horário e ­180° para o sentido oposto. A combinação das duas
rodas permite o Robô ir para a frente, com uso sincronizado dos servo motores, e virar
para os lados, com um servo motor parado e outro rotacionando para a direção desejada.
Como o sensor utilizado possui um ângulo restrito de observação de obstáculos,
foi   adicionado   ao   protótipo   um   micro   servo   motor   analógico,   modelo   SG90,   com
rotação de 180° e torque de 1,5 kg/cm para otimizar o campo de percepção. Com este

11
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

servo motor e o sensor conectado a ele, pode­se direcioná­lo para frente, esquerda e
direita para sentir a presença ou ausência de obstáculos. Para direcionar o servo motor
para a direita, deve posicioná­lo a 0°, para a frente a 90° e para a esquerda a 180°.
A programação que controla os sensores e atuadores do Arduino é feita através
da linguagem  de programação  C e embarcada  em uma memória  EPROM  (Erasable
Programmable Read­Only Memory) de 32k que acompanha o  hardware, juntamente
com um microcontrolador que o processa. Esta programação é realizada no Arduino
IDE, um ambiente  que integra  a programação,  compilação,  monitoramento  da porta
serial e envio do software para a memória programável do hardware.
A arquitetura  do  software  embarcado  baseia­se em duas funções  básicas  que
devem ser implementados: setup e loop. A função “setup” é chamada somente quando
inicia o  software, e é usado para inicializar variáveis, atribuir cada variável à portas
digitais ou analógicas para leitura ou escrita de valores, entre outros. A função “loop()”
faz   laços   de   repetição   permitindo   a   execução   contínua   do   programa,   usada   para
controlar efetivamente a placa Arduino (Arduino, 2016).
Para   sincronizar   os   valores   lidos   com   a   comunicação   serial,   utilizou­se   a
constante “Serial”, para atribuir a taxa de baud necessária para a transmissão de dados
sem erros de enquadramento. Neste protótipo foi optado por utilizar a taxa de 9600 bits
por segundo, através de testes realizados com resultados satisfatórios. 
A   interação   entre   o  Software  Agente   e   o  Software  Embarcado   no   Arduino
acontece com as trocas coordenadas de mensagem via comunicação serial. Para tal, foi
criado um simples protocolo onde envia valores booleanos para o  Software  Agente, a
partir das  leituras  do sensor Ultrassônico, para indicar  se o caminho está livre  para
prosseguir ou deve tomar decisões de mudança de percurso ou contorno do obstáculo
detectado. Para as tomadas de decisões, o Agente envia os caracteres f, d, e, t, p, a, b ou
c, de forma serializada para indicar respectivamente, ir para a frente, virar para a direita,
virar para a esquerda, ir para trás, parar e direcionar o sensor Ultrassônico para a frente,
direita ou esquerda. 
Ao   receber   os   caracteres   do  Software  Agente,   o   Arduino   com   o  software
embarcado  executa  a  ação  solicitada,  através  de  funções  programadas  que ativam  a
direção dos servo motores, direcionando o Robô e seu radar. As funções utilizadas neste
programa, e suas funcionalidades  são: Função frente; Função trás; Função esquerda;
Função   direita;   Função   radarDireita;   Função   radarFrente;   Função   radarEsquerda   e
Função frenteDois ­ realiza a mesma ação da função frente, porém com um atraso de
5000 milissegundos. 
Com estas funções é possível mover o robô e seu radar em todas as posições,
respondendo a comandos recebidos pela interface serial. Toda a comunicação serial é
realizada   através   de   bytes   e   utiliza­se   a   porta   USB   para   o   recebimento   e   envio   de
mensagens.
Para   o   programa   em   Java   ser   capaz   de   enviar   e   receber   informações   pela
interface serial utilizou­se a API RXTX. Esta API é uma biblioteca com conjunto de
classes que permitem de forma simples a comunicação desejada. 
O primeiro passo para a integração do programa Java com a comunicação serial

12
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

é   criação   de   uma   classe   Java   que   implemente   a   classe   SerialPortEventListener   da


biblioteca   RXTX.   Após   isso,   é   necessário   configurar   os   parâmetros   básicos.   É
necessário   especificar   a   porta   de   comunicação,   a   taxa   de  baud  e   utilizar   o   método
setSerialPortParams que configura os parâmetros para estabelecer esta comunicação.
Com   a   configuração   terminada,   é   necessário   realizar   o  override,   ou   seja,   a
sobrescrita do método serialEvent para ler as informações da interface serial assim que
forem recebidas. Desta forma, a comunicação entre o Arduino e o programa Java  é
estabelecida, bastando apenas utilizar estes métodos como recurso para o Agente de
Software receber as percepções do Ambiente e enviar suas tomadas de decisões para o
auto modelo. 
As percepções são realizadas através da leitura de sensor do Arduino, e estas são
repassadas para o programa Java de comunicação serial e este notifica o Agente desta
informação.   O   Agente   de  Software  toma   a   decisão,   e   utiliza   o   programa   Java   de
comunicação   Serial   como   um   recurso   para   transmitir   ao   Arduino   por   comunicação
serial sua decisão. Ao receber o comando o Arduino executa­o em seus servo motores.
O Agente de  Software  foi construído com a plataforma de implementação de
SMA  SemantiCore,   sob   a   linguagem   de   programação   Java.   Esta   plataforma   é   um
framework que abstrai características de Agentes e SMA, como a comunicação através
de trocas de mensagens, sensores de mensagens, planos, ações, entre outros, focando a
implementação   na   funcionalidade   do   Agente.   O   Programa   foi   organizado   em   dois
pacotes, agent e robot, os quais abordam: o Agente, contendo planos de ações, máquina
de execução, sensor de mensagens e mecanismo para tomada de decisão; e o Robô que
comunica   com   o  software  embarcado   no   Arduino   enviando   e   recebendo   bytes   por
comunicação serial. O Robô, no  Software  Agente atua como um recurso do Agente
intermediando a comunicação com o Arduino. 
As classes que compõem o sistema estão organizadas entre as ações Turn, Stop,
Forward  e  Backward  que   estendem   a   classe  Action  do  framework  SemantiCore,   o
Agente   representado   pela   classe  Agent  que   estende   a   classe  SemanticAgent  do
SemantiCore,   os   mecanismos   executor,   sensor   e   decisório,   representados
respectivamente   pelas   classes  Execution,  StringSensor  e  Decision  que   são
especializações de classes do  framework, a classe  Robot  que implementa os métodos
que interagem com o Robô físico, e por fim a classe SerialCommunication que utiliza a
biblioteca   RXTX   para   o   recebimento   e   envio   de   bytes   por   comunicação   serial.   Os
detalhes destas classes podem ser encontradas em (Rocha, 2011).
A instância do Agente deve estar presente na classe SerialCommunication para o
envio imediato de uma mensagem interna informando para o próprio Agente todas as
percepções   do   ambiente,   recebidas   do   sensor   ultrassônico,   no   momento   de   seu
recebimento. 
Na Figura 2 está ilustrada a arquitetura geral do protótipo, com a interação do
Software Agente com o Arduino e os dispositivos conectados em interfaces digitais. Na
Figura,   a   marcação   1   indica   o  Software  programado   na   linguagem   Java,   com   a
plataforma  de  Implementação  SemantiCore. Como a Linguagem  Java atua  sob uma
máquina virtual, o acesso aos recursos do  hardware  tornou mais complexo, houve a
necessidade   de   se   usar   a   biblioteca   RXTX   para   estabelecer   a   comunicação   serial,

13
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

conforme indicada na marcação 2 na Figura. Esta interação é uma via dupla, pois o
Arduino envia dados dos sensores para o Agente e este envia comandos como resposta
para ação dos atuadores. A marcação 3 apresenta o Arduino e o software embarcado em
sua memória, além dos dispositivos de sensor Ultrassônico e dos três servo motores que
atuam como roda direita, esquerda e radar, que estão conectados em portas digitais.

Figura 2. Arquitetura geral do Protótipo.

5. Resultados Obtidos
Após a conclusão do protótipo foi preparado o ambiente para a realização dos testes. O
ambiente foi construído em um amplo espaço necessário para que o Robô deslocasse a
partir de um ponto de partida sem destino final, uma vez que o objetivo do agente é
desviar  dos obstáculos  inseridos  neste ambiente.  Os testes  foram divididos  em duas
etapas contendo obstáculos inseridos propositalmente, de forma gradual. 
Na primeira etapa foi colocado um obstáculo na frente do robô. Inicialmente o
Robô deslocou­se para frente e ao perceber o obstáculo, parou e contornou o obstáculo,
virando­se para a esquerda, andando por tempo determinado a sua frente e virando­se
para a direita, e ao contornar, seguiu em linha reta. 
Na segunda etapa, foram colocados dois obstáculos no cenário, um na frente do
robô e o outro um pouco mais distante, para ser percebido pelo robô ao terminar o
desvio do primeiro. O Robô partiu em linha reta, e assim que percebeu o obstáculo à
frente,  desviou como no primeiro  teste.  Ao terminar  este desvio, deparou­se com o
outro obstáculo que novamente repetiu a ação de desviar e realizou um novo desvio, e
conseguiu alcançar seu objetivo. 
Estas   percepções   foram   possíveis   através   de   um   servo   motor   que   permite   o
sensor ultrassônico. O Robô obteve o resultado esperado nas duas etapas, desviando de
todos os objetos que estavam a sua frente, sem haver colisões e sem a necessidade de
intervenção humana. 

6. Conclusão e Trabalhos Futuros
Neste artigo foram demonstrados os passos para a construção de um Robô e sua
programação com o Arduino, a comunicação deste Robô com um software Java e um
Agente de Software, e uma forma de aplicar as características da inteligência artificial
que compõem as bases de um Agente de  Software  em linguagem de programação no
controle de dispositivos físicos. 

14
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Além disso, constatou­se a prototipação de um Robô autônomo, controlado por
um Agente de  Software  com sensor e atuadores que percebeu e atuaram no ambiente
sem a intervenção humana. Com este protótipo foram aplicadas as características  de
pró­atividade, de reatividade, além do processo deliberativo de um Agente, no qual é
decidido o que fazer com um rol de planos e ações a serem executadas e as execuções
das mesmas que podem ser mediadas por pré e pós­condições. Contudo, este protótipo
está   pronto   para   interagir   com   outros   protótipos   controlados   por   Agentes,   pois   a
plataforma SemantiCore permite a troca de mensagens entre Agentes para cooperação e
coordenação no alcance de um objetivo coletivo da sociedade do SMA, sob barramento
de rede. 
Como   trabalhos   futuros,   é   indicado:   o   estudo   de   outras   plataformas   de
implementação   de   Sistemas   Multi­Agentes;   melhorar   as   percepções   do   ambiente
trocando   o   Sensor   Ultrassônico   utilizado   por   um   Sensor   Ultrassônico   com   retornos
analógicos que possam mensurar com certa precisão a distância do sensor ao obstáculo
em ângulos razoáveis; e por fim, o uso de um sensor GPS aliado a um sensor de unidade
de medição inercial que permite ao Robô navegar em um plano tridimensional traçando
rotas   de   caminhos   e   possibilitando   ao   agente   aplicar   medidas   de   desempenho   para
constatação do alcance de seu objetivo de forma prática. 

Referências
Arduino   (2016)   “Arduino   Website:   Playground”,
http://www.arduino.cc/playground/Portugues/HomePage, Setembro.
Bergenti,   F.;   Gleizes,   M.   P.   e   Zambonelli,   F.   (2004)   “Methodologies   and   Software
Engineering   for   Agent   Systems:   The   Agent­Oriented   Software   Engineering”,
Handbook Springer, edição 1.
Escobar, M.; Lemke, A. P. e Ribeiro, M. B. (2006) “SemantiCore 2006: Permitindo o
Desenvolvimento   de   Aplicações   Baseadas   em   Agentes   na   Web   Semântica”,   In:
Workshop on Software Engineering for Agent­Oriented Systems (SEAS), p. 72­82.
Fernandes, R.; Floriani, P. E.; Kraus, H. M.; Oliveira, D. e Santos, V. P. (2008) “Uma
experiência com Agentes Inteligentes e Jogos de Cartas”, In: Anais do V SEGET –
Simpósio de Excelência em Gestão e Tecnologia, AEDB, Rezende ­ RJ.
Pires, E. R.; Rocha, E. A. e Pires, I. L. P. (2010), “Controlando um auto modelo com
um programa escrito em Java e o hardware Arduino”, Mato Grosso.
Rocha,   E.   A.   (2011),   “Aplicação   de   um   Agente   de   Software   para   Controle   de   um
Veículo Robótico Utilizando o Arduino”. 78 f. Trabalho de Conclusão de Curso –
Universidade Estadual de Mato Grosso – campus Colíder.
Russel, S. e Norvig, P. (2004), “Inteligência Artificial”, Elsevier, 2ª edição, RJ.
Simoes, C.; Estrela, D. A.; Montenegro, S. e Aragao, H. (2006), “Uma implementação
de um Motor de Inferência Embarcado em Robôs Lego”, In: Anais do VI ERBASE e
IV WTICG­BASE, p. 954­960.
Wooldridge, M. (2009), “An introduction to Multi­Agent Systems”, John Wiley & Sons
Ltd. , 2° edição,  Chichester­UK.

15
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

A Utilização do Data Warehouse como Ferramenta de Apoio à


Tomada de Decisões em Clubes de Futebol
Felipe Ribeiro de Almeida, Fernando Selleri Silva,
José Fernandes Torres da Cunha

Ciência da Computação - Universidade do Estado de Mato Grosso (UNEMAT)


Caixa Postal 92 – 78.390-000 – Barra do Bugres – MT, Barra do Bugres – MT - Brasil
felipe@datadigital.com.br, selleri.br@gmail.com,
fernandestorres@gmail.com

Abstract. A theme that has aroused the curiosity of scientists linked to sport is
the observation and analysis of the game, called Scout, which has gained
increasing importance in the world of soccer, and it is increasingly common
for coaches surround themselves of experts to collect information on their
teams. Based on this assumption, the Data Warehouse is a database
technology that comes with the purpose of presenting historical data reports of
the respective business area. This work consisted in the use of analysis
technologies and support decision-making in order to produce a Data
Warehouse for analysis of information gathered from soccer matches.

Resumo. Um tema que tem despertado a curiosidade de cientistas ligados ao


esporte é a observação e análise do jogo, denominado scout, o qual tem
ganhado cada vez mais importância no mundo do futebol, e é cada vez mais
comum os treinadores rodearem-se de especialistas a fim de recolherem
informações sobre suas equipes. Partindo desse pressuposto, o Data
Warehouse é uma tecnologia em banco de dados que vem com o propósito de
apresentar relatórios de dados históricos da respectiva área de negócio. Este
trabalho consistiu na utilização de tecnologias de análise e suporte à tomada
de decisão, a fim de produzir um Data Warehouse para análise das
informações recolhidas de partidas de futebol.

1. Por que o tema?


O crescente número de informações que as empresas dispõem diariamente tem feito
com que os analistas de negócios e analistas de desempenho recorram às ferramentas
mais sofisticadas que possibilitem o gerenciamento dessas informações e, com base em
filtros e relatórios detalhados, possibilite tomar conhecimento de como a empresa se
encontra no momento, contribuindo para uma tomada de decisão mais segura.
Devido ao grande avanço das soluções tecnológicas, os dirigentes dos grandes
clubes de futebol começaram a despertar interesse em aplicar essas tecnologias em suas
áreas de negócios, e o Data Warehouse é uma solução para responder a essas questões
dos analistas de desempenho.
Este trabalho irá conceituar Data Warehouse e como funciona a modelagem
dimensional para o seu desenvolvimento, descreve o processo de scout e sua

16
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

necessidade para o gerenciamento dos desempenhos, e apresenta os passos para a


criação do Data Warehouse e como obter os resultados.

2. O que é um Data Warehouse?


Um Data Warehouse é um conjunto instantâneo de dados, extraídos de sistemas de
processamento de transação, em determinados intervalos. Para Corey et al. (2001, p. 9)
“os Data Warehouse são bancos de dados usados unicamente para produção de
relatórios”.
Segundo Kimball e Ross (2002), para que seja considerado um Data Warehouse,
um sistema deve possuir quatro componentes: Sistemas Operacionais de Origem, de
onde serão extraídos os dados operacionais; Data Staging Area, que é a área de
armazenamento dos dados usada durante os processos de extração, transformação e
carregamento no Data Warehouse; Área de Apresentação dos Dados, onde os dados
ficam organizados, armazenados e tornam-se disponíveis para serem consultados pelas
aplicações e pelos analistas de negócios; Ferramentas de acesso a dados, que são
aplicativos que consultam os dados na área de apresentação do Data Warehouse.
Seguindo a mesma linha de raciocínio, Penegassi (2006) afirma que a camada
mais importante do Data Warehouse é a Data Staging Area, pois é onde é estruturada a
modelagem dimensional. Essa modelagem possibilita ao usuário enxergar seu banco de
dados como em um formato de matriz, ou em um formato de cubo de dados onde as
faces do cubo representam as dimensões que os dados abrangem.
De acordo com Kanashiro (2007), uma visão dimensional ou multidimensional é
uma visão mais fácil e intuitiva, permite analisar os fatos em diferentes perspectivas.

3. Ferramentas de desenvolvimento
De acordo com Kimball e Ross (2002), o componente principal do ambiente do Data
Warehouse são as ferramentas de acesso aos dados. São as ferramentas que
disponibilizam recursos para que os usuários possam fazer as consultas dos dados na
área de apresentação.
Para que seja considerada uma ferramenta de Data Warehouse, a ferramenta
deve estar conectada com diversas fontes de dados, por meio das quais irá extrair os
dados, organizá-los e armazená-los nas dimensões ou cubos do Data Warehouse.
Dentre as muitas ferramentas disponíveis para o desenvolvimento de um Data
Warehouse, existem algumas que se destacam, como o Analysis Services da Microsoft
que, de acordo com manuais online do SQL Server 2008 [MSDN, 2015], está integrado
ao sistema gerenciador de banco de dados SQL Server. Além de executar as operações
de extração, transformação e carregamento, a ferramenta possui avançadas ferramentas
gráficas para criar soluções e modelos de objetos extensivos.

4. Metodologia de Desenvolvimento
A metodologia usada no desenvolvimento do Data Warehouse proposto, foi baseada na
metodologia descrita por Kimball e Ross (2002), a qual está organizada em quatro fases
principais: 1. Levantamento de requisitos, que é a fase de entender quais respostas os
analistas de desempenho desejam obter, ou seja, quais perguntas o Data Warehouse terá

17
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

que responder através das somas e medições de suas tabelas fato; 2. Análise das fontes
de dados e ETL (Extract, Transform and Load), que consiste em analisar todas as fontes
de dados de origem que fornecem dados operacionais do dia-a-dia da organização e
fazer o cruzamento dos dados que tragam indicadores sobre o comportamento da
organização em determinado período de tempo; 3. Criação do cubo de dados e modelos
dimensionais, o cubo de dados manterá toda a grande massa de dados que poderá ser
filtrada de acordo com a forma estruturada do modelo dimensional; 4. Acesso aos
dados, que é a fase em que serão disponibilizados os dados para o usuário final. Nesta
etapa, alguns fatores devem ser levados em consideração na escolha da ferramenta de
acesso aos dados, tais como: facilidade de utilização por parte dos usuários finais;
compatibilidade com as diferentes aplicações empregadas no projeto; eficácia nas
emissões de gráficos e relatórios.
No que se refere a metodologia científica, o trabalho empregou a pesquisa
bibliográfica e a pesquisa experimental com tecnologias, de acordo com Borba e
Villarreal (2005). Quanto à abordagem, foi empregada a análise qualitativa e
quantitativa, conforme a natureza dos dados analisados.

5. Entendendo o Processo de Scout no Esporte


O processo de scout permite a análise das ações individuais dos jogadores e das ações
coletivas da equipe, assim os pesquisadores podem levantar uma base de informações
relativas ao jogo.
Ventura (2013) define o processo de scout como ato de observar; consideração
atenta de um fato para conhecê-lo melhor; prática que envolve uma observação de algo,
tendo como objetivo conhecer mais a fundo sobre esse fato.
Vendite, C., Vendite, L. e Moraes (2005) acrescentam que o scout no futebol é o
mapeamento completo de uma partida e tem como utilidade servir de ferramenta para os
profissionais que atuam diretamente no futebol que lhes permitem descrever com
propriedade os acontecimentos observados durante a partida.
Um modelo de relatório de observação é proposto por Ventura (2013), o qual se
aplica a equipes de um modo geral e permite analisar tanto a própria equipe quanto
equipes adversárias, dando ênfase nas formações de cada equipe e sua influência no
placar no decorrer da partida. Já o modelo de relatório de observação disponibilizado
por Ferreira, Paoli e Costa (2008) dá mais ênfase na quantidade de ações durante uma
partida e na classificação de eficiência de cada uma delas.
Baseando-se nos modelos de relatórios de observação citados por Ferreira, Paoli
e Costa (2008) e Ventura (2013) e, devido ao fato de que esses modelos de relatórios
são feitos de forma manual, foi desenvolvido um sistema web para o gerenciamento do
scout de maneira digital, utilizando a linguagem C# com a ferramenta Microsoft Visual
Studio, e foi criada uma base de dados para armazenar as informações inseridas,
utilizando a linguagem SQL com a ferramenta Microsoft SQL Server Management
Studio.

18
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

6. Processos de desenvolvimento do Data Warehouse


Seguindo os modelos de relatórios de observação e análise de jogo propostos por
Ventura (2013) e Ferreira, Paoli e Costa (2008), atende-se o primeiro requisito da
metodologia de desenvolvimento de Data Warehouse fornecida por Kimball e Ross
(2002), que é a fase de entender quais respostas os analistas de desempenho desejam
obter, quais perguntas o Data Warehouse terá que responder.
Destaca-se ainda que, na referida metodologia de desenvolvimento, a fonte de
dados que será analisada, será fornecida através do sistema web para o gerenciamento
do scout desenvolvido no contexto deste trabalho, com base nos modelos de relatórios
propostos por Ventura (2013) e Ferreira, Paoli e Costa (2008).
A partir da análise, o processo de extração, transformação e carregamento dos
dados foi seguido pela criação do modelo dimensional baseado no esquema floco-de-
neve, tendo como tabela fato, a tabela Fato Qtde Eventos, e tabelas dimensão, as tabelas
Ficha, Tipo de Evento, Setor do Campo, Lado do Campo, Zona do Campo, Jogador e
Classificação. A Figura 1 apresenta a estrutura da modelagem dimensional.

Figura 1. Modelagem dimensional do Data Warehouse

O próximo passo da metodologia de Kimball e Ross (2002) é a criação do cubo


de dados que, para tal, fez-se necessária a utilização do pacote de ferramentas SQL
Server Business Intelligence, da Microsoft, e seguir atentamente os passos de criação de
cubo de dados fornecidos nos manuais online do SQL Server Integration Services.
Uma vez criado o cubo de dados, a ferramenta SQL Server Business Intelligence
possibilita uma forma eficiente de se analisar as informações geradas na perspectiva
dimensional dos dados utilizando a aba Navegador do Cubo de Dados. Conforme
apresenta a Figura 2, a ferramenta OLAP (Online Analytical Processing) permite criar
uma visualização das informações arrastando-se as devidas dimensões para os campos
de filtro, coluna e linha, e arrastando-se as medidas para o centro do cubo, que exibirá a
resposta obtida.

19
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Figura 2. Gride de pivotagem na ferramenta do desenvolvedor.

Contudo, os usuários que utilizarão essas informações, geralmente, não estão


acostumados ou familiarizados com esse ambiente de execução, além de não representar
uma atitude que prima pela segurança dos dados, uma vez que, no ambiente do
desenvolvedor da ferramenta é possível ter acesso às diversas fontes de dados e que,
uma falha, pode resultar em problemas para o desenvolvedor e para o própria
organização em si.
Com isso, existem diversas formas de representar o cubo de dados sem que o
usuário final precise acessar a ferramenta do desenvolvedor. A maneira utilizada neste
trabalho, para representar o cubo de dados, foi integrar o cubo de dados, por meio das
ferramentas de extensão disponíveis pela empresa DevExpress, ao pacote de ferramentas
Microsoft Visual Studio 2013, fazendo com que o mesmo sistema web de
gerenciamento de scout, seja também o sistema de análise de dados. Assim, o usuário
final pode percorrer todos os dados, sob quaisquer filtros, sem comprometer a
integridade do Data Warehouse. A Figura 3 apresenta o gride de pivotavem
disponibilizado no sistema web como uma ferramenta de acesso a dados por parte dos
usuários finais, atendendo ao último requisito da metodologia de desenvolvimento de
Data Warehouse de Kimball e Ross (2002) e levando em consideração os fatores:
Facilidade de utilização por parte dos usuários finais; Compatibilidade com as diferentes
aplicações empregadas no projeto; Eficácia nas emissões de gráficos e relatórios.

Figura 3. Gride de pivotagem no sistema do usuário final.

20
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Ainda conforme a Figura 3, é possível observar a quantidade de ações que cada


jogador realizou em uma determinada partida de futebol, como desarmes, disputas
aéreas, finalizações, faltas, entre outras, bem como verificar a quantidade total de cada
ação. Também é possível observar os dados entre as várias partidas que compõe um
campeonato, por exemplo, e a variação histórica destes dados ao longo dos anos.

7. Considerações
Devido à crescente inserção de tecnologias no universo do esporte e o crescente
aperfeiçoamento de técnicas de Business Intelligence que podem ser aplicadas aos mais
variados ramos do mercado, o Data Warehouse mostra sua utilidade àqueles que
analisam o futebol através dos números.
Este trabalho teve como objetivo aplicar as características da ferramenta de Data
Warehouse em um ambiente que fornece uma enorme quantidade de dados e que, com
uma estratégia de observação, extração e processamento dos mesmos, é possível
identificar padrões que respondem a diversas questões em relação aos dados coletados
de uma partida de futebol.
Concluído o desenvolvimento deste trabalho, nota-se que a ferramenta de Data
Warehouse desenvolvida poderá facilitar e agilizar a análise dos dados e,
consequentemente, diminuir o tempo de resposta para uma possível tomada de decisão.
Como proposta de trabalhos futuros está o aperfeiçoamento da ferramenta a partir de
demandas identificadas mediante a sua utilização e a adequação da ferramenta para
atender a outros esportes.

Referências
Borba, M. C.; Villarreal, M. E. (2005). Humans-with-media and the reorganization of
mathematical thinking: information and communication technologies, modeling,
visualization and experimentation. New York: Springer.
Corey, M. et al. (2001). Oracle 8i Data Warehouse: planeje e construa um data
warehouse e uma solução de análise resistente. Rio de Janeiro: Campus.
Ferreira, R. B.; Paoli, P. B.; Costa, F. R. (2008). Proposta de 'scout' tático para o futebol.
Buenos Aires: Revista Digital. Disponível em: <http://www.efdeportes.com/efd118/
scout-tatico-para-o-futebol.htm>. Acesso em: 5 set. 2015.
Kanashiro, A. (2007). Data Warehouse de publicações científicas: indexação automática
da dimensão tópicos de pesquisa dos data marts. Tese de mestrado. São Carlos: USP.
Kimball, R.; Ross, M. (2002). The Data Warehouse toolkit: guia completo para
modelagem dimensional. Rio de Janeiro: Campus.
MSDN, Microsoft Developer Network. (2015). Manuais online do SQL Server 2008:
SQL Server integration services. Disponível em <http://msdn.microsoft.com/pt-
br/library/ms141026.aspx>. Acesso em: 1 set. 2015.
Penegassi, L. F. (2006). Data Warehouse. Monografia. Jaguariúna: Faculdade de
Jaguariúna.

21
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Vendite, C. C.; Vendite, L. L.; Moraes, A. C. (2005). Scout no Futebol: uma Ferramenta
para a Imprensa Esportiva. Rio de Janeiro. XXVIII Congresso Brasileiro de Ciências
da Comunicação - UERJ.
Ventura, N. (2013). Observar para ganhar: o scouting como ferramenta do treinador. Ed.
Arganil: Primebooks.

22
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Estudo dos Domínios da Governança em Tecnologia da


Informação na Empresa União Avícola Agroindustrial
Stefani G. Silva¹, Ivanildo M. Azevedo²,³, Ana Paula L. F. Vasconcelos²,³
1
Bacharel em Sistemas de Informação pelas Faculdades Integradas de Diamantino (FID)
2
Universidade do Estado de Mato Grosso (UNEMAT)
3
Centro de Informática (CIn) - Universidade Federal de Pernambuco (UFPE)
stefani_silva@live.com, vando.aze@gmail.com, anavasconcelos@unemat.br
Abstract. It was analyzed the contribution of Information Technology
Governance (ITG) in the company União Avícola, through the importance of
the use of Information Technology (IT) as support in the decision making
process by the managers, characterizing the management model that the
company exercises , Based on the ITG, and if it actually contributes with the
IT results, regarding the return on IT investments. A bibliographic study was
done on the domains of the ITG, and a comparative field study with the
management model implemented within the IT sector of the company. As a
result, it was observed that the ITG is well defined and with clearly delimited
boundaries, besides being clear its nature and scope within the company.
Resumo. Foi analisada a contribuição da Governança em Tecnologia da
Informação (GTI) na empresa União Avícola, através da importância do
emprego da Tecnologia da Informação (TI) como suporte no processo de
tomada de decisões pelos gestores, caracterizando o modelo de gestão que a
empresa exerce, baseada na GTI, e se de fato contribui com os resultados de
TI, quanto ao retorno dos investimentos em TI. Fez-se um estudo bibliográfico
sobre os domínios da GTI, e um estudo de campo comparativo com o modelo
de gestão implantado dentro do setor de TI da empresa. Como resultado
observou-se que a GTI encontra-se bem definida e com fronteiras claramente
delimitadas, além de ser clara a sua natureza e escopo dentro da empresa.

1. Introdução
A Tecnologia da Informação é vista como um meio de investimento, organização,
otimização de processos, personalização de serviços, entretanto, ainda é um desafio
determinar de maneira consistente os benefícios obtidos nos investimentos com os
serviços de TI. A GTI se refere aos critérios de definição, gestão e acompanhamento de
resultados dos investimentos em TI, pois está relacionada diretamente com a autoridade
e a responsabilidade ligadas ao uso da TI e a sua administração [CARVALHO 2014].
Nesta pesquisa será investigado o uso da GTI sob a ótica dos domínios da GTI
propostos pelo IT Governance Institute (2003), analisando a visão dos gestores da em-
presa União Avícola Agroindustrial quanto ao uso da GTI. A União Avícola é um abate-
douro de aves (frango), sendo considerada uma empresa bem difundida no mercado
brasileiro, produzindo os mais variados produtos de diversas marcas multinacionais.

2. Governança em TI
A TI vem permeando todos os processos gerenciais e operacionais das organizações,
fazendo com que se produza mais com menos, com menores custos. A tomada de

23
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

decisões baseadas em informações mais precisas melhora o rendimento das empresas


em atendimento ao seu mercado e público-alvo e, por conseguinte, sua prosperidade e
perenidade, gerando riquezas, de forma direta ou indireta, para toda a sociedade.
De acordo com o IT Governance Institute (2005), Weill e Ross (2004) a alta
administração é quem tem a responsabilidade de gerir a GTI, de modo a garantir que
através da TI haja um alinhamento entre as estratégias e objetivos da empresa,
consistindo em uma ferramenta focada na especificação dos direitos que envolvem as
decisões e as responsabilidades, e encorajando boas práticas no uso da TI.

2.1 Domínios da Governança em TI


No Quadro 1 é apresentado um resumo sobre o objetivo de cada um dos domínios,
conforme o Board Briefing on IT Governance [IT GOVERNANCE INSTITUTE, 2003
apud GAMA; MARTINELLO, 2006, p. 5-6].
Quadro 1 - Descrição dos domínios da Governança de TI
Domínios da GTI Descrição do domínio
Tem como objetivo manter o alinhamento entre as soluções de TI e o
Alinhamento Estratégico
negócio da empresa.
Tem como objetivo otimizar os custos dos investimentos de TI e o
Valor de TI
retorno dos mesmos.
Tem como objetivo assegurar a proteção dos ativos de TI,
Gerenciamento de Risco recuperação de informações em caso de desastres e manter a
continuidade da operação dos serviços em TI.
Gerenciamento de Recursos Tem como objetivo otimizar o conhecimento e infraestrutura de TI.
Tem como objetivo acompanhar a entrega dos projetos de TI e
Medidas de Performance
monitorar os serviços de TI.

2.2 Ferramentas para Suporte a Governança TI


É comum as organizações que estão desenvolvendo seus processos de Governança de TI
se depararem com uma diversidade de modelos de qualidade e governança à sua
disposição. Surge então a primeira dúvida: qual modelo seguir? Na edição especial da
Revista Computer World de maio de 2004, Terzian (2004) cita que, embora haja alguma
sobreposição entre esses modelos, na maior parte dos casos eles não entram em conflito
e podem até mesmo serem complementares. Assim, as empresas podem utilizar mais de
um modelo, ou adaptar os modelos existentes para sua necessidade, conforme
apresentado no Quadro 2, alguns dos modelos e metodologias utilizados como suporte a
GTI, de acordo com Terzian (2004).
Quadro 2 – Modelos e Metodologias da Governança de TI

Ferramenta/Framework Utilização
BSC Planejamento e desempenho
COBIT Governança e controle
ITIL e ISO 20000 Serviço
PMBOK Projeto
CMMI e MPS BR Engenharia de Software
Val IT Investimento em TI
TOGAF Framework de arquitetura de negócio, aplicações e tecnologia
NBR ISSO/IEC 38500 Governança corporativa de Tecnologia da Informação
SIX SIGMA Qualidade

24
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

3. Estratégia Metodológica
Para a realização desta pesquisa foi feita uma pesquisa bibliográfica quanto aos
Domínios da GTI, e um estudo de campo, através do qual efetuou-se a coleta de dados.
Para coletar os dados, optou-se pela aplicação de um questionário objetivo, buscando
maximizar o nível das análises obtidas, e de modo a concentrar sobre cada uma das
questões aplicadas, que têm relação direta com os domínios da GTI, propostos pelo IT
Governance Institute (2003) em Briefing on IT Governance.

3.1 Estrutura do Questionário


O questionário foi desenvolvido com o intuito de que venham a corresponder com os
cinco domínios da Governança em Tecnologia da Informação, propostos pelo IT
Governance Institute (2003) em Briefing on IT Governance.
Quadro 3 – Itens e subitens do questionário aplicado

1.1 Para auxiliar na organização e no apoio a tomada de decisão


Com que propósito(s) a TI é
Q1 1.2 Para agregar valor ao negócio
utilizada?
1.3 Para Segurança e rapidez na coleta e análise de dados
2.1 Crescimento Comercial
O setor de TI contribui com
2.2 Inovação e Competitividade
Q2 os objetivos estratégicos da
2.3 Reconhecimento através da Qualidade
organização?
2.4 Diferenciação dos Produtos
Utiliza softwares que atendem a demanda da quantidade de
3.1
programas utilizados
A empresa utiliza Modelos 3.2 Utiliza de Interface própria e de fácil compreensão
Q3 tecnológicos de acordo com Utiliza de meios de comunicações atuais e modernos
3.3
o mercado? (provedores, telefones VOIP)
Utiliza de Internet de banda larga com qualidade e
3.4
confidencialidade
As necessidades das Todas as ferramentas de TI são identificadas para conhecimento
4.1
aplicações das ferramentas do usuário
de TI locais, setoriais e cor- 4.2 As ferramentas de TI são especificadas conforme o uso
Q4
porativas estão adequa- 4.3 Os locais das ferramentas de TI são diferenciados e identificados
damente identificadas e As ferramentas de TI são identificadas pelos técnicos da TI
4.4
especificadas? conforme identificação e especificação na sua localização
Frequentemente é realizada a compra de novas ferramentas,
Com que frequência novas 5.1
como computadores
ferramentas operacionais,
A compra de novas ferramentas utilizadas pelo setor de TI é
Q5 como hardware e software 5.2
realizada conforme necessidade observada pelos técnicos da TI
são comprados na
Não existe uma frequência, todas as ferramentas gerenciadas
organização? 5.3
pelo setor da TI, são revisadas e trocadas periodicamente
É feito planejamento de 6.1 Existe um planejamento para as despesas no setor de TI
Q6 recursos financeiros visando O recurso financeiro é disponibilizado conforme necessidade do
6.2
despesas para o setor de TI? setor da TI
7.1 Agregação de valores e otimização de processos
Os projetos de TI são
7.2 Quanto à qualidade de produtos e serviços
Q7 priorizados com base em que
7.3 Quanto à redução de custo
fatores?
7.4 Quanto às mudanças estratégicas e culturais
De qual maneira é Os planejamentos orçamentários da área de TI são definidos e
8.1
gerenciada o uso dos gerenciados pelo gestor da TI
Q8
recursos financeiros Os planejamentos orçamentários da área de TI são definidos
8.2
designados ao setor de TI? pelos usuários finais responsáveis pela tomada de decisão

25
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Coletou-se os dados através do questionário do Quadro 3, composto por 26


questões, respondido por seis participantes que ocupam cargos de gerência e supervisão
setorial, da União Avícola Agroindustrial, esses candidatos foram escolhidos por serem
usuários frequentes dos sistemas de controle de processamento da unidade fabril.
Sob o ponto de vista dos domínios da GTI, as questões do questionário estão
divididas conforme mostra o Quadro 4.
Quadro 4 - Divisão das questões do questionário entre os domínios da GTI

Domínios da GTI Questões que abrangem


Alinhamento Estratégico Q1, Q2 e Q7
Valor de TI Q5 e Q6
Gerenciamento de Risco Q4
Gerenciamento de Recursos Q3
Medidas de Performance Q8

4. Resultados
Com base nos dados coletados, foram gerados os gráficos a seguir, com o intuito de
compreender sob o ponto de vista dos funcionários da Empresa União Avícola, sobre o
quanto a aplicação da Governança em Tecnologia da Informação (GTI) está focada nos
domínios da GTI propostos pelo IT Governance Institute.
A Q1 (Gráfico 1) buscou identificar, na visão dos funcionários, para qual
propósito a TI é aplicada na empresa. Observou-se que 100% (6/6) dos entrevistados
apontaram que na empresa a TI é utilizada para auxiliar na organização e no apoio a
tomada de decisão, para agregar valor ao negócio, assim como para dar segurança e
rapidez na coleta e análise de dados. Sendo assim, observou-se que os entrevistados
tiveram uma mesma opinião acerca do propósito que a TI apresenta no seu comprome-
timento em alinhar seus serviços ao negócio da empresa. Haja vista, que o propósito da
empresa foi analisado através das legendas que avaliaram a organização e apoio a
tomada de decisões, agregação de valores ao negócio e segurança, rapidez na coleta e
análise dos dados. Com base nas respostas, acredita-se que a empresa pesquisada tem
um mínimo de alinhamento estratégico entre as soluções de TI e o negócio da empresa.
Gráfico 1 - Com que propósito(s) a TI é utilizada?

Quanto à Q2, observou-se que os entrevistados tiveram opiniões diferenciadas


sobre a contribuição que a área de TI tem na busca pelo alcance dos objetivos
estratégicos da empresa, sendo estes: Crescimento Comercial, Inovação e
Competitividade, Reconhecimento através da Qualidade e Diferenciação de Produtos.
Sendo o Crescimento Comercial apontado pelos entrevistados (6/6) como o objetivo que
mais recebe contribuição pela área e serviços da TI (Gráfico 2).

26
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Gráfico 2 - O setor de TI contribui com os objetivos estratégicos da organização?

Crescimento Inovação e Reconhecimento Diferenciação


comercial competitividade através da dos produtos
qualidade

Todos os entrevistados apontaram que a empresa faz uso de modelos


tecnológicos de acordo com o mercado atual (Gráfico 3), sendo estes modelos os mais
utilizados dentro desse mercado comercial. Reconhecidos pela facilidade e
confiabilidade do seu manuseio, sendo estes softwares de acordo com a demanda de
trabalho da empresa, interfaces amigáveis, ferramentas de comunicações compatíveis
com as necessidades da empresa e acesso à Internet de qualidade.
Gráfico 3 - A empresa utiliza modelos tecnológicos de acordo com o mercado?

Quanto à Q4 (Gráfico 4), observou-se que os entrevistados tiveram opiniões


diversificadas, embora todos (6/6) concordem que as ferramentas de TI locais, setoriais
e corporativas são devidamente identificadas e especificadas para o conhecimento do
usuário a ferramenta. Esta questão destaca a importância das aplicações das ferramentas
de TI serem reconhecidas pelos seus usuários assim que inseridas tanto nos locais
próprios, setores e em todo o parque industrial. Também há de se ressaltar que 5 dos 6
participantes apontaram que as identificações e especificações da empresa são realizadas
pelos técnicos da TI, como destacado no Gráfico 4 pela maioria dos entrevistados.
Gráfico 4 - As necessidades das aplicações das ferramentas de TI locais,
setoriais e corporativas estão adequadamente identificadas e especificadas?

A Q5 (Gráfico 5) destacou a importância dada na empresa para as ferramentas de


TI que são utilizadas no dia-a-dia, tendo sido verificado o suporte dado pelos técnicos

27
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

da TI. Observou-se que quanto as suas ferramentas de trabalho (computadores), 4/6 dos
participantes revelaram que a compra de novas ferramentas é feita com frequência,
embora tenha havido certa discordância ao analisar se a compra de novas ferramentas é
feita baseada apenas na observação do técnico de TI (3/6 responderam sim, e 3/6
responderam que essa observação ocorre parcialmente), e alguns entrevistados (4/6)
consideraram que de certa forma (parcialmente) não existe uma frequência estimada,
pois as ferramentas de TI são trocadas quando oportuno e não em data predeterminada.
Gráfico 5 - Com que frequência novas ferramentas operacionais,
como hardware e software são comprados na organização?

Com base no Gráfico 6 pode-se verificar que a maioria dos entrevistados (4/6)
alega não existir ou existir apenas de maneira parcialmente (2/6) um planejamento
financeiro para as despesas da empresa com o setor de TI. No entanto, verifica-se que
embora não haja um planejamento, 50% (3/6) dos entrevistados afirmam que as despe-
sas deste setor são estabelecidas pela necessidade de cada área às aplicações de TI, em
contrapartida 2/6 dos participantes afirmam que tal situação não ocorre. Sendo assim,
não é possível tirar conclusões a respeito desta questão, já que de certa forma as respos-
tas dadas foram distribuídas quase que uniformemente entre as respostas possíveis.
Gráfico 6 - É feito planejamento de recursos financeiros visando despesas para o setor de TI?

Quando os participantes foram questionados quanto à prioridade que a empresa


dá à redução de custo, a maioria deles, cerca de 67% (4/6), relataram que há priorização
quanto a estes fatores (Gráfico 7). Os entrevistados apresentaram a mesma opinião
quando questionados sobre o grau da “agregação de valor e otimização de processos”,
pois 100% (6/6) dos participantes afirmaram que tal fator é priorizado na empresa.
Porém, outros fatores como “quanto à qualidade de produtos e serviços” e “quanto a
mudanças estratégicas e culturais”, obtiveram respostas bem diversificadas.

28
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Gráfico 7 - Os projetos de TI são priorizados com base em que fatores?

Verificou-se que os participantes foram cautelosos ao opinar quanto à gerência da


empresa, pois de acordo com o Gráfico 8 pode-se observar que em ambos os subitens da
questão 8 (“De qual maneira é gerenciada o uso dos recursos financeiros designados ao
setor de TI?”) praticamente todas as respostas foram de certa forma neutra, já que a
maioria optou pela opção “parcialmente”.
Gráfico 8 - De qual maneira é gerenciada o uso dos recursos
financeiros designados ao setor de TI?

5. Discussão dos resultados obtidos


Alinhamento Estratégico: A TI auxilia na tomada de decisão, na agregação de valores
e na segurança e rapidez na coleta e análise de dados, e a mesma contribui com o
Crescimento Comercial. Porém, não há contribuição da mesma forma à Inovação e
Competitividade, Reconhecimento através da Qualidade e na Diferenciação de produtos.
Valor de TI: Os dados demonstram que para o setor de TI não existe o
planejamento de recursos financeiros, pois os entrevistados afirmam que as aplicações e
ferramentas de TI, são revisadas e trocadas periodicamente. Percebe-se então, que o
domínio de Valor de TI está correto, tendo este como escopo a otimização dos custos de
TI visando o retorno dos mesmos.
Gerenciamento de Risco: Observou-se que todas as aplicações de ferramentas
locais, setoriais e corporativas de TI, são identificadas e especificadas no seu local de
instalação. Seguindo no escopo do gerenciamento de risco, onde destaca que o domínio
prioriza a segurança dos ativos de TI e recuperação em caso de desastres.
Gerenciamento de Recursos: Verificou-se que a empresa utiliza de modelos
tecnológicos atuais, garantindo assim a influência do domínio Gerenciamento de

29
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Recursos que prioriza a otimização e infraestrutura de TI. A empresa se destaca pelas


ferramentas utilizadas, sendo elas as mais atuais e seguras possíveis, pelo atendimento
dos técnicos e suporte dado aos problemas que ocorrem diariamente.
Medidas de Performance: A gerência dos recursos financeiros é baseada na
observação da eficiência da TI na tomada de decisão da empresa. Tudo leva a crer que
os entrevistados não se sentiram seguros ao responder de maneira ponderada, pois a
maioria optou por responder de maneira neutra, o que deixa transparecer que os recursos
financeiros designados ao setor de TI são baseados e gerenciados conforme a
necessidade do setor e a eficiência de suas ferramentas.

6. Considerações Finais
Este trabalho permitiu uma visão prática e aprofundada de como a empresa visualiza e
descreve os benefícios e as contribuições da Governança de TI, que é reconhecida como
de grande importância na organização e no direcionamento da área de TI, tendo papel
destacado no alinhamento da TI com o negócio e objetivos estratégicos da empresa.
A utilização de questionário objetivo para o estudo da GTI na empresa permitiu reduzir
o nível de subjetividade das análises sobre a Governança de TI na empresa, e concentrou
o estudo sobre cada uma das questões aplicadas de tal modo a fazer um delineamento
baseado nos Domínios da GTI, propostos pela IT Governance Institute (2003).
A partir desta pesquisa conclui-se que os itens que mais apresentaram comparações com
os objetivos dos domínios de Governança de TI, foram aqueles que melhor contribuíram
para que fossem identificadas as características e objetivos da GTI, observando-se que a
GTI está bem definida e suas fronteiras estão claramente delimitadas, além de ser clara a
sua natureza e escopo dentro da empresa União Avícola Agroindustrial. Um exemplo
disso pode ser observado em diversos aspectos, entre eles cita-se: a sua busca por maior
alinhamento entre a TI e os negócios, o estabelecimento de processos operacionais e de
gestão formais baseados nas diretrizes estratégicas da TI, a implantação de controles e
indicadores de desempenho que visam promover uma maior visibilidade sobre os
resultados, a segurança sobre o retorno dos investimentos e o compartilhamento de
responsabilidades das decisões sobre a TI com a empresa.

Referências
Gama, Fernanda de Assis; Martinello, Magnos. “Governança de Tecnologia da
Informação: Um estudo em Empresas Brasileiras”. 4º Simpósio FUCAPE de
Produção Científica. Vitória - ES, 2006. Disponível em: <http://www.fucape.br/
simposio/4/artigos/ fernanda.pdf>. Acesso em: 25 nov. 2014.
IT Governance Institute. “Board Briefing for IT Governance”. 2. ed. Information
Systems Audit and Control Association, 2003.
Terzian, F. “Especial: Um guia de certificações e melhores práticas de TI”, Revista
Computerworld, 2004. Disponível em: <http://computerworld.com.br/gestao/2004/
05/17/idgnoticia.2006-05-15.9653154774>. Acesso em: 24 nov. 2014.
Weill, Peter; Ross, Jeanne W. “IT Governance on One Page” (November 2004). MIT
Sloan Working Paper No. 4517-04; CIS Research Working Paper No. 349.
Disponível em: <https://ssrn.com/abstract=664612>. Acesso em: 25 nov. 2014.

30
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Aplicação de Gestão de Processos (BPM) na produção de


material digital para ambiente virtual
Adilson de Oliveira Pimenta Junior1

¹Curso de MBA em Gestão de T.I, Instituto DOLL, Ponta Grossa – PR – Brazil


aopjr@uepg.br

Abstract. This article presents the implementation of business management


techniques, workflows and business processes in a sector of the Open Education
Center and Distance (NUTEAD) of the State University of Ponta Grossa
(UEPG). We report management experiences of responsible diagramming team
for assembling the digital material in the virtual environment to the institution
through ticketing system, standardization of documents and other resources.
Resumo. Este artigo apresenta a implantação de técnicas de gerenciamento de
negócios, fluxos de trabalho e processos de negócio em um setor do Núcleo de
Educação Aberta e a Distância (NUTEAD) da Universidade Estadual de Ponta
Grossa (UEPG). Relatam-se experiências de gestão da equipe de diagramação
responsável pela montagem do material digital no ambiente virtual para essa
instituição por meio de sistema de chamados, padronização de documentos e
outros recursos.

1. Introdução
A busca pela eficiência de processos tem sido uma necessidade das organizações,
especialmente em instituições públicas de ensino. Com as operacionalizações das técnicas
e conceitos de gerenciamento de processos (do inglês: Business Process Management –
BPM), é possível alinhar as estratégias para tornar a gestão de uma instituição/empresa
mais eficiente e competitiva no mercado. Conforme a OMG Object Management Group
(2016), BPM é um conjunto de técnicas para a melhoria contínua e iterativa dos processos
de negócio de uma organização. Jeston e Nelis (2008) afirmam que BPM é “a realização
dos objetivos de uma organização através da melhoria, gestão e controle de processos de
negócio essenciais”, em uma definição mais exemplificada, implantar o BPM na
organização traz benefícios como implementar metas de melhoria; eliminar retrabalho,
burocracia e custos desnecessários; alinhar as atividades da organização à estratégia e
padronizar atividades dentro das unidades organizacionais [Baldan 2008].
A partir disso, foi proposto otimizar os processos de negócio no Núcleo de
Educação Aberta e à Distância (NUTEAD) da Universidade Estadual de Ponta Grossa
(UEPG). O NUTEAD é o órgão suplementar a Reitoria, criado em 2007. O Núcleo tem
por responsabilidade atuar nas ações que envolvem educação à distância e educação
aberta da UEPG. Uma das atividades executadas pelo núcleo é a disponibilização e o
gerenciamento de um ambiente virtual de aprendizagem (AVA) para EAD (educação à
distância) institucional: sistema onde são mantidos os cursos e suas disciplinas aos alunos
da instituição.

31
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Desta forma, o presente trabalho apresenta a aplicação de uma ferramenta de


suporte estratégico no Núcleo de Educação Aberta e à Distância em uma Instituição
Estadual de Ensino Superior.

2. Estudo de Caso: Produção de Material no NUTEAD - UEPG


No gerenciamento de processos é importante que se tenha uma visão ampla do que está
sendo produzido, ampliando o foco das atividades realizadas. Deve ser avaliada a sinergia
entre as atividades para um melhor resultado final [Santis et al 2012].
Na produção de material digital para um ambiente virtual de aprendizagem é
necessário o envolvimento de diversas pessoas/atores, como por exemplo, os
elaboradores de material digital, diagramadores e professores das disciplinas
diagramadas. Na maioria das vezes, os professores são os responsáveis por fornecer os
conteúdos das disciplinas. Os diagramadores atuam na conversão do material recebido,
formatação e disponibilização dentro do AVA, seguindo normas e padrão visual
estabelecidos previamente.
Por anos, os trabalhos no Setor de Diagramação do NUTEAD estavam sendo
realizados a contento. Todavia, em virtude do aumento do número de alunos e cursos
disponíveis na instituição, aumento do número de funcionários envolvidos no processo e
da quantidade crescente de solicitações, o processo de trabalho se mostrou ineficiente,
sendo necessário reavaliar toda a estrutura, assim reorganizando o setor de diagramação.
Foram identificadas as seguintes necessidades:
¾ Organização da equipe de diagramação, devido à sobrecarga de trabalho de alguns
integrantes;
¾ Alinhamento das prioridades de confecção e entrega de materiais;
¾ Comunicação com o professor/elaborador do material e envio de feedbacks;
¾ Criação de um ambiente para discussão que fosse centralizado e unificado.
Verificou-se que outro ponto a ser melhorado consistia na diversificação dos
formatos em que os materiais eram enviados pelos docentes/elaboradores: sem
organização padrão, com estilos diversificados e desestruturados, dificultando a
interpretação do conteúdo específico. O material necessitava de classificação do conteúdo
por unidades, de modo coerente e complementar ao material impresso existente.

3. Metodologia
O conceito de BPM foi aplicado na elaboração de solução para organizar e estruturar o
processo de negócio do presente estudo de caso. Foram analisados casos de uso da
produção do material para elaborar um processo próprio, podendo dinamizar toda a cadeia
de produção de material didático digital do NUTEAD. Foram adotados conceitos de
Gestão de Tecnologias de Informação para organizar, estruturar e desenvolver os
procedimentos estabelecidos nesse processo.
A primeira etapa compreendeu o estudo de todas as etapas envolvidas no setor de
criação e diagramação de material. Foi realizado o levantamento dos dados no transcorrer
de oito meses, verificando aspectos das atividades relacionadas desde o tempo de
elaboração, a entrega, a montagem, o tempo de diagramação, a qualidade do material final
e a disponibilização final para a comunidade acadêmica.

32
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Após análise do processo, identificaram-se os atores envolvidos no processo de


cada etapa, visando verificar quais tarefas poderiam tornar o processo mais eficiente,
evitando gargalos, redundância ou atrasos na produção. Foi adotada a notação BPMN
(Business Process Modeling Notation) para mapear a estrutura. Esta técnica permite a
projeção dos processos usando uma série de ícones e gravuras, facilitando o entendimento
dos envolvidos, possibilitando uma visualização de todo o sistema e da cadeia de eventos
que ocorrem durante o processo.
Foram identificados problemas de comunicação entre os atores envolvidos. Logo,
constatou-se que seria necessária a implantação de um método para melhorar a
comunicação entre todos os envolvidos na elaboração do material digital. A comunicação
entre a equipe de diagramação e os responsáveis pela criação do conteúdo acontecia
estritamente por e- mail. Isso dificultava a organização produtiva, de modo que em alguns
momentos não existia o controle de qual diagramador estava atuando com o material ou
se simplesmente não existia alguém designado para atender a algum pedido.
Outro ponto com necessidade de melhoria foi a elaboração de um manual de apoio
aos responsáveis pela criação do material. Foi identificado que os materiais enviados não
possuíam um padrão ou formato de fácil entendimento. Isso deve-se ao fato de que os
atores envolvidos nesta etapa, não necessariamente são da área de ensino do material
enviado. Logo, o problema estava na demora nas conversas realizadas entre o
diagramador e o responsável pela criação do material digital. Apesar de alguns dos
elaboradores possuírem permissão para diagramação do material diretamente no
ambiente virtual, mas ou não faziam como determinava o design visual padrão, ou não
seguiam o padrão pedagógico estabelecido ou entregavam o material fora dos prazos.

4. Resultados Alcançados
Uma das primeiras etapas realizadas foi a elaboração de um modelo geral, com os atores
que fazem parte da cadeia funcional. Foram removidas, incluídas e atribuídas funções aos
atores do começo ao fim do processo de produção. A elaboração de um diagrama de fluxo
do trabalho permitiu o posicionamento de cada entidade em sua área e com suas
atribuições. Foram feitas as modificações necessárias, adequando-se o processo para
aumentar a eficiência de entrega e execução dos serviços.
Todo o processo do BPM foi implantado no decorrer de 10 meses, sendo avaliado
e reavaliado conforme necessidade. O ultimo diagrama elaborado (Figura 1) está
disponível para visualização no seguinte endereço eletrônico:
http://ead.uepg.br/site/suporte/diagramador.

Figura 01 – Visão geral do diagrama atual, gerado sobre o processo de diagramação.

33
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

A modelagem de todo o processo permitiu aos gestores visualizarem, por


exemplo, em que etapa estava determinada etapa da produção de um material e quem
eram os envolvidos, desse modo aprimorando as atividades para uma entrega eficiente. O
modelo foi determinístico para a situação, uma vez que a gestão o aprovou, todo o
trabalho realizado pela equipe passou a ser identificado e gerido, não resultando em
desvios ou falsos controles de etapas.
Com o processo desenhado e implantado, foi necessário, em uma segunda etapa,
desenvolver um sistema que controla todo o movimento da cadeia de produção. O sistema
permite que todos os envolvidos no processo de elaboração pudessem visualizar os
pedidos, atendê-los e iniciar as discussões sobre dúvidas que poderiam aparecer. Destaca-
se aqui o controle permitido aos gestores, possibilitando acompanhar os processos na
totalidade e realizar os devidos encaminhamentos, quando necessários.
A Figura 2 apresenta a tela inicial do Centro de Suporte que foi implantado no
NUTEAD.

Figura 02 – Centro de suporte implantado para recebimento das solicitações.

O centro de suporte foi baseado no software O.S.Ticket, na versão comunidade,


com algumas adaptações às necessidades dos processos estabelecidos. O sistema foi bem
aceito pelos servidores e alunos.
A implantação do sistema permitiu agilizar não somente a parte de produção de
material didático digital, como o sistema também foi utilizado como plataforma de
suporte a todas as solicitações enviadas ao NUTEAD. As solicitações são analisadas e
passam por uma etapa de triagem. Desse modo alguns pedidos são encaminhados
diretamente aos departamentos responsáveis, como o caso da equipe de diagramação.
Na Figura 3, pode-se visualizar a tela do Centro de Suporte com as solicitações
separadas por Departamento.

34
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Figura 03 – Tela do sistema com as solicitações por departamento.

Além das funcionalidades supracitadas, outro recurso disponibilizado foi a


interação entre o solicitante e o responsável pela diagramação do material (Figura 4).
Adotou-se a prática de documentar a discussão por meio desta ferramenta, garantindo
integridade para todos os envolvidos, possibilitando acompanhamento e também
intervenções de coordenadores/gestores, quando necessárias.

35
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Figura 04 – Parte do quadro de discussões realizadas dentro de chamado.

Após a implantação do centro de suporte, passou a ser possível detectar pontos


fortes e fracos na cadeia de produção (Figura 5). A análise desses pontos é importante
para otimizar recursos disponíveis, como por exemplo, diminuir o tempo de resposta para
cada atendimento do sistema.

36
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Figura 05 – Parte do Dashboard da equipe de gestão para acompanhar a situação dos


processos.

Outra etapa do processo a ser reorganizada foi a padronização de documentos.


Elaborou-se um modelo de roteiro de diagramação, que foi disponibilizado aos
elaboradores de material. Foram realizadas capacitações para instruir o uso desses roteiros
e também para utilizar os recursos disponíveis no sistema.
O uso de modelos aprimorou o processo de entrega de material, que já era pré-
formatado, por meio de uso de campos necessários preenchidos com a devida
padronização visual. Desse modo, garante-se acessibilidade e coerência visual em
qualquer curso da instituição. Portanto, verifica-se que ao evitar necessidade de alterações
e e solicitações de reenvios de materiais por parte dos elaboradores, otimizou-se o tempo
de produção da equipe de diagramação.

5. Considerações Finais
Sugere-se atualização constante e elaboração de novos roteiros específicos e detalhados
para os recursos avançados que são oferecidos no ambiente virtual, permitindo
disponibilizar recursos com maior grau de complexidade e diversificar o número de itens
para os usuários do sistema.
Ressalta-se que por utilizar-se um sistema baseado em software de comunidade,
será necessário manter uma equipe de desenvolvimento trabalhando nas atualizações e
modificações do software.
Após o período de adaptação e implantação do processo estabelecido, foi possível
destacar alguns resultados obtidos por meio de análise do dashboard do centro de suporte.
Um dos itens observados foi o tempo médio de finalização dos pedidos: antes da
implantação era de aproximadamente 7 dias, após o BPM, o tempo médio caiu para 3 dias
na produção de material didático digital. Outra situação melhorada foi a distribuição de
materiais, tornando-se melhor nivelada entre a equipe de diagramação. Os gestores
passaram a atribuir igualmente os trabalhos entre os diagramadores, permitindo tempo

37
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

suficiente para as atividades, registro das discussões a respeito do material, melhorias na


qualidade de design digital do material e atendimento de maior qualidade.
Mesmo com o sucesso na implantação do conceito de BPM até o momento, o
processo deve passar por revisões, permitindo otimizar mais a cadeia de produção de
conteúdo de material digital do Núcleo de Educação Aberta e a Distância (NUTEAD) da
Universidade Estadual de Ponta Grossa (UEPG). Como trabalhos futuros, indica-se a
análise do tempo de resposta padrão (SLA), para garantir feedback ao solicitante dentro
de um tempo estipulado pela gestão, considerando a quantidade de pedidos e de pessoas
envolvidas na resolução das solicitações.

Referências
BALDAM, R. et. Al. (2008) “Gerenciamento de processos de negócios: BPM”, 2ª Edição.
JESTON, J.; NELIS, J. (2008) “Business process management, practical guidelines to
successful implementations”, 2ª Edição.
NUTEAD UEPG (2016). “Núcleo de Educação Aberta e a Distância da Universidade
Estadual de Ponta Grossa”. http://ead.uepg.br, Setembro.
OMG (2016). “Business process management with OMG specifications”. Object
Management Group. http://www.bpm-consortium.org/ literature.htm, Setembro.
SANTIS, S. et. Al. (2012) “A Metodologia Business Process Modeling (BPM) para
implantação do sistema de gestão de qualidade” em Educação, Gestão e Sociedade:
revista da Faculdade Eça de Queiros, Ano 2, Número 7.

38
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Utilização do Moodle como Ambiente Virtual de

Aprendizagem no projeto IF Sem Distâncias
Ricardo Figueiredo Scarpatt¹, Pedro Clarindo Da Silva Neto²

1Instituto Federal de Mato Grosso (IFMT) campus Tangará da Serra ­ Tangará da Serra
­ Mato Grosso (MT) ­ Brasil

²Instituto Federal de Mato Grosso (IFMT) campus Tangará da Serra ­ Tangará da Serra
­ Mato Grosso (MT) ­ Brasil
{ricardo, pedro}@tuxcuiabano.com

Abstract.  As the main theme was Distance Education along with e­learning.
The discussion is based on active teaching in this area of education, other
aspects   are   also   shown,   as   providing   the   system   for   other   projects   and
institutions. First we will show what distance learning is and how it works
based on network (Internet), the issue of "Virtual Learning Environments" is
also discussed, because it is very important to know what it is and how it
works. Materials and methods present the using of Moodle in other projects
and   the   proposed   use   of   virtual   environments   for   learning   within   the
municipal education in the city of Tangará da Serra. The importance and the
transparency of distance education have been worked on some topics of this
article. The history and stages, or generations of distance education must be
understood, even if only the main moments, in order to understand better this
form of teaching.
Resumo. Como tema principal, foi Educação a Distância juntamente com e­
learning.  A discussão se baseia no docente atuante nesta área da educação,
outras vertentes também são mostradas, como fornecimento do sistema para
outros projetos e instituições. Primeiramente será mostrado o que é ensino a
distância   e   como   ele   funciona   baseado   em   rede   (Internet),  o   assunto
“Ambientes Virtuais de Aprendizagem” é discutido também, pois, é de grande
importância   saber   o   que   é   e   como   funciona.   Materiais   e   metodologias
apresentam   a   utlização   do   Moodle   em   outros   projetos   e   a   proposta   de
utilização   de   ambientes   virtuais   para   a   aprendizagem   dentro   da   rede
municipal   de   educação   na   cidade   de   Tangará   da   Serra.  A   importância   e
transparência da educação a distância é trabalhada em alguns tópicos deste
artigo. A história e etapas, ou gerações, do EaD devem ser entendidas, mesmo
que apenas os principais momentos, para que entenda­se melhor essa forma
de ensino.

1. Introdução
Existem diferentes formas de ensino, as mais conhecidas são o ensino presencial e o
ensino a distância. O ensino a distância contrapõe à ideia de que o ensino funciona

39
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

apenas de forma presencial, portanto, ensino a distância trabalha com a interação de
professor e aluno, mas não pessoalmente e sim pelo uso de tecnologias que intermediam
a   comunicação   entre   professor   e   aluno.   Com   os   passares   dos   anos   os   professores
aprenderam somente uma maneira de ensino, o presencial, e com o EaD houve um
grande impacto quando se tratava de professores “tradicionais” terem que se adaptar às
novas   formas   de   ensino   [Saviane,   Lombardi   e   Andrade   2007].   [Mill   e   Brito   2013]
afirmam que o problema está na falta de docentes capacitados em ensino a distância.
De acordo com o Censo de Ensino a Distância do Brasil, realizado em 2010, o
número de alunos matriculados em cursos onlines cresceu 90% de 2008 para 2009. Isso
mostra que o EaD passa a ser algo mais comum na vida dos brasileiros em meados da
primeira década de 2000.
No Brasil, o EaD faz diferença na educação. O tamanho do país dificulta que
escolas ou alunos cheguem aos pontos mais remotos. Quando se utiliza a internet como
meio de educação esta “barreira” geográfica que existe se torna fútil [Mill e Brito 2013].
Este trabalho oferecerá solução para o problema com a docência dentro do EaD e será
demonstradas as propostas e iniciativas executadas em prol deste problema.

2. Ensino a Distância
O   EaD,   sendo   considerada   uma   forma   de   ensino   menos   reconhecida   que   o   ensino
presencial, necessita de um investimento maior para chamar a atenção do aluno, um
trabalho maior deve ser feito em torno das propostas que serão feitas referentes aos
cursos   oferecidos.   Ambientes   Virtuais   de   Aprendizagem   são   muito   versáteis   para
proporcionar  espaços  de aula  virtual  que não sejam  enjoativos, tanto  para professor
quanto   para   aluno.   Para   facilitar   essa   manipulação   desses   espaços   virtuais   existem
softwares que disponibilizam Ambientes Virtuais de Aprendizagem com diversos meios
para modificações pelo responsável do sistema [Ribeiro, Mendonça e Furtado 2007].
EaD utiliza ferramentas tecnológicas como: computadores, internet, smartphones
e tablets, quando o ensino a distância se faz por tecnologias computacionais é chamado
de  elearning.   O  e­learning,  sendo   o   conjunto   de   ferramentas   tecnológicas   que
disponibilizam   o   ensino,   ele   ainda   necessita   de   um   software   que   disponibilize   um
ambiente para que docentes e discentes possam ser relacionar e trocar informações. Esse
ambiente   é   chamado   de   Ambiente   Virtual   de   Aprendizagem   (AVA).   Por   definição,
Ambiente Virtual de Aprendizagem são softwares que apoiam a educação a distância,
funcionam   via   internet   oferecendo   ferramentas   tecnológicas   que   possibilitam
desenvolver atividades, [Ribeiro, Mendonça e Furtado 2007]. Esses ambientes onlines
fazem   o   papel   de   integrar   os   estudantes   com   seus   colegas,   tutores   e   atividades
disponibilizadas.   Os   AVAs   disponibilizam   suporte   a   vários   tipos   de   mídias   como
vídeos,   textos,   imagens   e   áudios   essa   característica   torna   essa   ferramenta   bastante
flexível,   pois,   como   o   ensino   a   distância   não   possibilita   uma   interação   direta   entre
professores e alunos o AVA faz esse trabalho levando informações de um para o outro.
Segundo   [Messa   2010]   os   AVAs   devem   atender   as   diferentes   faixas   etárias.
Com   o   avanço   do   EaD   a   necessidade   de   ferramentas   mais   produtivas   também
aumentou, e os ambientes eletrônicos devem estar cada vez melhores para atender toda
de demanda de informações. Esses espaços eletrônicos devem fazer, ou até obrigar, que

40
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

haja   uma   interação   muito   grande   entre   aluno/tutor   com   o   sistema.   Com   os
aperfeiçoamentos   dos   AVAs   foi   possível   a   utilização   de   educação   a   distância   com
pessoas de diferentes idades. De acordo com os dados de [Barros 2008], o EaD surge
inicialmente para atender adultos e jovens e no final do século 20 passou a trabalhar
com crianças, adolescentes e pessoas da 3ª idade.

2.1. Um pouco de história
A EaD tem sua história dividida em gerações. Cada uma destas gerações está ligada a
dois aspectos que foram determinantes para que essa forma de ensino pudesse evoluir,
esses aspectos são: o avanço da tecnologia e o incentivo do governo [Vilaça 2010].
Para simplificar o entendimento destas gerações observe a tabela abaixo.
Tabela 1. Gerações de EaD de acordo com [Vilaça 2010].

Geração Forma Recursos instrucionais e tecnológicos 


básicos

Primeiro Ensino por correspondência Materiais impressos, livros e apostilas

Segunda Transmição por rádio Rádio, TV, Fitas cassetes

Terceira Universidades abertas Materiais impressos, TV, telefone e rádio

Quarta Teleconferência Teleconferência interativa com áudio e 


vídeo

Quinta Internet/Web Internet, MP3, Ambientes Virtuais de 


Aprendizagem (AVA), ambientes 3D, 
redes sociais, fóruns...

3. Materiais e métodos
O termo “IF Sem Distâncias” vem a partir de uma linha de pensamento que afirma que
os   Ambientes   Virtuais   de   Aprendizagem   juntamente   com   os   recursos   tecnológicos
servem para acabar com a distância que há entre estudante e professor.
No  Instituto   Federal   de  Mato  Grosso  ­  Campus  Avançado   Tangará  da  Serra
surge a necessidade de um sistema que auxilie  os  alunos no curso de Libras  e nas
atividades do IFeducATIVO (Projeto de extensão do IFMT ­ Tangará da Serra), com o
objetivo de ser uma ferramenta que complemente o ensino presencial. A partir daqui
que se idealiza  todo o projeto e  é determinado  os objetivos  e propostas  do IF Sem
Distâncias.
IF Sem Distâncias é um projeto de extensão do Instituto Federal de Mato Grosso
  Campus  Avançado   Tangará   da   Serra   que   trabalha   com   a   modalidade   de   ensino   a
distância,   utilizando   de   recursos   tecnológicos,   com   o   objetivo   de   complementar   os
estudos em sala de aula, trabalhando tanto no ensino presencial como no ensino virtual.

41
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Os cursos que são oferecidos por este projeto, inicialmente, estão e vão capacitar os
professores a ministrarem aulas através de um ambiente virtual de aprendizagem no
IFMT e no município de Tangará da Serra para toda a rede profissional de educação do
município,   depois   desta  etapa  o  próximo  objetivo   é  expandir  os  cursos  para  a  rede
estadual. Visa­se que antes de todo o processo de aprendizagem virtual deve­se ter bons
profissionais e para isso o IF Sem Distâncias proporciona cursos para que isso ocorra.
Trabalhar com AVAs pode ser fácil para os docentes que já estão inseridos em um
contexto tecnológico, portanto, para os quais não têm esse “costume com a tecnologia”
fica mais difícil ministrar suas aulas sem antes ter passado por uma preparação, pois, os
AVAs   contam   com   um   grande   número   de   ferramentas   que   precisam   ser   analisadas
passo a passo. O site pode ser acessado de qualquer lugar do mundo através da internet,
a   interface   do   AVA   é   simples   e   possui   as   cores   do   IFMT   para   impor   uma
familiarização, esse visual (tema) pode ser alterado e reconfigurado.
O projeto visa, inicialmente, a capacitação dos docentes do IFMT de Tangará da
Serra e dos profissionais de educação da rede municipal e estadual de Tangará. O curso
será   ofertado   por   meio   de   encontros   semanais   que   acontecerão   no   laboratório   de
informática  do IFMT. O  aluno  receberá  um material  didático  onde  acompanhará  as
aulas de forma prática, aprendendo a criar uma sala de aula virtual. Como projeto piloto,
o   IF   Sem   Distância   já   realizou   a   capacitação   de   um   profissional   do  campus  que
atualmente ministra um curso de extensão de curta duração com a temática “Linguagem
brasileira de sinais ­ LIBRAS”, que possui aulas presenciais semanais. Esta primeira
experiência serviu para obter parâmetros de quais assuntos deveriam ser abordados no
curso e quais melhorias  deveriam ser feitas dentro do AVA. Na figura 1  é possível
visualizar a página inicial do IF Sem Distâncias.

42
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Figura 1. Página inicial site do IF Sem Distâncias.

Os   cursos   serão   semipresenciais.   Será   usado   um   Ambiente   Virtual   para


treinamento e disponibilização dos conteúdos didáticos  para os alunos, que serão os
docentes   que   desejam   trabalhar   com   essa   modalidade   de   ensino.   As   aulas   serão
semanais e juntamente com o orientador será utilizada uma apostila, manual que já foi
desenvolvido pelo IF Sem Distâncias, as aulas serão em um laboratório de informática.
A didática do curso abordará tanto a filosofia da educação a distância como a parte
prática. Pretende­se deixar claro os fundamentos do EaD e o que realmente é essa forma
de ensino mostrando vantagens e desvantagens. Após o término do curso os professores
estarão   preparados   para   ministrar   aulas   virtualmente   com   o   ambiente   virtual   de
aprendizagem do Moodle (assunto que será tratado mais adiante), o próprio Moodle
fornecerá um certificado de curso. Os professores que trabalharão com o site do IF Sem
Distâncias terão à sua disposição todas as ferramentas de interatividade do Moodle, e
muitas vezes, comumente, eles preparam suas aulas dias antes e as deixam salvas para
poderem utilizá­las mais tarde.
O Moodle é o software utilizado no IF Sem Distâncias. Ele é responsável por
criar   o   Ambiente   Virtual   que   professores   e   alunos   utilizam   na   aprendizagem,   esse
sistema foi o escolhido para este projeto por dois principais motivos: É um software
livre e gratuito e pode ser hospedado no servidor que o utilizador desejar.
Segundo   [Sabbatini   2007],   O   Moodle   foi   desenvolvido   por   diversos
programadores de todo o mundo e ainda continua tendo o suporte destes além que ele
foi   traduzido   para   dezenas   de   idiomas,   sendo   um   sistema   já   consagrado   o   Moodle
possui uma das maiores bases de usuários do mundo, e ainda de acordo com os dados de
Sabbatini, o Moodle conta com mais de 25 mil instalações e mais de 360 mil cursos em
155 países, possuindo 4 milhões de alunos no mundo todo. O Moodle é desenvolvido na
linguagem PHP e pode utilizar diversos tipos de bancos de dados, portanto, em especial
é o MySQL. É uma aplicação que trabalha na Web e conta com dois principais pilares:
o   servidor   onde   fica   hospedado   e   o   Ambiente   Virtual.   Sabbatini   ainda   faz   uma
discussão com a filosofia educacional e diz que o Moodle se baseia no construcionismo,
que afirma que o conhecimento é construído na mente do estudante, ao invés de ser
transmitido   sem   mudanças   a   partir   de   livros,   aulas   expositivas   ou   outros   recursos
tradicionais de estudos, e, a partir desta perspectiva, os cursos desenvolvidos no Moodle
direcionam todo seu foco ao estudante de maneira que todos os recursos e componentes
envolvidos estão ali por causa do estudante e para facilitar seu aprendizado [Sabbatini
2007].
O   Moodle,   além   de   todas   as   vantagens   citadas   acima,   oferece   muitas
configurações aos administradores, podem mexer desde a organização dos módulos de
navegação até as configurações mais internas do sistema, por exemplo no seu Código
Fonte. Os usuários normais, estudantes por exemplo, podem selecionar seus próprios
temas no site. O estudante quando autenticado é direcionado a sua página inicial e de lá
tem acesso a tudo que o envolve, uma grande vantagem é que até a sua página inicial
pode ser organizada como queira, ali também aparecem mensagens dos professores e
blogs feitos por outros usuários. Os cursos dentro do Moodle possuem 4 opções de

43
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

organização e as mais utilizadas são Semanais e Tópicos, ambas organizam bem todo o
material didático e oferece total controle para o professor em relação ao que o aluno
pode ver ou não no momento.

4. Resultados e discussões
Este projeto oferece subsídio a 2 outros projetos que estão no mesmo campus que o IF
Sem Distâncias e também possui 162 usuários, apenas do IFMT de Tangará da Serra,
cadastrados no Moodle. Duas matérias do curso de Manutenção e Suporte a Informática
utilizam o AVA para complementar o ensino passado dentro da sala de aula. O curso de
Libras utiliza o ambiente para disponibilizar mídias e textos para os alunos. O Moodle
oferece também atividades para os estudantes realizarem após os estudos. 
O projeto de extensão IFeducATIVO é um grande utilizador do IF Sem Distâncias e
uma vantagem de trabalhar com esse projeto de extensão é que seu público é jovem e
bastante   entusiastas   para   trabalhar   com   tecnologia   e,   com   a   integração   de   ensino
presencial com tecnologia, foi relatado um aumento de interesse, por parte dos alunos,
pelo curso. 
As pessoas que estão utilizando do IF Sem Distâncias receberam o treinamento, no dia
26 de Julho  de 2016, para  oferecerem  uma  boa aula  virtual  aos  seus  alunos. Esses
treinamentos   foram   e   são   feitos   através   de   explicações   em   forma   de   seminários   e
materiais de apoio (como o manual para utilizar o AVA do Moodle que foi criado pela
equipe do IF Sem Distâncias). A rede municipal de educação de Tangará da Serra foi
informada sobre a existência  e objetivos  do IF  Sem Distâncias,  que quer, como no
IFMT  Tangará da Serra, fazer deste AVA uma ferramenta dos docentes para que eles
possam   complementar   suas   aulas   virtualmente.   O   processo   de   integração   entre   a
educação e Moodle é complicado pelo fato de que os professores devem conhecer todo
o sistema e saber o que fazer e como fazer, ou seja, há a necessidade de minicursos
preparatórios para a utilização do Ambiente Virtual de Aprendizagem oferecido pelo
Moodle e isto será feito pelo IF Sem Distâncias.

5. Conclusões
Este artigo tratara de um pouco de cada parte que compõe o EaD, portanto, pode se
expandir   ainda   mais   os   conceitos   e   trabalhos   que   envolvem   essa   forma   de   ensino
surpreendente  que, como foi visto na história, surgiu desamparada  pela maioria  das
organizações   e   empresas   mas   conseguiu   e   consegue   surpreender   o   mercado,   que
também   lucra  muito   com  ensino  a distância  que  vem  sendo  uma  tendência  para  as
instituições privadas de ensino, pois, é mais fácil montar um sistema de ensino virtual
do que construir um imóvel para ensino presencial que ainda possui vagas relativas ao
tamanho da construção.
Foi relatado durante o minicurso que, os professores ainda se interessam mais
pelo   ensino   presencial,   porém,   quando   vêem   as   diversas   ferramentas   que   um   AVA
oferece   ficam   entusiasmados.   Um   grande   interesse   por   simplicidade   e   facilidade   na
postagem de materiais didáticos foi encontrado dentre esse grupo de professores. 
A partir do fatos e conceitos discutidos aqui é possível afirmar que EaD é uma
forma de ensino flexível podendo ser totalmente online apenas cursos a distância onde

44
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

não tem necessidade de haver uma simultânea conexão entre docente e discente, e pode
ser semipresencial e complementar que são duas maneiras bastante interessantes quando
se   quer   iniciar   um   processo   de   integração   entre   EaD   e   ensino   presencial.   Há   uma
flexibilidade também nos utilizadores de sistemas para ensino virtual, tanto em relação
ao aluno como em relação ao professor, e, embora possa parecer mais complexa de se
usar, a facilidade ou não de usar ambientes virtuais de aprendizagem vai depender da
interação que aluno e professor tem como tecnologias digitais. Ensino virtual também
vai depender de como cada empresa ou instituição a usa, pois, como não se tem uma
forma totalmente padrão de se aplicar ensino a distância, as maneiras ficam à mercê.
Pode se visualizar também um processo de crescimento do EaD no Brasil de
acordo com que a tecnologia vai deixando de ser algo distante na vida dos brasileiros e
a internet vai chegando aos pontos mais remotos. O ensino a distância vai depender
muito da conscientização  que as pessoas têm e vão ter em relação  a essa forma de
ensino e para isso deve se executar palestras e seminários que repassem toda a ideia de
EaD para as pessoas, ensinar a filosofia dessa forma de ensino e mostrar maneiras de
como usá la  é indispensável.  Então deve­se mostrar, falar  e discutir  sobre ensino a
distância com os docentes, essa é a nova missão para a equipe do IF Sem Distâncias.
A Tecnologia Assistiva também deve ser integrada aos AVA’s, pois, pessoas
que têm deficiências auditivas ou visuais não podem ser impossibilitadas de adquirirem
conhecimento   a   partir   de   seus   computadores   ou   dispositivos   móveis.   Já   existe   um
arsenal de ferramentas tecnológicas que proporcionam aos deficientes inclusão social
uma   vida   mais   independente   [Galvão   Filho   2009].   Contudo,   o   próximo   passo   é
melhorar o arsenal de tecnologia em Ambientes Virtuais de Aprendizagem destinada às
pessoas especiais.

Referências

Messa, W. Utilização de ambientes virtuais de aprendizagem – AVAS: a busca por uma
aprendizagem significativa. Vol. 9. São Paulo, 2010.
Barros, D. Educação a distância: desafios atuais / Daniela Melaré Vieira, João Pedro
Albino, Vera Lúcia Messias Fialho Capellini, Olga Maria Piazentin Rolim Rodrigues
In: Práticas em educação especial e inclusiva na área da deficiência mental / Vera
Lúcia Messias Fialho Capellini (org.). – Bauru : MEC/FC/SEE, 2008. 12 v. : il. 
Ribeiro,   E.;   Mendonça,   G.   e   Furtado,   A.   A   importância   dos   ambientes   virtuais   de
aprendizagem na busca de novos domínios da ead. 2007.
Censo   do   Ensino   a   Distância   do   Brasil.   (Associação   Brasileira   de   Educação   a
Distância). São Paulo: Pearson Education do Brasil, 2010.
Mill,   D.   e   Brito,   N.   In:   Estudo   sobre   a   aprendizagem   da   docência   na   atuação   na
educação   a   distância:   uma   ánalise   da   percepção   dos   professores:   V   Seminário
Internacional   de   Educação   a   Distância,   2013,   Belo   Horizonte.   Seminário,   Belo
Horizonte: 2013.
Saviani, D.; Lombardi, J. e Andrade, S. In: O processo histórico da educação a distância
e duas implicações:  desafios  e possibilidades, VII Jornada do HISTEDBR, 2007,

45
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

UNICAMP. História, Sociedade e Educação no Brasil. Campo Grande: UNIDERP,
2007. 
Sabbatini, R. Ambiente  de Ensino e Aprendizagem  via Internet.  Instituto  Edu Med.
2007.
Vilaça,   M.   Educação   a   Distância   e   Tecnologias:   conceitos,   termos   e   um   pouco   de
história. Revista Magistro ­ Revista do Programa de Pós ­ Graduação em Letras e
Ciências Humanas – UNIGRANRIO, v. 1, Num. 2. 2010. ISSN: 2178­7956.
Galvão Filho, T. A. A Tecnologia Assistiva: de que se trata? In: MACHADO, G. J. C.;
SOBRAL,   M.   N.   (Orgs.).   Conexões:   educação,   comunicação,   inclusão   e
interculturalidade. 1 ed. Porto Alegre: Redes Editora, p. 207­235, 2009.

46
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Desafio de aplicativos: uma experiência no Instituto


Federal de Goiás (IFG) Câmpus Luziânia
Ernane Rosa Martins

Curso de Bacharelado em Sistemas de Informação – Instituto Federal de Goiás (IFG) –


Câmpus de Luziânia
72511-580 – Luziânia – GO– Brasil
ernane.martins@ifg.edu.br

Abstract. The challenges encountered in the teaching-learning process results


in the search for methods, techniques and tools that make this more intuitive
and fun process. In this context, this paper aims to encourage the production
and promotion of new real applications, with practical utility. The
methodology involves the possibilities brought by the visual programming
language APP Inventor, in an educational activity applies to students of
technical courses in computer for internet Federal Institute of Goiás Luziânia
Campus. As a result we obtained the expansion of knowledge, to stimulate the
creativity, participation in teamwork and acceptance of new challenges.

Resumo. Os desafios encontrados no processo de ensino-aprendizagem


resultam na busca por métodos, técnicas e ferramentas que tornem este
processo mais intuitivo e divertido. Neste contexto, o presente trabalho tem
como objetivo incentivar a produção e a promoção de novos aplicativos reais,
com utilidade prática. A proposta metodológica envolve as possibilidades
trazidas pela linguagem de programação visual APP Inventor, em uma
atividade de ensino aplica em alunos do curso técnico em informática para
internet do Instituto Federal de Goiás Câmpus Luziânia. Como resultados
obteve-se a ampliação dos conhecimentos, o estimulo a criatividade, a
participação em trabalhos em equipe e a aceitação de novos desafios.

1. Introdução
Um dos grandes desafios impostos aos docentes atualmente é como aproveitar as
ferramentas tecnológicas a favor do ensino. Compreender como os recursos
computacionais podem contribuir para o desempenho das ações humanas e ser capaz de
explorar programas de computadores e seus componentes é requisito mínimo de
domínio dos alunos, conforme as exigências do atual mundo do trabalho . Para despertar
mais o interesse por pesquisa nos alunos, é importante a divulgação do desenvolvimento
de projetos de pesquisa, pela importância da exposição dos resultados obtidos pelos
alunos nos estudos realizados, assim como pela valorização do trabalho discente (COX,
2003).
Os dispositivos móveis estão cada vez mais presentes no cotidiano da sociedade,
estes enriquecem a experiência de aprendizado ao agregar à metodologia alguns dos

47
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

seus principais recursos: a mobilidade, a portabilidade, a interatividade social, a


conectividade, a individualidade, dentre outros (VALENTIM, 2009). Sendo assim o
presente estudo busca apresentar os resultados do projeto “Desafio de aplicativos”,
executado no Campus Luziânia do Instituto Federal de Goiás (IFG). Que visou inserir os
discentes em atividades de pesquisa e explorar as potencialidades do software livre APP
Inventor.
Este artigo está estruturado nas seguintes seções. Revisão da literatura, com
apresentação das características da ferramenta de desenvolvimento APP Inventor e sua
utilização em contextos educacionais. Metodologia, onde são apresentados os
procedimentos metodológicos para realização da atividade proposta e investigação,
utilizados na pesquisa. Resultados obtidos, onde são apresentados os aplicativos
desenvolvidos pelos alunos participantes e suas funcionalidades. Por fim, estão as
considerações finais e referências.

2. Revisão Bibliográfica
Nesta seção são apresentados os conceitos básicos da ferramenta APP Inventor e sua
utilização no contexto educacional.

2.1. APP Inventor


O APP Inventor, objeto de estudo do presente trabalho, foi desenvolvido pelo Google e
é atualmente mantido pelo MIT Center for Mobile Learning, foi inicialmente projetado
para auxiliar o aprendizado de programação, mas tem sido amplamente utilizado em
diversas aplicações, inclusive em contextos didático-pedagógicos variados.
O APP Inventor é um ambiente de programação visual online que possibilita a
criação de aplicações para dispositivos móveis Android através de blocos de código,
sem requerer, portanto, conhecimentos avançados em programação
(MASSACHUSETTS INSTITUTE OF TECHNOLOGY, 2015). O ambiente de
desenvolvimento do APP Inventor permite a criação de aplicativos, mesmo que o
usuário tenha somente noções mínimas de programação de computadores. Por fornecer
uma interface gráfica que permite os desenvolvedores utilizarem a técnica drag and drop
(arrastar e soltar) para os objetos visuais.
Para utilizar o APP Inventor, não é necessário instalá-lo em seu computador, o
aplicativo funciona online diretamente em uma janela de seu navegador de internet
padrão. Para utilizá-lo, é necessário possuir uma conta de usuário da Google. (APP
INVENTOR, 2015). Os aplicativos desenvolvidos no APP Inventor para telefones com
o sistema operacional Android utilizam um navegador da web, bastando ter uma conta
do Google GMAIL para ter o acesso à plataforma. Os projetos desenvolvidos no APP
Inventor são armazenados em servidores web do APP Inventor.
As aplicações são construídas pelo APP Inventor Designer, onde o usuário
escolhe quais os componentes serão utilizados em sua aplicação. No APP Inventor
Blocks Editor, o usuário monta os blocos de programa, onde estes especificam como os
componentes irão se comportar. Os blocos são montados encaixando as peças como se
fosse um brinquedo de quebra-cabeça.

48
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Quando o aplicativo (de extensão apk) estiver concluído, o desenvolvedor


empacota-o, resultando numa aplicação pronta para ser instalada no smartphone. A
Figura 1 apresenta o APP Inventor onde o desenvolvedor projeta o seu aplicativo, emula
e empacota o apk para o smartphone.

Figura 1. APP Inventor: Janela Blocks Editor. Exemplo de Aplicativo e Emulador


em Execução

O ambiente de desenvolvimento do APP Inventor roda em diversos sistemas


operacionais como o Mac OSX, GNU/Linux e Windows, e uma enorme variedade de
modelos de simulações para o smartphone contendo o Sistema Operacional Android. O
APP Inventor foi projetado com a missão de provocar mudanças positivas nas
experiências introdutórias de programação. Permite que usuários sem conhecimento
avançado em programação possam desenvolver aplicativos para a plataforma Android.
Um dos principais diferenciais do APP Inventor consiste em permitir ao usuário,
mesmo que estando em um estágio inicial de aprendizado de lógica de programação,
desenvolver aplicações interessantes e atraentes para dispositivos móveis Android. As
aplicações podem incorporar serviços baseados na web, leitura de códigos de barra,
interação com sensores de orientação e geolocalização, dentre diversas outras
funcionalidades de maneira simplificada, o que não seria possível em linguagens de
programação tradicionais, visto que, exigiria um avançado conhecimento em
programação.
A ferramenta APP Inventor possui uma interface amigável, permitindo assim
que despontem algumas vantagens na sua utilização em processos educacionais
(Smutny, 2011):
 Sem código. A linguagem baseada em blocos elimina a necessidade de linhas de
código;
 Orientada a eventos. Uma aplicação construída com o APP Inventor é um
conjunto de blocos que respondem a eventos. O modelo conceitual é baseado na
ideia do que acontece quando um componente realiza uma determinada ação;

49
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

 Mitiga a possibilidade de cometer erros. Nem todos os blocos do APP Inventor


são conectáveis. Quando um usuário tenta conectar blocos de tipos não
compatíveis, o Blocks emite uma mensagem de aviso e não permite a ação,
minimizando, assim, a possibilidade do usuário cometer erros;
 Menos abstração. Quando um componente é selecionado e arrastado para o
Viewer, um objeto e os blocos de funções associadas a este são criados no
Blocks. Embora isto limite a possibilidade de reuso de código e torne o
programa um pouco maior, este é um benefício em potencial para usuários
finais, uma vez que diminui a abstração envolvida no processo de criação do
aplicativo.
O APP Inventor possui um componente chamado TinyDB que é um banco de
dados, que permite armazenar dados que estarão disponíveis cada vez que o aplicativo
for executado. TinyDB é um componente não-visível.

2.2. A utilização do APP Inventor em contextos educacionais


Diversas aplicações do APP Inventor em contextos educacionais são encontradas na
literatura, sobretudo em experiências introdutórias de ensino de programação, tais como:
 Gestwicki e Ahmad (2011) defendem que o software é um “ambiente de
programação que permite que os estudantes não precisem de conhecimento de
Ciência da Computação para desenvolver aplicativos de smartphones e, assim,
explorar conceitos fundamentais da ciência da computação”;
 Lake (2011) relata o componente de verão de um projeto em que visava abordar
se o APP Inventor seria uma plataforma computacional adequada para os alunos.
O projeto reuniu uma equipe composta por dois professores do ensino médio, os
estudantes eram facilmente capazes de desenvolver aplicativos móveis
complexos completamente por conta própria. No geral, a equipe encontrou no
APP Inventor uma plataforma acessível e poderosa que pode muito bem apoiar
disciplinas de nível introdutório na faculdade;
 Spertus et al., 2010 utilizaram o APP Inventor para criação de aplicativos para
celulares em cursos introdutórios de informática, por permitir que os usuários
criem aplicativos móveis que contenham as redes sociais, a conscientização de
local, e serviços baseados na Web para o Android. Doze faculdades e
universidades diferentes usaram o APP Inventor em ampla gama de cursos de
ciência da computação no outono de 2009.
 Wolber (2010) utiliza o APP Inventor para ensinar aos estudantes universitários
de um curso na University of San Francisco, com foco em demostrar como a
linguagem facilita as interações com o mundo fora da sala de aula;
 Wolber et al. (2011) apresenta uma visão geral da linguagem e aborda conceitos
da Ciência da Computação por meio de design de jogos e de aplicações gráficas
2D.
 Gomes e Melo (2013, p. 224) definem que: “A aplicação do APP Inventor em
contextos educativos tem demonstrado o seu potencial didático-pedagógico,
principalmente em cursos de programação voltado a iniciantes”.

50
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Em outras áreas do saber, também são encontradas experiências de ensino


envolvendo o APP Inventor, tais como:
 Smutny (2011) que apresenta aplicações criadas no APP Inventor que permitem
controlar, através de dispositivos móveis, robôs dos kits Lego Mindstorms,
permitindo que os alunos aprendam conceitos fundamentais de robótica e de
programação.
 Brás (2013) que apresenta no ensino de física, uma aplicação educacional que se
apropria da funcionalidade do acelerômetro, permitindo aos alunos visualizar os
vetores de velocidade e aceleração sobre uma partícula virtual mostrada na tela.

3. Procedimentos Metodológicos
Nesta seção são apresentados os aspectos metodológicos utilizados na condução do
estudo.
O Desafio de Aplicativos do Instituto Federal de Goiás campus Luziânia teve
como objetivo fomentar dentro do IFG a produção e a promoção de novos aplicativos,
com a exploração das potencialidades do APP Inventor, estimulando a criatividade e a
participação dos alunos em trabalhos em grupo, ampliando também os conceitos
aplicados ao técnico em informática, colocando em prática o que é estudado e abordado
dentro das salas de aula, aplicando conhecimentos básicos de programação, estimulando
a criatividade e aceitação de novos desafios, explorando trabalho em equipe e
competitividade.
Para que um aplicativo fosse elegível a participar da atividade, ele deveria ser
um aplicativo (mobile) em versões final. Participaram alunos matriculados nas
disciplinas de programação para web do curso técnico em informática para internet do
Instituto Federal de Goiás campus Luziânia. Os aplicativos submetidos deveriam:
concordar com regulamento e regras estabelecidas no regulamento; deter os direitos de
uso de todos os recursos criado pelos participantes; executar corretamente na plataforma
indicada; as equipes não poderiam ultrapassar 3 (três) integrantes; as equipe deveriam
utilizar, obrigatoriamente, o APPInventor para o desenvolvimento do aplicativo. Quanto
à desclassificação ficou estabelecido que: quaisquer aplicativos que utilizassem obras de
terceiros seriam desclassificados; não seriam aceitos aplicativos submetidos com teor
pornográfico, racismo, preconceito, questões éticas ou morais, sexo explícito, violência,
intimidação, incitação ao ódio, falsificação de identidade ou comportamento enganoso,
informações pessoais e confidenciais sem autorização prévia, atividades ilegais, jogos
de azar, produtos maliciosos e a não utilização do APP Inventor.
Os aplicativos submetidos considerados elegíveis foram avaliados por uma
banca avaliadora definida pela comissão organizadora. Os membros desta banca
avaliadora foram formados por professores do Instituto Federal de Goiás campus
Luziânia. A banca avaliadora analisou os aplicativos submetidos e atribuiu uma nota de
1 a 5, onde 1 significa “Muito fraco” e 5 significa “Excelente”, para cada um dos
critérios listados: Inovação e Criatividade. Apresentação de soluções inovadoras e não
convencionais que fundamentem o aplicativo. Qualidade de uso. Planejamento da
interface de forma a propiciar a efetividade (eficácia e eficiência) e satisfação da
interação. Projeto. Organização, qualidade da apresentação, profundidade e clareza da

51
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

metodologia de execução do aplicativo. Descrição das etapas necessárias para o


desenvolvimento e os elementos utilizados na estrutura.
Para cada aplicativo, foi calculada a média aritmética simples das notas
atribuídas por cada avaliador em cada um dos critérios. A pontuação final para cada um
dos aplicativos foi dada pela média aritmética simples das avaliações médias atribuídas
pelos avaliadores aos aplicativos. O intuito desta atividade não foi eleger o melhor
aplicativo, e sim fomentar dentro do Instituto Federal de Goiás campus Luziânia a
produção e a promoção de novos aplicativos.
Optou-se pelo uso de Tecnologias da Informação e Comunicação (TIC), por
poderem ser aplicadas para diferentes finalidades, como fonte de informação, auxiliar no
processo de construção de conhecimentos ou como meio para desenvolver autonomia
pelo uso de softwares que possibilitem pensar e criar soluções. Foram classificados 2
(dois) aplicativos, pertencentes a 6 (seis) alunos da disciplina de programação para web
I, do segundo ano do curso técnico em informática para internet, do ano de 2015. A
atividade para criação de aplicativos foi estruturada de forma que os discentes
participantes fossem sujeitos ativos em sua aprendizagem, tornando-se independentes na
realização das pesquisas, ampliando seu conhecimento acerca das temáticas abordadas e
compartilhando com os demais colegas o conhecimento adquirido.
A criação dos aplicativos no APP Inventor não necessita de conhecimento prévio
sobre linguagem de programação, pois as funções dos elementos necessários para os
aplicativos são pré-dispostos na forma de blocos lógicos, que podem ser justapostos
para gerar as funções necessárias. As atividades foram estruturadas em 4 (quatro) etapas
interligadas: etapa 1 – Pesquisa: os alunos devem elaborar pesquisas sobre um tema,
culminando em uma síntese contendo os pontos chave acerca do objeto estudado; etapa
2 – Arquitetura: os temas pesquisados são aplicados na estruturação dos aplicativos,
resultando em um software para execução; etapa 3 – Revisão: os alunos verificam
possíveis falhas ou erros na execução do aplicativo, apontando onde e como o aplicativo
pode ser corrigido ou adaptado; etapa 4 – Consolidação: os aplicativos são validados
com relação à sua estruturação e funcionalidades.

4. Resultados Obtidos

Nesta seção são apresentados os 2 (dois) aplicativos desenvolvidos no projeto:

4.1. Bhaskara
Este aplicativo tem como objetivo ajudar as pessoas na resolução do cálculo de
Bhaskara, dando a resposta rapidamente dos valores de X’ e X”, onde é necessário
informar os valores e o aplicativo apresenta a resposta final, pois muitas pessoas têm
dificuldades em cálculos assim, e o aplicativo pode ajudá-las na confirmação dos
valores.
Para se utilizar o aplicativo, é necessário apenas que a pessoa informe os valores
de A, B e C, e apertar em OK. Rapidamente o aplicativo irá informar os valores de X’ e
X’’. O aplicativo possui uma interface simples onde é apresentado ao usuário apenas os
locais onde ele irá informar os valores necessários para o calculo de Bhaskara e assim

52
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

que for apertado ok, serão apresentados os valores encontrados, conforme ilustra a
Figura 2.

Figura 2. Aplicativo Bhaskara

4.2. Calc
O aplicativo consiste em um modelo de calculadora que realiza todas as funcionalidades
padrão, como multiplicar, dividir, somar, e subtrair, e, além disso, calcular a raiz
quadrada e potência. O aplicativo foi criado através de iniciativa própria, devido ao
grande contato com a criação de programas que tivessem as funcionalidades de
calculadora.
O aplicativo possui um teclado, enumerado de 0 a 9, e botões com o ponto, sinal
de igual, soma, subtração, multiplicação, divisão, raiz quadrada, potência e o botão de
limpar. Seu funcionamento se assemelha ao de uma calculadora normal, são
selecionados os números e as operações que se deseja realizar com os devidos números.
A estrutura de organização do aplicativo é simples e objetiva, apresentando todas as
suas funcionalidades, conforme ilustra a Figura 3.

Figura 3. Aplicativo Calc

5. Considerações Finais
O APP Inventor, ferramenta utilizada no desenvolvimento do projeto utiliza
programação orientada a eventos para celulares com sistemas operacionais Android e é
de fácil utilização, apresenta inúmeras funcionalidades e já vem sendo empregada em
salas de aulas para estimular o aprendizado no desenvolvimento de aplicativos para
dispositivos móveis. Ficou evidenciado na realização deste projeto, o potencial que o

53
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

desenvolvimento de aplicativos pode representar no processo de ensino e aprendizagem.


Mediante a qualidade dos aplicativos produzidos, percebeu-se a preocupação de alguns
alunos em apresentar não apenas o aplicativo funcionando, mas também apresentar o
melhor resultado possível utilizando o tempo e os recursos disponíveis.
Outro ponto relevante observado é o compartilhamento de ideias entre os
membros do grupo e o desenvolvimento da autonomia dos alunos com relação à busca
por informações para auxiliar no processo de elaboração dos aplicativos, resultando,
consequentemente, no domínio acerca dos temas abordados na atividade. O projeto
permitiu a utilização do conhecimento adquirido durante o curso técnico em informática
para internet na construção de uma aplicação real, com utilidade prática. Os resultados
obtidos na finalização deste projeto não encerram as pesquisas relacionadas aos
aplicativos desenvolvidos, abrindo oportunidade para futuras melhorias nos aplicativos.
Como sugestão para trabalhos futuros sugere-se ampliação do projeto em alunos de
diferentes disciplinas, cursos, campus ou instituições e o uso de mais ferramentas livres
como o APP Inventor.

Referências
App Inventor. Site do APP Inventor. Disponível em: <http://beta.appinventor.mit.edu>.
Acesso em 10 outubro. 2015.
Brás, C. M. Plataforma Android: Os Sensores e a Física. Anais do I Encontro
Internacional da Casa das Ciências, 2013.
Cox, K. K. Informática na educação escolar. Campinas: Autores Associados, Coleção
Polêmicas do nosso tempo, 2003.
Gestwicki, P., & Ahmad, K. APP Inventor for Android with Studio-Based Learning.
Journal of Computing Sciences in Colleges , pp. 55-63, 2011.
Gomes, T. C.S.; Melo, J. C. B. APP Inventor for Android: Uma Nova Possibilidade para
o Ensino de Lógica de Programação. Anais do II Congresso Brasileiro de Informática
na Educação, p.620-629, 2013.
Lake, P., Lanerolle, T., Limardo, N., Morelli, R., & Uche. Can Android APP Inventor
Bring Computational Thinking for K-12? Technical Symposium On Computer
Science (SIGCSE), 2011.
Massachusetts Institute of Technology. Massachusetts institute of technology. Fonte:
MIT APP Inventor: appinventor.mit.edu/ Acesso em 10 de novembro. 2015.
Smutny, P. Visual programming for smartphones. Proceedings of 12th International
Carpathian Control Conference - ICCC, p. 358-361, 2011.
Spertus, E., Chang, M. L., Gestwicki, P., & Wolber, D. Novel approaches to CS 0 with
app inventor for android. Proceedings of the 41st ACM Technical Symposium on
Computer Science Education, 2010.
Wolber, D. APP Inventor and Real-World Motivation. Fonte:
http://cs.usfca.edu/~wolber/appinventor/wolberSigCse11.pdf, 2010.
Wolber, D., Abelson, H., Spertus, E., & Looney, L. APP Inventor: Create your own
Android Apps. Sebastopol: O’Reilly Media, 2011.

54
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Remediação do erro em disciplinas de algoritmos: uma análise


da FARMA-ALG
Rui Ogawa12
1
Programa de Pós-Graduação em Informática (PPGINF) – Universidade Federal do Paraná (UFPR)
Caixa Postal 19.081 – 81.531-980 – Curitiba – PR – Brazil
2
Campus Universitário de Sinop – Universidade do Estado de Mato Grosso
78.550-000 – Sinop – MT – Brazil.
ruiogawa@unemat.br

Abstract. In this paper, interactionists aspects of the use of a virtual


environment for error remediation in algorithms disciplines are addressed.
The literary review shows the importance of the programming teaching,
considerations of dropout and avoidance, its association with the school error
and the effectiveness of socio-interactionist interventions. The architecture of
FARMA-ALG, an error remediation tool, intended for algorithms learning, is
described. The interface and the use of the tool is evaluated. Lastly, future
research goals are proposed.

Resumo. São abordados aspectos interacionistas sobre o uso de um ambiente


virtual de remediação do erro em disciplinas de algoritmos. A resenha
literária mostra a importância do ensino de programação, considerações sobre
desistência e evasão, sua associação com o erro escolar e a efetividade de
intervenções sócio-interacionistas. É descrita a arquitetura de remediação do
erro da ferramenta FARMA-ALG, destinada ao aprendizado de algoritmos. É
avaliada a interface e o uso da ferramenta. Ao final, são propostas metas de
pesquisa futura.

1. Introdução
Ferramentas de autoria são softwares que permitem ao tutor humano manipular (criar,
alterar ou excluir) sessões de ensino, de modo a compor um ambiente informatizado
para ensino e aprendizagem de algum conteúdo. A materialização dos conteúdos se
dá sob a forma de Objetos de Aprendizagem (OAs), que são concebidos e construı́dos
pelo professor. A forma como será a interação do aluno com os exercı́cios e as questões
propostas, dependerá de como estes objetos foram criados e como a ferramenta de autoria
os trata. De acordo com [Leite 2015], na maioria dos OAs, a remediação de erros tem
sido aplicada de forma mais restrita. Normalmente disponibiliza-se os OAs aos alunos
com pouca ou nenhuma consideração sobre a possibilidade de retroação ao estado de
erro, nem sua mediação. As tentativas de mediação, nesses casos, concentram-se apenas
em proporcionar um retorno simples, por meio de mensagens, se a resposta está correta
ou incorreta.
Considerando uma ferramenta computacional que proporcione a retroação ao
contexto do erro e permita sua mediação através da interação entre alunos e professores,

55
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

investigamos sua utilização e como isso pode ajudar no processo de ensino-aprendizagem


de algoritmos. O erro escolar deve ser entendido sob uma perspectiva mais ampla, que
considere a unidade de suas relações e inter-conexões com outros erros e dados. Os
registros de respostas se relacionam entre si de diferentes maneiras; isto é, respostas são
similares às outras sob diferentes aspectos (sintáticos, semânticos etc.), trabalhando sobre
as relações de similaridade existentes entre diferentes respostas. A FARMA-ALG1 , uma
ferramenta que promove a mediação do erro no ensino de programação de computadores,
propõe através da análise de tais relações, que seja possı́vel captar propriedades relevantes
para a mediação do erro.
Essa plataforma visa a instrumentalização de professores e alunos na busca
da mediação do erro durante o trabalho educativo, integrando o erro à dinâmica de
formação e desenvolvimento de conceitos cientı́ficos dos alunos. Marczal [Marczal 2014]
destaca que ”a aprendizagem se torna resultado da interação social a partir do
compartilhamento de significados com o objetivo de suprir, por meio da colaboração,
o conhecimento faltante, tanto para o professor quanto para o aluno”. Kutzke e Direne
[Kutzke and Direne ] salientam que ”sem a mediação do erro, professores não possuem
condições ideais para refletir sobre seu próprio método de ensino, e os alunos, por sua vez,
ficam sem acesso aos seus erros e da mediação dos mesmos pelo professor”. Os resultados
da pesquisa mostram que houve melhoria no processo de aprendizado dos alunos através
da utilização do sistema proposto.
Entretanto, embora os resultados sejam positivos e animadores, considerando o
ensino-aprendizagem, apenas 223 alunos usaram a ferramenta nos anos de 2015 e 2016 na
cidade de Curitiba/PR. Nesse sentido, faz-se necessária uma avaliação do ponto de vista
externo, sobre as caracterı́sticas que a plataforma se propõe a oferecer. Nas próximas
seções apresentamos uma resenha literária sobre o contexto do erro e seu tratamento com
a utilização da informática aplicada à educação, os principais conceitos e funcionalidades
da plataforma, uma avaliação da ferramenta e finalizamos com sugestões de melhorias.

2. Resenha literária
Os primeiros registros sobre o uso da informática aplicada à educação, sob
uma perspectiva construtivista e construcionista, datam do final de década de
1970. Experimentos realizados pelo Laboratório de Estudos Cognitivos (LEC),
da UFRGS exploravam a potencialidade do uso do computador com a linguagem
Logo, uma linguagem de programação interpretada, voltada para crianças e jovens.
[Nascimento 2007]. Segundo o autor, esses trabalhos procuravam compreender o
raciocı́nio lógico-matemático das crianças. Esses experimentos foram apoiados nas
teorias de Piaget e Papert, sobre cujos conceitos a proposta da FARMA-ALG tem forte
embasamento, usando a intervenção como forma de promover a aprendizagem autônoma.
Nos cursos de computação e engenharias, as disciplinas introdutórias de
algoritmos são de extrema importância para que o aluno tenha uma base sólida, que
assegure seu bom desempenho no decorrer do currı́culo. Entretanto, geralmente o tempo
reservado para essas disciplinas é restrito, o que compromete o bom aproveitamento do
aluno nas disciplinas subsequentes. Até mesmo a perı́cia do futuro egresso pode ser
influenciada, afetando sua prática profissional [Krynski 2013]. Trabalhar a capacidade
1
http://farma-alg.com.br

56
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

cognitiva dos alunos é determinante para o desenvolvimento das habilidades necessárias


para as disciplinas introdutórias.
Na área de programação de computadores, é mais importante que o aluno
consiga desenvolver um método de aquisição, elaboração, descoberta e construção
de conhecimentos, do que aprender aqueles que foram descobertos e elaborados por
outras pessoas. Essa abordagem metacognitiva encontra no conceito de Múltiplas
Representações Externas (MREs) de [Ainsworth 2006], as caracterı́sticas necessárias para
um aprendizado intuitivo. Para [Krynski 2013], isso delega mais responsabilidades a
quem aprende sobre o próprio aprendizado, permitindo que o desempenho sobre o que
é ensinado seja influenciado positivamente. Aprender a programar com êxito exige do
aluno o que é denominado pensamento abstrato ou lógico-discursivo, necessário para o
aprendizado de algoritmos, pois apoia-se em conceitos e raciocı́nios abstratos, operando
fundamentalmente por mediação [Martins 2014]. O desempenho do aluno nas disciplinas
de algoritmos está portanto, diretamente relacionado com seu domı́nio desse tipo de
pensamento.
A crescente demanda por profissionais de computação tem gerado grande procura
pelos cursos da área, entretanto, a evasão deles não é um fato recente e tem sido
estudada por vários autores [Giraffa 2013]. O pensamento abstrato e o raciocı́nio lógico,
imprescindı́veis para a aprendizagem de algoritmos, são habilidades que eventualmente
não puderam ser trabalhadas de forma efetiva com todos os alunos durante sua formação
antes do ingresso no ensino superior. Tal fato tem sido apontado como causador
de desistências e cancelamentos nas disciplinas de algoritmos e consequente evasão
dos cursos de computação [Gomes 2008]. A disciplina de algoritmos exige sólidos
conhecimentos de raciocı́nio lógico, necessários para que o aluno não incorra em
erros considerados primários durante a resolução de exercı́cios. Quando o aluno passa
por dificuldades nesse aspecto, isso pode contribuir para seu baixo desempenho nas
avaliações, fazendo-o sentir-se desestimulado e propenso a desistir. Trata-se de um
problema complexo, que envolve aspectos sobre a educação dos alunos desde o ensino
médio.
A importância da mediação do erro tem ganhado relevância e vem se tornando um
recurso cada vez mais explorado pelos Ambientes Virtuais de Aprendizagem (AVAs). Os
estudos de [Machado 2009] nos mostram que a mediação em um AVA só é efetiva com
forte interação do tutor do curso, pois é o tutor quem orienta o aluno nesses novos espaços
virtuais, dando significado aos conteúdos. O tratamento de erros através de sua mediação
em ferramentas de autoria tem como exemplos o projeto CARRIE, que deu origem ao
sistema FARMA2 , o qual serviu de base para a FARMA-ALG. As três soluções têm como
proposta a retroação ao estado de erro para sua mediação e promoção do aprendizado
através de sua remediação.
É importante frisar que, quando falamos de mediação, nos referimos à abordagem
intervencionista de Vygostisk, que provoca mudanças, promove o desenvolvimento
através de uma intencionalidade socialmente produzida. A remediação, por conseguinte,
consiste na imediata correção do erro, com rápido retorno sobre os erros cometidos pelo
aluno, para que ele possa ser orientado ao longo do processo e não somente na etapa final.

2
http://farma.educacional.mat.br/

57
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

3. Conceitos da FARMA-ALG
A proposta central da FARMA-ALG é promover a mediação do erro no ensino
de programação de computadores considerando uma abordagem sócio-interacionista
[Kutzke 2014]. Sua implementação teve como base a ferramenta FARMA, um arcabouço
que permite a construção de exercı́cios de conceitos matemáticos. A escolha se justifica
por ela apresentar um mecanismo eficiente para autoria de OAs e possuir um mecanismo
de armazenamento automático de respostas, que permite a retroação aos estados de erros.
Adicionalmente, a FARMA-ALG oferece um mecanismo de visualização das respostas
considerando os grafos de relações existentes entre vários registros.
O esquema de funcionamento da FARMA-ALG foi herdado da FARMA, sobre a
qual foram adicionadas novas funcionalidades. Para tal, foi proposto um novo arcabouço,
que contempla quatro sub-módulos: armazenamento, recuperação, visualização e
manipulação. Sua organização pode ser conferida na Figura 1 e suas caracterı́sticas e
principais funcionalidades são abordadas a seguir.

Figura 1. Organização do arcabouço da FARMA-ALG

3.1. Armazenamento
O mecanismo de armazenamento automático de respostas da FARMA foi mantido
na FARMA-ALG. Foram adicionadas duas novas funcionalidades: a máquina de
similaridade e o grafo de similaridade. A máquina de similaridade permite calcular o grau
de semelhança entre duas respostas, de acordo com parâmetros definidos. São verificadas
falhas de segmentação, erros de compilação, utilização de memória, tempo de execução e
as semelhanças entre a saı́da obtida para cada conjunto de testes. Também são verificados
os graus de semelhança entre os códigos-fonte das repostas e entre as saı́das obtidas para
cada caso de teste.
O grafo de similaridade é formado à medida em que os alunos vão submetendo
suas respostas na FARMA-ALG. A máquina de similaridade procura por semelhanças
em respostas de alunos que sejam da mesma turma à uma mesma questão. Caso não

58
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

sejam encontradas semelhanças, é realizada uma nova comparação para a mesma questão,
entretanto de turmas diferentes. Por fim, a resposta é comparada com outras questões, em
busca de similaridades de código-fonte.

3.2. Recuperação
A recuperação de respostas é composta pelas funcionalidades de busca de registros e
de recomendação. A funcionalidade de busca permite que professores e alunos possam
encontrar respostas de assuntos especı́ficos, relevantes para o processo de mediação do
erro. O sistema de busca é também capaz de recuperar trechos de código-fonte presentes
nas respostas dos alunos, permitindo que o professor busque por construções comuns,
como array[min..max], por exemplo. Durante o procedimento de busca, o professor
pode filtrar os resultados por intervalo de tempo, usuário, turma, objeto de aprendizagem,
questão ou categoria.
A funcionalidade de recomendação tem como base a análise do grafo de
similaridade das respostas. Ao realizar a análise, o sistema encontra registros que podem
ser relevantes para um determinado grupos de alunos, sugerindo recomendações. O
sistema então oferece a oportunidade do professor aceitar as recomendações e enviar
comentários sobre elas aos alunos.

3.3. Visualização
Para que o professor possa manipular os registros armazenados na FARMA-ALG, é
necessário que ele tenha ao seu dispor as ferramentas de visualização necessárias. Os
seguintes modos estão disponı́veis: grafo, linha do tempo, visualização de respostas e
outras visualizações. No sentido de auxiliar o professor na tarefa de manipulação dos
registros, a funcionalidade de visualização gráfica do grafo de similaridade é um recurso
de destaque. Ao visualizar o grafo, é possı́vel observar caracterı́sticas de uma única
resposta bem como das relações entre respostas diferentes. A Figura 2 mostra a tela com
um grafo de similaridade e as opções disponı́veis em um menu vertical, como adicionar
ou remover respostas, adição de aresta, pausa do movimento do grafo, centralização e
remoção de respostas.

Figura 2. Grafo de similaridade

3.4. Manipulação
As respostas incorretas são apresentadas como vértices de cor preta e as respostas corretas,
em vértices de cor verde. Ao selecionar a aresta de uma relação entre vértices, é

59
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

apresentada uma visualização com os detalhes da relação. A partir dessa tela, o professor
pode executar operações como comparar as respostas e então confirmar ou rejeitar a
similaridade entre elas.
Uma das principais funcionalidades é o agrupamento automático de respostas
similares. O professor tem a opção de operar sobre os agrupamentos, apropriar-se das
informações armazenadas e aplicar as intervenções que considerar necessárias. O sistema
oferece um mecanismo de atribuição automática de relações entre respostas, realizada
pela máquina de similaridade. É permitido ao professor a manipulação dos registros,
inserindo ou removendo relações entre eles, nos casos em que a máquina de similaridade
não foi capaz de fazê-las automaticamente.
Quanto mais o professor interage com o sistema através de suas ações de
manipulação dos registros de respostas, mais ”treinada”a aplicação se tornará. A
FARMA-ALG oferece ao professor duas formas distintas para que ele realize a
manipulação dos registros. Ele pode operar diretamente o grafo de similaridade, o que
facilita sua abstração e compreensão, ou acessar as respostas disponı́veis em uma linha
do tempo, de forma que ele pode analisar o contexto da formação dos conceitos do
aluno. Assim, o docente contribui com subsı́dios para que a máquina de semelhança
possa melhorar as generalizações automáticas das categorizações das respostas.

4. Avaliação da FARMA-ALG
A ferramenta permite criar e disponibilizar objetos de aprendizagem para o ensino de
programação de computadores. Dessa forma, torna-se possı́vel ao professor manipular,
classificar e entender as relações entre as repostas de seus alunos. A plataforma
é disponibilizada via Web, sua interface é limpa, leve, intuitiva e agradável, o que
caracteriza desde o acesso, a vocação sócio-interacionista proposta.

4.1. Interface
Ao acessar a FARMA-ALG, a tela inicial oferece as opções de entrar como um usuário
já cadastrado, registrar-se ou obter informações detalhadas sobre a ferramenta. Ainda na
tela inicial, são mostradas miniaturas de alguns módulos especı́ficos, com breves porém
sucintas explicações sobre as funcionalidades de cada uma delas, como manipulação das
respostas, recomendações automáticas para análise de respostas relevantes e os diferentes
tipos de visualizações disponı́veis. Os desenvolvedores se dedicaram aos detalhes de
Interface Humano-Computador (IHC), visto que, ao selecionar a opção entrar, o usuário,
que já deve estar cadastrado, será direcionado para a tela de autenticação. Caso ainda não
tenha efetuado o registro, é possı́vel selecionar a opção para registrar-se, que aparece na
parte inferior da mesma tela, sem necessidade de voltar à tela inicial.
Ao acessar o sistema pela primeira vez, é apresentada uma mensagem de boas
vindas ao usuário, com explicações sobre as opções disponı́veis. Após a leitura, o usuário
pode optar em fechar o aviso ou selecionar a opção para que a mensagem não seja exibida
novamente, otimizando a vizualização de outros itens. A tela inicial da FARMA-ALG
é bastante simples e intuitiva contando com um painel de mensagens relevantes para o
professor, que exibe itens como número de respostas corretas e incorretas, quantidade
de turmas e alunos, comentários e mensagens, as últimas respostas das turmas e as
recomendações feitas automaticamente pelo sistema. Na lateral esquerda encontramos

60
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

um completo menu que dá acesso à todas as funcionalidades disponı́veis. A interface foi
desenvolvida considerando que o acesso pode ser efetuado em qualquer tipo de dispositivo
e portanto, conta com recurso de responsividade, permitindo que seus elementos gráficos
e menus se ajustem automaticamente à qualquer resolução de tela.

4.2. Utilização
Destacamos como diferencial, a funcionalidade do grafo de similaridade, que possibilita
a comparação entre respostas de diferentes alunos. Após a criação dos OAs e exercı́cios,
a inserção de questões também se demonstrou ser simples, sendo efetuada em poucos
passos. Em todos os passos é disponibilizado um editor embutido no formulário, com
recursos de formatação no estilo WYSIWYG (What You See Is What You Get). Ao criar
uma ou mais questões para um determinado exercı́cio, é solicitado ao autor que marque
a opção que determina em qual linguagem de programação o aluno deve submeter seu
código, devendo optar entre Pascal ou C.
A utilização do grafo de manipulação de respostas é simples e provida de vários
recursos para busca, filtragem e manipulação das respostas que aparecem. Através da
visualização do grafo, foi possı́vel facilmente analisar as relações entre as respostas, o
que constitui poderoso recurso pedagógico ao professor.

5. Considerações finais e trabalhos futuros


Os recursos detalhados acima, aliados à possibilidade de envio de mensagens e
comentários aos alunos, corrobora para o êxito da proposta sócio-interativa da ferramenta.
Para além da instrumentalização do professor, a FARMA-ALG pode desempenhar papel
fundamental para promover a superação tradicional do erro. Os alunos e professores das
turmas de algoritmos, que historicamente têm um ı́ndice de desistência elevado, podem
se beneficiar da abordagem interacionista que a ferramenta oferece.
As questões são avaliadas através de padrões de entrada e saı́da (casos de teste),
que devem ser manualmente construı́dos e fornecidos pelo professor. A precisão da
correção de uma questão de um exercı́cio está intrinsicamente ligada à quantidade
e à qualidade dos casos de teste, que devem ser elaborados, testados e cadastrados
manualmente na ferramenta, pelo professor. Ao avaliar essas funcionalidades e em
discussão com os autores da FARMA-ALG, identificamos a necessidade de três novas
funcionalidades, que poderiam ser implementadas pelos próprios desenvolvedores, ou por
qualquer pesquisador interessado, que contribuiriam para a melhoria da ferramenta.
A primeira refere-se à possibilidade do professor enviar uma solução de referência
(código-fonte) correta. A segunda funcionalidade receberia o código-fonte de referência
submetido e criaria todos os possı́veis casos de teste para a questão, tirando do professor
grande parte do trabalho manual da criação dos casos de teste. Finalmente, a última
nova funcionalidade melhoraria o método de correção pela adição da correção do código
submetido pelo aluno através de ferramentas de análise de código-fonte.

Referências
Ainsworth, S. (2006). Deft: A conceptual framework for considering learning with
multiple representations. Learning and Instruction, 16(3):183–198.

61
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Giraffa, Lucia Maria Martins e Mora, M. d. C. (2013). Evasão na disciplina de algoritmo


e programação: Um estudo a partir dos fatores intervenientes na perspectiva do aluno.
In III Conferencia Latinoamericana sobre abandono en la educación superior. Mexico.
Gomes, Anabela e Henriques, J. e. M. A. (2008). Uma proposta para ajudar alunos com
dificuldades na aprendizagem inicial de programação de computadores. Educação,
Formação & Tecnologias-ISSN 1646-933X, 1(1):93–103.
Krynski, E. M. (2013). Modelagem do processo de aquisição de conhecimento apoiado
por ambientes inteligentes. PhD thesis, Universidade Federal do Paraná, Setor de
Ciências Exatas, Programa de Pós-graduação em Informática.
Kutzke, Alexander Robert e Direne, A. (2014). Mediação do erro na educação: um
arcabouço de sistema para a instrumentalização de professores e alunos. In Anais do
Simpósio Brasileiro de Informática na Educação, volume 25, pages 737–746.
Kutzke, A. R. and Direne, A. I. Informática educacional e a mediaçao. 2015.
Leite, Maici e Marczal, D. e. K. E. M. e. P. A. e. D. A. e. R. F. (2015). Otimizando o
processo de ensino e aprendizagem com a arquitetura para desenvolvimento de objetos
de aprendizagem-adoa. In Anais do Simpósio Brasileiro de Informática na Educação,
volume 26, page 1002.
Machado, Suelen Fernanda e Teruya, T. K. (2009). Mediação pedagógica em ambientes
virtuais de aprendizagem: a perspectiva dos alunos.
Marczal, D. (2014). FARMA: Uma ferramenta de autoria para objetos de aprendizagem
de conceitos matemáticos. PhD thesis.
Marczal, D. and Direne, A. (2012). Farma: Uma ferramenta de autoria para objetos de
aprendizagem de conceitos matemáticos. Anais do Simpósio Brasileiro de Informática
na Educaçao, 23.
Marczal, D., Direne, A., Pimentel, A., and Krynski, E. M. (2015). Farma: Uma
ferramenta de autoria para objetos de aprendizagem de conceitos matemáticos. In
Anais dos Workshops do Congresso Brasileiro de Informática na Educação, volume 4,
page 23.
Marczal, D. and Direne, A. I. (2011). Um arcabouço que enfatiza a retroação a contextos
de erro na solução de problemas. Revista Brasileira de Informática na Educação,
19(01):63.
Martins, L. M. (2014). Os fundamentos psicológicos da pedagogia histórico-crı́tica e
os fundamentos pedagógicos da psicologia histórico-cultural. Germinal: Marxismo e
Educação em Debate, 5(2):130–143.
Nascimento, J. K. F. d. (2007). Informática aplicada à educação. Brası́lia: Universidade
de Brası́lia.
Ramos, G. S. (2011). Detecçao e remediaçao de erros na generalizaçao de conceitos
matemáticos por meio de sistemas tutores inteligentes.

62
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Protótipo de Um Sistema de Controle Automático de


Faróis Veiculares Utilizando Arduíno
Tiago Gerke1, Cleverson Sebastião dos Anjos1,ThalitaScharr Rodrigues
Pimenta1Valter Luis Estevam Júnior1, Roger Adriano Bressani Mazur1
1
Instituto Federal de Educação, Ciência e Tecnologia do Paraná – Irati, PR - Brasil
[tiago.gerke, cleverson.anjos, thalita.pimenta, valter.junior,
roger.mazur]@ifpr.edu.br
Abstract.Most traffic accidents that occur on Brazilian roads are due to the
lack of attention from the drivers. Especially at night, drivers should be more
careful, since the car lighting can harm other drivers. The goal of this article
is to propose a support system for drivers that automatically controls the
lights in vehicles, using Arduino prototyping platform with light sensors. A
prototype that allows the control of LEDs based on the level of incident light
was created. It is expected that this project evolve into a usable product that
can be integrated into vehicles.
Resumo. A maioria dos acidentes de trânsito que ocorrem nas estradas
brasileiras são devido a falta de atenção por parte dos motoristas.
Principalmente a noite, os condutores devem ter cuidado especial, uma vez
que a iluminação do carro pode prejudicar os demais motoristas. O objetivo
deste artigo é propor um sistema de auxílio para motoristas que controle
automaticamente os faróis em veículos, utilizando a plataforma de
prototipação Arduíno com o auxílio de sensores de luminosidade.Um
protótipo foi criado, e já permite que o acendimento de LEDs seja controlado
com base na luminosidade incidente. Espera-se que esse projeto evolua para
um produto utilizável e que possa ser integrado em veículos.

1. Introdução
A maior causa relacionada a ocorrência de acidentes nas estradas
brasileiras ainda é o comportamento humano. Em 2014, segundo dados da
PRF (2014), foram registrados mais de 165 mil acidentes de trânsito, dos
quais 32% se deram pela falta de atenção, 20% pela velocidade incompatível
e 12% por ultrapassagens indevidas. Dentre as causas que mais geram
acidentes com óbito (normalmente causada por colisões frontais) está a falta
de visibilidade [PRF 2014].
De acordo com DPVAT (2014), os acidentes que mais geraram
indenizações no ano de 2014 aconteceramdurante o anoitecer, representando
23% do total. Quando considerados os acidentes ocorridos no período da

63
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

noite e madrugada, tem-se que 49% dos acidentes indenizados ocorreram no


horário compreendido entre as 17:00 e 06:00 horas.
A iluminação no período noturno é uma das questões que influencia
muito o motorista, uma vez que este pode ter sua visão ofuscada devido as
luzes de veículos trafegando no sentido contrário bem como atrapalhar a
visão de demais motoristas pala má utilização dos faróis, principalmente os
faróis altos. Devido a isso, o CTB (Código de Transito Brasileiro) no artigo
40, inciso 2, prevê que o motorista pode utilizar o farol alto em vias não
iluminadas exceto ao cruzar ou seguir outros veículos, e quando
descumprido configura infração grave [DENATRAM, 2016].
Tendo em vista que a falta de atenção é um dos principais causadores
de acidentes de trânsito, e com o intuito de auxiliar motoristas que trafegam
no período noturno, este trabalho tem por objetivo apresentar um protótipo
de um sistema baseado em Arduíno para automatizar o acendimento dos
faróis altos.
2. Metodologia
Neste trabalho está sendo utilizado uma placa de prototipação
arduíno, modelo UNO(figura 1.a), a qual fornece 14 portas digitais (que
podem ser utilizadas para entrada e saída de dados), 6 portas de entrada
analógicas, uma conexão USB para comunicação com o computador (e pode
ser utilizada também para alimentação) e uma porta para alimentação externa
(fonte ou bateria) [ARDUINO 2016].

Figura 1. Placa Arduíno Uno, Protoboard e Módulo LDR

64
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Com o objetivo de aumentar a capacidade da placa arduíno, é


utilizado uma protoboard (figura 1.b), a qual permite uma serie de conexões
e criação de circuitos experimentais sem que haja a necessidade de soldagem
dos componentes, o que permite alterações e melhorias no decorrer do
projeto.
Para medição e determinação do índice de iluminação do ambiente,
são utilizados dois Módulos LDR (Light-Dependent Resistor – Resistor
Dependente de Luz) (figura 1.c). Cada módulo possui um resistor sensível a
fótons de luz, o que faz com que a resistência do sensor aumente ou diminua
de acordo com a intensidade de luz incidente. Dessa forma é possível medir
a luminosidade de determinado ambiente com valores variando entre 0 e
1023 (bastante incidência de luz e ausência de luz, respectivamente).
Como o projeto trata-se de um protótipo, para primeira simulação das
lâmpadas de um farol de um automóvel foram utilizados 4 lâmpadas LED
(Diodo Emissor de Luz), 2 representando o farol baixo e 2 representando o
farol alto. Para a correta regulagem de tensão e evitar danos aos LEDs estes
foram ligados com o auxilio de 4 resistores de 220 ohms.
Todos os componentes citados foram montados em um circuito para
os primeiros testes, como pode ser observado na figura 2. Os sensores de
iluminação foram ligados através das entradas analógicas, permitindo que
pequenas diferenças de iluminação sejam detectadas. Todos os LEDs foram
conectados através das portas digitais, que foram configuradas como portas
de saída, tornando possível o acendimento através do código. Os LED sem
vermelho no circuito simulam os faróis baixos de um veículo, e os verdes os
faróis altos.
Além disso, para programação do protótipo foi utilizado o software
Arduíno na versão 1.6.12, que é uma IDE open-source e multiplataforma
para codificação de todas placas Arduíno disponíveis.
Para realização dos testes preliminares, com o intuito de verificar as
medições obtidas pelos módulos LDR, o protótipo foi colocado na extremidade
de uma sala escura, e na outra extremidade (de 4 a 5 metros de distância) foram
colocadas fontes de iluminação (direcionadas aos sensores). O protótipo foi
programado para manter sempre os 4 LEDs acessos em ambiente totalmente
escuro, simulando um carro trafegando em uma estrada escura com os faróis
altos acesos, e caso houvesse alguma alteração no índice de iluminação
verificado pelos sensores os faróis altos seriam apagados.

65
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Figura 2. Cirquito protótipo do sistema

3. Considerações Finais
Através do protótipo inicial foi possível perceber que com mais estudos e
testes o sistema tem potencial para se tornar um produto. Os sensores foram
capazes de captar diferentes intensidades luminosas, o que tornou o sistema apto
a controlar automaticamente os LEDs que simulam os faróis altos.
Novos testes serão realizados com intuito de verificar qual a distância
máxima que os módulos LDR conseguem captar mudanças na luminosidade.
Além disso outros sensores de luminosidade e distância serão agregados ao
protótipo e testados, para identificar o melhor conjunto possível de sensores para
solução do problema.
Ainda, pretende-se integrar esse sistema em um automóvel, com objetivo
de investigar variáveis e fatores que possam interferir no projeto e que não foram
identificados nos testes já realizados. Sendo assim, as próximas etapas do projeto
consistem em analisar a real aplicabilidade do sistema.

4. Referências
ARDUINO (2016) - https://www.arduino.cc/, Setembro.
DENATRAM – Departamento Nacional de Trânsito (2016) “Código de Trânsito Brasileiro”,
http://www.planalto.gov.br/ccivil_03/leis/L9503.htm, Setembro.
DPVAT - Seguro de Danos Pessoais Causados por Veículos Automotores de Vias Terrestres
(2014) “Boletim Estatístico – Ano 04 – Volume 04 – Janeiro a Dezembro de 2014”,
http://www.seguradoralider.com.br/Documents/boletim-estatistico/Boletim-Estatistico-Ano-
04-Volume-04.pdf, Setembro.
PRF – Polícia Rodoviária Federal (2014) “PRF – Balanço de Atividades 2014”,
https://www.prf.gov.br/portal/noticias/nacionais/prf-balanco-de-atividades-2014, Setembro.

66
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Aspectos comportamentais do algoritmo GraphMaster


para a implementação de chatterbots
Danilo Rodrigues dos Santos, Fernando Selleri Silva, Acelmo de Jesus Brito

Faculdade de Ciências Exatas e Tecnológicas – Universidade do Estado de Mato Grosso


(FACET/UNEMAT)
Rua A, S/N, São Raimundo, Cx. Postal 92, CEP: 78390-000, Barra do Bugres, MT,
Brasil
danilo_santosrs@hotmail.com, selleri.br@gmail.com, acelmo@unemat.br

Abstract. Chatterbots are software agents built to perform simulation dialogue


in natural language. In this article we describe the aspects of GraphMaster
algorithm behavior for creating chatterbots to both take based on theoretical
assumptions that underpin the Computational Intelligence study and
Computational Linguistics, using the literature search performed on a course
conclusion work entitled "Chatterbot Education: approach to building an
educational software assist in the teaching of mathematics".

Resumo. Chatterbots são agentes de software construídos para realizar


simulação de diálogo em linguagem natural. Neste artigo descrevemos os
aspectos de comportamento do algoritmo GraphMaster para a criação de
chatterbots, para tanto tomamos por base pressupostos teóricos alicerçados
no estudo de Inteligência Computacional e Linguística Computacional,
utilizando a pesquisa bibliográfica realizada em um trabalho de conclusão de
curso intitulado "Chatterbot Educacional: Abordagem para construção de um
software Educativo auxiliar no ensino de matemática".

1. Introdução
Contemporaneamente a área da Inteligência Artificial (IA) tem prosperado e se
modificado, tornando possível a implementação de algoritmos complexos. Para este
cenário têm-se novas formas que apoiam a interação entre homem e computador, sendo
uma dessas formas a tecnologia chatterbot, agentes inteligentes de conversação.
Utilizando técnicas de IA os chatterbots são capazes de simulação de diálogo [Ferreira;
Uchôa 2013]. O mecanismo responsável pelo funcionamento de chatterbots é o
algoritmo GraphMaster e seu comportamento espelha-se na busca em profundidade
[Moura 2008].
Utilizando a pesquisa bibliográfica em uma abordagem metodológica descritiva
do comportamento do algoritmo GraphMaster o artigo está estruturado em três seções, a
seção 2 trata sobre conceituar inteligência computacional, linguística computacional e
chatterbots. A seção 3 trata explorar o objeto de investigação neste artigo que é o
algoritmo GraphMaster. Por fim, a seção 4 trata das considerações finais em relação ao
que foi exposto e os apontamentos de trabalhos futuros e melhorias.

67
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

2. Fundamentação Teórica
O termo inteligência computacional ou inteligência artificial são termos que remetem ao
mesmo conceito, no entanto, consagrou-se uso do termo Inteligência Artificial (IA)
[RABUSKE 1995]. Define-se “[...] a inteligência artificial é um subrefúgio, um
artifício, destinado a dominar as máquinas conferindo-lhes uma inteligência” [Ganascia
1993, p. 27]. De outro modo, considera-se a IA como “[...] o estudo do comportamento
inteligente (em homens, animais e máquinas) e a tentativa de encontrar formas pelas
quais esse comportamento possa ser transformado em qualquer tipo de artefato por meio
de engenharia” [Whitby 2004, p. 19]. Em outra definição “[...] a IA tem por objetivo
implementar numa máquina a possibilidade de realizar tarefas que uma criança é capaz
de realizar, mas o mais poderoso dos supercomputadores ainda não” [Rosa 2011, p. 2].
A linguística computacional explora as relações entre linguística e informática,
sobretudo, é a área da ciência da linguística voltada para o tratamento computacional
das linguagens e das línguas naturais [Martins 2011]. A linguística computacional torna
possível a construção de sistemas com capacidade de reconhecer e produzir informação
apresentada em linguagem natural, sendo dividida em duas subáreas: a Linguística de
Corpus e o Processamento de Linguagem Natural (PLN). Contudo, considerando que há
muitos trabalhos que envolvem as duas subáreas então esta divisão nem sempre é nítida.
[Othero; Menuzzi 2005].
Os chatterbots surgiram no contexto do Processamento de Linguagem Natural
[Moura 2008], no entanto, a forma com que o chatterbot tem seu funcionamento não
caracteriza processamento de linguagem natural, mas sim como uma simulação de
diálogo [Ferreira; Uchôa 2013] que segue o padrão de estimulo-resposta [Santos;
Camilo; Kamienski 2009]. O nome (chatterbot) vem da junção de duas palavras
inglesas: chat (conversar, bater papo) e bot (abreviação de robot, robô) [Moura 2008]. O
primeiro chatterbot foi proposto figurava a comunicação em linguagem natural e
batizado pelo nome de Eliza [Weizenbaum 1966].

3. O algoritmo GraphMaster
O algoritmo GraphMaster é utilizado pelo motor de inferência de chatterbots baseados
na tecnologia ALICE (Artificial Linguistic Internet Computer Entity], utilizam a
linguagem AIML (Artificial Intelligence Markup Language), padronizada e espelhada
na linguagem XML (eXtensible Markup Language), para representar conhecimento
[Leonhardt et al. 2003].
O algoritmo GraphMaster é implementado tendo com base um grafo como
estrutura de dados [Wallace 1995], assim as categorias codificadas em um arquivo
AIML são lidas e introduzidas neste grafo. Para facilitar a compreensão observa-se a
Figura 1 que trás um exemplo de arquivo AIML.

68
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Figura 1. Exemplo de arquivo AIML

O grafo é construído a partir das categorias armazenadas no arquivo AIML, em


que cada categoria representa um nó no grafo e cada nó possui dois elementos, o pattern
que corresponde ao padrão de busca e template que corresponde à resposta [Rodrigues
2009]. A linguagem AIML possui outras versões e conta com uma variedade de
marcações (tags), no entanto, com poucas marcações constroem-se bases de
conhecimento. A Figura 2 trás um exemplo da representação do grafo para o exemplo da
Figura 1.

Figura 2. Grafo para representação do arquivo AIML da Figura 1

Uma vez que o algoritmo GraphMaster tenha montado o grafo de busca a partir
do arquivo AIML, então com o padrão é feito uma busca em profundidade, técnica esta
que consiste em ir até o mais profundo do grafo [Ziviani 2004] e até que seja encontrado
o pattern. Portanto, o algoritmo faz a busca de uma resposta na base de conhecimento,
analisando a entrada do usuário (input) e o uso de caracteres coringas disponível em
AIML. Outro ponto a destacar é que a representação dos pattern em um grafo é feito
palavra a palavra, desconsiderando os espaços em branco, o que resulta em uma
compactação na estrutura representada e consequentemente uma diminuição no volume
de dados armazenado em memória.

69
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

4. Considerações finais
Com a crescente popularização do acesso a Internet, chatterbots baseados na tecnologia
ALICE foram facilmente difusos, pois são baseados em AIML que facilitou a criação de
diversas bases de conhecimento e a criação e otimização de motores de inferência,
sendo possível encontrar implementações em diversas linguagens de programação.
Pode-se então compreender chatterbots como agentes inteligentes de software que são
capazes de simular diálogo em linguagem natural.
A abordagem deste artigo concentrou-se apresentar o mecanismo de
funcionamento de chatterbots baseados na tecnologia ALICE, possibilitando que
pesquisadores no assunto possam ter subsídios norteadores para fazerem suas
implementações. Aponta-se como trabalhos futuros a implementação do algoritmo
GraphMaster em uma linguagem de programação e sua aplicação em um base de
conhecimento de teste.

Referências Bibliográficas
Ferreira, L. P. e Uchôa, J. Q. () “Desenvolvimento de um chatbot para auxiliar o ensino
de Espanhol como Língua Estrangeira”, https://goo.gl/ssYuYW, Agosto.
Ganascia, J. G. (1993) Inteligência Artificial, Instituto Piaget.
Leonhardt, M. D. et al. (2003) “ELEKTRA: Um Chatterbot para Uso em Ambiente
Educacional”, https://goo.gl/6E5BYM, Agosto.
Martins, R. T. (2011) “E se as máquinas não precisarem de regras para aprender a
linguagem humana”, https://goo.gl/Yh1aVA, Outubro.
Moura, D. S. de (2008) “Psicochat: chatterbot aplicado ao ensino de psiquiatria”, Centro
Universitário Feevale.
Othero, G. A.; Menuzzi S. M. (2005) “Linguística Computacional: teoria e prática”,
Parábola.
Rabuske, R. A. (1995) “Inteligência Artificial”, UFSC.
Rodrigues, R. L. 2009, “Chatterbot: Agente inteligente simulador de linguagem natural
aplicado a educação”, Universidade Estadual da Paraíba
Rosa, J.L. G. (2011) “Fundamentos da inteligência artificial”, LTC.
Santos, M.; Camilo, E.; Kamienski, C. (2009) “Desenvolvimento de um chatterbot com
reconhecimento e síntese de voz na web que realiza cálculos de expressões
matemáticas simples”, IV CONNEPI.
Wallace, R. (1995). “Alice: artificial linguistic internet computer entity - the a.l.i.c.e.a.i.
foundation”, http://www.alicebot.org/, Outubro.
Weizenbaum, J. (1966) “ELIZA: A computer program for the study of Natural
Language Communication between man and machine”, Communications of ACM.
Whitby, B. (2004) “Inteligência artificial: um guia para iniciantes”, Madras.
Ziviani, N. (2004) “Projeto de algoritmos: com implementação em Pascal e C”, Pioneira
Thomson Learning.

70
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Testes de penetração para avaliação de segurança em redes de


computadores
Matheus M. De Marco1
1
Núcleo de ciência da computação – Universidade Tecnológica Federal do Paraná (UTFPR)
Medianeira – PR – Brazil

Abstract. Nowadays institutions such as banks, companies and universities are


dependent on computerized systems and data transmission networks to be effici-
ently operational. For that reason, it is essential that those systems and networks
provide a satisfying level of security and reliability. Considering that scenario,
the present paper proposes to conduct a penetration tests on networks and sys-
tems to evaluate the current security level and consequently improve it. The test
will be performed using the Penetration Testing Execition Standardard (PTES)
methodology , producing a detailed report on the current situation of the secu-
rity mechanisms running on the network and systems.

Resumo. Com a dependência que se tem hoje de sistemas informatizados e das


redes de transmissão de dados para o funcionamento eficiente de instituições
como bancos, empresas, universidades, entre outros, é fundamental que estes
ofereçam nı́veis de segurança e confiabilidade satisfatórios. Considerando este
cenário, propõe-se a realização de testes de penetração em redes e sistemas,
com o fim de avaliar a atual situação dos presentes mecanismos de segurança
e consequentemente aprimorá-los . A execução dos testes seguirá a metodo-
logia definida pelo Penetration Testing Execition Standardard (PTES), que ao
fim produzirá um relatório detalhado sobre a atual situação dos mecanismos
de segurança presentes na rede de dados e sistemas, além de apontar eventuais
falhas e suas respectivas soluções.

1. Motivação
Nos dias de hoje, onde grande parte das informações que são produzidas e acessadas estão
armazenadas no formato digital, ou seja, estocadas em algum tipo de sistema computaci-
onal, certas informações tem um valor imensurável ou podem desencadear catástrofes se
colocadas em mãos erradas, portanto é extremamente importante que estes sistemas com-
putacionais sejam seguros e confiáveis. Segundo [Schneier 1996], para alcançar estes
requisitos um sistema deve garantir confidencialidade, integridade e disponibilidade. A
confidencialidade assegura que as informações devem somente ser acessadas por usuários
autorizados. Integridade se trata de garantir que informações não sejam modificadas por
usuários não autorizados, e por último, disponibilidade é a garantia de que o acesso ao
sistema não será negado de forma maliciosa aos usuários autorizados.
Quando um sistema não apresenta este tipo de segurança e confiabilidade, pessoas
mal intencionadas podem aproveitar-se disto para acessar informações confidencias bus-
cando o autobeneficio ou até mesmo denegrir a imagem de alguém. Exemplo disto foi o
que aconteceu em Julho de 2015, em que um grupo de hackers intitulados como The Im-
pact Team invadiram os servidores do site de infidelidade AshleyMadison.com roubando

71
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

informações pessoais de seus usuários como nomes, telefones, transações financeiras,


endereços, históricos de busca, etc. Após o roubo, o grupo ameaçou divulgar publica-
mente as informações caso a empresa Avid Life Media, dona do web site, não o tirasse do
ar. Como a organização não atendeu à solicitação dos hackers, as informações roubadas
foram publicadas expondo usuários bem como manchando o nome da companhia.
Para evitar este tipo de situação existem os testes de penetração, que apesar de
não garantirem que um sistema seja completamente seguro e esteja a prova de ataques,
eles aumentam o nı́vel de segurança de um sistema computacional detectando e remo-
vendo vulnerabilidades que são publicamente conhecidas impedindo assim que atacantes
se utilizem destas para atacar o sistema [Prandini and Ramilli 2010].

2. Levantamento bibliográfico
Um teste de penetração, ou penetration test, ou pentest, é um processo de avaliação de
segurança que simula ataques reais de atacantes maliciosos a um sistema, visando encon-
trar e remover potenciais vulnerabilidades [Farah 2015]. Para obter sucesso na execução
do mesmo, é preciso escolher um entre os inúmeros padrões para execução de testes de
penetração disponı́veis no mercado. Entretanto, segundo [Farah 2015], apesar das me-
todologias apresentarem nomes ou uma ordem diferente para execução das etapas do
teste, as tarefas a serem executadas são fundamentalmente as mesmas. Por ser uma me-
todologia recomendada por vários autores e possuir uma carga teórica consideravelmente
pequena, a metodologia adotada neste trabalho será a do (PTES), que divide o pentest
em 7 etapas descrevendo as tarefas que devem ser cumpridas em cada uma destas. Par-
tindo da comunicação inicial com o cliente e motivação do teste, passando pela coleta
de informações, modelagem de ameaças, análise de vulnerabilidades, exploração, pós-
exploração e por fim a criação do relatório técnico [pentest-standard.org 2016].
A fase de acordos prévios consiste em discutir com o proprietário da rede ou
sistema, os aspectos referentes ao escopo do teste, como horário para execução, hosts
que participarão do teste, tipos de ataque que podem ser empregados, entre outros, além
de se obter por escrito uma autorização para a realização do teste. Já na fase de coleta
de informações, o objetivo é conseguir a maior quantidade de informação possı́vel sobre
o alvo a ser testado, uma vez que, quanto mais informação se tem sobre o alvo, maior
será a gama de vetores de ataque que poderão ser empregados na fase de modelagem das
ameaças [pentest-standard.org 2016].
Na modelagem de ameaças determina-se qual é o objetivo do testador perante ao
alvo e quais os métodos de ataque mais eficientes para alcançar este objetivo, ou seja,
como o testador pode causar o maior dano ao alvo e como ele fará isso. Na fase seguinte,
a análise de vulnerabilidades, o testador busca efetivamente por potenciais falhas que
irão determinar quão efetivas serão suas estrategias de ataque definidas na fase anterior
[Weidman 2014]. Na fase de exploração o testador executa os exploits que são capazes
de explorar as falhas encontradas na fase anterior, tentando assim comprometer o sistema
alvo. A fase de pós-exploração consiste em determinar se é possı́vel comprometer algo
a mais a partir do sistema comprometido. Por fim, na ultima fase, deve ser criado um
relatório técnico, descrevendo todas as vulnerabilidades encontradas, como foram explo-
radas, o que foi comprometido a partir disto e acima de tudo, indicar medidas que possam
ser tomadas para eliminar as vulnerabilidades encontradas[pentest-standard.org 2016].

72
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

3. Metodologia
Seguindo a metodologia descrita na seção anterior, o primeiro passo será definir o escopo
do teste e obter o termo de autorização para a execução do mesmo. Após finalizada esta
etapa, propõe-se o uso das ferramentas Whois, Netcraft1 e Nmap2 para coletar informações
sobre o alvo. As duas primeiras são capazes de extrair informações sobre os domı́nios
registrados e a terceira é capaz de escanear redes de computadores listando hosts ativos,
suas portas abertas e seus sistemas operacionais. De posse da informações coletadas sobre
o alvo, deve ser possı́vel ter uma visão geral de como os sistemas em teste operam, o que
possibilita a determinação dos meios pelos quais o testador será capaz de causar dano aos
usuários e/ou administradores do sistema.
Com o fim de encontrar potenciais vulnerabilidades, o escâner desenvolvido pela
empresa Rapid7, chamado de NeXpose, será utilizado. Este é capaz de analisar os hosts
ativos e encontrar potenciais falhas, sugerindo quais exploits pode ser utilizados para
explora-las, bem como suas respectivas remediações. Para a fase de exploração, o fra-
mework Metasploit será utilizado pois este possui uma grande variedade de exploits e
payloads prontos para o uso, facilitando e muito a exploração das falhas. Na fase de
pós-exploração, será analisado o cenário com o objetivo de determinar o que mais pode
ser explorado a partir do que foi comprometido na fase anterior. Por fim, será criado um
relatório técnico contendo os detalhes de cada faze do teste, as potenciais vulnerabilida-
des encontradas, como podem ser exploradas, o que pode ser comprometido caso isso
aconteça e seus respectivas correções.

4. Resultados esperados
Espera-se que sejam encontradas várias falhas nas redes e sistemas avaliados utilizando
a metodologia proposta, uma vez que segurança dificilmente é um aspecto tratado com a
devida atenção dentro de organizações que não são especializadas na área de computação.
Após finalizado o teste, espera-se que seja possı́vel a criação de gráficos como ilustra a
Figura 1, apresentando quais são as vulnerabilidades mais comuns encontradas.

Figura 1. Vulnerabilidades mais comuns encontradas na rede da UTFPR-MD.


1
Disponı́vel em: https://www.netcraft.com/
2
Disponı́vel em: https://nmap.org/

73
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Outra maneira de apresentar os resultados será classificando as vulnerabilidades


de acordo com o serviço que a mesma afeta, seu tipo, ou produto afetado por ela como
ilustra a Figura 2. Estes tipos de gráfico permitiriam uma visão geral do que foi encon-
trado para pessoas que não possuem conhecimento técnico na área.

Figura 2. Tipos de vulnerabilidades encontrados na rede da UTFPR-MD

Referências
Farah, T. (2015). SQLi Penetration Testing of Financial Web Applications : Investigation
of Bangladesh Region. (WorldCIS) World Congress on Internet Security, 2015, pages
146–151.
pentest-standard.org (2016). Penetration testing execition standard. acessado em 04/2016.
Prandini, M. and Ramilli, M. (2010). Towards a practical and effective security testing
methodology. ISCC ’10, pages 320–325. IEEE Computer Society.
Schneier, B. (1996). Applied Cryptogarphy: Protocols, Algorithms and source code in C.
John Wiley & Sons, Inc.
Weidman, G. (2014). Penetration Testing.

74
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Uso de Serious Games para educação e desenvolvimento de


jogos

Matheus A. S. Santana, Luciano Zamperetti Wolski

Universidade do Estado de Mato Grosso (UNEMAT)


Caixa Postal 78390-000 – Barra do Bugres – MT – Brasil
matheus.saviczki@gmail.com, lwolski@unemat.br

Abstract. This paper present, describes a brief introduction about development


and game programming. With the objective of developing a serious game to
encourage children and young people to take an interest in programming.

Resumo. Este artigo presente, descreve uma breve introdução sobre


desenvolvimento e programação de jogos. Com o objetivo de desenvolvimento
de um jogo sério para estimular crianças e jovens a se interessarem por
programação.

1. Introdução
A história dos games começou com jogos simples, como "Spacewar" e "Pong",
que eram criados por poucas pessoas no início da década de 1970 - a maioria dos
envolvidos eram programadores experimentando novas linguagens. Hoje, os games se
tornaram superproduções que exigem equipes numerosas e de diversas áreas - desde
artistas até engenheiros G1 (2009).
Ao ver das pessoas, jogos tem o objetivo apenas de entretenimento. Mas com o
desenvolvimento tecnológico e o apoio de pesquisadores da educação, jogos com o
objetivo de aprendizado, vem sendo desenvolvidos com a visão de auxiliar a população
em geral.
Uma das etapas mais importantes do desenvolvimento de um jogo, é a parte de
programação, que é a parte de dar vida aos cenários e personagens produzidos pelos
artistas e modeladores. O estágio de programação de um jogo, passar por vários
processos de experimento e desenvolvimento de testes. A programação de jogos, é uma
das subáreas de desenvolvimento de jogos.
Jogos Sérios (Serious Games) visam principalmente a simulação de situações
práticas do dia-a-dia, com o objetivo de proporcionar o treinamento de profissionais,
situações críticas em empresas, conscientização para crianças, jovens e adultos
Rodrigues et al, (2009).

2. Etapas para o Desenvolvimento de um Jogo


De acordo com Novak (2010) como qualquer outro software, para o
desenvolvimento de um jogo, passamos por várias etapas para desenvolver um game
completo e jogável. Como pode ser observado na Figura 1 segundo Novak (2010)
passamos por todos as etapas para chegar em um diagrama de fluxos.

75
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Figura 1. Fluxo de etapas para produção de um jogo. (Desenvolvido pelo autor)


As etapas são parecidas com as etapas de desenvolvimento de um software
casual, onde começa com seus conceitos, passa por fases de teste e no final é lançado
para produção.

3. Programação de Jogos
A programação de jogos, é algo muito peculiar entre os programadores, pois
muitos que estão acostumados a desenvolver sistemas, passam por alguma dificuldade
pelo tratamento da física e matemática do game.
A programação orientada a eventos é um paradigma de programação que não
segue um fluxo de controle padronizado, sendo que seus fluxos de controles são guiados
por sinais externos. Portanto sua aplicação está diretamente ligada com o
desenvolvimento de interfaces voltada para o usuário. (Silveira et al. [2007?])
Segundo Gonçalves (2016), programação orientado a eventos é largamente
utilizado em interfaces (como formulários, botões, caixas de texto) e em arquiteturas de
jogos, onde eventos desencadeiam outros eventos.
Como um exemplo que podemos dizer, é um evento que ocorre em um jogo
quando uma tecla é segurada pelo jogador, se programado corretamente, pode fazer com
que o personagem possa andar. Na Figura 2 observa-se um Script para movimento do
personagem desenvolvido em Unity 5 (C#), onde o método Movimentar() é chamado
por um FixedUpdate que é um evento que acontece constantemente e tem o objetivo de
atualizar os frames do jogo.

Figura 2. Script de movimento de um objeto personagem que se movimenta na horizontal


(Desenvolvido pelo autor)
O que se pode concluir, é que uma função orientada a eventos, é uma função que
é disparada assim que um evento ocorre.
A programação orientada a objetos (POO) diz respeito a um padrão de
desenvolvimento que é seguido por muitas linguagens, como C# e Java (Machado,

76
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

2015). A POO é uma composição e modelagem de vários elementos denominados como


objetos.
Segundo Machado (2015), a POO possui quatro pilares para uma linguagem de
programação ser considerada orientada a objetos, são eles:
A vantagem de se usar POO, é que os sistemas, em geral, possuem uma divisão
de código um pouco mais lógica e melhor encapsulada do que a empregada nos sistemas
não orientados a objetos. Isto torna a manutenção e extensão do código mais fácil e com
menos riscos de inserção de bugs. Também fica mais fácil reaproveitar o código (Frayze
2011).

4. Serious Games
Os Serious Games, são jogos eletrônicos que tem o objetivo de ensinar os
jogadores. Um exemplo que pode ser citado é o Food Force publicado pela ONU no ano
de 2005, onde os jogadores tem o objetivo de distribuir alimentos e alguns países
eradicados pela fome, até o país se tornar novamente auto-sustentavel.
Como pode-se notar na Figura 3, o jogo Code Cave (Desenvolvido pelo autor) é
um serious game desenvolvido para a área da educação. O Code Cave funciona da
seguinte forma, o jogador controla um personagem representado por um minerador
dentro de uma mina, que tem por objetivo pegar um minério aleatório que surgirá numa
localização randomizada dentro do mini mapa da caverna. Ao se movimentar através
dos métodos escritos em um textbox o personagem poderá chegar até o minério e assim
utilizando o comando “cavar();” ressurgirá outro minério em uma localização
randômica.
O objetivo do Code Cave, é ensinar crianças com idade entre 8 e 16 anos a
escrever códigos básicos para manipular o personagem. Como pode ser observado na
Figura 3, o jogo possui um balãozinho com algumas falas, onde estas se ajustam de
acordo com a quantidade de comandos que o jogador utiliza.

Figura 3. Code Cave jogo produzido para ensinar programação (Desenvolvido pelo autor)

Para um fácil entendimento os comandos foram elaborados de uma forma


relativamente simples:

77
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

mover(); Move o personagem de acordo com a direção que ele está, o objeto
sempre se moverá para frente.
girar(); Rotaciona o personagem emu ma escala de 90° para conseguir se
movimentar para cima, baixo, frente ou atrás.
cavar(); Ao o minério, o jogador poderá utilizar este comando para conseguir
pegar o minério.
Após usar uma sequencia de comandos, o jogador precisa apertar o botão
“COMPILAR”, que este garantirá que o objeto se mova, de acordo com os comandos
apresentados pelo jogador.

5. Conclusão
Neste trabalho apresentou-se uma breve introdução sobre os estágios completo
de desenvolvimento de um game, desde a programação até suas fases de testes. E a
elaboração e testes de um Serious Games para auxilio pedagógico de programação para
crianças, onde se espera obter um aumento na capicidade de raciocinio lógico e uma
melhor compreensão de funções de códigos.

Referencias
Frayze, D. “Programação Orientada a Objetos: uma introdução.” Disponível em:
<http://www.hardware.com.br/artigos/programacao-orientada-objetos/>. Acesso
em: 23 ago. 2016.
G1, “Conheça as etapas de produção de um game moderno”. Disponível em:
<http://g1.globo.com/Noticias/Games/0,,MUL1241561-9666,00-
CONHECA+AS+ETAPAS+DE+PRODUCAO+DE+UM+GAME+MODERNO.ht
ml>. Acesso em: 26 ago. 2016.
Gonçalves, Moises. “C# Orientado a Eventos - Delegates e Eventos”. Disponível em:
<http://www.devmedia.com.br/c-orientado-a-eventos-delegates-e-eventos-revista-
net-magazine-99/25654#>. Acesso em: 22 ago. 2016.
Novak, Jeannie. “Desenvolvimento de Games”. Traducao . 2. ed. [s.l.] CENGAGE
LEARNING, 2010. p. 340 – 350.
Machado, H. “Os 4 pilares da Programação Orientada a Objetos - POO.” Disponível
em: <http://www.devmedia.com.br/os-4-pilares-da-programacao-orientada-a-
objetos/9264>. Acesso em: 23 ago. 2016.
Rodrigues, Herbet Ferreira, L. dos S. Machado, and Ana Maria Gondim Valença. "Uma
proposta de serious game aplicado à educação em saúde bucal." anais do Workshop de
Realidade Virtual e Aumentada, Santos, Brazil, CDROM. 2009.
Silveira, M. P.; Rafael; Vargas P. T. “Programação Orientada a Eventos.” Disponível
em:
<http://www.dcc.unimontes.br/renato/2009/sdi/materiais/2007_1_paradigmas_orientado
_eventos.pdf>. Acesso em: 10 ago. 2016.

78
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Aplicativo para Comércio Eletrônico Conforme Princípios
da Economia Solidária1
Valter Luis Estevam Júnior, João Luis Dremiski, Cleverson Sebastião dos Anjos,
Thalita Scharr Rodrigues Pimenta, Tiago Gerke, Elisson Otávio Gaievski, Lucas
Fernando Pontes Castro

Instituto Federal de Educação, Ciência e Tecnologia do Paraná – Irati, PR ­ Brasil
[valter.junior, joao.dremiski, cleverson.anjos, thalita.pimenta,
tiago.gerke]@ifpr.edu.br, elissongaievski@hotmail.com,
lucas_pontes@outlook.com

Abstract. This article describes an application's modeling for an e­commerce
production   of   small   farmers   in   the   region   of   Irati   /   PR   according   to   the
principles   of   solidarity   economy.   The   application   requirements,   the
architectural model adopted and entered resources in order to preserve the
solidarity   enterprise   features   are   discussed.   The   application   will   be
implemented, deployed and it is expected to enable increased access to quality
organic food raising the income of farmers..

Resumo.  Este artigo descreve um trabalho de modelagem de um aplicativo
para comércio eletrônico da produção de pequenos agricultores da região de
Irati/PR   conforme   os   princípios   da   economia   solidária.   São   discutidos   os
requisitos   da   aplicação,   o   modelo   arquitetural   adotado   e   os   recursos
inseridos   de   modo   a   preservar   as   características   de   empreendimento
solidário.   A   aplicação   será   implementada,   implantada   e   espera­se   que
possibilite   aumentar   o   acesso   a   alimentos   orgânicos   de   qualidade   e   a
aumentar a renda dos produtores.

1. Introdução
Este trabalho tem por objetivo descrever a modelagem de um aplicativo para comércio
de produtos orgânicos tendo como premissa os fundamentos da economia solidária. O
seu   desenvolvimento   se   justifica   pela   dificuldade   encontrada   pelos   produtores
agroecológicos   da   região   de   Irati/PR   em   comercializar   seus   produtos.   Há   ainda   a
dificuldade dos consumidores em adquirir produtos orgânicos de qualidade.
Em discussão com representantes do Fórum Municipal de Economia Solidária
de Irati surgiu a proposta do desenvolvimento  de uma plataforma para comércio  de
produtos orgânicos composta por um sistema web e um aplicativo para smartphones e
tablets.   Será   abordada   neste   trabalho   a   modelagem   do   aplicativo   com   enfoque   na
interface entre a aplicação de comércio eletrônico e os princípios da economia solidária
que devem ser respeitados bem como aspectos arquiteturais da solução.
O   trabalho   está   assim   organizado:   na   Seção   2   são   apresentadas   as
fundamentações para o trabalho tais como os conceitos  de agroecologia e economia

1
 Trabalho financiado com recursos do Instituto Federal do Paraná e da Fundação Araucária.

79
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

solidária além de discutir as características de aplicativos híbridos. Na Seção 3 tem­se
os resultados e a discussão e na Seção 4 as considerações finais.

2. Fundamentação Teórica

2.1. Agroecologia e Economia solidária
A agroecologia é uma ciência emergente que estuda os agroecossistemas integrando
conhecimentos   de   agronomia,   ecologia,   economia   e   sociologia   [Altieri   1989].   Em
relação aos aspectos econômicos, ela defende um modo de produção cujos princípios
básicos   são   a   propriedade   coletiva   ou   associada   do   capital   e   o   direito   à   liberdade
individual, denominado economia solidária. Nos empreendimentos solidários objetiva­
se que todos os envolvidos obtenham lucros distribuídos igualmente, ou ao menos, de
modo mais igualitário quanto possível. Destaca­se ainda entre suas premissas [Singer
2002]: (1) Autogestão ­ os (as) participantes  das organizações  exercitam  as práticas
participativas de autogestão dos processos de trabalho, ou seja, as decisões são tomadas
em assembléias por todos ou por delegados. Discutem­se desde definições estratégicas e
cotidianas   dos   empreendimentos   até   a   direção   e   coordenação   das   ações   nos   seus
diversos   graus   e   interesses.   (2)   Solidariedade   ­   a   solidariedade   é   evidenciada   em
diferentes  dimensões,  tais  como:  na  justa distribuição  dos  resultados  alcançados;  na
melhoria   das   condições   de   vida   dos   participantes;   no   compromisso   com   um   meio
ambiente saudável; no relacionamento com a comunidade; nas relações com os outros
movimentos sociais e populares de caráter emancipatório e na preocupação com o bem
estar   dos   trabalhadores   e   consumidores   e,   (3)   Cooperação   ­   união   dos   esforços   e
capacidades,   a   propriedade   coletiva   de   bens,   a   partilha   dos   resultados   e   a
responsabilidade  solidária.  Envolve diversos tipos de organização coletiva: empresas
autogestionárias ou recuperadas (assumida por trabalhadores); associações comunitárias
de   produção;   redes   de   produção,   comercialização   e   consumo;   grupos   informais
produtivos  de  segmentos  específicos  (e.g.  mulheres,  jovens); clubes  de trocas,  entre
outros. 
Em   síntese,   a   economia   solidária   vem   se   caracterizando   como   uma   forma
alternativa de geração de trabalho e renda e como uma resposta a favor da inclusão
social. Sua forma de organização compreende uma diversidade de práticas econômicas
e   sociais   organizadas   sob   a   forma   de   cooperativas,   associações,   clubes   de   troca,
empresas autogestionárias e redes de comercialização [Laforga 2005, grifo nosso].

2.2. Aplicativos Híbridos
Aplicativos   nativos   residem   no   dispositivo   para   o   qual   foram   especificamente
desenvolvidos   e   podem   ser   acessados   por   meio   de   ícones   na   tela   principal   sendo
instalados a partir da respectiva loja (e. g. Google Play, App Store e Microsoft Store).
Por outro lado, os Web Apps são na realidade sites que se parecem com um aplicativo
nativo.   Entretanto,   eles   são   executados   através   de   um   navegador   e,   em   geral,   são
escritos utilizando HTML 5. O acesso é feito por URL e uma opção de gerar um atalho
para o site na tela principal é fornecida [Ambros 2013]. 
Finalmente, os aplicativos híbridos são parcialmente nativos e parcialmente web
apps. Eles ficam disponíveis na loja, ficam armazenados na tela principal do dispositivo
e tem capacidade de explorar as funcionalidades do dispositivo tais como: câmera, GPS

80
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

e  acelerômetro.   Tais   como  os  Web  Apps, eles  podem  ser  baseados  em   HTML  5 e
exibidos através de um navegador embutido no aplicativo [Ambros 2013].  Entre
as   ferramentas   de   maior   destaque   para   desenvolvimento   de   aplicativos   híbridos
destacam­se o Cordova e o PhoneGap [Machado 2015].

3. Metodologia
O   trabalho   foi   desenvolvido   em   4   etapas:   (1)   Levantamento   bibliográfico   sobre
agroecologia,   economia   solidária   e   tecnologias   para   desenvolvimento   de   aplicativos
híbridos como Cordova, PhoneGap, HTML 5, CSS, JavaScript, Arquitetura Orientada a
Serviços e Web Services RESTFull; (2) Entrevistas com produtores, gestores de uma
rede de consumidores e produtores para levantamento de requisitos; (3) Definição de
um modelo  arquitetural  a ser adotado com base no levantamento  bibliográfico  e de
requisitos e, (4) Mapear e modelar a aplicação segundo os princípios da autogestão,
solidariedade e cooperação de empreendimentos solidários.

4. Resultados e Discussão
A modelagem do aplicativo é resultado da execução das etapas 1, 2 e 3 da metodologia.
Os requisitos levantados são apresentados a seguir: (1) Gerenciar usuários fornecedores
(cadastrar   e   habilitar,   alterar,   consultar   e   desabilitar);   (2)   Gerenciar   usuários
consumidores (cadastrar e habilitar, alterar, consultar , desabilitar e incluir em grupos de
consumidores); (3) Gerenciar grupos de consumidores (criar e habilitar grupos, alterar,
consultar, desabilitar, atribuir usuário consumidor líder, associar a grupo de consumidor
pai);   (4)   Gerenciar   preços   (atribuir   preço   a   produto,   criar   promoções   para   grupos
específicos);   (5)   Gerenciar   reputação   de   fornecedores   (consumidores   avaliam   a
qualidade dos produtos e os gestores da rede de consumidores avaliam o cumprimento
de prazos e promessas de entrega de produtos feitas pelos fornecedores); (6) Gerenciar a
reputação   de   consumidores   (consumidores   que   fizerem   reserva   de   produtos   e   não
retirarem os mesmos devem ser penalizados uma vez que isso pode levar a rede de
consumidores  e produtores a prejuízos  devido à perecibilidade dos alimentos;  (7) O
aplicativo deve funcionar em smartphones com Android 4.0 ou superior e, se possível,
em outras plataformas tais como iOS e Windows Phone.
De posse dos requisitos foi proposta uma arquitetura orientada a serviço (SOA)
como a da mostrada pela figura 1.

Figura 1. Arquitetura do aplicativo para comércio eletrônico.

Sobre   a   aplicação   dos   princípios   da   economia   solidária   destaca­se   que   a


autogestão está presente na medida em que os gestores do grupo de consumidores e
produtores   definem  quais  produtos   serão  vendidos, a  que  preço,  e  quais   promoções
serão disponibilizadas para determinados grupos de consumidores com base em seus
padrões de compras.  A   solidariedade   é   evidenciada   por   não   existir   competição   pela

81
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

oferta   de   um   melhor   preço   porque   ele   é   fixado   por   tipo   de   produto.   Os


fornecedores/produtores  também  devem  recolher  um pequeno  percentual  das  vendas
para   auxiliar   com   a   manutenção   do   grupo   e   dos   recursos   de  hardware  e  software
necessários para manter a plataforma em funcionamento.
Por   fim,   a   cooperação   fica   clara   na   medida   em   que   todos   cooperam   para
disponibilizar   o   quantitativo   necessário   para   manutenção   das   atividades.   Entre   os
consumidores, as vendas individuais cooperam e influenciam na obtenção de promoções
direcionadas para grupos conforme o volume de suas compras. Há ainda a previsão de
um mecanismo de incentivo à melhoria da qualidade dos produtos mediante avaliação
pelos   clientes,   um   recurso   chamado   reputação.   Por   ele   os   fornecedores   melhor
ranqueados   ganham   o   direito   de   aparecer   na   lista   de   fornecedores   disponíveis   em
evidência   por   um   número   de   requisições   maior   do   que   os   demais.   Entretanto,
diferencia­se   do   sistema   convencional   capitalista   de   comércio,   pois   estar   melhor
ranqueado não faz com que sempre apareça em primeiro, o que tenderia a monopolizar
as vendas.
Estas considerações foram aplicadas nas demais etapas de modelagem como o
projeto dos serviços web e do banco de dados. Suprimidas  nesse trabalho devido a
restrições de espaço.

5. Considerações finais
Foi apresentada a modelagem de um aplicativo para comércio eletrônico solidário. O
aplicativo leva em consideração os princípios de autogestão, solidariedade e cooperação
de empreendimentos solidários. Seu desenvolvimento será realizado com as tecnologias
Cordova  e  PhoneGap  explorando  os   recursos   de  aplicações   híbridas  que  consomem
serviços RESTFull. Com isso, o potencial de inserção da ferramenta será maior uma vez
que o aplicativo funcionará nas três principais plataformas de  smartphones. Espera­se
ainda   fortalecer   as   ações   de   redes   de   consumidores   e   produtores   e   a   geração   de
desenvolvimento local sustentável.

Referências
Altieri,   M.   A.   (1987),   Agroecology:   the   scientific   basis   of   alternative   agriculture.
Boulder: Westview Press. 227 p.
Ambros, L. (2013) Diferença entre Aplicativos Nativos, Híbridos e Mobile Web Apps.
Disponível   em:   http://www.luisaambros.com/blog/diferenca­entre­aplicativos­
nativos­hibridos­e­mobile­web­apps/ Acesso em 01 out 2016.
Laforga,   G.   (2005).   Economia   Solidária,   Agricultura   Familiar   e   Comércio   Justo:
alinhando convergências, apresentando desagios, 2005. In. Anais do XXIX Encontro
Anual da ANPOCS.
Machado,   H.   (2015)   Aplicações   Móveis:   Nativas   ou   Web?   Disponível   em:
http://www.devmedia.com.br/aplicacoes­moveis­nativas­ou­web/30392,   acesso   em
01 out 2016.

82
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

Uso dos métodos numéricos de passo simples e passo múltiplo


para aproximar a solução de problemas de valor inicial
Robson Araújo Lima, Luciano Zamperetti Wolski, Minéia Cappellari Fagundes
1
Departamento de Ciência da Computação – Universidade do Estado de Mato Grosso (UNEMAT)
Caixa Postal 92 – 78390-000 – Barra do Bugres – MT – Brazil

robson.conq@gmail.com,{lwolski,mineia}@unemat.br

Abstract. Differential equations are very important tools for mathematical mo-
deling of problems encountered in the real world. However, it is not always
possible to solve an differential equation by analytical means. The output, the-
refore, is to use numerical methods, which approach the accurate solution by
means of ordered pairs of points. Through the numerical solution, we can solve
any differential equation, since, there is an initial condition, that is, an initial
ordered pair of points.

Resumo. Equações diferenciais são ferramentas importantı́ssimas para a mo-


delagem matemática de problemas encontrados no mundo real. Entretanto, nem
sempre é possı́vel resolver uma equação diferencial por meio analı́tico. A saı́da,
portanto, é usar métodos numéricos, que fazem uma aproximação da solução
exata por meio de pares ordenados de pontos. Através da solução numérica, po-
demos resolver qualquer equação diferencial, desde que, exista uma condição
inicial, isto é, um par ordenado inicial de pontos.

1. Introdução
Equações Diferenciais Ordinárias (EDOs) são ferramentas importantı́ssimas para a mode-
lagem matemática de problemas do mundo real. Elas podem descrever fenômenos fı́sicos,
biológicos, quı́micos, epidemiológicos, entre outros, quando estes fenômenos são descri-
tos em termos de taxa de variação [Frederico Ferreira Campos 2001, p. 293]. Exemplos
práticos que usam EDOs são, taxa de crescimento de uma população de bactérias, taxa
de crescimento de uma população de uma cidade ou a propagação de uma doença em um
grupo populacional.
Nem sempre é possı́vel resolver uma EDO por meio analı́tico, ou seja, encontrar a
solução para a equação incógnita por meio de funções elementares da matemática. Mesmo
equações diferenciais com aspecto simples como:
y 0 = x2 + y 2 ou y 00 = 6y 2 + x
não podem ser resolvidas em termos de funções elementares [Barroso et al. 1987, p. 275].
Para as soluções numéricas não existem limitações, pois são usados valores da variável
independente e, pelo menos, um resultado já conhecido da função.
Porém, é importante lembrar que, esses métodos como outros do cálculo numérico
acumulam erros a cada iteração. Uma boa implementação dos métodos é a chave para
bons resultados e eficiência. Cada linguagem de programação possui sua particularidade
e elas devem ser respeitadas nas implementações de cada método.

83
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

2. Definição
Antes de começar, é importante entender algumas definições e terminologias básicas so-
bre o assunto que será tratado. É perceptı́vel pelo nome que Equações diferenciais envolve
diferenciação, ou seja, é um tipo de equação que envolve derivadas. Essas derivadas po-
dem conter uma ou mais variáveis independentes na mesma equação - isso se tornará mais
claro em breve. Diferentemente da álgebra onde é buscado variáveis incógnitas, que são
números, as incógnitas das equações diferenciais são funções [Diacu 2004]. Por exemplo,

dx
= x2 + t2
dt
a função x(t) é desconhecida, assim como sua primeira derivada. O desafio é encontrar
todas as possı́veis funções x(t) e x0 (t) que satisfaça a igualdade. Equação Diferencial
Ordinária é um tipo de equação que possui uma ou mais variáveis dependentes em relação
a apenas uma variável independente. Por exemplo,

y 0 − 5y = 1, u0 − v 0 = x, y 00 − 2y 0 + 6y = 0

são equação diferenciais ordinárias. Observe que em todas as equações apresentadas


acima o x é a única variável independente das equações. O y, u e v são variáveis depen-
dentes de x.

3. Problema de valor inicial


O principal objetivo desse trabalho será encontrar a solução numérica para um Problema
de Valor Inicial (PVI). Um problema de equação diferencial ordinária de primeira ordem
submetido a uma condição inicial, i.e., a um valor inicial, é chamado de Problema de
valor inicial. Um problema desse tipo tem a forma:

 dy = f (x, y)
dx
y(x0 ) = y0 ,

dy
O termo dx = f (x, y) é a equação diferencial ordinária de primeira ordem e y(x0 ) = y0
é a condição inicial a qual o problema é submetido. Este tipo de problema ocorre quando
procuramos uma solução particular em determinados pontos (xk , yk ).

4. Solução numérica de EDO


Os procedimentos numéricos ou métodos números oferecem uma aproximação muito boa
da solução exata da equação diferencial. Deve-se ter o máximo de cuidado com erros,
pois eles podem aumentar consideravelmente e assim levar a resultados inúteis. Podemos
destacar os principais erros que acontecem durante as etapas de resolução de um PVI: erro
de arredondamento, erro de truncamento local, erro de truncamento global, erro absoluto
e relativo1 .
1
Esses não são erros acumulados durante as etapas, mas sim, a diferença entra a solução exata e a
aproximada.

84
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

No âmbito da resolução de EDs, temos os métodos de passo simples onde cada


valor sucessivo yk+1 é computado com base somente na informação sobre o valor imedi-
atamente precedente yk . Já os métodos de múltiplo passo usa os valores de vários passos
computados previamente para obter o valor de yk+1 .
O método de Euler ou método das retas tangentes é uma das técnicas de passo
simples mais antigas para aproximar uma solução de uma EDO. Desenvolvida por Le-
onhard Euler (1707-1783) por volta de 1768, é a espinha dorsal para os processos mais
sofisticados de solução de EDOs. Por sua simplicidade, é muito utilizada para o ensino,
mas não é recomendável para aplicações práticas, uma vez que, para conseguir boas esti-
mativas é necessário muitos cálculos. Computacionalmente é pouco eficiente.
yk+1 = yk + hf (xk , yk ) para cada k = 0, 1,. . . , N - 1
na qual h é chamado de passo ou incremento, frequentemente é definido como
h = xk − xk−1

Há várias razões em que o método de Euler não é recomendado para o uso prático,
entre elas estão as apresentadas por [Press et al. 1992, tradução nossa]: o método não é
muito exato quando comparado aos outros e, não é estável.
Cada um dos métodos de Runge-Kutta, consiste em comparar um polinômio de
Taylor apropriado para eliminar o cálculo das derivadas. Desenvolvido por Carl David
Runge (1856-1927) e Wilhelm Martin Kutta (1867-1944), ambos matemáticos alemães
[Valle 2012].
Runge-Kutta quarta ordem, é um dos métodos mais usados na prática, devido a
sua precisão:
k1 = f (xk , yk )
1 1
k2 = f (xk + h, yk + k1 )
2 2
1 1
k3 = f (xk + h, yk + k2 )
2 2
k4 = f (xk + h, yk + k3 )
h
yk+1 = yk + (k1 + 2k2 + 2k3 + k4 )
6
Os métodos de múltiplo passos usa os valores de vários passos computados previamente
para obter o valor de yk+1 . O Método de Adams-Bashforth-Moulton é um dos métodos
mais populares de passo múltiplo preditor-corretor:
P h
yk+1 = yk + (55fk − 59fk−1 + 37fk−2 − 9fk−3 )
24
C h P
yk+1 = yk + (9fk+1 + 19fk − 5fk−1 + fk−2 )
24
para k = 3, 4,. . . , N-1
P C
onde a equação yk+1 prediz um valor a ser computado e corrigido por yk+1 . Neste proce-
dimento, é necessário ter computado previamente os valores y0 , y1 , y2 , y3 por um método
de passo simples de quarta ordem, e.g., Runge-Kutta-Fehlberg ou Dormand-Prince.

85
Anais do 8º Congresso Acadêmico de Tecnologia e Informática (CATI 2016)
Ciência da Computação – UNEMAT – Barra do Bugres – ISSN 2448-119X

5. Metodologia
Para o desenvolvimento do trabalho proposto, foi utilizado a revisão bibliográfica, tendo
como base referenciais teóricos que tratam de Equações Diferenciais e Cálculo Numérico
e, conseguinte, a implementação de um algoritmo, para a realização dos cálculos. Deste
modo, para o desenvolvimento do software e implementação dos testes, a metodologia foi
dada por:
Softwares utilizados: Linguagem de programação C, compilador gcc 5.4.0, IDE Geany
1.27, Sistema Operacional Lubuntu 16.04 64bit.
Hardware utilizado: 4x Intel(R) i3-2328M CPU @ 2.20GHz, 2 GB de memória RAM e
disco rı́gido de 500GB.

6. Resultados e discussões
Os testes, a princı́pio, não foram todos concluı́dos, porém, os resultados obtidos até o
momento com os algoritmos, são satisfatórios, pois, os resultados calculados pelo algo-
ritmo, coincidem com os resultados da solução exata. Espera-se, então, que os resultados
obtidos pelo método de Runge-Kutta de quarta ordem aproximem dos resultados exatos
sem a necessidade de um passo muito pequeno. Por outro lado, o número de vezes que a
função f (x, y) necessita ser avaliada, por passo, é elevada.
Já os métodos de passo múltiplo, obtém resultados consideráveis, porém neces-
sitam de um passo pequeno para isso. Esses tipos de métodos, são atrativos por sua
simplicidade, podendo ser usada até mesmo em uma calculadora. O lado negativo é a não
auto-inicialização, necessitando dos 4 primeiros pontos já calculados por um método de
ordem quatro.

7. Considerações Finais
Este trabalho apresentou os métodos numéricos mais conhecidos para a solução
de EDOs, e propôs uma alternativa de algoritmo em C, que ainda está em fase
de melhoramento. O algoritmo completo pode ser encontrado no repositório
https://github.com/conqlima/ode-onestep-multistep. Como traba-
lhos futuros, é conveniente, aprimorar o algoritmo, atribuindo-lhe mais opções de
configurações, como por exemplo, a exatidão dos resultados serem passados por
parâmetro pelo usuário.

Referências
Barroso, L. C., de Araújo Barroso, M. M., Frederico Ferreira Campos, f., de Carvalho,
M. L. B., and Maia, M. L. (1987). Cálculo numérico: (com aplicações). HARBRA,
São Paulo, 2 edition.
Diacu, F. (2004). Introdução a equações diferenciais: teoria e aplicação. LTC, Rio de
Janeiro.
Frederico Ferreira Campos, F. (2001). Algoritmos numéricos. LTC, Rio de Janeiro.
Press, W. H., Teukolsky, S. A., Vetterling, W. T., and Flannery, B. P. (1992). Numerical
Recipes in C: the art of scientific computing. Cambridge University Press, New York,
2 edition.
Valle, K. N. F. (2012). Metodos Numericos de Euler e Runge-Kutta. Monografia, Univer-
sidade Federal de Minas Gerais, Belo Horizonte.

86

Você também pode gostar