Prévia do material em texto
MIGRAÇÃO DE UM MÓDULO DE UM SISTEMA DESKTOP PARA A PLATAFORMA WEB REALIZADA POR UMA EMPRESA DE FEIRA DE SANTANA: um estudo de caso. Alessandro Almeida Souza1 e Jhansen Costa Barreto2 Naan Silva Cardoso3 RESUMO Lorem Ipsum é simplesmente um texto fictício da indústria de impressão e composição. Lorem Ipsum tem sido o texto fictício padrão da indústria desde 1500, quando um impressor desconhecido pegou um modelo de impressão e embaralhou-o para fazer um livro de amostra de tipos. Ele sobreviveu não apenas cinco séculos, mas também ao salto para a composição eletrônica, permanecendo essencialmente inalterado. Texto justificado com espaçamento simples entre linhas, tamanho 12 e escrito em um único parágrafo. Não deve exceder 200 palavras. Palavras chave: No mínimo 03 palavras e separadas por ponto (.). ABSTRACT Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. Justified text with single line spacing, size 12 and written in a single paragraph. Must not exceed 200 words. Keywords: At least 03 words and separated by a period (.). 1. INTRODUÇÃO A popularização da Web ao longo dos anos proporcionou ao mercado de desenvolvimento de sistemas a possibilidade da construção de sistemas 100% online, permitindo acesso aos usuários de qualquer lugar que disponha conexão com a internet. Quanto mais tempo uma empresa existe no mercado, mais complexo se torna o seu sistema, pois, os sistemas de informática em negócios precisam evoluir à medida que as tecnologias estão avançando, caso contrário eles podem ficar ultrapassados e desacelerar os negócios. “Os sistemas de informação mais modernos oferecem às empresas oportunidades 3 Orientadora: Docente do Centro Universitário UniFTC de Feira de Santana (UniFTC/BA), Mestra em Computação Aplicada pela Universidade Estadual de Feira de Santana (UEFS), e-mail: naan.cardoso@ftc.edu.br 2 Autor: Discente do curso de Sistemas de Informação do Centro Universitário UniFTC de Feira de Santana (UniFTC/BA), e-mail: alessandro.souza@ftc.edu.br 1 Autor: Discente do curso de Sistemas de Informação do Centro Universitário UniFTC de Feira de Santana (UniFTC/BA), e-mail: jhansen.barreto@ftc.edu.br 1 sem precedentes para a melhoria dos processos internos e dos serviços prestados ao consumidor final” (BEAL, 2001, p.03). Desse modo, com as estruturas modernas da Web surgindo cada vez com mais frequência, os gerentes de desenvolvimento estão lutando para saber quando entrar e atualizar suas aplicações legadas. De acordo com a pesquisa realizada em janeiro de 2021 pela plataforma internacional de estatísticas Statista (Global digital population as of January 2021)4, há 4,66 bilhões de usuários ativos da internet, número que representa 59,5% da população mundial. Outro dado que deve ser levado em consideração é a quantidade de desenvolvedores que atuam no mercado construindo sistemas Web. Segundo a pesquisa Developer Survey Results5 realizada pelo Stack Overflow em 2020, a grande maioria dos entrevistados fazem uso das linguagens de programação, marcação e estilização, JavaScript, HyperText Markup Language (HTML) e Cascading Style Sheets (CSS) respectivamente, no qual JavaScript lidera o ranking de popularidade como linguagem mais comumente usada pelo oitavo ano consecutivo. Baseado na relevância dos dados revelados anteriormente, os estudos feitos pela Statista e pelo Stack Overflow mostram que o desenvolvimento desktop está entrando em desuso e ficando cada vez mais ultrapassado, visto que, todo sistema operacional (incluindo os mobile) faz uso de um browser, permitindo uma consulta a qualquer sistema desejado com a liberdade de não estar preso à localização física de uma máquina. Além disso, o mercado está cada vez mais exigente no sentido de que os sistemas sejam modernos e atualizados, pois, uma empresa que utiliza um software ultrapassado corre risco de ficar para trás na competitividade. Considerando o cenário e suas exigências, percebe-se que a disponibilidade de acesso às informações a qualquer lugar do mundo tem se tornado tendência para a sobrevivência do negócio. Assim, analisando o ganho com a migração e a necessidade da mesma levando em consideração as exigências do mercado atual, justifica-se o processo consciente em realizar a mudança, obviamente analisando-se os riscos desse processo evolutivo e os meios disponíveis para se atingir o objetivo proposto Com base nesse contexto e levando em consideração a necessidade das empresas em se modernizarem e atualizarem suas tecnologias defasadas para não perderem a competitividade no mercado, surge o questionamento desse artigo: é possível investir em um processo de transformação digital de um software legado e apresentar os benefícios consequentes? 5 https://insights.stackoverflow.com/survey/2020 4 https://www.statista.com/statistics/617136/digital-population-worldwide/ 2 https://insights.stackoverflow.com/survey/2020 https://www.statista.com/statistics/617136/digital-population-worldwide/ Assim, este artigo tem como objetivo discorrer sobre as vantagens da migração de um sistema desktop para a plataforma web, bem como apresentar um estudo de caso da migração de um módulo do sistema de uma empresa da cidade de Feira de Santana-BA. Além disso, identificar suas vantagens e desvantagens e o impacto do processo evolutivo na realização da mudança de tecnologias. Este artigo está dividido em 5 seções, incluindo a Introdução. A segunda seção contempla o referencial teórico. A terceira seção aborda os métodos adotados para a realização do estudo. A quarta seção apresenta os resultados obtidos e discussões e por fim, a quinta e última seção traz as considerações finais do estudo, concluindo a apresentação do trabalho. 2. REFERENCIAL TEÓRICO “A tecnologia da informação é um elemento-chave na gestão de informações empresariais, as empresas que fazem uso destas ferramentas têm um papel de destaque diante da concorrência” (SMITH e ALCIMAR, 2016, p.03). Com base nessa afirmação, esta seção traz duas plataformas distintas de sistemas e as confronta mostrando os benefícios em se realizar a migração desktop para web. 2.1 Sistemas Desktop: aplicações legadas no mercado Segundo Andrade (2015), sistemas desktop são sistemas instalados diretamente no computador e não dependem do uso da internet ou da conexão com servidores ou outros computadores. Com esta definição, Rizo e Espírito Santo (2020) trazem uma abordagem que apresenta a arquitetura de tiers, no qual é focada em dividir fisicamente as partes do sistema, conceito também abordado por Silveira et al (2011). Ainda segundo os autores citados, a arquitetura de tiers consiste em diferentes módulos do sistema se comunicarem de forma remota através da rede, o que pode ser entendido como os mesmos sendo executados em máquinas diferentes ou até em uma mesma máquina. Rizo e Espírito Santo (2020) também complementam afirmando que ainda é comum dois tiers serem utilizados em aplicações desktop, em que é empregado muito código no tier da interface, a fim de diminuir os esforços empregados no lado do servidor. É comum usarem procedimentos armazenados no banco de dados que podem ser invocados, com o intuito de isolamento de lógica e minimização da perda de performance. Contudo, essa arquitetura gera certos problemas, como baixo desacoplamento de responsabilidades, integrações custosas e uma grande dependência do banco de dados. 3 Dito isso, fatores como: i) o usuário preso à localização física da máquina para ter acesso ao sistema; ii) a popularização do desenvolvimento web no mercado; iii) o desenvolvimento desktop caindo em desuso e; iv) o impacto financeiro em manter uma aplicação legada provocam a evoluçãonatural de tecnologias para que as empresas se mantenham competitivas no mercado. Sistemas legados são aqueles que estão em uso há muito tempo. Eles atendem aos requisitos dos usuários e são de difícil substituição, seja porque a reimplementação de seu código é inviável financeiramente, ou porque eles são imprescindíveis, isto é, esses sistemas não podem ficar inativos por muito tempo (RAMOS et al, 2004). Justino (2018, p.14) afirma que “quando um software não é mais viável, é considerado envelhecido, em decaimento ou legado”. Para tentar controlar e manter sistemas legados, as empresas acabam investindo uma parcela significativa e crescente de seu orçamento, podendo chegar a 80% destinado à manutenção de software e tendendo a aumentar ao longo do tempo (GANGADHARAN et al, 2013). Neste sentido, autores como De Haes et al, (2013) afirmam que a tecnologia da informação (TI) está sendo percebida como importante aliada na busca do sucesso organizacional, uma vez que possibilita crescimento e sustentabilidade empresarial. 2.2 Sistemas Web: a evolução natural do sistema desktop legado A gradativa redução da vida útil das aplicações acontece por elas terem sido criadas para atender necessidades específicas de uma época, contudo, as mesmas podem não representar mais as necessidades atuais. Além disso, as tecnologias outrora utilizadas podem se encontrar desatualizadas e já não são suportadas por seus fabricantes (FONTANETTE, 2005). Em cenários como esse, Justino (2018) afirma que as empresas podem tentar reverter o processo de decaimento do software optando por reestruturar os recursos do sistema legado em um novo sistema de software. Para isso, é preciso levantar meios dessa atualização acontecer sem que os custos sejam elevados demais, pois, segundo França e Silva (2005, p. 02): “O dinamismo existente no mundo dos negócios não permite que as empresas abram mão de seus sistemas computacionais, sob pena de não conseguirem se sustentar no mercado. Desta forma, o processo evolutivo destas aplicações se faz necessário utilizando novos conceitos de negócios, de software e a utilização de novas tecnologias no seu desenvolvimento.” Com a afirmação feita por França e Silva (2005) em relação às novas tecnologias que devem ser empregadas no desenvolvimento desses sistemas computacionais, 4 imprescindíveis para as empresas, a plataforma web mostra-se não só como a evolução natural dessas aplicações, mas como a melhor opção, visto que, a web “se consolidou ao longo dos últimos anos como uma plataforma padrão para disponibilizar sistemas de software de diferentes naturezas na Internet” (MEDEIROS, 2011, p.01). Fazer parágrafo de link com o início da metodologia. 3. METODOLOGIA Falar do tipo de pesquisa. (Olhar o livro do autor sugerido por Naan) Falar sobre ferramentas e tecnologias utilizadas. Inicialmente foi realizado um estudo de caso para se definir qual módulo do sistema seria necessário desenvolver para a plataforma web. Diante um grande número de organizações fidelizadas à empresa, foi realizado uma pesquisa de satisfação entre os mesmo para entender a real necessidade para implantação da nova tecnologia. Além disso, a empresa necessitou disponibilizar recursos como a contratação de novo funcionário,equipamentos de informática e realizar um estudo de viabilidade com objetivo de definir linguagem, ferramentas e arquitetura utilizada. 3.1 Estudo de viabilidade Durante a etapa de planejamento do projeto, foi realizado um estudo de viabilidade para se verificar quais as tecnologias que atendessem as necessidades de resolução do problema. Dentro das experiências da equipe de desenvolvimento,facilidade de implementação e curva de aprendizado das tecnologias envolvidas ... falar algo mais do estudo aqui Precisamos justificar o motivo da escolha dessas tecnologias ? ● REST API Uma interface de programação de aplicação ou Application Programming Interface(API), é uma camada de aplicação responsável por realizar trocar informações entre sistemas de arquitetura diferentes usando o protocolo Hypertext Transfer Protocol(HTTP). Este protocolo executa rotinas a partir de requisições por onde seus parâmetros são passados e retornando um arquivo .json com dados solicitados, a combinação destes dois processos é chamada de API REST(GOME, MICAEL MACHADO, et al,2018). ● PHP É uma linguagem de programação voltada para internet onde se é possível o desenvolvimento de páginas dinâmicas realizando interação com o 5 banco de dados, é uma linguagem orientada a objetos e usada como servidores web (DALL'OGLIO,2018). (falar mais sobre php) ● Slim “Slim é uma micro estrutura de PHP que ajuda você a escrever rapidamente aplicativos e APIs da web simples, mas poderosos."(citar https://www.slimframework.com/ consultado em 05-09-2021). Micro-framework escrito exclusivamente para o desenvolvimento API REST, possui características como baixa configuração, facilidade na integração de projetos externos , suporte a injeção de dependências e comunidade ativa. ● Servidor Apache Apache HTTP server é um servidor web mais popular do mundo, ele é responsável por disponibilizar recursos que podem ser acessados online atuando como servidor HTTP.(citar http://www.apache.org/ consultado em 05-09-2021) ● Firebird É um sistema de gerenciamento de banco de dados relacional cliente/servidor e open source , nele é possível gerenciar e administrar as informações assim como manutenção das tabelas.(citar https://firebirdsql.org/ consultado em 05-09-2021) ● HTML Linguagem de Marcação de HiperTexto(HTML) define o significado e a estrutura do conteúdo da web. (citar https://developer.mozilla.org/pt-BR/docs/Web/HTML consultado em 05-09-2021 ) ● Bootstrap 6 https://www.slimframework.com/ http://www.apache.org/ https://firebirdsql.org/ https://developer.mozilla.org/pt-BR/docs/Web/HTML É um framework front-end que possui um kit de ferramentas que acelera o desenvolvimento de sites e sistemas para internet. (citar https://getbootstrap.com/ consultado em 05-02021) 3.2 Arquitetura do Software É comum em aplicações Desktop a utilização da arquitetura ties (Rizo e Espírito Santo,2020). 4. RESULTADOS E DISCUSSÕES Apresentar resultados da pesquisa, oriundos da coleta de dados. 5. CONSIDERAÇÕES FINAIS Acabou, é tetra! REFERÊNCIAS BEAL, Adriana. Introdução à gestão de tecnologia da informação. 2Beal Educação e Tecnologia. Maio, 2001. SMITH, Diego; ALCIMAR, José. Tecnologia da informação aplicada ao cooperativismo rural: estudo de caso da cofruta, 2016. ANDRADE, R. A. Z. de. Sistema desktop para gerenciamento de culturas agrícolas. 2015. 57 f. Trabalho de Conclusão de Curso (Graduação) - Universidade Tecnológica Federal do Paraná, Pato Branco, 2015. RIZO, Victor Hugo Manduca; ESPÍRITO SANTO, Felipe do. MIGRAÇÃO DE PARTES DE UMA APLICAÇÃO DESKTOP PARA O FORMATO DE API REST: estudo de caso. Revista Interface Tecnológica, v. 17, n. 1, p. 118-128, 2020. SILVEIRA, Paulo et al. Introdução à Arquitetura de Design de Software: Uma Introdução à Plataforma Java. Elsevier Brasil, 2011. RAMOS, Cristiane Soares; OLIVEIRA, Káthia M.; ANQUETIL, Nicolas. Legacy software evaluation model for outsourced maintainer. In: Eighth European Conference on Software Maintenance and Reengineering, 2004. CSMR 2004. Proceedings. IEEE, 2004. p. 48-57. JUSTINO, Yan de Lima. Do monolito aos microsserviços: um relato de migração de sistemas legados da Secretaria de Estado da Tributação do Rio Grande do Norte. 2018. Dissertação de Mestrado. Brasil. GANGADHARAN, G. R. et al. IT innovation squeeze: Propositions and a methodology for deciding to continue or decommission legacy systems. In: International Working Conference on Transfer and Diffusion of IT. Springer, Berlin, Heidelberg, 2013. p. 481-494. 7 https://getbootstrap.com/ FONTANETTE, Valdirene. AMGra: uma abordagem para migração gradativa de aplicações legadas. 2005. DE HAES, Steven; VAN GREMBERGEN, Wim; DEBRECENY, Roger S. COBIT 5 and enterprise governance of information technology:Building blocks and research opportunities. Journal of Information Systems, v. 27, n. 1, p. 307-324, 2013. FRANÇA, Luiz Fernando Maciel; SILVA, Leandro Libério. Uma proposta de integração de sistemas para um ambiente de migração do ERP/SIG da plataforma COBOL para uma solução em ambiente Web. MEDEIROS, Danielle G. F. Um framework de agentes de recomendação para sistemas web. 2011. 110 f. Dissertação (mestrado em sistemas e computação) – Universidade Federal do Rio Grande do Norte, Natal, 2011. Gomes, Micael Machado, et al. "Modelo Distribuıdo de Cooperação Multi-grupo através de uma REST API na Gestão de Informação do Site PET UFMA",2018. DALL'OGLIO, Pablo. PHP Programando com orientação a Objetos. Novatec Editora, 2018. 8