Documente Academic
Documente Profesional
Documente Cultură
Chapec SC
2011
de
Universidade
Sistemas
do
Oeste
de
de
Informao,
Santa
Catariana
Chapec SC
2011
da
de
Universidade
Sistemas
do
Oeste
de
de
Informao,
Santa
Catariana
__________________________________________________________
Prof. M.Sc. Carla A. Martins Basso
Universidade do Oeste de Santa Catarina - UNOESC
__________________________________________________________
Prof. M.Sc. Tiago Zonta
Universidade do Oeste de Santa Catarina - UNOESC
__________________________________________________________
Prof. Esp. Jos Luiz Cunha Quevedo
Universidade do Oeste de Santa Catarina - UNOESC
da
AGRADECIMENTOS
RESUMO
Este trabalho apresenta um prottipo de aplicativo para dispositivos mveis, que tem
como objetivo agilizar o processo de gerao de pedidos realizados pelos
vendedores das cooperativas agrcolas que utilizam o Enterprise Resource Planning
(ERP) desenvolvido pela Infogen Sistemas, o GesCooper. Utilizando Web Services
para integrao com o GesCooper e Java Micro Edition (JME) para desenvolvimento
do aplicativo que ser executado no dispositivo mvel. O trabalho inicia-se com a
reviso da literatura onde apresentado as tecnologias e ferramentas estudadas e
que sero utilizadas para o desenvolvimento do prottipo. Em seguida
apresentado como foram utilizadas essas tecnologias e ferramentas a fim de
desenvolver o prottipo proposto.
LISTA DE ILUSTRAES
Figura 1.
17
Figura 2.
22
Figura 3.
24
Figura 4.
Armazm de Registros
25
Figura 5.
27
Figura 6.
30
Figura 7.
32
Figura 8.
32
Figura 9.
38
39
39
comunicao
Figura 12. Empresas que possuem software para envio de pedidos
40
40
41
45
46
47
47
48
49
49
50
50
51
51
52
Figura 27. Converter J2ME MIDP (JAD) para Android pacote (APK)
53
54
59
60
61
61
62
62
63
64
64
65
65
LISTA DE TABELAS
Tabela 1
54
Tabela 2
55
Tabela 3
56
Tabela 4
56
Tabela 5
57
Tabela 6
57
Tabela 7
58
API
APK
Android Pacote
BI
Business intelligence
CRM
CD-ROM
CLDC
ERP
EJB
Enterprise JavaBeans
HTML
HTTP
HTTPS
IDC
IDE
IIS
J2
Java 2
J2ME
JAD
JAR
Java Archive
JDBC
JDK
JNDI
JPA
JSP
JVM
KVM
K Virtual Machine
MIDP
PHP
Hypertext Preprocessor
RIM
Research In Motion
UML
XML
WWW
SUMRIO
1. INTRODUO ................................................................................................... 13
1.1. OBJETIVOS ..................................................................................................... 14
1.1.1. OBJETIVO GERAL ............................................................................................. 14
1.1.2. OBJETIVOS ESPECFICOS .................................................................................. 14
2. REVISO DA LITERATURA.............................................................................. 15
2.1. COOPERATIVA ............................................................................................... 15
2.1.1. PRINCPIOS ...................................................................................................... 15
2.2. SISTEMAS DE INFORMAO ........................................................................ 17
2.3. ERP .................................................................................................................. 18
2.4. MOBILIDADE E DISPOSITIVOS MVEIS ....................................................... 19
2.4.1. MITOS RELACIONADOS AO DESENVOLVIMENTO DE APLICAES MVEL ................ 20
2.5. TECNOLOGIA PARA DISPOSITIVOS MVEIS............................................... 21
2.5.1. JAVA ............................................................................................................. 21
2.5.2. J2ME - JAVA MICRO EDITION ........................................................................... 21
2.5.2.1. Configuraes ............................................................................................. 23
2.5.2.2. Componentes visuais .................................................................................. 24
2.5.2.3. RMS Record Management System .......................................................... 25
2.5.2.4. MIDP Mobile Information Device Profile ................................................... 26
2.5.2.5. MIDlets ........................................................................................................ 27
2.6. FERRAMENTAS .............................................................................................. 28
2.6.1. NETBEANS ...................................................................................................... 28
2.6.2. TOMCAT .......................................................................................................... 29
2.6.3. GLASSFISH...................................................................................................... 29
2.7. WEB SERVICES .............................................................................................. 30
2.7.1. XML - LINGUAGEM DE MARCAO EXTENSVEL ................................................. 31
2.7.2. SOAP - SIMPLE OBJECT ACCESS PROTOCOL .................................................... 31
2.7.3. WSDL - WEB SERVICES DESCRIPTION LANGUAGE............................................. 32
3. CAMPO OU REA DE ESTUDO ....................................................................... 33
3.1. DESCRIO DA EMPRESA ............................................................................ 33
3.2. GESCOOPER .................................................................................................. 34
4. MTODO ............................................................................................................ 35
4.1. DELIMITAO DO ESTUDO, MTODO E COLETA DE DADOS .................... 35
4.2. CARACTERIZAO DO ESTUDO .................................................................. 35
4.3. DEFINIO DA POPULAO E DA AMOSTRA.............................................. 36
4.4. TCNICA DE ANALISE E INTERPRETAO DE DADOS .............................. 36
4.5. QUESTOES DE PESQUISA ............................................................................ 37
5. APRESENTACAO E ANLISE DOS RESULTADOS ....................................... 38
5.1. ANLISE DOS RESULTADOS ........................................................................ 38
5.2. DESENVOLVIMENTO DO PROTTIPO ......................................................... 41
5.3. REQUISITOS FUNCIONAIS ............................................................................ 42
5.4. REQUISITOS NO FUNCIONAIS .................................................................... 43
5.5. SERVIDOR ...................................................................................................... 44
5.5.1. DIAGRAMA DE CLASSE ..................................................................................... 44
5.5.2. ER DIAGRAMA DE ENTIDADE RELACIONAMENTO ............................................. 45
5.5.3. CRIAO DO WEB SERVICE .............................................................................. 46
5.6. CLIENTE .......................................................................................................... 53
5.6.1. CASO DE USO .................................................................................................. 54
5.6.2. DIAGRAMA DE CLASSE ...................................................................................... 58
5.6.3. FLUXO DE EXECUO DA MIDLET ...................................................................... 59
5.6.3.1. Demonstrao da execuo da MIDlet........................................................ 60
CONCLUSO .......................................................................................................... 66
REFERNCIAS ........................................................................................................ 67
APNDICES ............................................................................................................. 70
APNDICE A QUESTIONRIO ............................................................................ 71
APNDICE B DIAGRAMA DE CLASSE WEB SERVICE .................................... 72
APENDICE C DIAGRAMA DE CLASSE MIDLET ................................................ 76
1. INTRODUO
O sucesso das empresas est totalmente vinculado velocidade com que as
informaes so assimiladas e pela rapidez que como so tomadas as decises. Os
componentes que fundamentam a Tecnologia de Informao so os grandes
precursores desse sucesso e os dispositivos mveis so grandes aliados, permitindo
conectividade que outros dispositivos no possuem, facilitando a comunicao com
outros sistemas.
Utilizando
os
recursos
que
os
dispositivos
mveis
oferecem,
14
1.1.
OBJETIVOS
2. REVISO DA LITERATURA
2.1.
COOPERATIVA
2.1.1. Princpios
servios
e assumir
16
para
democraticamente.
Parte
capital
desse
de
suas
cooperativas
capital deve
ser
propriedade
controlam
comum
da
Autonomia
independncia:
as
cooperativas
so
organizaes
autnomas, de ajuda mtua, geridas pelos seus membros. Se firmarem acordos com
outras organizaes - incluindo instituies pblicas - ou recorrerem a capital
externo, devem faz-lo em condies que assegurem o controle democrtico pelos
seus cooperados e nas quais se mantenha a autonomia das cooperativas.
5. Educao, formao e informao: as cooperativas promovem a educao
e a formao dos seus cooperados, dos representantes eleitos e dos trabalhadores,
de forma que possam contribuir eficazmente para o desenvolvimento da instituio.
Informam ao pblico em geral, particularmente aos jovens e aos lderes de opinio, a
natureza e as vantagens da cooperao.
6. Intercooperao: ativa cooperao entre as cooperativas em plano local,
nacional e internacional. Trabalhando em conjunto, servem de forma mais eficaz a
seus membros e do mais fora ao movimento cooperativo.
7.
Interesse
pela
comunidade:
as
cooperativas
trabalham
para
17
2.2.
SISTEMAS DE INFORMAO
longo
prazo.
Envolvem
diretamente
questes
objetivos
das
18
2.3.
ERP
da
empresa,
compartilhando
informaes
atravs
do
19
2.4.
tem
as
seguintes
caractersticas:
portabilidade,
usabilidade,
20
que
precisam
ser
vencidas,
incluindo
ergonomia,
21
2.5.
2.5.1. JAVA
22
Java
Standard
Edition
(J2SE):
tecnologia
projetada
para
2).
(MUCHOW, 2004, p.
23
2.5.2.1. Configuraes
24
A seguir,
TextBox: Tela que permite a entrada de texto. possvel definir qual o tipo
de caractere que deve ser digitado e o seu tamanho.
Forms: o objeto que pode oferecer algumas limitaes, no existem janelas
sobrepostas e barra de menus em cascata, mas ele permite adicionar vrios
componentes na tela, fornecendo rolagem conforme for necessrio para acomodar
os componentes.
List: o objeto que apresenta uma lista de escolhas a qual pode ter trs
formatos; Mltiple, em que se podem ter n nmeros de elementos selecionais;
Exclusive, em que se pode ter apenas um elemento selecionado; e Implicit, em que
a seleo de um elemento gera um evento.
Alert: o objeto que suporta texto e objetos do tipo Image. Seu uso opcional
e normalmente utilizado para mostrar mensagens de erro. Existem dois tipo de
25
objetos Alert: Modal, em que o objeto fica na tela at o momento em que o usurio
dispense ou Cronometrado, em que o objeto fica na tela por um tempo determinado.
26
2008, p. 22).
(SOUZA,
27
2.5.2.5. MIDlets
possuem
28
2.6.
FERRAMENTAS
2.6.1. NetBeans
29
2.6.2. Tomcat
2.6.3. GlassFish
30
2.7.
WEB SERVICES
interagirem
apesar
das
31
32
3.1.
DESCRIO DA EMPRESA
34
3.2.
GESCOOPER
as
quais
apresentam
necessidades
particularidades
que,
4. MTODO
4.1.
4.2.
CARACTERIZAO DO ESTUDO
Atravs do estudo de caso aplicado sobre os clientes questionados, verificouse como o processo de envio de pedidos estava sendo realizado, para
posteriormente, possibilitar o desenvolvimento de um prottipo a fim de solucionar o
possvel problema de envio desses pedidos, otimizando a comunicao entre o
vendedor e a empresa.
36
4.3.
4.4.
37
adquirir uma soluo para registrar pedidos de venda por meio de dispositivos
mveis, integrado com o sistema de gesto da Infogen Sistemas, o GesCooper.
O questionrio foi disponibilizado aos entrevistados atravs da ferramenta
Google Docs, possibilitando aplicar a pesquisa de forma online, agilizando o
processo de anlise dos resultados que sero apresentados atravs de grficos
oferecidos pelo prprio Google Docs.
4.5.
QUESTOES DE PESQUISA
5.1.
N
7
3
%
70
30
39
Sim
No
%
50
50
N
5
2
%
71
29
40
Quanto aos resultados obtidos, pde-se observar, atravs da Figura 12, que a
minoria, sendo ela 10% dos clientes questionados, possui um software que permita
enviar eletronicamente os pedidos de venda.
A sua empresa j possui um software que permita enviar os pedidos de seus
representantes?
Sim
No
N
1
9
%
10
90
N
9
1
%
90
10
41
5.2.
DESENVOLVIMENTO DO PROTTIPO
possibilitar a
42
5.3.
REQUISITOS FUNCIONAIS
as
formas
de
pagamento
cadastradas
disponveis,
43
5.4.
REQUISITOS NO FUNCIONAIS
44
5.5.
SERVIDOR
Servidor GlassFish 3;
45
46
47
Figura
18
apresenta
WSDL
TransacionadoresWs.
Nela
est
48
49
mtodo listarFormas.
50
51
52
53
5.6.
CLIENTE
Dispositivo: DefaultFxTouchPhone1;
54
Fluxo Base
Referncia
CSU001 Logar
Vendedor
55
Caso de Uso
Ator principal
Atores
secundrios
Resumo
Pr-Condies
Ps-Condies
Fluxo Base
Referncia
56
Caso de Uso
Ator principal
Atores
secundrios
Resumo
Pr-Condies
Ps-Condies
Fluxo Base
Referncia
Caso de Uso
Ator principal
Atores
secundrios
Resumo
Pr-Condies
Ps-Condies
Fluxo Base
Referncia
57
Caso de Uso
Ator principal
Atores
secundrios
Resumo
Pr-Condies
Ps-Condies
Fluxo Base
Referncia
Caso de Uso
Ator principal
Atores
secundrios
Resumo
Pr-Condies
Ps-Condies
Fluxo Base
Referncia
58
Caso de Uso
Ator principal
Atores
secundrios
Resumo
Pr-Condies
Ps-Condies
Fluxo Base
Referncia
59
60
61
vendedor,
ou
seja,
cdigo
que
corresponde
ao
cadastro
de
62
63
64
65
CONCLUSO
Com este trabalho foi possvel analisar a evoluo dos dispositivos mveis
bem
como
tecnologia
Java
Micro
Edition
(J2ME),
disponvel
para
REFERNCIAS
AHMED, Khawar Zaman; UMRYSH, Cary E. Desenvolvendo aplicaes
comerciais em Java com J2EE e UML. Rio de Janeiro: Editora Cincia Moderna
Ltda, 2002. 302 p.
CASTRO, Elizabeth, 2001. XML para World Wide Web. Rio de Janeiro: Editora
Campus, 2001. 269 p.
GOMES, Daniel Andorno. Web Services SOAP em Java: Guia prtico para o
desenvolvimento de web service em Java. 1. Ed. So Paulo: novatec, 2010. 183
p.
Delivering
Java
EE
Application
Server.
Disponvel
em
https://glassfish.dev.java.net/faq/v2/GlassFishOverview.pdf.
SIERRA, Kathy; BATES, Bert. Use a Cabea! Java. 2. Ed. Rio de Janeiro: Alta
Books, 2010. 484 p.
APNDICES
71
APNDICE A Questionrio
Razo social da empresa:
E-mail:
1. Sua empresa possui vendedores externos? *
( ) Sim
( ) No
( ) No
( ) No
5. Qual o software que sua empresa possui? (Se voc respondeu sim para a
questo 4)
( ) No
72
interface
CadusuariosFacade
Cadusuarios
CadusuariosFacadeLocal
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Cadusuarios()
Cadusuarios(String)
getUsuCod() : String
setUsuCod(String) : void
getEmpCod() : Short
setEmpCod(Short) : void
getUsuFilCod() : Short
setUsuFilCod(Short) : void
getUsuTraCod() : Integer
setUsuTraCod(Integer) : void
getUsuSenha() : String
setUsuSenha(String) : void
getUsuEmail() : String
setUsuEmail(String) : void
getUsuConCod() : String
setUsuConCod(String) : void
getUsuHisPreCod() : Integer
setUsuHisPreCod(Integer) : void
setUsuWorkstation(String) : void
hashCode() : int
equals(Object) : boolean
toString() : String
em: EntityManager
interface
CadusuariosFacadeRemote
+
cadusuariosFacadeBean
CadusuariosWs
-
cadusuariosFacadeBean: CadusuariosFacadeRemote
FormasFacade
Formas
-
+
+
+
+
+
+
+
+
+
Formas()
Formas(Short)
getPagCod() : Short
setPagCod(Short) : void
getPagNom() : String
setPagNom(String) : void
hashCode() : int
equals(Object) : boolean
toString() : String
em: EntityManager
listarFormas() : List<Formas>
interface
FormasFacadeLocal
interface
FormasWs
-
formasFaceBean: FormasFacadeRemote
listarFormas() : List<Formas>
formasFaceBean
FormasFacadeRemote
+
listarFormas() : List<Formas>
73
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Transacionadores()
Transacionadores(Integer)
getTraCod() : Integer
setTraCod(Integer) : void
getTraNom() : String
setTraNom(String) : void
getTraEnd() : String
setTraEnd(String) : void
getTraNumEnd() : String
setTraNumEnd(String) : void
getTraBairro() : String
setTraBairro(String) : void
getTraPaiCod() : String
setTraPaiCod(String) : void
getTraEstCod() : String
setTraEstCod(String) : void
getTraMunCod() : Integer
setTraMunCod(Integer) : void
getTraFone() : String
setTraFone(String) : void
getTraEmail() : String
setTraEmail(String) : void
getTraCpf() : String
setTraCpf(String) : void
getTraCnpj() : String
setTraCnpj(String) : void
hashCode() : int
equals(Object) : boolean
toString() : String
interface
TransacionadoresFacade
Transacionadores
TransacionadoresFacadeLocal
em: EntityManager
listarTransacionadores() : List<Transacionadores>
interface
TransacionadoresFacadeRemote
+
listarTransacionadores() : List<Transacionadores>
transacionadoresFaceBean
TransacionadoresWs
-
transacionadoresFaceBean: TransacionadoresFacadeRemote
listarTransacionadores() : List<Transacionadores>
74
interface
ProdutosFacade
Produtos
ProdutosFacadeLocal
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Produtos()
Produtos(Integer)
getProCod() : Integer
setProCod(Integer) : void
getProNom() : String
setProNom(String) : void
getProFamCod() : Integer
setProFamCod(Integer) : void
getProGrpCod() : Integer
setProGrpCod(Integer) : void
getProSubCod() : Integer
setProSubCod(Integer) : void
getProNomRed() : String
setProNomRed(String) : void
getProNomEmbCompra() : String
setProNomEmbCompra(String) : void
getProFlag16() : Short
setProFlag16(Short) : void
hashCode() : int
equals(Object) : boolean
toString() : String
em: EntityManager
listarProdutos() : List<Produtos>
interface
ProdutosFacadeRemote
+
listarProdutos() : List<Produtos>
produtoFaceBean
ProdutosWs
-
produtoFaceBean: ProdutosFacadeRemote
listarProdutos() : List<Produtos>
#
-
+
+
+
+
+
+
+
+
+
+
Produtoslevel4()
Produtoslevel4(Produtoslevel4PK)
Produtoslevel4(int, int)
getProdutoslevel4PK() : Produtoslevel4PK
setProdutoslevel4PK(Produtoslevel4PK) : void
getProVlrPreco() : double
setProVlrPreco(double) : void
hashCode() : int
equals(Object) : boolean
toString() : String
interface
Produtoslev el4Facade
Produtoslev el4
Produtoslevel4FacadeLocal
em: EntityManager
listarProdutoslevel4(Integer) : List<Produtoslevel4>
interface
Produtoslevel4FacadeRemote
Serializable
Produtoslev el4PK
-
+
+
+
+
#produtoslevel4PK +
+
+
+
+
listarProdutoslevel4(Integer) : List<Produtoslevel4>
proCod: int
proCodPreco: int
Produtoslevel4PK()
Produtoslevel4PK(int, int)
getProCod() : int
setProCod(int) : void
getProCodPreco() : int
setProCodPreco(int) : void
hashCode() : int
equals(Object) : boolean
toString() : String
produtolevel4FaceBean
Produtoslev el4Ws
-
produtolevel4FaceBean: Produtoslevel4FacadeRemote
listarProdutoslevel4(Integer) : List<Produtoslevel4>
75
Pedv endas
#
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Pedvendas()
Pedvendas(PedvendasPK)
Pedvendas(short, int)
getPedvendasPK() : PedvendasPK
setPedvendasPK(PedvendasPK) : void
getPvdDatEmi() : Date
setPvdDatEmi(Date) : void
getPvdT raCod() : Integer
setPvdTraCod(Integer) : void
getPvdVenCod() : Integer
setPvdVenCod(Integer) : void
getPvdObs() : String
setPvdObs(String) : void
getPvdSituacao() : Short
setPvdSituacao(Short) : void
getPvdPagCod() : Short
setPvdPagCod(Short) : void
hashCode() : int
equals(Object) : boolean
toString() : String
PedvendasFacadeLocal
Pedv endasFacade
-
em: EntityManager
+
+
interface
PedvendasFacadeRemote
+
+
Serializable
-pedvendas
Pedv endasPK
#pedvendasPK +
+
+
+
+
+
+
+
+
pvdFilCod: short
pvdNumero: int
Pedv endasWs
PedvendasPK()
PedvendasPK(short, int)
getPvdFilCod() : short
setPvdFilCod(short) : void
getPvdNumero() : int
setPvdNumero(int) : void
hashCode() : int
equals(Object) : boolean
toString() : String
pedvendas: PedvendasFacadeRemote
+
+
#
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Pedvendaslevel1()
Pedvendaslevel1(Pedvendaslevel1PK)
Pedvendaslevel1(short, int, int)
getPedvendaslevel1PK() : Pedvendaslevel1PK
setPedvendaslevel1PK(Pedvendaslevel1PK) : void
getPvdProBar() : Long
setPvdProBar(Long) : void
getPvdProCod() : Integer
setPvdProCod(Integer) : void
getPvdProNom() : String
setPvdProNom(String) : void
getPvdProUnd() : String
setPvdProUnd(String) : void
getPvdProQtd() : double
setPvdProQtd(double) : void
getPvdProQtdDev() : double
setPvdProQtdDev(double) : void
getPvdProVlr() : double
setPvdProVlr(double) : void
getPvdProPesBrt() : double
setPvdProPesBrt(double) : void
getPvdProPesLiq() : double
setPvdProPesLiq(double) : void
getPvdProMovFilCod() : Short
setPvdProMovFilCod(Short) : void
hashCode() : int
equals(Object) : boolean
toString() : String
interface
Pedvendaslevel1FacadeLocal
-
em: EntityManager
interface
Pedvendaslevel1FacadeRemote
+
pedvendaslevel1
Pedv endaslev el1Ws
-
pedvendaslevel1: Pedvendaslevel1FacadeRemote
pvdFilCod: short
pvdNumero: int
pvdIteSeq: int
Pedvendaslevel1PK()
Pedvendaslevel1PK(short, int, int)
getPvdFilCod() : short
setPvdFilCod(short) : void
getPvdNumero() : int
setPvdNumero(int) : void
getPvdIteSeq() : int
setPvdIteSeq(int) : void
hashCode() : int
equals(Object) : boolean
toString() : String
76
MIDlet
CommandListener
GesMobile
+
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
initialize() : void
startMIDlet() : void
resumeMIDlet() : void
exitMIDlet() : void
startApp() : void
pauseApp() : void
destroyApp(boolean) : void
listarPedidoItem() : void
limparPedido() : void
openRs() : void
deleteRs() : void
listClienteAction() : void
listFormaAction() : void
listProdutoAction() : void
listRsPedidoItemAction() : void
Thread
GesMobile::
ConectionThreadLogin
+
run() : void
Thread
GesMobile::
ConectionThreadTransacionadores
+
run() : void
Thread
GesMobile::
ConectionThreadFormas
+
run() : void
Thread
GesMobile::
ConectionThreadProduto
+
run() : void
Thread
GesMobile::
ConectionThreadProdutolev el4
+
run() : void
Thread
GesMobile::
ConectionThreadFinalizarPedido
+
run() : void