Semana de Tecnologia da Informação do IFPR Campus Paranavaí
Os Anais da Semana de Tecnologia da Informação (SETIF) publicam, em formato eletrônico e de acesso aberto, os trabalhos apresentados durante o evento anual promovido pelo Instituto Federal do Paraná – Campus Paranavaí desde 2016. A publicação reúne artigos, resumos e relatos de experiência produzidos por estudantes, pesquisadores e profissionais da área de Tecnologia da Informação e afins, preservando os direitos autorais dos autores e fomentando a disseminação do conhecimento científico e tecnológico. A equipe editorial é composta majoritariamente por docentes do eixo de Informática, contando também com a participação de pesquisadores vinculados a diferentes áreas do conhecimento que integram o corpo docente do campus, assegurando uma base diversificada e interdisciplinar na avaliação e curadoria dos trabalhos.
Os autores mantêm os direitos autorais sobre os trabalhos publicados nesta revista, concedendo à SETIF o direito de primeira publicação. O conteúdo está licenciado sob uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional (CC BY-SA 4.0), que permite copiar, redistribuir, remixar, transformar e criar a partir do material para qualquer finalidade, inclusive comercial, desde que seja atribuída a autoria e feita referência à publicação original nesta revista. Os autores concordam que qualquer reutilização de seu trabalho por terceiros deve incluir o nome dos autores, o título do artigo, o nome da revista, o DOI (quando disponível) e o link para a licença. É permitido e incentivado que os autores disponibilizem a versão publicada do trabalho em repositórios institucionais, sites pessoais ou redes acadêmicas imediatamente após a publicação, com menção à publicação inicial nesta revista.
A Tecnologia da Informação e o Ensino da Matemática: construindo recursos para os processos de ensino e de aprendizagem
O uso das tecnologias na educação vem se tornando cada vez mais comum e importante nos dias de hoje. Isso ocorre por conta das inúmeras possibilidades que a tecnologia oferece para auxiliar nos processos de ensino e de aprendizagem. Uma das maneiras mais comuns do uso da tecnologia na educação é por meio dos equipamentos eletrônicos, como computadores, tablets e smartphones. Esses aparelhos permitem o acesso a uma infinidade de recursos educativos, tais como: jogos educativos, vídeos explicativos e materiais didáticos. Para que os recursos educativos se tornem úteis, é fundamental que as escolas abram espaço para o uso das tecnologias da comunicação e informação (TIC) e os professores se adequem na busca de tornar suas aulas mais interessantes e, assim, possam contribuir para que o processo de ensino seja realizado de forma prazerosa, didática e motivadora. [Silveira 2001] destaca que para o êxito no uso das TIC é de suma importância que os professores estejam preparados pedagogicamente para realizar aulas interativas, dinâmicas e que possam dialogar com a realidade dos estudantes, que frequentemente usam a tecnologia em seu cotidiano, mas não de forma significativa ao seu processo de aprendizagem. As escolas podem usar ou criar os recursos tecnológicos na forma de recursos didáticos pedagógicos para auxiliar nos processos de ensino e de aprendizagem e oportunizar a construção de conhecimentos. Com base a essa questão, [Carvalho 2009] destaca a importância do uso das tecnologias, nas salas de aula, como uma grande possibilidade para que os professores desenvolvam recursos didáticos pedagógicos que tornem suas aulas interessantes e consigam ensinar de forma prazerosa e didática. Levando em conta a possibilidade de usar as tecnologias como um meio para os processos de ensino e de aprendizagem, [Almeida 2003] relata que o uso dos computadores está presente nas escolas e rompem barreiras no ensino. A presença dessas mídias traz um avanço significativo tanto para dentro quanto para fora das instituições e isso pode promover diferentes maneiras para que o conteúdo seja trabalhado. Com o intuito de favorecer meios para que o ensino e a aprendizagem acontecessem de forma interativa e atrativa, buscou-se, por meio do diálogo entre a Tecnologia da Informação e o Ensino de Matemática, produzir um software para servir como um recurso didático pedagógico digital que abarcasse o assunto a respeito dos Poliedros de Platão e suas planificações. Foram realizadas pesquisas na internet para verificar quais eram os softwares que trabalham com o assunto, entretanto, encontrou-se poucas opções gratuitas; a maioria são proprietárias (pagas). Sabendo disso, foi desenvolvido um software para ser disponibilizado de forma gratuita, com propósito de usá-lo nos processos de ensino e de aprendizagem como um recurso didático pedagógico e, assim, ajudar professores e estudantes quanto ao assunto dos Poliedros de Platão. O software apresenta os Poliedros de Platão (tetraedro, hexaedro, octaedro, dodecaedro e icosaedro) na forma planificada. Para cada planificado o usuário pode utilizar dos recursos de translação e rotação para montar o respectivo sólido platônico. O desenvolvimento do software iniciou com a definição da forma como o professor poderia utilizá-lo em sala de aula. Foram levantadas as possibilidades de ser: i) um aplicativo para smartphone; ii) uma aplicação instalável em um computador pessoal; e iii) uma aplicação web que tem sua execução em um navegador. A primeira opção se mostrou inviável durante a análise devido ao fato dos estudantes não possuírem uma configuração de smartphone padronizada. A segunda enfrenta as limitações de sistemas operacionais diferentes, o que dificultaria a implantação. Sendo assim, a terceira opção foi escolhida, visto que smartphones e computadores pessoais possuem ao menos um aplicativo para navegação web. Tendo a plataforma definida, iniciou-se o estudo sobre as linguagens de programação e frameworks que poderiam apoiar o processo de desenvolvimento. Por se tratar de um ambiente web, a linguagem de programação usada é o JavaScript com o auxílio da HyperText Markup Language (HTML) para estruturação da página e da Cascading Style Sheets (CSS) para alterações estéticas da página (design). Também foram pesquisados frameworks para auxiliar na renderização dos efeitos visuais (movimentos) idealizados para o projeto; após as pesquisas foi escolhido o p5.js [McCarthy et al. 2015], por oferecer ampla documentação, atualizações contínuas, ser gratuita e de código aberto. Durante as buscas também foi encontrada a Processing [Fry and Reas 2022], uma linguagem de programação derivada do Java e ambiente integrado de desenvolvimento (IDE), cujo intuito é facilitar o trabalho com elementos gráficos. Tanto a Processing como o p5.js são projetos mantidos pela Processing Foundation, o que implica que a sintaxe é compatível. Por esse motivo, a implementação foi iniciada na IDE com a Processing como linguagem para facilitar o desenvolvimento e compilação do código. Essa ferramenta traz um conjunto de funções e métodos que auxiliam no trabalho do desenvolvedor quanto à lógica de programação. O sistema permite que os usuários selecionem o poliedro com que desejam interagir; com as teclas AWSD (esquerda, cima, baixo e direita, respectivamente) pode-se modificar a perspectiva de visualização. Com as teclas ESPAÇO e SHIFT podem aumentar e diminuir o zoom em relação ao poliedro. Também é possível usar o botão esquerdo do mouse para mudar a perspectiva de visualização. Caso queira sair da interação, usa-se a tecla ESC. Também é possível utilizar as teclas O e P para mudar os ângulos entre as faces (pressionar e segurar irá travar em ângulos importantes), L para ativar/desativar linhas de eixo, K para ativar/desativar o preenchimento das faces. Como entre as funcionalidades do software está presente a possibilidade de planificar os poliedros e acompanhar visualmente o movimento entre a planificação e a visualização espacial, foram realizados cálculos manuais para rotação e translação dos vértices e arestas e, na sequência, foram implementados. Finalizada a implementação, os códigos foram reescritos para a p5.js e por fim disponibilizados em ambiente de testes, onde podem ser acessados para visualização. Todo o código produzido pode ser acessado por meio do GitHub institucional do IFPR - Campus Paranavaí. O software criado é um recurso didático pedagógico que pode contribuir de maneira exitosa para os processos de ensino e de aprendizagem pois, ao utilizá-lo em sala de aula, oferece-se a oportunidade de visualizar características peculiares dos sólidos de Platão, tais como: ser convexo; todas as faces possuírem a mesma quantidade de arestas; todos os vértices serem extremidades de uma mesma quantidade de arestas; a Relação de Euler; e a planificação de cada Poliedro Platônico. O professor, ao utilizar o software, dá condições ao estudante de reinventar as relações instituídas por Platão; assim, o ensino caminha ao encontro de ter o estudante como autor da sua própria aprendizagem e o professor como guia dos processos de ensino e de aprendizagem. O software construído neste estudo corrobora no sentido de ser um recurso relevante para se romper com o ensino tradicional, em que o professor apresenta o assunto matemático pronto e acabado, e passar a estimular o estudante a produzir conhecimento, a reinventar o conhecimento matemático. O software tem potencialidades para contribuir com os professores e estudantes nos processos de ensino e de aprendizagem e ser visto como um recurso didático pedagógico que permita ao professor uma maior facilidade em mostrar e apresentar o assunto a respeito dos Poliedros Platônicos para seus estudantes, promovendo a eles a oportunidade de reinventar o conhecimento matemático e não o recebê-lo pronto e acabado. Como trabalhos futuros pretende-se realizar aprimoramentos no sistema em relação às instruções e uso, adaptações visuais em diferentes dispositivos e tamanhos de telas (responsividade), bem como a realização de estudos acerca do desenvolvimento para Android utilizando a Processing for Android, também da Processing Foundation.
Copyright (c) 2023 https://creativecommons.org/licenses/by-sa/4.0
Adaptação do jogo de sinuca no GeoGebra para o ensino e aprendizagem de matemática e programação
As Tecnologias da Informação e da Comunicação (TICs) oferecem amplas oportunidades de aprendizado e desenvolvimento, podendo enriquecer a experiência educacional dos estudantes. A Base Nacional Comum Curricular (BNCC) destaca a importância do uso de tecnologias na aprendizagem em diversas disciplinas, principalmente na matemática, afirmando “que tal valorização possibilita (aos estudantes) que, ao chegarem aos anos finais, eles possam ser estimulados a desenvolver o pensamento computacional, por meio da interpretação e da elaboração de fluxogramas e algoritmos” [BRASIL 2018]. O projeto, desenvolvido no âmbito do Programa de Bolsas Acadêmicas de Inclusão Social (PBIS) do IFPR, demonstra que, ao adaptar um jogo de sinuca para uma plataforma digital, surgem diversas oportunidades de ensino e aprendizado, promovendo a integração entre teoria e prática. A iniciativa, liderada por uma estudante bolsista do Ensino Médio no campus Paranavaí do IFPR, não apenas aprimorou a funcionalidade do jogo, mas também serviu como referência para analisar a construção de conhecimento matemático e computacional por estudantes, uma vez que a metodologia ainda não foi aplicada em escala. Na etapa anterior à prototipagem do jogo, foi realizada uma breve revisão bibliográfica com o objetivo de encontrar casos que seguissem a mesma abordagem metodológica. Entre os trabalhos destacados estão a dissertação de mestrado intitulada “Criação e adaptação de jogos para o GeoGebra” [PINHEIRO 2017] e o artigo “Jogo de Sinuca: uma possibilidade para o ensino de Geometria” [PAULA et al. 2020]. Este trabalho se diferencia dos mencionados anteriormente por partir de um jogo real, ao invés de modelar apenas uma ou duas situações específicas focadas exclusivamente na geometria. Ele se baseia nos desafios do desenvolvimento como metodologia de ensino e aprendizagem de matemática e programação, levando em conta a necessidade indicada pela BNCC de que o estudante desenvolva a habilidade de compreender e transitar entre diversos modos de representação matemática (álgebra, trigonometria, geometria, computação, entre outros). O emprego de tecnologias e jogos no ensino está se destacando na educação devido aos resultados promissores, especialmente na aprendizagem da matemática e no contexto das metodologias ativas, que visam superar a abordagem tradicional centrada no professor e na passividade do estudante. Segundo a teoria piagetiana, o jogo, por meio do simbolismo e da atividade de jogar, representa uma forma de assimilação da realidade [AGUIAR 2004]. Além disso, o jogo apresenta facetas que propiciam o desenvolvimento do raciocínio lógico e da habilidade de resolução de problemas, aspectos fundamentais no processo de ensino e aprendizagem da matemática [PINHEIRO 2017]. Os jogos potencializam a aprendizagem ao motivar, desenvolver habilidades e estimular o raciocínio lógico dedutivo, facilitando a compreensão de conteúdos matemáticos e de outras áreas [MACEDO et al. 2000]. Além disso, auxiliam nas habilidades de memorização, resolução de problemas e cálculos mentais, sendo valiosos aliados no ensino da matemática [MENON e SILVA 2016]. O projeto adaptou a metodologia dos jogos à resolução de problemas para estabelecer uma abordagem ativa, na qual a estudante adaptou um jogo conhecido para um ambiente virtual, exigindo a modelagem das características do mundo real para viabilizar a simulação do jogo. O jogo foi criado no GeoGebra, um software de matemática dinâmica que integra geometria, álgebra e gráficos. Ele oferece uma plataforma interativa para exploração, permitindo a criação de construções geométricas e visualização de funções em um ambiente integrado. Além disso, possui uma interface gráfica intuitiva, uma linguagem de programação simples e é de código aberto. Optou-se por utilizar o aplicativo na versão GeoGebra Clássico 5 no modo offline. A construção foi feita em uma janela de visualização padrão do GeoGebra, onde se criou a mesa de sinuca com um retângulo de dimensões 12 x 6, tendo o canto inferior esquerdo na origem, aproveitando os eixos como bordas da mesa. A bola branca (ponto B) foi posicionada aleatoriamente dentro do retângulo, e diversos outros pontos de ancoragem foram inseridos para os objetos envolvidos. A proposta inicial de objetivo para o jogo era que o jogador acertasse a bola branca na caçapa do canto inferior esquerdo, localizada nas coordenadas (0, 0), ajustando o ângulo da tacada. Esse ângulo, denominado de alfa, é definido pelos pontos da bola branca, da caçapa e pelo eixo x. O primeiro desafio foi modelar o movimento da bola branca B até a caçapa, o que envolve a parametrização de segmentos de reta. Isso proporcionou uma oportunidade para incorporar conhecimentos de geometria analítica, como equações paramétricas e vetoriais. Após resolver o problema de acertar a bola na caçapa, foi necessário modelar o cenário em que o jogador errasse o ângulo e a bola ricocheteasse nas laterais da mesa. Durante as sugestões de resolução, surgiram várias ideias de como lidar com isso, incluindo a divisão em diferentes casos, introduzindo assim um conceito fundamental da programação: a estrutura condicional. Percebeu-se, no entanto, que já existia uma função matemática bem conhecida que é definida em casos e que seria útil para o problema: a função modular. Ao aplicá-la em conjunto com os conhecimentos de parametrização, foi possível obter as trajetórias desejadas para a bola. Outra questão decorrente da modelagem é que, no jogo real de sinuca, após a tacada, a velocidade da bola diminui gradualmente devido ao atrito com a mesa. Para simular essa velocidade não constante, era necessário encontrar uma função matemática que preservasse o domínio e a imagem do parâmetro, fosse crescente, mas apresentasse uma curva de crescimento com variação progressivamente menor. Isso levou a testar as características de funções com raiz e logaritmo. Dessa forma, a modelagem do movimento da bola chegou ao formato parametrizado pela seguinte equação: ((1 - raiz de r) * x(B) + raiz de r * x(S), (1 - raiz de r) * y(B) + raiz de r * y(S)) onde o parâmetro r pertence ao intervalo [0, 1], B é a posição inicial da bola e S é a projeção da posição da bola em linha reta pela tacada no ângulo alfa. Além dos problemas emergentes na programação e modelagem mencionados, também ocorreram vários outros, como a ancoragem e movimentação do taco no momento da tacada, bem como o posicionamento da figura para mesa. Durante a execução do projeto, os desafios estimularam a busca por soluções, que por sua vez surgiram por meio do desenvolvimento matemático e do conhecimento básico de lógica de programação. Nesse contexto, a metodologia adotada incentiva os estudantes a explorarem seus conhecimentos matemáticos de forma prática e interativa. O GeoGebra, portanto, se afirma como uma ferramenta poderosa, tornando o estudante autônomo e protagonista do processo, explorando sua criatividade e conhecimentos prévios, e adquirindo novos. As próximas etapas do projeto envolvem a conclusão do applet que contém o jogo e sua disponibilização para a comunidade acadêmica através da publicação na plataforma online de materiais do GeoGebra. Além disso, pretende-se aplicá-lo em grupos específicos para avaliar os resultados e verificar sua eficácia como uma metodologia ativa de ensino e aprendizagem. É crucial destacar um dos desafios mais significativos ao lidar com as TICs: o acesso aos equipamentos tecnológicos necessários. No caso deste projeto, a falta de um notebook ou computador pessoal pela bolsista dificultou a execução das atividades diárias. Mesmo que a instituição oferecesse computadores, a ausência do software essencial representou um obstáculo adicional que precisou ser superado. É claro que a realidade educacional brasileira, e até mesmo regional, é muito diversificada, o que pode resultar em limitações para a implementação da metodologia apresentada de forma abrangente. Além de que a eficácia do uso da metodologia desse trabalho no ensino depende do design e do contexto educacional. Portanto, é crucial considerar cuidadosamente como e quando incorporar jogos como recurso de ensino, alinhando-os com os objetivos específicos da aprendizagem matemática.
Segundo [Felix et al. 2020], o segmento de beleza tem sido um dos mais dinâmicos e inovadores do mercado, tendo em sua maioria mulheres, estudantes ou pessoas que já possuem vínculo empregatício formal em alguma instituição ou empresa. O crescimento deste setor, tanto em volume como na relevância, oportuniza iniciativas de empreendedorismo autônomo de vendas de cosméticos, conhecido como venda "porta a porta"; há pessoas que buscam uma fonte de renda principal ou complementar. Esta modalidade é uma ação direta aos possíveis consumidores que garante uma grande oportunidade de vendas e ganho por quem pratica. Fato este que gera muitos empregos, além de permitir um horário flexível e que de fato mudou a vida de muitas pessoas [de Bessa Oliveira et al. 2023]. Além do que foi identificado nos artigos supracitados, foi realizada uma coleta de informações com uma revendedora autônoma que atua no ramo há 16 anos e possui mais de 100 clientes e que ainda não possuía uma aplicação para realizar o controle de suas vendas e pagamentos. A autônoma relatou que, sem uma ferramenta de gestão, as suas operações são realizadas de forma manuscrita e totalmente improvisada. Embora existam diversos aplicativos e softwares no mercado que automatizam tais processos, a mesma mencionou que muitos são genéricos e por vezes complexos. Com base no que foi apresentado, este projeto propôs a concepção e a criação de um aplicativo móvel, denominado Cosmetic Survey, voltado para atender às necessidades específicas da autônoma que é objeto de estudo neste trabalho, com o objetivo de simplificar suas tarefas diárias. Em busca de compreender as soluções atuais correlatas e, assim, orientar este projeto de forma eficiente, realizou-se uma busca de aplicativos de escopo relacionado a fim de orientar o desenvolvimento pelo caminho mais eficiente, evitando retrabalhos e obstáculos. Dentre os resultados encontrados, destacaram-se os seguintes aplicativos: Controle de Vendas [de Vendas 2023], Paysale - Controle de Vendas [PaySale 2023] e Meu Caixa [Caixa 2023]. O aplicativo Controle de Vendas, desenvolvido por [Pacheco 2023], destina-se a vendedores autônomos que desejam gerenciar suas vendas, pagamentos e clientes. Outra solução estudada foi o PaySale, que é um aplicativo de vendas publicado pela [Soluções 2023] e oferece ao usuário o controle de vendas (gerenciador de vendas e cobranças), controle de estoque, controle de clientes, controle financeiro, controle de parcelas, fornecedores e outras funcionalidades. Por fim, o aplicativo Meu Caixa, publicado pela [QRCom 2023]. Essa opção permite ao usuário cadastrar seus clientes e registros, acompanhar o histórico de vendas e manter-se informado sobre quais clientes possuem débitos. O aplicativo Cosmetic Survey possui várias características, incluindo a capacidade de os usuários acompanharem vendas, pagamentos e as marcas com as quais trabalham. Ele também permite o armazenamento seguro e remoto de dados, bem como o acesso simultâneo em vários dispositivos sem a necessidade de pagar por um plano premium. É exclusivo e destinado apenas a revendedores de produtos cosméticos. Após a avaliação das demandas da profissional autônoma e a análise dos aplicativos correlatos, procedeu-se à definição e implementação das funcionalidades que capacitam o usuário a realizar as seguintes ações: manutenir produtos, marcas, clientes, vendas e contas a receber, bem como gerar relatórios para analisar os valores recebidos e a receber das respectivas vendas realizadas em um período específico de sua escolha. O desenvolvimento do Cosmetic Survey seguiu as etapas apresentadas a seguir. Para [Sommerville 2018], "Uma metodologia de desenvolvimento de software é um conjunto de atividades que auxiliam a produção de software. O resultado dessas atividades é um produto que reflete a forma como todo o processo foi conduzido". A primeira etapa, "Planejamento", foi dividida em três subtarefas, sendo elas: (i) Levantamento de requisitos: teve como objetivo entender as necessidades e os requisitos do sistema a ser desenvolvido. (ii) Levantamento de trabalhos correlatos: envolveu a pesquisa e o estudo de trabalhos e sistemas relacionados existentes. O objetivo foi analisar soluções já desenvolvidas, avaliar suas características para aprender com experiências anteriores e evitar erros durante o desenvolvimento. (iii) Estudo das tecnologias: nesta fase, avaliou-se as tecnologias disponíveis que poderiam ser utilizadas no desenvolvimento do sistema. Isso envolveu a pesquisa e a compreensão de diferentes ferramentas, frameworks e linguagens de programação. Na etapa de "Design", a única tarefa realizada foi a "Análise e modelagem", que teve como objetivo examinar detalhadamente os requisitos e criar modelos conceituais e técnicos do sistema. Isso envolveu a definição da estrutura do sistema, a elaboração de diagramas de classe e outras atividades relacionadas. Na fase de "Desenvolvimento e testes", o principal objetivo foi implementar o sistema de acordo com as especificações definidas nas etapas anteriores, o que incluiu a codificação, a criação das interfaces e o desenvolvimento das funcionalidades. Consequentemente, alcançou-se a etapa final, "Feedback", onde se avançou para a última subtarefa, "Validação com o cliente". Para viabilizar a validação junto ao usuário final, iniciou-se com a instalação do aplicativo em seu dispositivo móvel, permitindo que o usuário conduzisse todo o processo sem intervenções externas. Inicialmente, o usuário procedeu com a criação de uma conta no aplicativo sem qualquer dificuldade. Ao realizar o login utilizando a conta Google, o aplicativo o redirecionou para a tela inicial. Neste ponto, o usuário navegou entre as telas enquanto observava as opções disponíveis para iniciar o uso do aplicativo. Em seguida, o usuário tentou cadastrar um Produto. Porém, não havia uma Marca previamente cadastrada, então o sistema exibiu a seguinte mensagem: "Cadastre uma Marca antes de cadastrar um Produto!". O usuário, então, redirecionou-se para a tela de Marcas e realizou um cadastro; na sequência, voltou para a tela de Produtos e enfim foi possível efetuar o registro. Ao acessar a tela de Clientes, o usuário iniciou a tentativa de criar um novo registro, porém notou que era requisito obrigatório informar um CPF. Visto que não possuía essa informação no momento, optou por criar um usuário fictício, fornecendo seus próprios dados pessoais. Por fim, com o cadastro de um Produto e de um Cliente devidamente concluídos, o usuário conseguiu efetuar o registro de uma Venda sem nenhum impedimento. Foi instruído ao usuário que visualizasse os detalhes da Venda e que era possível informar os dados de cada parcela conforme eram realizados seus pagamentos. Após os testes, o usuário deu o seguinte feedback: "No aplicativo não tive dificuldades; cadastrar clientes, produtos e marcas achei que ficou bem fácil de fazer. O aplicativo está facilitando na organização das minhas vendas, pois eu fazia uso de um caderno de anotações para registrar as minhas vendas; às vezes deixava este caderno em outra bolsa e não tinha acesso às minhas vendas quando precisava. Agora tenho tudo na mão onde eu estiver. E melhor ainda, consigo gerar relatórios e fazer uma análise de minhas atividades durante o período desejado". Tendo compreendido essas orientações, concluiu-se o processo de validação. O projeto atualmente conta com 142 commits e pode ser encontrado no repositório do GitHub da instituição¹. É possível ter acesso a todo o código-fonte da aplicação e alguns prints das principais telas. Além do tempo dedicado em sala de aula, houve um compromisso de 5 a 8 horas semanais, fora das instalações da instituição, para o desenvolvimento do projeto, incluindo comparecimento a atendimentos acadêmicos específicos.
Desenvolvimento de um Protótipo de Jogo RPG de Ação na Plataforma Unity
O presente estudo descreve o desenvolvimento de um protótipo não funcional de um jogo Role Playing Game (RPG) de ação, realizado como parte do curso de Engenharia de Software do Instituto Federal do Paraná, Campus Paranavaí, durante o segundo ano do curso. O objetivo central deste projeto foi aplicar os conceitos e técnicas aprendidos ao longo do curso na prática, explorando o desenvolvimento de jogos como um desafio multidisciplinar que combina programação, design e criatividade. Os jogos de RPG são um gênero que envolve interpretação de papéis, permitindo que os jogadores encarnem personagens fictícios e se aventurem em mundos imaginários. Conforme SÁ e PAULUCCI (2021), o RPG é como um teatro de improviso, onde o mestre tem por função manter os jogadores entretidos com a história de forma que eles queiram permanecer ali. Além disso, todas as regras, cenários e demais narrativas são realizadas pelo mestre, todavia, as ações e decisões do jogador influenciam nas consequências que virão ao longo da história. Esses jogos têm a capacidade de transcender gêneros, abrangendo desde a ficção à fantasia, passando pelo terror e a ficção científica. Eles podem ser jogados em diferentes plataformas, como computadores, consoles, celulares e até mesmo em seu formato clássico com lápis, papel e dados. Alguns exemplos notáveis neste gênero incluem Dungeons and Dragons, The Witcher, Baldur’s Gate e Diablo. A ideia de desenvolver um jogo no estilo RPG parte do princípio que o mesmo pode ser utilizado na área de educação, pois conforme Rosa et al. (2021), em seu artigo onde a mesma, em conjunto com outros dezessete (17) professores de escolas públicas de Brasília, realizaram sessões de RPG e refletiram sobre suas possibilidades pedagógicas, concluíram que o mesmo pode contribuir para o desenvolvimento de competências e habilidades dos estudantes. E por conta da flexibilidade criativa que o RPG nos proporciona, podemos inserir questões de cunho acadêmico no qual o jogador deve responder de maneira correta para que o mesmo avance na história do jogo. Para que fosse possível dar início ao projeto, foram aplicados princípios relacionados à Engenharia de Software, como o levantamento de requisitos, definição de histórias de usuários e a criação de diagramas de caso de uso. O levantamento de requisitos permitiu à equipe compreender claramente as funcionalidades necessárias para o jogo, levando em consideração as expectativas dos usuários e os objetivos do projeto. A partir da definição das histórias de usuário, as interações pretendidas e os caminhos narrativos desejados foram melhor estabelecidos. Tal fato propiciou o desenvolvimento do que se acredita ser uma experiência mais envolvente para os jogadores. Além disso, a elaboração dos diagramas de caso de uso proporcionou uma representação visual mais clara das interações entre os usuários e o sistema, o que também garantiu uma comunicação eficaz entre os membros da equipe e uma compreensão aprofundada dos requisitos funcionais do jogo ao longo do processo de desenvolvimento. A escolha das metodologias ágeis, particularmente as abordagens Scrum e Kanban, desempenhou um papel fundamental neste projeto. Embora o Scrum possa não ser a primeira opção quando se pensa em desenvolver jogos, Schell (2019) argumenta que as metodologias ágeis são valiosas por sua ênfase na criação de ciclos de repetição, na manutenção da prototipagem e da avaliação de riscos como componentes centrais em cada iteração. Isso proporcionou um progresso significativo em cada fase do desenvolvimento. A aplicação prática do Scrum permitiu a criação de iterações de desenvolvimento bem definidas, enquanto o uso do Kanban facilitou o acompanhamento contínuo do progresso do projeto. A integração dessas metodologias trouxe clareza ao processo de desenvolvimento e promoveu a colaboração eficaz entre os membros da equipe. O desenvolvimento do jogo trouxe consigo uma série de desafios complexos. Desde a criação de modelos 2D até a implementação de mecânicas de jogo intricadas, a equipe enfrentou obstáculos significativos ao longo do caminho. No entanto, é importante destacar que, graças ao trabalho em equipe e à aplicação das metodologias ágeis, bem como o suporte dos professores, esses desafios estão sendo superados com sucesso. O processo de criação de modelos 2D exige criatividade e habilidades artísticas. Entretanto, por não haver tempo hábil suficiente para seu desenvolvimento no corrente ano, buscou-se explorar os sprites disponibilizados pela própria comunidade de desenvolvimento da plataforma utilizada para o desenvolvimento, o que propiciou a escolha de personagens e cenários que se encaixem na narrativa do jogo, bem como possibilita alterações futuras para outros modelos que venham a ser disponibilizados. A escolha da plataforma Unity revelou-se acertada devido à sua popularidade e robustez no desenvolvimento de jogos. A Unity oferece uma ampla gama de recursos e suporte tanto para a criação de ambientes bidimensionais quanto tridimensionais, o que foi essencial para dar vida ao mundo imaginado pelo grupo durante a elaboração do projeto do jogo. Também se mostrou necessário o aprendizado da linguagem de programação utilizada pela plataforma, o C#, fato que se mostrou interessante e também desafiador ao grupo. Além disso, a utilização da linguagem de programação C# permitiu implementar funcionalidades avançadas e interações complexas. Contudo, poucos dias antes do início da escrita deste estudo, a referida plataforma passou a sofrer diversas retaliações por estúdios de desenvolvimento, estúdios independentes, também conhecidos como indies, em sua maior parte. Tal problemática surgiu devido a um novo modelo de cobrança imposto pela plataforma, o qual não veio a informar previamente os estúdios, gerando imenso descontentamento da comunidade, bem como a busca por novos motores e plataformas de desenvolvimento. O resultado esperado deste projeto é a entrega de um protótipo de jogo RPG de ação, nomeado ”Call of IFerno”. A trama do jogo se desenrola no Campus Paranavaí do Instituto Federal do Paraná, onde o jogador deve combater o monstro da dependência, evitando que seus amigos sejam reprovados. Este jogo não apenas demonstra as habilidades técnicas adquiridas ao longo do curso, mas também ressalta a importância da colaboração em equipe e da aplicação de metodologias ágeis na resolução de problemas complexos. No âmbito do jogo desenvolvido, o projeto se trata do desenvolvimento de um protótipo não funcional de um jogo RPG, o qual tem como perspectiva do produto ser um jogo indie voltado ao lazer de seus usuários. As funcionalidades do produto são compostas por sistemas de interação e interface de usuário que tornam a experiência mais rica. Pessoas que buscam por diversão, conquistas e exploração são o perfil dos usuários que se pretende atingir. Nesta mesma senda, o ambiente operacional possui configurações mínimas acessíveis para a maior parte dos usuários, o que possibilita que tanto pessoas que já conhecem o gênero, bem como aqueles que terão seu primeiro contato por meio deste projeto possam ser capazes de desfrutar de uma experiência fluida e com mínimas dificuldades. A escolha desta categoria, o RPG de ação, se deu de acordo com a classificação de Bartle (1996), que descreve os quatro arquétipos de jogadores: os “conquistadores”, “exploradores”, “assassinos” e “socializadores”. O público-alvo do produto em desenvolvimento é composto principalmente de “conquistadores” (aqueles que buscam diversão por meio de conquistas) e “exploradores” (aqueles que buscam descobrir novas experiências). Em razão do jogo em desenvolvimento não possuir função multiplayer tampouco constar em planos futuros, os perfis de ”socializador” (jogadores que buscam diversão por meio de interação social) e “assassino” (jogadores que desfrutam da competição e conflito) não estão incluídos no público-alvo deste projeto. Em síntese, o desenvolvimento deste projeto representou uma valiosa oportunidade de aplicação prática dos conhecimentos adquiridos ao longo do curso de Engenharia de Software, as quais se mostraram fundamentais para orientar a criação e implementação bem-sucedida do protótipo, refletindo a importância da abordagem metodológica no desenvolvimento de aplicações complexas, como os jogos. Não obstante, a escolha das metodologias ágeis, a superação de desafios técnicos e criativos, bem como a exploração do potencial dos jogos RPG destacam a importância deste estudo de caráter multidisciplinar.
Desenvolvimento de um Software para Gestão de Trabalhos Acadêmicos denominado TRABIF
Com o objetivo de formar indivíduos capazes de buscar novos conhecimentos e aplicá-los metodologicamente para encontrar soluções para problemas encontrados no cotidiano, o IFPR de Paranavaí promove a Semana de Tecnologia da Informação (SETIF), evento que ocorre anualmente e que conta com a exposição de trabalhos técnicos e científicos. A fim de participar de tal conferência, a comunidade interna e externa pode submeter seus trabalhos, os quais passarão por uma análise dos avaliadores do evento e, caso aceitos, serão apresentados e publicados nos anais do evento. Contudo, a organização e execução de atividades científicas requer o gerenciamento de diversas atividades básicas que exigem controles adequados e processamento de dados demorado. Apesar de incentivar os eventos, o IFPR não possui e não fornece software de gestão de eventos científicos. Atualmente, existem diversas plataformas de gestão de eventos científicos. Entretanto, as gratuitas não conseguem satisfazer plenamente as necessidades da SETIF, tais como a quantidade ilimitada de submissões por evento e os cadastros automáticos de usuários por e-mail. Por outro lado, aquelas que atendem completamente às solicitações dos organizadores possuem custos que não podem ser cobertos pelo evento, uma vez que é totalmente gratuito. Neste contexto, este trabalho desenvolveu um projeto de software que possui requisitos necessários para realizar a gestão dos trabalhos acadêmicos da SETIF do IFPR campus Paranavaí. Para realizar o desenvolvimento do software, foi utilizada a metodologia Specification by Example [Adzic 2011], a qual tem 6 principais fases que são apresentadas na Figura. A primeira fase busca definir os "Objetivos de negócio", as funcionalidades que são necessárias para o desenvolvimento do trabalho. Para realizar tal etapa, colaborativamente o autor, professor orientador e o organizador da SETIF definiram os "Objetivos de negócio". Na segunda fase, são formadas funcionalidades implementáveis que permitem a entrega denominadas de "exemplos". Por meio de uma reunião aberta com o professor organizador foram extraídos os "exemplos". Na terceira fase os "exemplos" são refinados para não descrever como o software deve realizar uma funcionalidade, mas somente o que ela deve fazer. Neste projeto essa fase foi realizada juntamente com a segunda buscando poupar tempo. Na quarta fase são criados os casos de uso de aceitação mostrando as pré-condições de testes (DADO), ações (QUANDO) e verificações de resultado esperados (ENTÃO). Com base nos exemplos criados e já refinados são formados um ou mais casos de uso de aceitação. A fase de especificação executável, quinta fase, é onde são feitos os testes unitários para cada caso de uso de aceitação. No desenvolvimento do projeto foram criados testes unitários para as principais funcionalidades do sistema [Adzic 2008] as quais foram definidas pelos casos de uso de aceitação a fim de garantir a qualidade do sistema [Huttermann 2012]. Por fim a sexta fase é a fase de documentação viva que possui esse nome por ser sempre atualizada conforme o avançar do desenvolvimento do projeto. A documentação viva foi especificada na monografia, texto o qual serviu de base para o desenvolvimento deste resumo. Seguindo todos esses passos da metodologia, foi elaborado um software destinado à gestão de trabalhos acadêmicos, o código-fonte do projeto está disponível em um repositório do GitHub¹. O fluxo de funcionamento do software será descrito a seguir: para entrar no sistema, o usuário deverá efetuar o login (é necessário realizar um novo cadastro caso ainda não o tenha feito). Após o login, é possível visualizar os eventos criados. Além disso, o sistema permite o acesso a um evento com três distintas permissões: Organizador, Avaliador e Autor. Ao acessar como Organizador o usuário poderá escolher os avaliadores para o evento, definir as categorias para os trabalhos (artigo, resumo, etc.), definir as áreas do conhecimento disponíveis para o evento além de poder aprovar ou reprovar os trabalhos enviados ao evento. O Avaliador pode escolher quais áreas do conhecimento ele possui dentro das disponíveis no evento além de avaliar os trabalhos. Nessa avaliação é definida uma nota para o trabalho indo de um a cinco, um nível de confiança do avaliador para a nota dada também de um a cinco, um comentário a ser mostrado para o autor do trabalho e outro comentário que será mostrado para o Organizador do evento. Por fim, o Autor pode submeter seus trabalhos para o evento e também definir os outros autores do trabalho em questão. O processo de desenvolvimento deste trabalho ocorreu da seguinte forma: Inicialmente foi definido o que o software deveria fazer; no caso gerenciar o envio, a avaliação e definição do resultado do trabalho; em seguida foi definido o escopo do trabalho e as funcionalidades implementáveis que permitem a entrega, denominados de “exemplos” [Adzic 2011]. Os "exemplos" delimitaram o escopo do sistema e foram definidos em uma reunião junto ao professor organizador da SETIF. Após toda essa definição foi de fato realizada a implementação dos testes unitários e do código-fonte. Paralelamente ao desenvolvimento do software foram realizados testes unitários para garantir a qualidade do sistema e também seguir a metodologia proposta. As tecnologias utilizadas para realizar o desenvolvimento do software foram Java com Spring para o back-end, Mockito e JUnit para os testes unitários, Angular, Bootstrap e PrimeNG para o front-end. Logo, este resumo introduziu os leitores de forma geral sobre como foi realizado o desenvolvimento do Sistema para gerenciamento de trabalhos acadêmicos denominado TRABIF utilizando a metodologia Specification by Example, apresentando as etapas da metodologia utilizada, como o sistema foi estruturado por meio do Diagrama de Classe e também uma descrição simplificada do fluxo que pode ser realizado dentro do sistema. Em suma, utilizando a metodologia Specification by Example, este trabalho desenvolveu o TRABIF, um Sistema de Gerenciamento de Trabalhos Acadêmicos. Essa solução buscou abordar a necessidade do IFPR de Paranavaí de ter uma ferramenta eficaz para eventos científicos, como a Semana de Tecnologia da Informação. Com funcionalidades distintas para Organizadores, Avaliadores e Autores, o TRABIF procura simplificar a gestão de eventos acadêmicos, tornando-a acessível e eficaz. Em futuras etapas, planejamos conduzir testes com usuários para avaliar o desempenho e a usabilidade do software desenvolvido.
Design e implementação da nova interface gráfica do website institucional para a SETIF 2023
O Artigo 217 da Constituição Brasileira [Brasil 2023] estabelece que “as universidades gozam de autonomia didático-científica, administrativa e de gestão financeira e patrimonial, e obedecerão ao princípio de indissociabilidade entre ensino, pesquisa e extensão”. Com o intuito de alcançar parte desse objetivo, os acadêmicos precisam cumprir atividades extracurriculares durante sua formação. Geralmente as universidades oferecem semanas de eventos para a comunidade acadêmica, onde os estudantes podem participar de atividades para compor essa carga horária extra. As semanas de eventos se referem ao conjunto de dias destinados à realização de atividades que integram estudantes com objetivos acadêmicos. Durante esse período, são realizadas mesas-redondas, rodas de conversas, workshops, minicursos, oficinas, entre outras atividades. Essas atividades costumam estar relacionadas ao cotidiano escolar dos estudantes e podem variar de acordo com o tipo de formação, seja superior ou técnica, sendo diretamente relacionadas ao curso realizado. No IFPR (Instituto Federal do Paraná) - Campus Paranavaí acontecem duas semanas de eventos, uma delas é a SETIF (Semana da Tecnologia da Informação do IFPR - Campus Paranavaí), que está em sua 10ª edição. Durante o evento são realizadas diversas apresentações de trabalhos, projetos, minicursos, palestras e competições, que visam integrar estudantes, professores e convidados. Durante os dias de evento são compartilhadas informações, experiências e conhecimento sobre tópicos específicos. Para melhor divulgar as atividades, geralmente as semanas de eventos contam com sites que centralizam as informações, além das publicações nas redes sociais. Com a SETIF não é diferente, entretanto, seu site apresentava uma interface gráfica simples, não contemplando padrões focados em oferecer uma melhor experiência ao usuário, principalmente o público mais jovem (principais visitantes). Isso torna o acesso a algumas informações mais difícil, devido à comunicação não ser direcionada a esse público. Diante disso, percebeu-se uma necessidade de torná-lo mais atrativo e alinhado com os padrões observados nos sites mais visitados. Sendo assim, o objetivo geral deste trabalho é a atualização do site para a divulgação da SETIF - 2023, visando atualizar e melhorar a interface gráfica e manutenibilidade do código-fonte produzido. A partir disso, objetivos específicos foram determinados, sendo eles: analisar e especificar os requisitos funcionais, não funcionais e de domínio; pesquisar sobre a estrutura de sites comumente visitados para usar como inspiração para o desenvolvimento; elaborar o protótipo da nova interface gráfica; identificar as falhas do site atual; descobrir formas de otimizá-lo e tornar a interface mais agradável; elaborar os diagramas de casos de uso e de classes; verificar a compatibilidade com dispositivos móveis (responsividade); versionar o código escrito; e, validar e implantar em ambiente de produção. Este trabalho iniciou pela análise e especificação dos requisitos, incluindo a criação dos diagramas de classes e casos de uso, ambos da UML (Unified Modeling Language) [OMG 2023]. Em seguida, a interface gráfica do site foi prototipada utilizando o aplicativo Canva [Canva 2023], organizando os tópicos e informações. Paralelamente, foram realizadas buscas para identificar padrões de interface nos sites mais visitados no Brasil [Similarweb 2023]. Na sequência, a codificação foi iniciada aplicando as especificações. No desenvolvimento deste trabalho, adotamos uma metodologia baseada nas metodologias ágeis [Sommerville 2019], que envolveu reuniões em equipe. Durante essas reuniões, discutimos as tarefas a serem realizadas, o progresso alcançado até o momento e as necessidades de atualização. Além disso, analisamos o que já estava concluído e avaliamos se havia oportunidades de aprimoramento. O Git [Chacon and Straub 2014] foi utilizado para controle de versões do código, que está disponibilizado no GitHub institucional do IFPR - Campus Paranavaí [Goes et al. 2023]. Para auxiliar na construção da interface gráfica foi utilizado o framework Bootstrap 5.0.2 [Bootstrap 2023]. Esse framework possui um conjunto de componentes gráficos e auxilia na gerência da responsividade. A linguagem de programação utilizada foi a PHP (um acrônimo recursivo para PHP: Hypertext Preprocessor) devido ao servidor previamente contratado para hospedagem fornecer suporte a ele. Também foram utilizadas a linguagem de marcação HTML (Hypertext Markup Language), a de estilização CSS (Cascading Style Sheets) e a SQL (Structured Query Language) para manipulação do banco de dados MySQL. A estrutura interna do projeto foi organizada seguindo o MVC (Modelo-Visão-Controlador). O MVC é um padrão arquitetural que divide o sistema em três camadas segundo as suas funções. Sendo que o componente Modelo gerencia os dados do sistema e as operações a eles associadas. A Visão define e gerencia como os dados são apresentados ao usuário. O Controlador gerencia a interação do usuário e passa essas interações para Visão e Modelo [Sommerville 2019, p. 155]. Para o mapeamento entre o banco de dados e a aplicação (PHP) foi utilizado o padrão de projeto Data Access Object (DAO). O padrão DAO permite que os mecanismos de acesso a dados mudem independentemente do código que utiliza os dados [Oracle 2023], visto que encapsula o acesso ao banco de dados e fornece uma interface para que as outras camadas da aplicação possam se comunicar com ele. Além disso, a modelagem física do banco de dados foi idealizada para ser utilizada em versões futuras do site, sem ser necessário iniciar uma nova implementação a cada atualização, reduzindo e tornando mais prático o trabalho de novos desenvolvedores. No total, foram desenvolvidas cinco páginas. A página “Apresentação” traz informações gerais sobre o evento, tais como sua descrição, a programação e localização. “Normas de Publicação” fornece detalhes sobre a submissão de artigos, incluindo diretrizes, exemplos e redirecionamento para o sistema de submissão. Em “Anais do Evento” e “Fotos” pode-se encontrar os artigos publicados e as fotos, respectivamente, separados por ano de publicação. Em “Corpo Editorial” estão os nomes dos colaboradores do evento. Além disso, na barra de navegação, há um item para acesso à edição anterior da SETIF. O site desenvolvido encontra-se em ambiente de produção [IFPR 2023]. Após a hospedagem do site no servidor Web, foi realizada uma pesquisa anônima com estudantes e servidores do IFPR - Campus Paranavaí com o objetivo de comparar a versão antiga do site com a desenvolvida por este trabalho. Ao todo, 70 participantes responderam o formulário. Desses, 86% preferiram a versão apresentada por este trabalho. Destaca-se que 42,9% dos participantes acessaram pelo navegador do celular e 57,1% pelo do computador. Entre outras perguntas, foi solicitado que os participantes, opcionalmente, enviassem um feedback para futuros aprimoramentos, o que resultou em um feedback positivo em relação ao nosso objetivo perante o site. Por meio da pesquisa realizada sugere-se que o site passou a ter uma interface mais agradável, atrativa e dinâmica para o público, facilitando o acesso às informações do evento. Além disso, espera-se que as melhorias na estrutura interna, código-fonte e banco de dados possam melhorar o funcionamento do site e facilitar evoluções futuras. Futuras atualizações no site foram facilitadas, visto que o administrador poderá atualizar as informações sem precisar interferir no código-fonte, sendo apenas necessário substituir as informações no banco de dados. Como trabalhos futuros pretende-se realizar a implementação de uma área administrativa para que a manipulação não seja feita diretamente no banco de dados. Além disso, na página de anais do evento precisam ser adicionadas funcionalidades de filtro e aprimorar os metadados de indexação do Google Scholar.
FYTNEZ - Relato de Experiência de Desenvolvimento em Projeto Integrador II
No contexto das disciplinas de Projeto Integrador, Construção de Software e Desenvolvimento Web, o projeto do aplicativo Fytnez foi concebido em 2020 com a missão desafiadora de criar um aplicativo multiplataforma voltado para o gerenciamento abrangente da rotina fitness. A motivação por trás desse empreendimento surgiu da crescente demanda por ferramentas que auxiliem tanto os praticantes de atividades físicas quanto aqueles que buscam adotar uma dieta saudável após o período pandêmico. O Fytnez se destina a oferecer uma solução completa aos usuários, permitindo o gerenciamento de treinamentos e alimentação, com um foco especial nas necessidades do público brasileiro. O projeto do Fytnez teve origem em um ambiente educacional, durante as disciplinas mencionadas, onde reconhecemos a oportunidade de desenvolver um aplicativo móvel multiplataforma para dispositivos Android e iOS. Essa iniciativa proporcionou aos usuários uma nova opção para administrar suas rotinas de treinamento e alimentação. A aplicação foi projetada para disponibilizar uma ampla gama de funcionalidades relacionadas ao controle de treinamento do usuário, permitindo que cada um crie sua própria planilha de exercícios com exercícios personalizados e séries. Além disso, o aplicativo deverá oferecer acesso a monitores de emoções, controle de carga, gráficos de progresso e realizações que servem como incentivo para a melhoria contínua. Outro aspecto crucial é o gerenciamento da alimentação, com recursos que permitem aos usuários registrar a ingestão de calorias, proteínas, gorduras e carboidratos, proporcionando uma visão clara de seu consumo diário de calorias e macronutrientes para manter uma dieta equilibrada. Após as três primeiras Sprints, que, inicialmente, foram subestimadas devido à falta de sincronização da equipe, levando ao remanejamento de algumas atividades entre as Sprints para cumprir os prazos, o projeto começou a ganhar forma. Inicialmente, também enfrentamos desafios relacionados ao versionamento do projeto, uma vez que o desenvolvimento simultâneo das atividades resultou em problemas complexos de merge. No entanto, esses problemas foram posteriormente resolvidos, graças a uma melhor organização e coordenação da equipe, e não se repetiram. Uma das decisões críticas tomadas durante o desenvolvimento do Fytnez foi a escolha das ferramentas adequadas. Inicialmente, consideramos o uso de React Native como framework para o desenvolvimento da aplicação móvel e Node.js como a tecnologia para o backend. No entanto, à medida que avançamos na elaboração dos protótipos e avaliamos as necessidades do projeto, optamos por uma mudança estratégica para Flutter¹ e Django². Essa decisão revelou-se acertada devido à facilidade que essas ferramentas ofereceram na criação de protótipos rápidos e na agilidade para testar e adaptar novas funcionalidades. A capacidade de resposta dessas ferramentas ao feedback dos usuários e às mudanças de requisitos foi fundamental para o sucesso do projeto. Portanto, a transição de tecnologias representou uma escolha estratégica que permitiu uma maior flexibilidade e eficiência no desenvolvimento do Fytnez. A metodologia Scrum³ foi adotada como uma abordagem de gerenciamento de projetos ágil, orientando nosso processo de desenvolvimento (Schwaber & Sutherland, 2021). Isso nos permitiu dividir o projeto em iterações menores, conhecidas como sprints, e priorizar as funcionalidades mais importantes. O uso do Scrum também facilitou a comunicação constante entre os membros da equipe, o acompanhamento do progresso e a rápida resolução de problemas à medida que surgiam. Além disso, o Jira⁴ foi a ferramenta escolhida para auxiliar na gestão de projetos, permitindo o rastreamento eficiente das tarefas, o monitoramento do backlog e a criação de relatórios de desempenho. A combinação do Scrum e do Jira desempenhou um papel fundamental na conclusão bem-sucedida do projeto Fytnez. Ao longo do projeto, ficou evidente a importância da prática da criação de software nas disciplinas de Projeto Integrador, Construção de Software e Desenvolvimento Web. Mesmo com a equipe possuindo alguma experiência em desenvolvimento, a gestão abrangente de um software, com responsabilidades em todos os aspectos de sua criação, trouxe novos desafios aos membros. Isso exigiu uma expansão contínua do conhecimento em relação à construção de um aplicativo do zero, desde a concepção até a entrega final. À medida que avançamos no projeto, algumas das estratégias inicialmente planejadas mostraram-se menos adequadas, o que nos levou a ajustar nosso plano original para melhor atender às necessidades em constante evolução do projeto. Isso incluiu a implementação de uma filtragem de escopo rigorosa, garantindo que apenas as funcionalidades mais cruciais fossem priorizadas para entrega. Além disso, percebemos que era necessário fazer mudanças nas ferramentas que estávamos usando para melhorar a eficiência e a qualidade do desenvolvimento. Esse processo de adaptação e aprendizado contínuo destacou a importância da flexibilidade e da capacidade de resposta em um ambiente de desenvolvimento de software em constante mudança. Durante o processo de desenvolvimento do Fytnez, enfrentamos desafios significativos que resultaram em valiosas lições aprendidas. Um desses desafios foi aprimorar a comunicação dentro da equipe, notando a importância de envolver o Product Owner e Scrum Master em todas as matérias relevantes. Além disso, enfrentamos dificuldades ao lidar com tarefas que exigiam um conhecimento mais profundo, como a implementação da lógica de login, e também ao decidir quais tarefas priorizar e dar mais importância. A diversidade de conhecimento na equipe, incluindo membros com experiência anterior em desenvolvimento e outros iniciantes, nos motivou a criar um ambiente de colaboração e aprendizado contínuo. Isso permitiu que os membros mais experientes compartilhassem seus conhecimentos com os novatos, enriquecendo assim nossa experiência coletiva. Outro desafio notável foi a constante evolução dos requisitos do projeto, em resposta às mudanças no mercado fitness e às novas tendências. Isso nos obrigou a adaptar nosso planejamento original e implementar mudanças no aplicativo, enfatizando a importância da flexibilidade e da capacidade de resposta em um ambiente de desenvolvimento em constante mudança. Além disso, a necessidade de garantir a segurança dos dados dos usuários e a escalabilidade do sistema apresentou desafios técnicos complexos, que exigiram soluções criativas e expertise em segurança da informação. Em resumo, o desenvolvimento do aplicativo Fytnez nas disciplinas de Projeto Integrador, Construção de Software e Desenvolvimento Web envolveu a escolha cuidadosa de ferramentas, como Flutter e Django, para atender às necessidades do projeto. Enfrentamos desafios relacionados à diversidade de conhecimento na equipe, à adaptação constante aos requisitos do mercado e à garantia de segurança e escalabilidade. Esses desafios nos proporcionaram aprendizados valiosos e demonstraram a importância da colaboração e da flexibilidade no desenvolvimento de software em constante evolução. O Fytnez agora representa uma solução palpável para aqueles que buscam aprimorar sua jornada fitness e de saúde, fruto do esforço e aprendizado contínuo de uma equipe dedicada. No entanto, é importante ressaltar que o sistema ainda não está concluído, e estamos comprometidos em continuar aprimorando-o para atender às necessidades em constante evolução.
Gestão do gado leiteiro e de corte com o uso da tecnologia da informação
Com o aumento da democratização do acesso à tecnologia e da Internet, junto com o impacto da pandemia de Covid-19, o uso da internet atingiu 81 por cento da população brasileira, com 156 milhões de pessoas participando de forma conectada ao mundo, conforme o estudo realizado pelo Centro Regional de Estudos para o Desenvolvimento da Sociedade da Informação. Com esse aumento do acesso, criou-se novas oportunidades para o mercado profissional em diversas áreas, incluindo o agronegócio, de modo que a tecnologia se tornou uma ferramenta essencial para os produtores que hoje sofrem com a alta concorrência e a exigência de desempenho e qualidade [Zambalde 2021]. Com a implementação de novas tecnologias como provedores de internet e aplicações mobile, é possível levar ao campo novas formas de se fazer o controle do gado, melhorando a qualidade do serviço prestado, assim como também sua eficiência, possibilitando o acesso a informações atualizadas dentro do campo, como fichas médicas dos animais para tratamento e qualificação dos animais para o controle financeiro, determinando quais animais trazem renda e quais devem ser descartados. No passado, propriedades rurais remotas enfrentavam dificuldades no uso de tecnologias devido à falta de cobertura de sinal e altos custos de conexão à internet em comparação com áreas urbanas. Entretanto, soluções como a Starlink surgiram, oferecendo cobertura em todo o território brasileiro com transmissão de dados eficiente e preços competitivos [Starlink 2023]. Assim, serviços como esse promovem o avanço tecnológico na agropecuária, permitindo acesso à Internet em qualquer propriedade e viabilizando o uso de dispositivos eletrônicos, softwares, aplicativos e sistemas de monitoramento que necessitam de conexão online. Tendo isso em vista, o objetivo do trabalho em questão é desenvolver um sistema para dispositivos móveis que atenda às necessidades de propriedades rurais em relação ao gerenciamento de animais bovinos. Mais especificamente, administrar o gado em relação à reprodução e produção de leite ou carne, fazendo controle da quantidade de leite produzida pelos animais de maneira individual, controle do crescimento do rebanho e histórico dos animais catalogados. Tendo como objetivo específico: Pesquisar e compreender como é feita a gestão do gado de corte e leiteiro no âmbito das fazendas produtoras de carne e leite para o mercado; Pesquisar quais são as maiores necessidades do mercado dessa área; Levantar as demandas de uma propriedade rural, com o apoio de um médico veterinário; Pesquisar e analisar abordagens e soluções já existentes; Definir o escopo do sistema; Realizar o levantamento de requisitos; Modelar o sistema utilizando UML; Implementar em código os requisitos levantados; Testar o sistema em uma das fazendas; Validar se as necessidades da fazenda foram sanadas. A análise do cenário das propriedades rurais evidencia desafios significativos, quer seja pela carência de ferramentas que auxiliem na gestão das atividades, quer seja pelos desafios de implementar tecnologias avançadas. Essas questões foram abordadas por um profissional da área veterinária que presta assessoria a fazendas produtoras de carne e leite. Adicionalmente, destaca-se que o acesso a informações sobre os animais é restrito, abrangendo o histórico de medicamentos, incidentes, qualificação e aspectos reprodutivos. A qualificação do animal se dá através da análise da CCS, sigla para contagem de células somáticas. Esta contagem é feita a partir de amostras de leite e serve para avaliar tanto o produto quanto o estado de saúde do animal. Empresas compradoras estabelecem um limite máximo e mínimo de CCS no leite, visando assegurar um padrão de qualidade. Essa medida serve também como referência para os proprietários distinguirem entre um animal produtivo e um que pode acarretar prejuízos à propriedade. Além disso, a CCS é indicativa da saúde do bovino, permitindo que os donos e veterinários avaliem a necessidade de tratamentos ou mesmo acompanhem a eficácia de intervenções já realizadas. Assim, essa métrica auxilia tanto os proprietários quanto os profissionais de saúde animal nas tomadas de decisão relacionadas ao bem-estar e produtividade dos bovinos [Coldebella et al. 2004]. Para a elaboração deste projeto, foram investigadas e analisadas ferramentas já existentes no mercado específico para solucionar os desafios da pecuária, tais como o Alta Gestão, JetBov e Leigado, que se destacam como principais sistemas desse segmento. Com base nessas análises, criou-se o GereVete, o sistema objeto deste trabalho, identificando e considerando as lacunas e variações apresentadas por esses sistemas, que variam entre aplicativos e sites. Com base nessa análise, determinaram-se os requisitos do sistema, que incluem: Login, Previsão de partos, Histórico do animal, Gestão do animal, Calendário para agendamento de eventos, Medidor de qualificação do animal, Gestão da engorda e Emissão de relatórios. Esses requisitos trazem diversas vantagens para o setor. O login, por exemplo, diferencia as informações de cada propriedade e seus colaboradores, permitindo um acesso seguro e personalizado às informações. A previsão de partos favorece um melhor controle do rebanho e um cuidado mais direcionado aos animais, otimizando a gestão de sua saúde. O histórico do animal auxilia no monitoramento de sua saúde, possibilitando tratamentos mais assertivos pelos veterinários. O medidor de qualificação de saúde oferece insights para uma gestão financeira mais eficiente e avaliação individual da saúde dos animais. Por fim, a gestão de engorda e os relatórios fornecem um controle aprimorado sobre o crescimento dos animais na fazenda, facilitando decisões como o momento ideal para abate. Para o desenvolvimento do aplicativo, foi utilizada a metodologia descrita a seguir: Definição do Projeto: Inicia-se o projeto definindo a lista das funcionalidades e requisitos do aplicativo móvel junto com o cliente. As funcionalidades são priorizadas com base no valor para o cliente, considerando suas principais necessidades e expectativas. Definição do Período e Funcionalidades a Serem Entregues: Define-se as funcionalidades a serem desenvolvidas na Sprint, bem como o tempo da Sprint para realização das atividades. Execução das Atividades: Inicia-se o desenvolvimento das atividades definidas na etapa anterior, analisando dificuldades e esclarecendo dúvidas que surgirem durante o processo. Validação com o Cliente: Ao concluir a Sprint, apresentamos ao cliente o que foi desenvolvido e colhemos o feedback para realizar alterações, se necessário. A validação é feita por meio de conversas no WhatsApp, onde são compartilhadas imagens do progresso. Também é validada pela Play Store, onde o cliente baixa atualizações do app e envia feedback.
Rafael Henrique Henrique Dalegrave Zottesso
ITH - Sistema de Gerenciamento para Conveniência Local
O progresso tecnológico transformou a maneira como as empresas lidam com o controle de estoque e as finanças. Com a digitalização dos sistemas de gestão empresarial, esses processos se tornaram mais eficientes e precisos. O avanço da tecnologia de informação (TI) nos últimos anos vem permitindo às empresas executarem operações que antes eram inimagináveis [Lutz 1999]. Nesse contexto de evolução, um ponto a ser notado no conceito empresarial é a gestão financeira. A gestão financeira tornou-se essencial para que qualquer tipo de organização empresarial obtenha resultados significativos. Para que conquiste tais resultados, seja financeiro ou econômico, a empresa deve adotar como prioridade o planejamento e a análise de todos os dados que envolvam a situação da organização [de Freitas and Paschoal 2020]. Outro importante ponto nas empresas é a questão do gerenciamento de estoque, que desempenha um papel vital. Os estoques não apenas representam os itens físicos da empresa, mas também indicam sua capacidade de atender às necessidades dos clientes. Como afirma [da Silva and Madeira 2004], os estoques são muito importantes no processo de gestão da empresa, pela manutenção do processo produtivo, pela entrega de valor ao cliente e, principalmente, pelo impacto financeiro no desempenho da empresa. A integração entre estes dois tópicos, gestão financeira e gerenciamento de estoque resulta no conceito do PDV - Ponto de Venda. O PDV representa um sistema integrado que unifica essas áreas essenciais: Gestão Financeira e Gerenciamento de Estoque, fundamentais para a eficiência operacional de uma organização. Além disso, tem o principal diferencial: agilidade e facilidade de se realizar vendas e saídas de produtos, pontos notórios e que irão suprir as necessidades do ITH, sistema o qual está em desenvolvimento. O Sistema PDV, também conhecido como Sistema Frente de Caixa, é o responsável por interligar diversos serviços que estão funcionando paralelamente, com o objetivo de finalizar uma venda no checkout do estabelecimento, sendo ele considerado imprescindível [LEAL 2020]. A loja ItoHookah — Tererê e cia relata a ausência de um sistema de gestão de estoque e gestão de vendas, utilizando ainda a famosa “notinha” e anotações de vendas e do estoque em cadernos, comprometendo seriamente suas finanças, sinalizando a urgência na adoção de um sistema eficiente. Além disso, o déficit de um sistema de gestão de estoque e financeiro informatizado adequado também impacta a capacidade da empresa de planejar de forma estratégica suas operações. A falta de dados confiáveis e atualizados dificulta a análise de tendências, a identificação de padrões de consumo e a tomada de decisões embasadas em informações concretas. Isso coloca a loja em desvantagem competitiva no mercado, dificultando seu crescimento e prejudicando sua sustentabilidade financeira a longo prazo. 2023 SETIF – X Semana de Tecnologia da Informação – ISSN 2526-1924 – Instituto Federal do Paraná (IFPR) – Campus Paranavaí Tendo em vista essa oportunidade, surgiu o ITH, um sistema de gerenciamento de estoque e gestão do fluxo de caixa exclusivamente desenvolvido para atender às necessidades específicas desta loja. O objetivo principal do sistema é suprir a lacuna existente em termos de controle efetivo do estoque e das operações financeiras da empresa, como o registro de entradas e saídas de produtos, bem como as vendas realizadas. Por meio do sistema, é possível monitorar o estoque de forma precisa, evitando faltas ou excessos de produtos, e registrar todas as transações comerciais relacionadas às vendas. Com a implementação do ITH, a empresa poderá otimizar suas operações, reduzir custos, evitar perdas financeiras e maximizar a eficiência dos processos. Ao oferecer uma plataforma para a gestão do estoque e das operações financeiras, o sistema traz uma visão integrada do negócio, facilitando a tomada de decisões estratégicas sobre o estoque e contribuindo para o crescimento da empresa. Para desenvolver uma solução eficaz de gestão de estoque para a loja ItoHookah - Tererê e cia, primeiramente foi essencial observar e entender a regra de negócio da empresa. A loja é uma conveniência que oferece uma variedade de bebidas e afins, operando tanto com atendimento presencial no balcão quanto com serviços de entrega. Para os levantamentos de requisitos necessários para a produção do projeto, foi realizada uma conversa informal e análise do movimento da loja juntamente com o proprietário da empresa. Analisando o movimento e a clientela do estabelecimento, e após diversas conversas com o proprietário, foram identificados alguns pontos de suma importância: 1) A loja possui rápido fluxo de caixa, com produtos de giro rápido; 2) Os clientes consomem na calçada, já que não há consumo no local; 3) Muitos clientes pegam produtos para consumo imediato, acertando a conta no final do dia, dado o ponto movimentado; 4) As vendas são rápidas e aumentam ao anoitecer; 5) Todas as vendas são registradas em uma caderneta, porém, algumas vendas podem passar em branco, sem anotação. Além disso, há apenas o registro do valor das vendas, sem controle de saída de estoque ou a quem foi vendido. Para o desenvolvimento do sistema web ITH, foram tomados passos em ordem cronológica. A princípio de tudo, foi feita uma entrevista com o proprietário e observado o fluxo da empresa, como ela funciona, como é trabalhada a questão da venda e vista a necessidade da criação do ITH. Em seguida, foi levantado aplicativos correlatos ao sistema a ser criado. Foi visto diversas soluções semelhantes, porém a maioria com mensalidades ou custos de implantação muito altos, e poucas como solução personalizada ao cliente. Após essa etapa, veio o levantamento de requisitos. Para os levantamentos de requisitos necessários para a produção do projeto, foi realizada uma conversa informal e análise do movimento da loja juntamente com o proprietário da empresa ItoHookah. Tendo isso em vista, foram selecionados os requisitos funcionais e não funcionais para o bom funcionamento da empresa. Com os requisitos levantados, foi realizado o diagrama de classe, onde como o próprio nome afirma, mostra as classes presentes e necessárias. O diagrama de classes permitiu uma representação das classes e seus relacionamentos, ajudando a visualizar a estruturação do sistema. Ao fim destas etapas, foi então iniciado o desenvolvimento do produto, tendo consigo a maioria dos passos necessários para a produção e implantação do mesmo. As tecnologias e ferramentas utilizadas para a criação do software foram a arquitetura MTV - Model Template View, o Visual Studio Code como ferramenta para edição de texto, o framework Django integrando o Front e Back-end do projeto, HyperText Markup Language (HTML), Cascading Style Sheets (CSS), Java Script. Para banco de dados, durante o desenvolvimento foi utilizado o SqLite e futuramente será migrado para o PostgreSQL. Também foi utilizada a ferramenta Lucidchart para a criação do diagrama de classes, o qual será visto a seguir, contendo todas suas principais classes necessárias a serem trabalhadas. O diagrama de classe relata a estrutura do sistema, modelando as classes, seus atributos, operações e relações entre os objetos presentes necessários de acordo com a necessidade do cliente. O sistema possui todo um conjunto de classes em que se resume ao produto final que será vendido com destino a um cliente com cadastro ou não. Para que tenha um cadastro completo do produto, é necessária a criação de diversas classes anteriores a ela. Até o presente momento, foram concluídos os módulos e interfaces de cadastro e listagem da maioria das classes. Os próximos módulos a serem finalizados e que estão em construção são o de venda e de relatórios. É previsto que até o mês de dezembro do ano corrente, o sistema já contenha um MVP - Mínimo Produto Viável e um bom funcionamento integrando suas classes e atributos. Em resumo, o ITH representa uma solução altamente personalizada e eficaz para otimizar as operações da loja, atendendo de forma precisa e adaptada às necessidades de controle minucioso e organização das atividades de estoque e finanças. Sua implementação promete trazer benefícios notáveis, assegurando um controle operacional ainda mais apurado, possibilitando uma considerável redução nas perdas e falhas durante os processos de vendas e gestão do estoque, resultando em maior eficiência e rentabilidade para o negócio.
A prática regular de atividade física desempenha um papel fundamental na prevenção do sedentarismo, que é um dos principais fatores de risco para uma série de problemas de saúde. Embora muitas vezes apontada como uma das causas do sedentarismo, a tecnologia pode virar uma aliada na hora da realização das suas atividades físicas [D’Alama 2022]. Para os praticantes de musculação, na palma da mão, de forma simples e rápida, os aplicativos fornecem informações relevantes sobre os treinos e desempenho [SOARES 2017]. Essa solução vem sendo adotada por muitas academias, pois melhora a comunicação com os alunos e ainda ajuda a potencializar os resultados [SANTOS et al. 2022]. Atualmente os treinos da academia do estudo de caso (EC) em questão, são definidos em uma ficha de treino (FT) com uma tabela pré-impressa, onde o professor define os treinos de cada aluno de forma manuscrita que, sem cópias de segurança, estando sujeitas à degradação do tempo e uso, bem como a perda física da ficha em que os alunos acidentalmente levam para casa ou esquecem em um dos aparelhos de treino. A definição dos exercícios na FT são anotados durante o atendimento aos outros alunos, em que, pela falta de tempo, acarreta registros apressados e/ou improvisados, sem padronização e com pouca legibilidade. O processo manuscrito é trabalhoso e repetitivo requerendo muito tempo, visto que, para cada aluno é necessário re-escrever detalhadamente diversos exercícios de cada grupo muscular. Todas as FTs dos alunos ficam centralizadas em um arquivo em que, pelo quantitativo de alunos existentes, além de ocuparem muito espaço físico, dificulta que o aluno encontre especificamente a sua FT. Outra dificuldade é devido a variedade de aparelhos existentes, bem como as formas distintas de se usar, levando as diferentes dificuldades, como por exemplo, (1) identificar o aparelho; (2) lembrar da forma de utilização; e (3) a correta execução do exercício. Ainda há várias maneiras de se praticar a musculação, com isso a importância do acompanhamento dos treinos se torna fundamental para garantir a segurança, eficiência e progresso contínuo dos praticantes. Dada a situação, este trabalho visa desenvolver um aplicativo fitness para o treino de musculação de forma a proporcionar aos usuários uma plataforma eficaz e personalizada para atingir suas metas nos treinos de musculação. O auxílio tecnológico nos treinos permite que o professor consiga alcançar altos níveis se comparado sem o uso da tecnologia [SANTOS et al. 2022], pois a ferramenta digital permite o processamento rápido dos dados e a elaboração destas em informações relevantes [Vaghetti et al. 2014], permitindo que o treino seja realmente personalizado, pois a prescrição será ajustada com base nos dados do usuário. O aplicativo será desenvolvido com base no EC onde o contexto é de uma academia de musculação da cidade de Paranavaí, no qual, conforme a maioria das academias da cidade, não utiliza aplicativo fitness para o acompanhamento do treino de musculação. Com o desenvolvimento do aplicativo de treino List Training, os dados serão armazenados adequadamente em um banco de dados de forma digital com os respectivos benefícios, como a integridade e a realização da cópia de segurança. O aplicativo irá dispor dados e recursos para que o professor defina os treinos de forma ágil e evitando a reescrita, melhorando a legibilidade e permitindo a inserção de informações acerca do exercício (aparelho, forma do exercício e de como realiza-lo). A metodologia para o desenvolvimento de um software envolve alguns passos essenciais que garantem a criação de um produto de qualidade [Koscianski and dos Santos Soares 2007]. Inicialmente, foi necessário realizar um levantamento bibliográfico sobre as ferramentas de desenvolvimento, tais como as ferramentas como o Dart para a linguagem de desenvolvimento, o Flutter para Framework e o Firebase como banco de dados na nuvem. Isso permitiu uma compreensão das opções disponíveis, incluindo suas características, vantagens e desvantagens. Em seguida, foram analisados softwares correlatos ou similares ao projeto em questão, auxiliando na identificação de funcionalidades, arquiteturas e boas práticas aplicáveis ao desenvolvimento do produto proposto. Uma etapa crítica consistiu na definição do escopo e dos requisitos do projeto, na qual se estabeleceram claramente os objetivos e limites do software. Também foi necessário identificar e documentar os requisitos funcionais, não funcionais e as regras de negócios. Após a fase de definição, prosseguiu-se com a configuração do ambiente de desenvolvimento, assegurando que todas as ferramentas necessárias fossem configuradas corretamente. Com o ambiente de desenvolvimento devidamente preparado, a próxima etapa envolveu o desenvolvimento da aplicação em si, seguindo os requisitos estabelecidos e aderindo as melhores práticas de programação e arquitetura de software. Foram aplicados alguns princípios e práticas do método ágil XP Extreme Programming para construção do List Training, garantindo assim, a comunicação constante, feedback rápido e entrega incremental. Essa abordagem facilitou o desenvolvimento do projeto, que se concentrou nas necessidades essenciais para fornecer um produto de valor ao cliente [Silva et al. 2022]. Para se adaptar a este projeto em particular, foram adotados alguns dos princípios do XP, incluindo planejamento, design simplificado, refatoração, integração contínua e padrões de codificação. Por fim, entraremos na fase de teste e implantação, estágio crítico do projeto. Nessa etapa, o software será submetido a uma série de testes minuciosos, realizados de forma abrangente e rigorosa, com o objetivo de identificar e eliminar quaisquer eventuais falhas ou imperfeições. Essa abordagem meticulosa assegurou que o software estivesse em total conformidade com os requisitos previamente definidos, cumprindo assim os padrões de qualidade e desempenho esperados para sua plena eficácia e satisfação do cliente. Como resultado, temos a expectativa de que o software a ser desenvolvido se torne uma plataforma ágil e interativa, com a capacidade de gerenciar e interpretar os dados dos alunos de forma a proporcionar benefícios significativos tanto para os próprios alunos, melhorando a execução dos seus treinos, quanto para os instrutores, simplificando consideravelmente o processo de acompanhamento e avaliação do progresso dos alunos. É importante destacar que a finalidade deste aplicativo não reside na substituição de um educador físico, mas sim na complementação das suas habilidades por meio de recursos digitais. O objetivo é simplificar substancialmente os procedimentos envolvidos no treinamento, proporcionar informações valiosas para uma experiência mais enriquecedora e eficaz, e servir como uma ferramenta de suporte vital no monitoramento contínuo dos treinos, sempre visando o bem-estar e o sucesso dos alunos.
Este artigo apresenta o MannaSpy, um robô educacional inovador projetado para enriquecer a experiência de aprendizado das crianças na era digital. O MannaSpy adota uma abordagem interativa, envolvendo as crianças em diálogos educativos que estimulam o pensamento crítico. Além disso, permite a personalização estética do robô, promovendo uma conexão emocional mais forte. Ao utilizar situações reais relacionadas aos perigos da rede, o MannaSpy torna o aprendizado prático e relevante, abordando conceitos fundamentais de tecnologia, privacidade e segurança online.
A Matemática é vista por muitos estudantes como uma disciplina de difícil entendimento e que não há aplicação de seus conceitos na prática. O Ensino da Matemática vem se preocupando em quebrar esses preconceitos, tentando tornar as aulas de matemática mais atrativas, lúdicas e oportunizar ao estudante que construa seu próprio conhecimento. Um recurso didático pedagógico para corroborar com a adequação do ensino é a utilização da Gamificação, por meio de jogos digitais, como uma estratégia para os processos de ensino e de aprendizagem. Os jogos podem se tornar um recurso facilitador para que o estudante lide com o conhecimento matemático e venha a compreendê-lo. Segundo [Mendes 2008], ultimamente vem se valorizando as atividades lúdicas no processo de construção do conhecimento matemático pelo estudante, por meio de uma prática na qual o professor utiliza os jogos pedagógicos como elementos facilitadores do ato de ensinar e de aprender. A utilização dos jogos pedagógicos como um meio facilitador à aprendizagem provoca no estudante o interesse para o conhecimento matemático e isso se mostra eficaz quando bem orientado. A abordagem lúdica dos jogos, bem orientada pelo professor, pode despertar o interesse dos estudantes, transformando a percepção da matemática como uma disciplina difícil em uma jornada divertida de descobertas. A manipulação dos jogos como elementos facilitadores da aprendizagem cria uma atmosfera propícia para a construção do conhecimento matemático. Destarte, [Barbosa Neto and da Fonseca 2013] afirmam que os jogos são recursos educacionais que podem contribuir para o desenvolvimento do conhecimento e habilidades cognitivas, promovem condições para que o estudante resolva problemas, realize reflexões, desenvolva o pensamento matemático e tome decisões. Portanto, os jogos podem propiciar uma compreensão mais profunda de certos princípios fundamentais de determinados assuntos matemáticos. Para que os jogos sejam utilizados como recursos didáticos pedagógicos, uma característica primordial é que esses apresentem uma abordagem didática adequada às necessidades dos processos de ensino e de aprendizagem. Para [Gee 2003], o formato do jogo se relaciona ao fato de ser atrativo e promover a construção do conhecimento concomitantemente. [Gee 2003] afirma que para ir ao encontro de jogos que sejam atrativos e promovam a construção do conhecimento é preciso deixar de utilizar jogos convencionais e passar a utilizar jogos de aprendizagem ou jogos sérios. Segundo [Mattar 2009], a principal diferença entre os jogos de aprendizagem e os convencionais é que os jogos de aprendizagem devem responder mais às decisões conscientes dos jogadores do que a um elemento exterior de sorte. Apesar da interação, os jogadores devem enxergar que foi uma decisão específica deles que iniciou um conjunto de consequências, e não um elemento do acaso. Neste sentido, o objetivo deste trabalho é apresentar um jogo destinado ao ensino de frações, denominado MATH Vaults. O jogo MATH Vaults, foi projetado e desenvolvido para ser utilizado como um recurso didático pedagógico, para as aulas de matemática, e se caracterizar como um jogo de aprendizagem. Assim, o Math Vaults, buscou evidenciar as características de um jogo de aprendizagem e se afastar dos jogos convencionais. O jogo em questão fornece condições e oportunidades para os professores e estudantes, visto que o jogo pode motivar o estudante a construir ou retomar assuntos matemáticas e o estudante pode mobilizar-se na ação de lidar com esses assuntos de forma atrativa e desafiadora e passar a ser agente ativo da sua aprendizagem. O Math Vaults foi projetado para ser jogado em fases, quanto mais o jogador progride, mais avançado fica o assunto. Em cada uma das fases o personagem, manipulado pelo jogador, pode caminhar pelo cenário para encontrar partes ausentes das expressões matemáticas incompletas. Para encontrar os elementos ausentes é preciso vencer obstáculos. Quando o jogador encontra todos os elementos ausentes ele deve resolver a expressão matemática corretamente para que tenha acesso à próxima fase. Buscando evitar que o jogador decore as partes ausentes, sempre que o jogo é reiniciado os valores são modificados. Além disso, o Math Vaults foi idealizado para permitir alterações facilitadas por meio de uma base de dados, permitindo assim que diferentes assuntos possam ser abordados, ou seja, não está limitado ao escopo do assunto Fração. Como as informações estarão inseridas na base de dados, basta que o professor e/ou estudante determine qual assunto deseja abordar e as fases irão se adequar às necessidades didático pedagógicas. Atualmente, os dados estão sendo inseridos em um arquivo. Entretanto, futuramente, pretende-se manipular essas informações por meio de um banco de dados local com propósitos de otimização. Inicialmente, os estudos sobre o desenvolvimento do jogo foram direcionados para a utilização de bibliotecas/frameworks da linguagem de programação JavaScript [Flanagan 2012] ou para a engine Unity [Unity 2014]. Entretanto, no decorrer da implementação percebeu-se que o Godot [Linietsky and Manzur 2014] era mais adequado para este tipo de jogo por ser uma engine versátil, leve e de código aberto. O Godot utiliza uma linguagem de programação própria, GDScript, linguagem baseada em Python [Borges 2014]. A primeira e a segunda fase do jogo estão implementadas e ela fornece a base para a implementação das próximas, facilitando assim a evolução do jogo. Essa base fornecida pela primeira fase inclui os códigos fonte, sprites (imagens dos personagens) e tiles (cenários), bem como o menu do jogo. O jogo foi idealizado para possuir uma interface lúdica e atrativa ao estudante e transmitir a sensação de imersão durante o jogo. Todo o código produzido pode ser acessado por meio do GitHub. Espera-se que esse jogo seja utilizado como um recurso didático pedagógico e contribua para os processos de ensino e de aprendizagem. Ao jogar o Math Vaults, o estudante pode se sentir motivado a se envolver ativamente no processo de aprendizagem, pois ele precisa resolver situações matemáticas, tomar decisões estratégicas e aplicar conceitos para vencer o jogo. O jogo mostrou-se um recurso que promove uma experiência interativa e lúdica ao estudante, e ajuda o professor a despertar o interesse dos estudantes, de forma envolvente, a aprender assuntos matemáticos. O jogo apresenta diversas potencialidades, entre elas, a possibilidade do estudante de se autoavaliar e progredir no próprio ritmo, estimulando a busca pelo conhecimento ao precisar resolver situações matemáticas presentes nas fases do jogo. O Math Vaults poderá ser utilizado, por professores e estudantes, em diferentes assuntos matemáticos a depender da forma que ele for configurado.
O impacto da síndrome de Burnout na qualidade de vida e saúde mental dos profissionais da área da educação
A Síndrome de Burnout (SB) tem sido um tema cada vez mais relevante no mundo do trabalho, já que afeta a saúde física e mental dos trabalhadores, a qualidade do trabalho e a produtividade das organizações. É uma reação ao estresse crônico no ambiente de trabalho que se caracteriza pelo esgotamento emocional, despersonalização e baixa realização pessoal no trabalho, fazendo com que a pessoa se afaste de sua vida, por simplesmente não conseguir ser ela mesma. Desde o início de 2022, a Organização Mundial de Saúde (OMS) classifica a SB como uma doença de trabalho. A síndrome, que afeta a saúde mental dos colaboradores, também está presente na área da educação e em sala de aula, atingindo muitos professores e demais profissionais. Atualmente, o ofício de professor, independente do nível de ensino em que atua, pública ou privada, está se configurando como uma profissão alvo de inúmeros estressores psicossociais presentes na área de atuação. A atividade docente, entendida em tempos passados como uma vocação de grande satisfação pessoal e profissional tem dado lugar ao ensino excessivamente atrelado a questões tecnoburocráticas. A carga horária acaba se tornando excessiva, as aulas tendem a se tornar mais teóricas do que práticas, há menos tempo para a execução do trabalho, para formação contínua, lazer e convívio social, bem como, escassas as oportunidades de elaborar instrumentos didático-pedagógicos diversificados. Claramente, é vista a existência do acúmulo de responsabilidades com maior distanciamento entre a execução, realizada pelos professores, e o planejamento da atividade proposta dentro do planejamento de trabalho, elaborado por outras pessoas (Kelchtermans, 1999). “Os professores são mais técnicos do que profissionais. A esses aspectos somam-se os baixos salários e as precárias condições de trabalho” (Leite & Souza, 2007). Tendo em vista todos esses aspectos é importante a busca por estratégias que facilitem a disseminação da informação sobre a SB. A busca por essas informações tem se tornado cada vez mais acessíveis e utilizadas pela população nos meios digitais. Sendo assim, a criação de um website para a divulgação de informações sobre a SB, tem o objetivo de interagir com especialistas na área, por meio de podcasts e documentários que dialoguem sobre os sinais e sintomas comuns, fatores desencadeantes, estratégias de prevenção, melhoria das condições de trabalho e apresentem os recursos para enfrentar e superar essa condição desafiadora, que tem afetado a saúde mental dos educadores. Considerando as consequências provocadas pelo Burnout na docência, o trabalho teve por objetivo discutir o fenômeno da SB, suas causas, consequências e medidas preventivas, bem como a sua relação com os fatores organizacionais e individuais através da pesquisa na literatura e criação de um website informativo. Para o desenvolvimento da pesquisa, foram realizados estudos, análises de artigos científicos, como por exemplo a SciELO, Google Acadêmico, PubMed, Pepsic; interações com professores e profissionais da área de psicologia com experiência na SB. Na área da informática, foi realizada a criação do Website de divulgação sobre os principais aspectos da SB, possíveis tratamentos, prevenções e apresentações de relatos reais de pessoas que desenvolveram a SB. Como resultados o tema ganhou maior notoriedade, com a possibilidade de maior repercussão e orientação sobre essa síndrome, tendo em vista a vasta gama de desinformação presente na internet. Com a criação desta fonte de informação, foram minimizadas as dúvidas dos educadores de maneira responsável, contribuindo para a compreensão do fenômeno do burnout e desenvolvimento de estratégias de intervenção que possam promover a saúde, o bem-estar e a qualidade de vida dos trabalhadores e das organizações.
Grafos Aplicados ao Problema do Caixeiro Viajante
O Problema do Caixeiro Viajante é um problema clássico de otimização combinatória. Tendo em vista isso, surgiram diversos algoritmos que visam solucionar esse problema. Assim, este estudo tem o objetivo de realizar uma análise comparativa entre alguns algoritmos utilizando grafos, observando a diferença no tempo que cada algoritmo demora para solucionar o problema com a mesma entrada de Grafo.
Este trabalho apresenta a criação de uma estação agrometeorológica de baixo custo com o microcontrolador ESP32, que possui suporte à tecnologia LoRa, oferecendo ampla conectividade, incluindo Internet das Coisas (IoT). A estação inclui sensores para medir temperatura e umidade do ar, temperatura e umidade do solo, luminosidade e sensor de chuva, todos conectados ao ESP32 por meio de uma placa de prototipagem. O objetivo é explorar as funcionalidades do microcontrolador e aumentar a acessibilidade desse tipo de equipamento, beneficiando pequenos produtores e comunidades rurais ao permitir o monitoramento das condições que afetam a agricultura.
O cultivo de plantas acompanha o desenvolvimento da humanidade, como propõe [Galvan 2021], e enraizou-se em diversas culturas, principalmente com fins medicinais ou alimentícios. [Fernandes 2017] aponta que tal costume tem crescido, sobretudo em âmbito doméstico, em virtude dos benefícios comprovados para a redução do estresse e a melhoria da saúde mental. Para tanto, há várias formas de encontrar referências acerca dos cuidados necessários, mas, apesar disso, [Kaku 2021] pontua que escolher a planta e o tratamento ideais para cada finalidade pode ser difícil, devido à falta de compatibilidade entre as informações ou possíveis dificuldades em compreender as instruções. Nessas condições, centralizar as informações de forma acessível é fundamental para favorecer o cultivo de plantas domésticas. Além disso, registrar atividades realizadas, como a rega e a adubação, pode ajudar na prevenção de problemas, evitando que sejam feitas em excesso ou em quantidades insuficientes. Dessa forma, este trabalho propõe o Plantae, um software para dispositivos móveis para realizar o gerenciamento do cultivo de plantas em âmbito doméstico, a fim de oferecer uma fonte unificada para subsidiar a realização de cuidados adequados para manter a saúde e prolongar a vida das plantas. Situado na disciplina de Projeto Integrador do curso de Bacharelado em Engenharia de Software do IFPR – Campus Paranavaí, o desenvolvimento do projeto começou com um estudo da viabilidade do software, em que foram levantados trabalhos correlatos, dos quais destacam-se o de [Marques 2021] e de [Fernandes 2021]. O primeiro apresenta um modelo para irrigação residencial autônoma, com leitura da umidade e da situação do solo e a integração com um aplicativo mobile para monitorar o estado em questão. Por sua vez, o segundo propõe um sistema para monitorar a umidade do solo e o tempo sob luminosidade, e fornecer informações sobre cuidados básicos no cultivo, com foco na produção caseira de hortaliças e integração do sistema com a assistente virtual Alexa. Com isso, verificou-se que há projetos que apresentam soluções para subsidiar o cultivo de hortaliças ou plantas domésticas, mas não foi encontrada uma ferramenta com recursos unificados em uma plataforma. Dessa forma, entendeu-se que esta se trata de uma proposta válida e que se encontra em um campo promissor. A partir das pesquisas realizadas, definiu-se para o escopo inicial do Plantae o registro e o gerenciamento das espécies cultivadas em âmbito doméstico, além do armazenamento de histórico dos procedimentos de rega e adubação realizados. Quanto à metodologia de desenvolvimento do sistema, foi escolhida a linguagem de programação Dart, apoiada no framework Flutter para a programação do software, que operará nos sistemas operacionais Android e iOS. No que diz respeito à documentação, seguiu-se o cronograma da disciplina de Projeto Integrador, em que decorreu a escrita do documento de requisitos, por meio de histórias de usuários. Dessa forma, foi feito o levantamento e a escrita dos requisitos da aplicação, que nortearam a elaboração dos diagramas de caso de uso (DCU), de classes (DC) e entidade-relacionamento (DER) e a prototipação das interfaces do sistema. Propõe-se que o Plantae tenha quatro telas principais: página inicial, plantas, perfil e configurações, além das etapas de cadastro e login. Ao abrir o aplicativo, o usuário encontrará a página de acesso, em que ele poderá registrar uma conta, caso seja a primeira vez utilizando-o, ou para acessar um perfil já existente, como demonstra a Figura 1. Após realizar o acesso, o utilizador será direcionado para a tela inicial, em que serão listados os lugares vinculados à conta em questão, referentes aos ambientes nos quais foram registradas plantas que estão sob monitoramento por meio do aplicativo. Em cada lugar poderão ser encontradas uma ou mais espécies, como ilustra a Figura 2. Por sua vez, ao acessar uma planta cadastrada, será exibido o seu status, com as datas em que foram realizadas regas, adubações e banhos de Sol, além de informações percentuais, numa escala de 0 a 100%, referentes a esses tópicos, baseadas no último registro feito para essas atividades. Ademais, haverão as opções para editar as informações de nome, foto e aniversário da espécie em questão ou para excluí-la. Haverá também, no aplicativo, a aba de perfil, em que se encontrarão as informações de nome, e-mail, aniversário e foto do usuário, com a possibilidade de alterá-las pelo botão de edição. Existirá também um menu de configurações, em que poderão ser definidas as preferências de idioma (português brasileiro, inglês e espanhol), modo de visualização noturno e a escala de temperatura utilizada (Celsius ou Fahrenheit). Adicionalmente, em um momento posterior, pretende-se que o sistema forneça informações de cuidados adequados para diversas espécies, reconheça-as por meio da câmera do dispositivo móvel aliada a uma Inteligência Artificial e realize o monitoramento em tempo real das plantas cadastradas, por meio de um módulo com sensores conectados ao aplicativo baseado em Internet das Coisas (IoT). Com isso, entende-se que o projeto do aplicativo Plantae representa uma solução fundamentada para as crescentes necessidades relacionadas ao cultivo de espécies domésticas, por meio da unificação do registro de atividades, acompanhamento das plantas e do fornecimento de informações sobre os cuidados ideais para cada uma. Dessa forma, os usuários poderão gerenciar suas plantas e ambientes de cultivo, realizar os cuidados a partir do histórico e níveis de estado de cada espécie e, futuramente, ter uma gama de recursos unidos em uma única plataforma. Perante o exposto, este projeto reflete a inovação e a busca por soluções práticas e tecnológicas para desafios cotidianos, consolidando-se como uma proposta promissora em um campo em constante crescimento.
Copyright (c) 2026 Carla Santos de Oliveira, Rafael Sanches Silva, Renato Augusto Platz Guimaraes Neto, Vitor Tavares de Oliveira, Evanise Araujo Caldas Ruiz (Autor) https://creativecommons.org/licenses/by-sa/4.0
Avaliação de dados para identificação de crianças atípicas na pré-escola
O diagnóstico de neurodivergentes envolve uma avaliação multidisciplinar e interações familiares demoradas e dispendiosas. Este estudo busca otimizar o processo de diagnóstico do Transtorno do Espectro Autista (TEA) por meio do uso de frameworks de processamento de dados e algoritmos de machine learning. A base de dados existente foi refinada com base nos critérios do DSM-5 e Q-CHAT 10. A implementação foi realizada em Python, com base em uma base de dados disponível online. Os resultados foram analisados para entender qual algoritmo é o mais eficiente nesse caso.
O uso de prontuários médicos eletrônicos (PMEs) têm se tornado cada vez mais comum em unidades de saúde ao redor do mundo, sendo uma ferramenta essencial para a melhoria da qualidade do atendimento em saúde e gestão dos registros médicos. O estudo de Greiver et al. (2011) destacou o sucesso de prontuários médicos mistos em Toronto, no Canadá, onde registros eletrônicos foram incorporados em certos aspectos do atendimento, sem abandonar completamente o prontuário em papel. O grande problema apontado pelo autor, evidencia que alguns participantes tenham considerado as interfaces de interação com o sistema inflexíveis e complexas. Entretanto, a implementação dos registros eletrônicos foi percebida pelos médicos entrevistados como um aprimoramento da organização e da acessibilidade dos dados, sublinhando a efetividade dos prontuários médicos eletrônicos. Desse modo, é importante que um software PME seja desenvolvido atendendo às necessidades dos profissionais de saúde e pacientes, garantindo uma gestão eficiente e segura dos registros médicos. Isso deve ser feito seguindo as melhores práticas recomendadas pela literatura científica, levando em consideração aspectos como a segurança das informações armazenadas e a conformidade com as normas regulatórias. Diversos estudos têm demonstrado os benefícios da adoção de PMEs em unidades de saúde. De acordo com o estudo de Rocha et al. (2020), a adoção de PMEs em hospitais brasileiros levou a uma redução significativa de erros médicos, melhorias na coordenação de cuidados entre os profissionais envolvidos e uma maior eficiência no atendimento. Além disso, a utilização de PMEs pode levar a uma redução nos custos de saúde, como evidenciado no estudo de Adler-Milstein et al. (2014), que demonstrou que a implementação de PMEs nos hospitais dos Estados Unidos resultou em economias significativas nos custos de cuidados de saúde. Nesse contexto, este trabalho propõe a projeção inicial do software de PME denominado Asclépio, que atenda às necessidades dos profissionais de saúde e pacientes, seguindo as melhores práticas recomendadas e visando um sistema que permita a gestão integrada e segura das informações de pacientes e usuários. Situado na disciplina de Projeto Integrador do curso de Bacharelado em Engenharia de Software do IFPR - Campus Paranavaí, o desenvolvimento do projeto começou com uma abordagem preditiva, a fim de priorizar o controle e planejamento estratégico. Essas etapas, controle e planejamento, foram minuciosamente detalhadas, refletindo o enfoque ensinado na referida disciplina, além da disciplina de Análise e Projetos de Sistemas. Ao empregar essa metodologia foi possível mapear e estruturar todos os aspectos que serão desenvolvidos, como documentações pré-estabelecidas antes de qualquer execução e implementação, tendo os fatores de prazos, riscos e custos delimitados com um cronograma completo e plano formal do projeto. Dessa forma, o projeto desenvolveu-se da seguinte forma: (i) o levantamento dos requisitos da aplicação teve como base os trabalhos correlatos e a documentação dos requisitos, através das histórias de Usuários; (ii) com a consolidação dos requisitos foi possível especificar os Casos de Uso, bem como a elaboração dos diagramas de caso de uso (DCU), diagrama de classes (DC) e a prototipação das interfaces do sistema. Para a elaboração dos diagramas foi utilizado o PlantUML, que consiste em uma ferramenta de código aberto direcionado à criação de diagramas a partir de uma linguagem de texto simples, tendo suporte aos diagramas UML realizados nesse projeto e a vários outros formatos, como o JSON. Já na prototipação das interfaces iniciais do sistema está sendo utilizado o editor gráfico Figma, no qual é específico para a prototipagem de projetos, permitindo a utilização de padrões próprios para inclusão direta dos elementos do sistema em desenvolvimento, juntamente com a navegação entre etapas da utilização do software. Com isso, as imagens acima retratam o protótipo de interfaces inicial demonstrando como ao inicializar o sistema haverá uma tela de “Login” para que tenha as credenciais inseridas do usuário cadastrado, e assim, após logado, tendo a possibilidade de recuperar a senha se necessário, tal acesso levará ao menu com as abas de relatórios, cadastros, registros entre outros. Portanto, o projeto em questão encontra-se em fase crítica para a abordagem proposta, identificando os padrões para atender as necessidades do usuário mantendo a qualidade e performance do sistema, para que um possível protótipo também possa ser desenvolvido nos anos seguintes, atendendo às diretrizes para o design bem elaborado e ao chegar na codificação apresentar o progresso alcançado de forma adequada. Deste modo, o projeto tem potencial para contribuir na gestão de informações médicas, buscando auxiliar no aumento da eficiência e precisão dos registros em algumas unidades de saúde. À medida que avançamos para a próxima etapa em seu desenvolvimento, é importante manter o foco e o comprometimento, a fim de alcançar com sucesso os objetivos e proporcionar benefícios para a área da saúde.
Automação e IoT – Um curso de extensão nas dependências do IFPR – Campus Paranavaí
O presente artigo abrange de forma completa o projeto do Curso de Automação e IoT conduzido no IFPR campus Paranavaí. Nele, são apresentados detalhes sobre os desafios enfrentados durante o desenvolvimento do curso, bem como os resultados alcançados ao final da jornada. O objetivo principal consistiu em proporcionar aos alunos um curso completo que contemplasse os principais conceitos de IoT, microcontroladores, eletrônica básica, programação C++, sensores e atuadores. Ao longo do texto, são elucidados os esforços empregados para viabilizar o curso. O trabalho se propõe a ser uma fonte de referência completa sobre o curso, mostrando a jornada desde sua concepção até a sua concretização.
Relato de Experiência no Desenvolvimento de um Sistema de Agendamento para Barbearia utilizando a Metodologia SCRUM na Disciplina de Projeto Integrador
Este é um relato de experiência que documenta o desenvolvimento de um projeto que uniu as disciplinas de Projeto Integrador II, Construção de Software e Programação Web no âmbito do curso de Engenharia de Software. O projeto teve como foco a criação do House Barber, um sistema de agendamento projetado para aprimorar a eficiência operacional de barbearias, otimizando a gestão de horários de atendimento e reservas de clientes. A abordagem pedagógica tinha como objetivo proporcionar aos alunos a experiência prática da criação de software, percorrendo as etapas fundamentais desse processo e implementando a metodologia Scrum. Isso envolvia a aplicação de conhecimentos previamente adquiridos em várias disciplinas e desafiava os estudantes a colaborar em equipe na resolução de problemas do mundo real. O Scrum é uma metodologia ágil de gerenciamento de projetos que se baseia em ciclos de trabalho curtos e colaborativos, chamados de sprints. Nesse processo, existem três papéis principais: o Product Owner ou PO, responsável por definir e priorizar as funcionalidades do produto; o Scrum Master, encarregado de garantir que a equipe siga os princípios do Scrum e remova obstáculos; e a equipe de desenvolvimento, que é autogerenciada e se compromete a entregar um incremento do produto a cada sprint [Scrum.org]. Após a formação da equipe no início do ano, inicialmente composta por seis membros, optamos por direcionar nossos esforços para um projeto de gestão de uma barbearia. Utilizando os princípios aprendidos na Construção de Software, organizamos nossa equipe de seis integrantes de acordo com a metodologia Scrum, sendo então designado um PO Product Owner, um Scrum Master e contamos com quatro desenvolvedores. Utilizando o software Jira, desenvolvido pela Atlassian, é uma ferramenta de gerenciamento de projetos e rastreamento de problemas que oferece suporte ao Scrum e a várias outras metodologias ágeis, tornando-o uma escolha popular para equipes que adotam esse tipo de metodologia [Atlassian]. Foi definido quais tarefas seriam desenvolvidas no decorrer da primeira Sprint. Cada tarefa criada pelo PO foi analisada e, em seguida, designada a um dos desenvolvedores, garantindo uma distribuição equitativa das responsabilidades e um acompanhamento do progresso do trabalho. Para garantir a participação de todos os colaboradores, mesmo aqueles que não realizavam todas as matérias ou moravam em outras cidades, foram realizadas reuniões via videoconferência aos finais de semana. Os participantes compartilharam suas ideias para o desenvolvimento, trocaram insights e colaboraram ativamente na evolução do projeto. Além disso, essas interações permitiram uma troca de conhecimento e apoio entre os desenvolvedores envolvidos no projeto. Durante a primeira Sprint, enfrentamos desafios significativos no desenvolvimento devido à falta de familiaridade de alguns membros da equipe com as ferramentas utilizadas, incluindo o Angular Material UI, uma biblioteca de componentes de interface de usuário (UI) baseada no Material Design, desenvolvida pelo Google [Emmanuel Ighosewe]. Isso levou à necessidade de colaboração entre os desenvolvedores, onde alguns tiveram que auxiliar outros a se adaptarem à ferramenta. Infelizmente, também houve falta de cooperação por parte de alguns desenvolvedores, o que resultou em atrasos na entrega da Sprint. Devido a essas dificuldades, não foi possível concluir todos os itens originalmente planejados, mas fizemos ajustes para nos concentrarmos nos itens mais críticos no momento. Isso ilustra a flexibilidade ligados ao Scrum, permitindo que a equipe se adapte, redefina prioridades de entrega essenciais. Realizamos uma apresentação simulando uma conversa com um cliente interessado no produto que está em desenvolvimento. Durante essa interação, apresentamos o que já foi produzido até o momento para os professores regentes e outras turmas do curso de Engenharia de Software, destacando as principais funcionalidades e avanços alcançados até agora. Além disso, discutimos detalhadamente os próximos passos necessários para a conclusão do projeto, incluindo os marcos e prazos esperados. Com o início da segunda Sprint, a equipe, que inicialmente era composta por seis membros, foi reduzida para quatro integrantes. Isso ocorreu porque dois colaboradores não manifestaram interesse em continuar envolvidos no desenvolvimento do projeto. Essa mudança na composição da equipe teve um impacto significativo no planejamento e na distribuição das tarefas. Todas as atribuições que anteriormente estavam designadas aos desenvolvedores precisaram ser reavaliadas e reorganizadas para se adequarem à nova configuração da equipe. Essa adaptação foi fundamental para garantir que o projeto continuasse avançando de maneira eficaz e que as metas da Sprint pudessem ser alcançadas dentro dos prazos estabelecidos. Apesar dos desafios inerentes a essa mudança, a equipe demonstrou sua capacidade de adaptação, utilizando as mesmas formas de interação que haviam sido estabelecidas na Sprint anterior. Ao iniciar o processo de se familiarizar com as ferramentas essenciais do software e ao adotar uma abordagem de organização voltada para as atividades prioritárias que requeriam conclusão, conseguimos otimizar a alocação da equipe de maneira mais eficaz. Isso resultou em uma simplificação do desenvolvimento, garantindo que conseguíssemos cumprir com sucesso nossas metas e prazos estabelecidos. Após a conclusão da Sprint em curso, realizamos uma nova apresentação, desta vez direcionada exclusivamente à classe, simulando uma interação com um cliente real. Durante essa apresentação, demonstramos o que foi desenvolvido até o momento e delineamos os próximos passos necessários para avançar no aprimoramento do software. Isso destaca a importância do feedback constante e da transparência no processo do Scrum. Ao dar início à terceira Sprint, ocorreu uma reorganização na equipe, com uma troca de posições entre os membros. Isso incluiu a mudança nas funções de Product Owner (PO), Scrum Master e desenvolvedores, garantindo que cada membro da equipe tivesse a oportunidade de vivenciar as diferentes responsabilidades desempenhadas por seus colegas. Essa rotação de papéis proporcionou uma compreensão mais abrangente e uma colaboração mais eficaz dentro da equipe. Com a reorganização da equipe e a experiência compartilhada, estamos focados em atingir nossos objetivos estabelecidos e entregar um produto de alta qualidade. Nossa equipe mantém um compromisso contínuo com a colaboração eficaz e a superação de desafios à medida que avançamos no desenvolvimento. Um desenvolvedor relatou que a falta de documentação detalhada sobre as tarefas levou a um esforço duplicado e a um resultado de desenvolvimento que não estava alinhado com as expectativas. Ele notou que, devido à falta de instruções, houve uma interpretação equivocada do escopo das tarefas, levando à necessidade de trabalhos adicionais para correção ou mesmo para refazer parte do desenvolvimento. Como Scrum Master, durante as duas primeiras sprints, relato alguns desafios significativos relacionados à tecnologia utilizada e à gestão do tempo entre elas. A falta de familiaridade de alguns membros da equipe com a tecnologia, como o Angular, demandou um investimento significativo em tempo para que esses desenvolvedores pudessem auxiliar seus colegas. Esse esforço extra resultou em uma aceleração do ritmo durante a sprint, o que limitou nossa capacidade de implementar o que originalmente havia sido planejado. A experiência com a metodologia Scrum resultou em progresso significativo. A equipe demonstrou uma notável melhoria na gestão de projetos e na colaboração, o que se traduziu em maior eficiência. A adaptação à tecnologia, como o Angular, impulsionou um ritmo acelerado durante as sprints, permitindo a entrega mais rápida de funcionalidades planejadas. Além disso, a necessidade de documentação detalhada ficou evidente, promovendo uma abordagem mais estruturada no desenvolvimento. No geral, a experiência com o Scrum resultou em uma equipe mais eficaz e uma abordagem de projeto mais eficiente.
Relato de Experiência Sobre o Processo de Entrega Contínua de um Sistema de Controle de Estoque
As disciplinas de Projeto Integrador e Construção de Software fazem parte do currículo do curso de Engenharia de Software e têm como objetivo aplicar os conhecimentos adquiridos na criação de software. O Projeto Integrador combina conceitos de diferentes disciplinas, enquanto a Construção de Software se concentra em aplicar esses conhecimentos por meio de metodologias avançadas. Essas disciplinas buscam unir teoria e prática, proporcionando aos estudantes uma base sólida em Engenharia de Software. Com esse intuito foi proposto aos discentes a integração de ambas disciplinas para o desenvolvimento de um sistema, o qual foi dado continuação de um projeto que teve início no ano de 2022, na disciplina de Projeto Integrador I; definindo a aplicação de técnicas da metodologia Scrum [Schwaber and Sutherland 2020], na qual a mesma foi adaptada para abranger melhor a carga horária e limitações de comunicação entre a equipe, sendo a maior delas o Daily Scrum, adaptado para ser realizado apenas nos dias de aulas em que ocorreria o desenvolvimento do sistema. O Scrum baseia-se no empirismo e no lean thinking - traduzido como ”pensamento enxuto”. Empirismo que parte da premissa que conhecimento é adquirido a partir de experiências e de tomadas de decisões baseando-se no que se observa. Lean thinking firma-se na redução dos desperdícios e foca-se no essencial a ser realizado. No Scrum temos o Scrum Team que é composto pelo Product Owner, responsável pelo valor do trabalho; Scrum Master, encarregado da metodologia; e vários Developers, que geram o produto. Essa equipe colabora com os stakeholders, incluindo clientes e usuários, no desenvolvimento do produto. O Scrum é realizado em Sprints, períodos de tempo em que o Product Backlog é transformado em tarefas a serem entregues. Esse processo envolve vários eventos, incluindo o Sprint Planning, onde o que será feito na Sprint é planejado; o Daily Scrum, uma reunião diária em que os Developers avaliam o progresso e fazem adaptações se necessário; a Sprint Review, em que os resultados da Sprint são apresentados aos stakeholders; e a Sprint Retrospective, onde o Scrum Team analisa a Sprint anterior e identifica melhorias para a próxima. Com base nessas definições, os papéis foram atribuídos aos membros da equipe. O Product Owner foi escolhido devido ao seu amplo conhecimento do sistema desejado, o Scrum Master devido às suas habilidades de gerenciamento, e os Developers foram distribuídos de acordo com suas habilidades anteriores para trabalhar em diferentes partes do programa. No decorrer do ano letivo houve a saída de dois membros, o que impactou diretamente no tamanho do incremento entregue, como resultado o Sprint Backlog precisou ser adaptado e itens foram passados para Sprints posteriores. As tecnologias estabelecidas para o desenvolvimento do projeto foram a linguagem Java com o framework - biblioteca de códigos pré-arquitetados - Spring Boot, ambas aplicadas ao desenvolvimento do back-end do sistema, já para o front-end foi definida a linguagem TypeScript agregada ao framework de interface baseado em componentes: React. Para o gerenciamento do banco de dados, estabelecemos o modelo relacional e para tal o SGDB - Sistema Gerenciador de Banco de Dados - MySQL. Para o deploy - implantação do software em um ambiente de produção - do sistema foram usados os serviços da Oracle Cloud. Enquanto para todo o versionamento - gerenciamento de versões - determinou-se o uso da plataforma GitHub. Essas definições ocorreram pelo próprio Scrum Team, sendo estabelecidas por terem afinidade com as mesmas, e por possuírem aulas que usam essas mesmas tecnologias, agregando o conhecimento daqueles já são familiarizados e sendo essencial para aqueles que não tiveram contato com as mesmas. Depois de escolher as tecnologias a serem usadas, a próxima etapa é definir o que o sistema deve incluir e como deve funcionar. Seguindo a metodologia Scrum, o Product Owner elaborou uma lista completa de recursos e funcionalidades para o Product Backlog. Essas decisões foram baseadas nas necessidades do projeto, que envolve o gerenciamento de estoque e caixa de uma loja de roupas. Para auxiliar no controle e nas métricas de desenvolvimento foi aplicado o uso da ferramenta Jira Software, esta ferramenta possui potentes auxiliadores para desenvolvimento baseado no Scrum, dispondo de painéis ágeis que dividem projetos em partes de trabalho gerenciáveis, para haver lançamentos mais rápidos, facilitando na automatização de um fluxo de trabalho ágil. Por meio dela foram criadas issues - problemas ou questões a serem resolvidos no software, tarefas elencadas a cada desenvolvedor de acordo com suas especificidades e afinidades para resolver o problema demandado. Após a finalização dos lançamentos do Product Backlog na ferramenta Jira, iniciou-se a codificação do sistema utilizando a IDE - Ambiente de Desenvolvimento Integrado - IntelliJ, ferramenta para desenvolvimentos em Java, e em minoria o editor Visual Studio Code. Os Developers, 4 alunos no total, foram divididos em dois times, baseados nas especificidades de cada membro: um grupo atuaria como front-end developers e o outro como back-end developers; essa divisão ocorreu para maximizar a progressão do sistema dentro do tempo limite estabelecido nas Sprints, que eram definidas em torno de 5 semanas, totalizando um total de 10 horas mínimas trabalhadas. Então o time de desenvolvimento do back-end focou-se na criação de toda a estrutura do banco de dados e suas respectivas entidades, em seguida encetou as funcionalidades de persistência de cada entidade, manipulando os dados presentes no banco de dados. Em paralelo, o time responsável pelo front-end ficou empenhado pela criação das interfaces do sistema e dos formulários, integrando com APIs - Interface de Programação de Aplicativos - para obtenção de dados gerenciados por um serviço específico, como, por exemplo, ViaCEP, API que gerencia dados de CEP e IBGE do Brasil. Após finalizar uma issue através de uma branch - recurso fornecido pela ferramenta Git - que se trata de uma ramificação do “ramo” principal onde fica estabelecido o código revisado e pleno; o desenvolvedor abre um pull request, ação de solicitar uma revisão que valida as implementações realizadas a serem integradas à branch principal. Em caso de incoerências ou necessidades de ajustes no código, o pull request é negado e o desenvolvedor retorna à issue para realizar os ajustes necessários. Ao decorrer do desenvolvimento houve conversas entre o Product Owner e os stakeholders, onde lhes foi apresentado os estados atuais do mesmo e questionado suas opiniões sobre todo o andamento do processo; essas conversas aconteciam por meio de e-mails e mensagens pelo WhatsApp ao decorrer da Sprint. Este desenvolvimento nos ajudou a compreender a maior parte dos conhecimentos adquiridos ao tempo que os colocávamos no código; as metodologias estudadas fizeram mais sentido ao passo que vimos como sem elas a equipe fica um pouco dispersa, tendo definições claras de funções e objetivos todo o fluxo de trabalho caminha corretamente. A junção de ambas as disciplinas se deu com excelência por toda essa experiência que obtemos no decorrer do ano letivo. Esse desenvolvimento nos ajudou a aplicar nosso conhecimento no código, tornando as metodologias mais compreensíveis. Percebemos que, sem essas metodologias, a equipe fica menos organizada. A combinação das disciplinas foi excelente devido à experiência adquirida durante o ano letivo. Nesse contexto, fica evidente a importância de desenvolver projetos que tenham aplicações no mundo real, permitindo a identificação de requisitos com base em problemas reais ou solicitações do cliente. Nesse sentido, a metodologia Scrum se destaca como um excelente fluxo de trabalho para aprimorar a experiência acadêmica, preparando os alunos para integrarem equipes de desenvolvimento no mundo profissional. Além disso, ao trabalharem com o Scrum durante seus estudos, os alunos adquirem uma experiência que os ajudará a enfrentar desafios profissionais.
Análise de ferramenta de inteligência artificial voltada à interação com o ser humano
O presente artigo tem como objetivo realizar um estudo aprofundado desde o início da inteligência artificial, que vem sendo abordada nos mais variados canais de comunicação. Com esse estudo, serão propostos exemplos práticos de aplicação na área da comunicação por meio de chatbots. Com isso em mente, será feita uma comparação das tecnologias em inteligência artificial que possuímos hoje em relação ao passado.
Com a crescente popularidade da mobilidade de motocicletas, tornou-se importante desenvolver soluções inteligentes e personalizadas para atender às crescentes necessidades dos usuários [Coyner 2014]. Diante desse cenário, este trabalho tem o potencial de atender a essa demanda e melhorar significativamente a eficiência, segurança e conveniência do planejamento de viagens para motociclistas novatos. O sistema TourMotos se diferencia dos sistemas de navegação existentes por levar em conta as especificidades dos motociclistas, como a preferência por rotas cênicas e a necessidade de paradas frequentes. O trabalho teve início com a definição da metodologia de pesquisa, abrangendo a pesquisa exploratória e a pesquisa bibliográfica. Nesse sentido, foram considerados artigos já publicados sobre roteirizadores de viagem de motocicletas para, assim, definir os trabalhos correlatos e pensar no diferencial do desenvolvimento de uma nova ferramenta computacional. Logo após, foram realizados o levantamento dos requisitos funcionais e não funcionais que irão compor o software (Figura 1), a partir das histórias de usuário que é uma forma de identificar os requisitos de software que descrevem a operação de um sistema do ponto de vista do usuário, permitindo uma explicação clara e objetiva das necessidades, garantindo que o desenvolvimento do sistema atenda às expectativas do usuário final [REHKOPF 2023]. Assim sendo possível definir as tecnologias para suprir as necessidades do projeto e das histórias de usuário geradas anteriormente. A próxima etapa foi a implementação dos diagramas de classes e o diagrama de casos de uso. O primeiro diagrama citado tem como objetivo representar o relacionamento entre as diversas entidades que compõem o sistema, assim como seus atributos e métodos. O segundo diagrama é responsável por demonstrar os agentes externos que irão interagir com cada um dos componentes do software. Durante o desenvolvimento do TourMotos, foi adotada a metodologia ágil, com o uso do Kanban, que é uma abordagem flexível e colaborativa para o gerenciamento de projetos, utilizando a ferramenta Trello. O Kanban é um sistema visual de controle de tarefas que permite que a equipe acompanhe o progresso do trabalho de forma transparente. As tarefas foram representadas como cartões em um quadro, sendo possível mover esses cartões através de colunas que representam os estágios do fluxo de trabalho. Isso possibilitou uma gestão contínua e incremental, priorização eficiente e a capacidade de se adaptar rapidamente às mudanças à medida que o projeto evoluiu, promovendo uma entrega mais ágil e eficaz. O documento deste trabalho foi desenvolvido com base no progresso obtido pelos dados da pesquisa dos trabalhos correlatos. Um desses trabalhos analisou as motivações dos motociclistas em suas viagens, com foco em como a natureza influencia essas escolhas. O estudo indica que a natureza é um fator importante na escolha de destinos pelos motociclistas, que buscam experiências de aventura e contato com a natureza. Além disso, os motociclistas valorizam a liberdade e a autonomia proporcionadas pelas viagens de moto, além da possibilidade de conhecer novos lugares e culturas [Ramoa et al. 2021]. Outro trabalho apresentou um projeto de criação de um aplicativo móvel para o planejamento de rotas de viagem e controle de temperatura e vibração do motor de uma motocicleta. O trabalho contém informações sobre objetivos específicos, desenvolvimento do aplicativo móvel, design de hardware para os sensores de temperatura e vibração, algoritmo de comunicação e visualização [Ruiz and Mayor 2017]. Outro artigo apresentou um projeto que visa oferecer uma solução inovadora aos entusiastas de motocicletas que buscam eficiência na gestão e controle de suas viagens. O aplicativo móvel desenvolvido atende aos padrões de design e funcionalidade exigidos, permitindo aos usuários uma administração eficaz de suas rotas. Além disso, o projeto inclui uma análise abrangente do estado da arte e dos antecedentes relacionados ao uso de dispositivos móveis com sistemas operacionais Android e iOS [Rodríguez and Pablo 2021]. A proposta de solução apresentada é um sistema de roteirização de viagens de moto com integração da API Routes, que leva em conta as especificidades dos motociclistas. No Diagrama de Caso de Uso, apresentam-se as funcionalidades do sistema, onde foram identificados dois atores, os ”Motociclistas” e a ”API Routes” do Google Maps que fará as consultas. Os ”Motociclistas” serão responsáveis por manter a moto, realizar o cadastro e login, manter a rota, acessar o histórico de rotas, compartilhar a rota, verificar as informações da rota e planejar a rota. Já a ”API Routes” do Google Maps será responsável por verificar as informações da rota e planejar a rota. Já no Diagrama de Classes, foram identificadas no sistema as classes Moto, Motociclista, APIRoutes, Rota e Parada. Em relação ao login no sistema, cada Motociclista poderá ter apenas um e somente um login, a fim de evitar que existam diversos cadastros de um único usuário. A classe Rota ficará responsável por armazenar as rotas planejadas. A classe APIRoutes servirá para a realização das consultas geradas, onde conterá as informações que serão utilizadas na classe Rota. Através da utilização de uma arquitetura em camadas, o sistema foi projetado para assegurar uma clara separação de responsabilidades no código. A camada de apresentação lidou com a interface do usuário, permitindo a interação eficiente com o sistema. A camada de lógica de aplicação cuidou das operações de negócios, coordenando as funcionalidades relacionadas a viagens de motocicletas. Por fim, a camada de persistência foi responsável por acessar e manipular os dados, garantindo a eficiência na manipulação das informações. Essa abordagem não apenas facilitou a manutenção do código, mas também ofereceu a flexibilidade necessária para que o sistema se adaptasse a diferentes contextos e atendesse a uma variedade de perfis de usuário. Com base nos resultados obtidos até o momento, pode-se afirmar que o projeto atingiu seu objetivo de desenvolver um sistema de roteirização de viagens de moto com integração da API Routes, cujo código-fonte está disponível no GitHub. O sistema proporciona aos motociclistas a capacidade de planejar suas viagens de forma personalizada e otimizada, levando em conta as preferências individuais e itinerários específicos. Além disso, a integração com a API Routes permite a obtenção de informações precisas de roteirização, incluindo dados de tráfego em tempo real, estimativas de tempo de viagem e direções claras e precisas, melhorando a segurança e a eficiência das viagens.
Copyright (c) 2026 https://creativecommons.org/licenses/by-sa/4.0
Virtualização com XCP-ng: Implantação e Gerenciamento
A virtualização tem se tornado uma tecnologia cada vez mais presente no ambiente de TI, permitindo a criação de ambientes virtuais isolados e a otimização dos recursos de hardware. Nesse contexto, o XCP-ng é uma solução de virtualização de código aberto baseada no XenServer. Este trabalho busca estudar os princípios de virtualização fornecendo uma visão do XCP-ng como ferramenta de implantação e gerenciamento de ambientes virtuais. De acordo com [XPC-ng 2023], o hipervisor oferece recursos e funcionalidades que simplificam a criação e o gerenciamento eficiente de máquinas virtuais, permitindo aos usuários criar e configurar ambientes virtuais personalizados, maximizando o aproveitamento dos recursos de hardware disponíveis. Além disso, inclui recursos de monitoramento, migração e segurança, auxiliando os administradores de TI a otimizar o desempenho, a disponibilidade e a estabilidade dos ambientes virtuais. A ideia do XCP-ng é fornecer uma maneira fácil de implantar uma infraestrutura baseada em máquinas virtuais usando o Xen como hipervisor, possibilitando a compatibilidade com a maioria dos servidores x86 atualmente disponíveis no mercado. O XCP-ng foi projetado para atender às necessidades de infraestruturas de todos os tamanhos: desde laboratórios domésticos até datacenters. Segundo [Afonso Gloeden, Luan Henrique Knor Costa 2023] o Citrix XenServer é um sistema que tem a função gerenciar domínios (máquinas virtuais), fazendo com que seja possível em um mesmo hardware alocar vários sistemas operacionais, de forma que as máquinas sejam independentes entre si, isoladas no uso de um mesmo hardware, usando hypervisor. Como servidores em geral são usados para gerenciamento de dados ou máquinas virtuais por exemplo, o XenServer é um sistema operacional que não possui uma ampla variedade de programas convencionais disponíveis, a maioria dos programas são do próprio CentOS e RedHat. Em relação às atualizações, é mais recomendável atualizar o servidor apenas se necessário ou por questão de segurança, sendo esta de duas formas, baixando as atualizações disponibilizadas pela Citrix pelo próprio XenServer, na máquina física ou de uma forma remota utilizando o XenCenter, também disponibilizado pela Citrix. O XenCenter é uma interface gráfica nativa do Windows para administração do Citrix XenServer. O programa permite numa máquina virtual a instalação, configuração e administração para acesso a consoles VM e gestão computadores em redes de computadores, incluindo VLANs e redes internas ou NICs dedicadas [Citrix 2023]. A justificativa para este estudo reside na crescente importância da virtualização em ambientes de TI, devido aos seus benefícios em termos de economia de recursos e flexibilidade. O XCP-ng se destaca por sua capacidade de simplificar a criação e gerenciamento de máquinas virtuais, tornando-o relevante para empresas e profissionais de TI. Para os alunos, essa pesquisa pode ser uma maneira de obter informações e práticas sobre virtualização, o que torna mais fácil entender os conceitos básicos e desenvolver habilidades práticas. Como metodologia de desenvolvimento do trabalho, inicialmente, realizou-se um levantamento bibliográfico para obter informações sobre virtualização, servidores e, especificamente, o XCP-ng. Após a revisão bibliográfica, concentrou-se na análise de trabalhos correlatos para identificar as melhores práticas no campo da virtualização. Em seguida, prosseguiu-se com a configuração do servidor para hospedar o XCP-ng, envolvendo a seleção de hardware adequado, a instalação do sistema operacional hospedeiro e a configuração inicial do XCP-ng. A etapa seguinte consistiu na instalação das máquinas virtuais (VMs) no ambiente XCP-ng, utilizando o XenCenter, uma interface gráfica nativa do Windows para administração do Citrix XenServer. Isso incluiu a criação de VMs a partir de imagens de sistemas operacionais, a alocação de recursos e a definição de parâmetros de desempenho. Por fim, a metodologia incluirá uma fase de testes das VMs (ainda não iniciada até o momento) para avaliar o desempenho, a estabilidade e a eficácia da configuração do servidor XCP-ng. O primeiro passo para iniciar a implementação do trabalho foi definir o servidor a ser utilizado. Optou-se por uma máquina com 32 GB de memória RAM, operando a uma frequência de 1067 MHz. O servidor foi equipado com duas fontes e dois processadores Xeon quad-core, cada um com cache de 1 MB/12 MB e clock de 2.40 GHz. Após a escolha do servidor, o XCP-ng foi baixado e instalado em um disco na máquina, tornando-se o sistema operacional padrão. Além disso, o XenServer foi configurado para gerenciar as VMs remotamente. Os próximos passos incluem a criação e replicação das máquinas virtuais, bem como a realização de testes em todas elas. Esses testes ajudarão a determinar se o XCP-ng é um sistema operacional adequado para virtualização. Neste estudo sobre virtualização com XCP-ng, pretendemos configurar com sucesso o ambiente XCP-ng em hardware selecionado, para criar e gerenciar máquinas virtuais (VMs) utilizando o XenCenter e realizando testes para avaliar o desempenho, estabilidade e eficiência da configuração do servidor XCP-ng. Os resultados esperados também incluem a documentação da configuração do ambiente, práticas recomendadas para criação e gerenciamento de VMs. Estes poderão servir como um guia prático para estudantes e profissionais de TI interessados na virtualização com XCP-ng.
Copyright (c) 2026 Carlos Daniel Borges, André Ricardo Zavan (Autor) https://creativecommons.org/licenses/by-sa/4.0
Solução Computacional Para Gestão de Pequenas Propriedades Leiteiras
Diante do competitivo mercado produtivo leiteiro, torna-se fundamental controles automatizados das informações geradas no dia a dia, para evitar que dados importantes sejam perdidos ou inacessíveis em tempo hábil. Porém, essa automatização ainda não é uma realidade para os pequenos produtores, no qual pode-se constatar por meio de estudos empiricos que muitos ainda utilizam recursos manuais para gerenciar suas propriedades. Nesse contexto, o objetivo deste trabalho foi propor e desenvolver um software web para realizar o controle de pequenas propriedades leiteiras. A viabilidade da proposta foi verificada por meio de uma pesquisa de mercado, que analisou softwares disponíveis para o setor. Pode-se constatar que, os produtos computacionais oferecido por empresas são muito abrangentes, possuindo conteúdos excessivos para pequenas propriedades, que consequentemente possuem custos de aquisição e manutenção que não são viáveis para o público em questão. Para realizar o desenvolvimento da aplicação computacional, foi feito o levantamento de requisitos em uma pequena propriedade leiteira, após a coleta das informações, foram projetados os diagramas de caso de uso e de classe (Sommerville, 2007). Além disso, durante esse processo foram levantadas as tecnologias utilizadas na implementação do projeto de software, assim, foi definido o uso da linguagem de programação Java (Santos, 2013), que é a base do desenvolvimento, o Bootstrap para a modelagem do ambiente front-end e para a estilização das páginas, o qual é composto de atributos de classes CSS (Mark 2015), o PrimeFaces, um framework MVC (Modelo, Visão e Controle) baseado em componentes para auxiliar no ambiente gráfico(Carmisini, 2012), entre outras. O sistema projetado e desenvolvido fornece opções para efetuar cadastro de animais, com suas devidas caracteristicas necessárias, módulo leiteiro para controlar a produção do leite, onde é feito o controle do leite produzido. No módulo de venda é possível efetuar a venda de um ou vários animais, no qual é armazenado o valor individual, pois podem haver diferenças de pesos dos mesmos e consequentemente dos valores. O sistema também conta com diversos relatórios, como de produção, venda e valor do litro do leite, podendo ser consultados dentre um periodo de datas informadas pelo usuário. Além da aplicação web, o projeto conta com um aplicativo para dispositivos móveis, que tem como finalidade dar mais portabilidade e facilitar o lançamento das ordenha por parte do produtor. Com a implantação do software, espera-se que o produtor rural possa ter uma gestão mais adequada da propriedade leiteira, no qual todas as informações coletadas terão uma fonte centralizada, ou seja, tudo estará disponível no servidor e poderá ser acessado por qualquer computador ou dispositivo móvel com internet. Como passo futuro, está a implantação da aplicação seguido de teste no ambiente de produção
Copyright (c) 2017 https://creativecommons.org/licenses/by-sa/4.0
Sistema de Pedido de Diárias e Passagens - SPDP
Este trabalho surgiu do interesse do IFPR - Campus de Paranavai em implantar métodos mais modernos, sustentáveis e ágeis nos procedimentos de solicitação de diárias e passagens, tendo em vista os valores do IFPR, conforme consta em seu PDI (2014/2018). Os procedimentos atuais são feitos por meio de formulários impressos que após preenchidos pelo solicitante da viagem, ainda tem que ser entregues em diversos departamentos para que possam ser autorizados. Diante desse cenário, este trabalho tem por objetivo desenvolver uma solução computacional, intitulada "Sistema de Pedido de Diárias e Passagens (SPDP)". Esta solução visa diminuir a quantidade de formulários impressos durante o processo de solicitação de diárias e passagens, bem como agilizar esse processo e preservar a integridade dos dados. Para atingir tal objetivo, o SPDP reforça as normas e os procedimentos definidos pela instituição para a solicitação de diárias e passagens. Com a implantação deste sistema, será possível ter um tempo menor para a resposta das solicitações, bem como a redução no volume de impressões, o que resulta em economia para a instituição e contribui com a preservação do meio ambiente. O SPDP atenderá todos os servidores da instituição, levando em consideração que se adequa a estrutura oferecida por ela, não havendo necessidade de investimentos para o seu uso, conforme esclarecimentos feitos por servidores do Departamento responsável pela operacionalização do pedido de diárias e passagens no Campus. No desenvolvimento do sistema foi utilizado a linguagem de programação Java 8, usou se JSF 2.2 (Java Server Faces) juntamente com o PrimeFaces, essas quatros é para elaboração da interface com o usuário. Para os relatórios foi usado JasperSofi Studio 6.0.4. No ambiente de desenvolvimento integrado, a IDE, o Eclipse Java EE versão Mars 2 Release (4.5.2). Para o armazenamento no banco de dados o MySal. O SPDP ainda está em fase de desenvolvimento, considerando que esse processo é bem definido e deve passar por atividades básicas até o alcance dos seus objetivos, atividades estas que segundo Pressman (2016) formam um conjunto mínimo para se alcançar um produto de software. Dessa forma, até o momento, foram realizadas as seguintes atividades: implementação do cadastro de servidor, sendo o cadastro primário para dar sequência ao uso do sistema, no qual consiste das informações gerais do servidor, o cadastro de proposta, que será o principal, contendo mais informações que serão solicitadas, como os dados da viagem e/ou diárias, bem como a opção de envio da proposta, opção esta que ainda está em fase de complementação. A implementação de mecanismos de segurança para o controle de acesso ao sistema será através de uma tela de login, que após o cadastro primário, o servidor poderá acessar sempre através desta tela. Além disso, o sistema fornecerá opção para consultar e/ou emitir relatórios de consultas quanto as suas propostas autorizadas ou não, entre outros relatórios.
O Desenvolvimento Web Impulsionando Histórias
O projeto "O Desenvolvimento Web Impulsionando Histórias" ocorre através de uma parceria entre o projeto de extensão CEDI - Centro de Desenvolvimento em Informática (do IFPR - Campus Paranavaí), que objetiva proporcionar aos alunos, tanto do Curso Técnico em Informática Integrado ao Ensino Médio como do Curso de Tecnologia em Análise e Desenvolvimento de Sistemas, um ambiente de aplicação e desenvolvimento das habilidades e das práticas computacionais estudadas nos cursos, com o Programa Impulso (desenvolvido pelo Instituto GRPCOM), que usa de sua influência social para construir parcerias que auxiliem no desenvolvimento da gestão e da comunicação das OSCs de Paranavai e região. Tem como objetivo social colaborar com o desenvolvimento e fortalecimento das áreas de gestão e comunicação das OSCs do 3° setor de Paranavaí e região. As OSCs, como o nome sugere, representam uma Organização dos setores da sociedade civil (1° setor - Governo, 2º setor - empresas privadas, 3° setor - associações sem fins lucrativos). As OSCs beneficiadas com o projeto são a APDE (Associação dos Portadores de Doença Especial), em atividade desde 22 de maio de 1997, com a missão de atender pessoas de Paranavaí e região portadoras de neoplasias; e o Centro de Educação Infantil (CEI) Infância Feliz, fundado em 6 de junho de 1995 e mantido pelo grupo filantrópico Nossa Senhora de Fátima e atende crianças de 4 meses a 5 anos de idade. Firmada a parceria com o IFPR, o CEDI tem como papel a aplicação das metodologias aprendidas pelos alunos em aula. As áreas desenvolvidas são de Engenharia de Software, com a metodologia ágil Scrum (responsável pelos processos de desenvolvimento do software), de Tecnologias Web, com o sistema de gerenciamento de conteúdos WordPress, suas dependências (Apache, mySQL) e as linguagens que às compõem (PHP. HTML, CSS e JavaScript). As ferramentas para desenvolvimento são o ambiente de desenvolvimento integrado (IDE) NetBeans e os recursos de versionamento Git e GitHub. Pretendemos desenvolver os websites com o uso de plataformas e ferramentas gratuitas que apresentem responsividade, requeiram fácil manutenção e sejam acessíveis a seus administradores. Assim, acreditamos que faremos um ambiente coerente com as necessidades que nos foram apresentadas e que atuará como o canal de comunicação eficiente com o entorno da comunidade. Dessa forma concluímos que, além do valor que é agregado ao currículo dos alunos bolsista e voluntários. professores do CEDI e participantes do Programa Impulso, também são atribuídos novos valores que se agregam às formações sociais de seus envolvidos e das demais pessoas que tenham a oportunidade de conhecê-lo.
Conforme Sommerville (2011), para o desenvolvimento de sofiare, é necessário a utilizacio de metodos e terramentas durante o seu processo de desenvolvimento. chamado de modelo de processo. O modelo de processo escolhido pela equipe de desenvolvimento, é bascado na natureza do projeto e nas ferramentas a screm utilizadas. Os modelos de processo contribuem na organização das atividades a serem desenvolvidas e também no desenvolvimento de software com a especialização de suas atividades, produtos e os papéis das pessoas envolvidas na engenharia de software. O presente trabalho visa descrever as ações do Projeto de Pesquisa intitulado "Uma visão prática na modelagem de processo de software utilizando Bizagi", realizado nos anos de 2015 a 2016, no Instituto Federal do Paraná, Campus de Paranavai, no qual teve como objetivo propor um processo de desenvolvimento de software baseado no framework ágil Scrum, para aplicar em projetos do CEDI - Centro de Desenvolvimento em Informática do IFPR no campus de Paranavai. As atividades iniciaram com os levantamentos bibliográficos sobre as seguintes metodologias ageis Extreme Programming (XP), Scrum e Feature Driver Development (FDD). para se definir quais delas se encaixam mais no escopo e no desenvolvimento de projetos desenvolvidos internamente no campus. Por se tratar normalmente de projetos cujo número de alunos é limitado foi-se escolhido utilizar a metodologia ágil Scrim com algumas práticas da metodologia XP. Após a definição da metodologia a ser utilizada deu-se inicio ao desenvolvimento do processo utilızando-se o sofiware do modelagem Bisagi Process Modeler, empregando a notação BPMN (Business Process Modeling Notation) [Nogueira 2017]. Sendo definida quatro macro-fases, aos quais cada uma delas apresenta suas respectivas atividades, papéis e artefatos pertinentes. Sendo as macro-fases as seguintes: (I) Planejamento do projeto, (2) Planejamento da Sprint, (3) Desenvolvimento e (4) Entrega. A macro-fase de Planejamento do projeto, corresponde a qualquer processo referente a elicitação de requisitos, criação dos diagramas de caso de uso, diagramas de classe, listagem e estimativa das funcionalidades a serem desenvolvidas na etapa de Desenvolvimento. A macro-fase de Planejamento da Sprint, corresponde na etapa da detinição e atribuição das atividades a serem desenvolvidas a cada novo ciclo da Sprint, sendo atribuido aos membros da equipe quais funcionalidades que cada um deles deveri desenvolver e quais recursos serão alocados para realização dessas tarefas. A macro-fase de Desenvolvimento, corresponde a etapa da codificação das atividades atribuidas aos membros da equipe no período da Sprint, sendo também levantados registros gráficos, como o burndown chart e o backlog do projeto, para saber o real andamento do desenvolvimento do projeto. Por fim, temos a macro-tase de Entrega, onde será apresentado os resultados da sprint, reuniões de retrospectivas, implantação do incremento gerado e treinamento aos usuários que utilizaram o sistema. Atualmente o processo está concluído com todas as suas fases, atividades e modelos de artefatos finalizados. Esperando-se apenas um novo projeto de desenvolvimento no campus, para não somente demonstrar sua eficácia em um ambiente real de desenvolvimento de software, como também demonstrar resultados a partır de sua aplicação.
Ensino de Frações: uma proposta interdisciplinar entre a disciplina de matemática e as disciplinas técnicas do curso de informática
Frações é um conteúdo que esta inserido no ensino da matemática desde as séries iniciais do ensino fundamental. Segundo o Parâmetro Curricular Nacional este conteúdo apresenta uma aplicabilidade em diferentes contextos, tornando-se útil e necessário para que os alunos estejam aptos a desenvolver e resolver situações problemas pertinentes seu cotidiano, porém, é frequente encontrar alunos, em variados níveis de ensino, que apresentam dificuldades em relação a compreensão, utilização e aplicação. Tendo como intuito oportunizar a estes alunos um processo de aprendizagem significativo e diferenciado, ou seja, levando estes alunos a uma reflexão a respeito das relações envolvidas em cada regra de resolução, assim, descaracterizando o ensino de forma mecânica. Propomos o desenvolvimento de um software didático pedagógico que auxiliará o aluno a reconstruir as estratégias e procedimentos relacionados a fração, envolvendo as quatro operações matemáticas. Para a realização do software primeiramente realizou-se uma pesquisa voltada aos alunos, do 1° e 2° Ano do curso Técnico em Informática Integrado ao Ensino Médio do IFPR - Campus Paranavaí, a respeito de quais algoritmos, aplicados às operações de frações, eles mais apresentavam dificuldades. Verificou-se que a maioria desses alunos apresentam antipatia a este assunto e que há uma falta de compreensão em relação aos porquês da aplicação de cada regra, propriedade, quanto a resolução utilizando as operações de frações. Após as informações coletadas percebeu-se que poderia se elaborar um software interativo no qual o usuário fosse oportunizado a entender e compreender os porquês da utilização de cada estratégia e procedimento para resolver as operações envolvendo frações. Portanto, como primeira ação para a elaboração do software desenvolveu-se um programa que calcula, passo a passo as operações de adição, subtração, multiplicação e divisão envolvendo frações. Para o desenvolvimento deste software estão sendo aplicados os conteúdos vistos nas disciplinas técnicas do curso de Informática Integrado ao Ensino Médio, além dos conteúdos relativos a disciplina de Matemática, fortalecendo assima interdisciplinaridade pertinente ao processo de desenvolvimento de software e oportunizando a aplicação das práticas aprendidas em sala de aula. A linguagem de programação utilizada é JAVA e a metodologia aplicada para a gestão desenvolvimento é a metodologia ágil SCRUM. Para Prikladnicki, Willi e Milani (2014), o Scrum é uma metodologia ágil que auxilia no gerenciamento de projetos complexos e no desenvolvimento de produtos. E conhecido como uma metodologia que prescreve um conjunto de práticas leves e objetivas, muito utilizadas na área de desenvolvimento de software. Até o presente momento tem-se como resultado parcial o desenvolvimento do algoritmo (programa) que calcula, etapa a etapa, as operações de adição, subtração, multiplicação e divisão envolvendo frações. Por meio do resultado parcial pretende-se produzir um software interativo, no qual, o aluno executará passo a passo as regras de resolução de frações, informando os valores referentes a cada etapa da resolução do algoritmo, de acordo com cada operação, podendo, ao final, confrontar o seu resultado com o resultado do software, validando assim o seu conhecimento.
Energia solar com sistema off-grid para uso residencial
Em nosso país há um grande potencial de fontes alternativas para auxiliar na geração de energia elétrica no pais. Há uma grande necessidade de se utilizar outras fontes naturais para geração de eletricidade, como a cólica, fotovoltaica, combustiveis fosseis e a biomassa defende Pacheco (2016). Uma das fontes alternativas de energia que vem crescendo muito atualmente é o sistema solar fotovolvaico (captação de energia por meio da radiação solar) captando essa energia através de painéis solares. Energia solar cresce exponencialmente e alcança 10 mil microgeradores no brasil. Desde 2014, o mercado para esse tipo de investimento cresce cerca de 300% ao ano, decorrente da abertura de crédito promovida por bancos públicos para incentivar o setor afirma Rodrigues (2017). Com a implantação do sistema off-grid para uso residencial, utiliza-se alguns equipamentos para a captação da energia solar e transformar em energia elétrica para o consumo residencial, são eles: placa solar fotovoltaica, controlador de carga, inversor de tensão e bateria para armazenamento da energia. Permitindo aos moradores realizar tarefas simples do cotidiano usando equipamentos elétricos básicos do dia a dia como lâmpadas, modem, portão eletrônico, entre outros equipamentos de baixo consumo, e também podendo ser utilizada em locais remotos onde não chega rede elétrica, exemplos de uso são sistemas de bombeamento de água em pastos, eletrificação de cercas e postes de luz, etc. O presente trabalho tem o objetivo de apresentar o módulo didático sobre o funcionamento da energia fotovoltaica com sistema off-grid residencial (sistemas isolados da rede ou autônomos) para geração de energia solar fotovoltaica que são caracterizados por não se conectar a rede elétrica, com armazenamentos em bancos de baterias, onde a energia captada por meio de placas solares fotovoltaicas seja consumida durante o dia enquanto existir radiação solar (produção de energia) e a energia excedente que é produzida ficará armazenada em um banco de baterias estacionárias, para quando não tiver mais a captação de energia, ou seja em dias nublados e durante á noite quando não há incidência solar, a energia armazenada servirá para o funcionamento dos equipamentos residenciais. O seguinte trabalho irá ponderar resultados acadêmicos apresentados sobre o consumo de energia dos equipamentos em residências e abordar os benefícios de uma provável substituição para prover a utilização de alguns aparelhos elétricos residenciais. Será levantado um estudo sobre a economia financeira que esse sistema pode trazer em relação a conta de energia, em andamento está sendo produzida uma maquete simulando uma residência com o uso de alguns aparelhos.