Baixar - Unipar

Propaganda
TECNOLOGIAS E FRAMEWORKS UTILIZADAS NO
DESENVOLVIMENTO DE SISTEMAS GERENCIAIS
Janderson Fernandes Barros ¹, Igor dos Passos Granado¹, Jaime William Dias ¹,²
¹ Universidade Paranaense (UNIPAR)
Paranavaí - PR - Brasil
[email protected], [email protected]
² Universidade Estadual de Maringá (UEM)
Maringá - PR - Brasil
[email protected]
Resumo: Com a evolução da tecnologia da informação, aumenta-se cada vez
mais a necessidade das empresas utilizarem de sistemas gerenciais para
garantir a organização e segurança de suas informações. Sendo assim, o
objetivo do trabalho é desenvolver um sistema gerencial para a empresa
SysRastro, para tal, é realizado um estudo sobre tecnologias e frameworks de
desenvolvimento e aplicações práticas das mesmas. Notando-se então que para
o desenvolvimento de sistemas gerenciais de qualidade é necessário um estudo
sobre as tecnologias utilizadas, o que aumenta as chances de sucesso na
produção final de um projeto.
1. Introdução
Na atualidade muitos comerciantes gerenciam suas empresas de modo simples sem a
análise de um software para gestão, assim causando decisões equivocadas e erradas,
gerando prejuízos para a empresa e levando preocupações para os gestores. Para auxiliar
a gestão, existem os SIGs (Sistemas de Informação Gerenciais), Oliveira [2008] define
os sistemas de informações gerencias como processos utilizados para transformar dados
em informações que auxiliem no processo decisório da empresa.
Para uma empresa na atualidade obter êxito na disputa em busca de resultados
mais ambiciosos há a necessidade de diversos segmentos, pois a competitividade entre
as empresas está acirrada. Além da manutenção e da satisfação de seus clientes as
empresas são obrigadas a utilizar ferramentas para otimização dos dados disponíveis em
seus bancos de dados, possibilitando que o administrador tome suas decisões com
embasamento e certeza que irá surgir algum resultado, pois é de suma importância
possuir informações bem organizadas.
Oliveira [2008], diz que, SIG são indispensáveis, pois na grande maioria das
empresas que utilizam sistemas, existem muitos dados que estão a disposição, mas
dados por si só não podem ser utilizados na tomada de decisão sem antes passar por um
processo de filtro para que futuramente tornem informações viáveis a serem utilizadas, e
é nessa etapa que os sistemas de informações atuam, filtrando, organizando e exibindo o
que é realmente valido a ser utilizado.
2. Metodologia
Como estudo de caso está sendo desenvolvido um sistema para a SysRastro situada na
cidade de Londrina - Paraná, criando uma aplicação web, pois possui dificuldade em
gerenciar um constante crescimento de clientes e quais informações utilizar para
tomadas de decisões. Após ser feito um estudo sobre a empresa, adentramos ao ramo de
negócio para identificar as necessidades reais, levantamentos de requisitos funcionais
(como o sistema deve reagir às entradas de dados, como deve se comportar em
determinada situações, o que o sistema não pode fazer), e também requisitos não
funcionais (requisitos do produto, requisitos organizacionais, requisitos externos).
Ao decorrer do desenvolvimento do sistema foram utilizadas etapas de
engenharia de software como: diagramações UML, projeto de dados, projeto de objetos,
levantamento de requisitos. Utilizando a linguagem de programação Java JSF - Java
Server Faces, uma linguagem para todas as plataformas operacionais utilizando o
navegador web e utilizando o SGBD - Sistema de Gerenciamento de Banco de Dados
PostgreSQL.
3. Desenvolvimento
3.1. Linguagem de Programação
De acordo com Pressman [2007], UML é uma linguagem padrão para
desenvolver e documentar projetos de software. A sigla UML é a abreviação de Unified
Modeling Language ou Linguagem de Modelagem Unificada. Possuindo o objetivo de,
visualizar, especificar, construir e documentar os artefatos de um sistema de software.
Diagramas UML são como plantas de uma construção de engenharia civil, e esta planta
ajuda os desenvolvedores de software a construir o produto.
Utilizando a linguagem de programação Java Enterprice Edition ou também
conhecido como JavaEE é uma plataforma de desenvolvimento para web, utilizando
atribuições de APIs. O Java EE simplifica o desenvolvimento e diminui a necessidade
de programação a de treinamento de um programador, pois cria componentes
reutilizáveis padronizados, tratando de muitos aspectos da programação de forma
automática [Java, 2014].
3.2. Ferramentas
Na criação dos diagramas para explicar as características e o comportamento do
software, foi utilizado o Astah, anteriormente denominado JUDE, sendo este um
software para modelagem UML.
Para o desenvolvimento do sistema foi utilizado o IDE Eclipse. O Eclipse é um
IDE (Integrated Development Environment) que foi desenvolvido pela empresa
americana IBM (International Business Machines), em novembro de 2001. A empresa
investiu cerca de 40 milhões de dólares para o desenvolvimento de um IDE de código
aberto (open source) e de grande usabilidade. Ao longo do tempo, o Eclipse tornou-se
uns dos IDEs mais utilizados no mundo, especialmente por utilizar SWT (The Standard
Widget Toolkit) como biblioteca gráfica [Eclipse, 2014].
3.3. Frameworks
Segundo Fayad e Schmidt [1997], frameworks representam uma estrutura
formada por blocos pré-fabricados de software que os programadores podem usar,
estender ou adaptar para uma solução específica e linguagens de padrões. São formadas
por um conjunto de padrões de software para resolver um problema complexo em um
determinado domínio, ou seja são funções que surgiram para agilizar o trabalho dos
desenvolvedores de software [Appleton, 1997]. Devido ao grande investimento de
comunidades e algumas empresas, existem hoje uma variedade de frameworks que
visam facilitar o trabalho do desenvolvedor.
Ferramentas que auxiliam em tarefas complexas tornando simples e fácil a
utilização, são muito utilizadas na programação de um software Java web, assim como o
Hibernate, uma Framework de persistência no banco de dados, ela abstrai o seu código
SQL e toda camada JDBC e gera em tempo real de execução a persistência para um
determinado banco de dados, já que cada banco tem um dialeto diferente do outro e
utilizado no software em destaque. Assim facilitando a troca de SGBD caso haja
necessidade sem alteração no código Java, pois fica de total responsabilidade da
ferramenta Hibernate.
Figura 1: Funcionamento do framework Hibernate
Fonte: Smolenaars [2005].
Atualmente, muitos desenvolvedores web se concentram mais com as
funcionalidades do que com a parte visual dos componentes, na aplicação desenvolvida
está sendo utilizada o primefaces. De acordo com Devrates [2014], o PrimeFaces
assumiu a liderança com a pontuação de 8.7 como o framework favorito dos
desenvolvedores para criação de interfaces em Java.
3.4. Armazenamento de Dados
Um sistema de gestão de bases de dados – SGBD, é, segundo Heuser [1998], “um
software que incorpora as funções de definição, recuperação e alteração de dados”,
já para Elmasri e Navathe [2005], um SGBD “é uma coleção de programas que
permitem a criação, manipulação e manutenção de uma base de dados – BD”. Ou seja,
um SGBD “é um software de propósito geral que facilita os processos de definição,
construção, manipulação e partilha de bases de dados entre vários usuários e
aplicações”. Em suma pode se dizer que um SGBD é software que controla as funções
de diferentes bases de dados interligadas.
Sobre o conceito de SGBD citado acima, foi utilizado o PostgreSQL pois é um
sistema de gerenciamento de banco de dados objeto-relacional (SGBDOR).
Desenvolvido no Departamento de Ciência da Computação da Universidade da
Califórnia em Berkeley. O projeto POSTGRES, liderado pelo Professor Michael
Stonebraker, foi patrocinado pelas seguintes instituições: Defense Advanced Research
Projects Agency (DARPA), Army Research Office (ARO), National Science Foundation
(NSF), e ESL, Inc. O PostgreSQL descende deste código original de Berkeley,
possuindo o código fonte aberto. Fornece suporte às linguagens SQL92/SQL99, além de
outras funcionalidades modernas.
4. Considerações finais
Foi desenvolvido um software para gestão Web, onde nele se encontra módulos que
facilita a organização de clientes, funcionários e hospedagens/domínios para que a
SysRastro possa melhorar o gerenciamento e possuir um maior controle das
informações. O Software irá controlar os setores financeiros e vendas da empresa,
levantando dados para tomada de decisões de uma forma clara e eficiente e os
funcionários e proprietário da empresa obterão como consequência uma maior
organização de suas vendas e um controle financeiro de contas a pagar e receber.
O software deve proporcionar um controle total dos clientes para os quais a
empresa desenvolve sites e precisa do controle de pagamentos do serviço, da
hospedagem e domínio de cada um, tendo em vista que também pode ser prestado
serviço que não tem esses requisitos o sistema precisa de um controle de ordem de
serviço para que todos os serviços prestados sejam devidamente controlados e cobrados,
e como resposta dos registros o software deve conter relatórios que ajudem nas decisões
administrativas e gerenciais para que as decisões sejam tomadas de maneira eficiente.
5. Referencias
Appleton, B. (1997) Patterns and software: essential concepts and terminology.
Disnponível
em:
http://www.cmcrossroads.com/bradapp/docs/patterns-intro.html
Acesso em: 21/08/2014.
Devrastes (2014). Open source reviews by real
http://devrates.com/stats/index/> Acesso em 21/08/2014.
users.
Disponível
em:
Eclipse (2014). What is Eclipse and the Eclipse Foundation. Disponível em: <
http://www.eclipse.org/org/> Acesso em 21/08/2014.
Elmasri, R.; Navateh, S. B. (2005) Sistema de Banco de Dados. São Paulo: Pearson.
Fayad, M. E. et al. (1997) Object-oriented Application Frameworks. NY: Wiley.
Heuser, C. A. (1998) Projecto de Bancos de Dados. Porto Alegre: Sagra Luzzatto.
Java (2014). O que é Java Enterprise Edition. Disponível em:
http://www.java.com/pt_BR/download/faq/techinfo.xml> Acesso em 21/08/2014.
<
Oliveira, D. P. (2008) Rebouças de Sistemas de Informações Gerenciais: estratégicas
táticas operacionais. 12 ed. 299 p. São Paulo: Atlas.
Pressman, R. (2006) Engenharia de Software. São Paulo: MacGraw-Hill.
Download