Professional Documents
Culture Documents
Ministrio da Educao
Universidade Catlica de Angola
Contedo
Agradecimentos ............................................................................................................................ 4
Resumo.......................................................................................................................................... 5
Siglas Resumo de alguns elementos utilizados .......................................................................... 6
Introduo..................................................................................................................................... 7
1 - Enquadramento ....................................................................................................................... 7
2 - Objetivos .................................................................................................................................. 7
2.1 - Objetivos Gerais ................................................................................................................ 7
2.2 - Objetivos Especficos......................................................................................................... 8
3-Especificao.............................................................................................................................. 8
4 - Requisitos do Sistema .............................................................................................................. 9
4.1 Requisitos Funcionais ........................................................................................................... 9
4.2 Requisitos no Funcionais ................................................................................................ 9
5 Ferramentas ............................................................................................................................ 9
5.1 - Linguagem de Programao.............................................................................................. 9
5.2 - Linguagem de Modelao ................................................................................................. 9
5.3 - Plataforma....................................................................................................................... 10
5. 4- Framework ...................................................................................................................... 10
5.5 - APIs.................................................................................................................................. 10
5.6- Servidores ........................................................................................................................ 10
6 - Arquitetura do Sistema .......................................................................................................... 10
6.1 Diagram de Casos de Uso ............................................................................................... 10
6.2 Diagrama de Classes....................................................................................................... 11
7- Implementao ....................................................................................................................... 11
7.1 Home Page Administrador ............................................................................................. 11
7.2 Gerir Utilizador ............................................................................................................... 12
8 - Camada das regras de negcio .............................................................................................. 13
8.1 Utilizador Servlet ........................................................................................................... 13
8.2 Entidade cadastrarUtilizador.jsp .................................................................................... 14
8.3 Entidade listarUtilizador.jsp ............................................................................................... 16
8.3 Class Utilizadador.java.................................................................................................... 16
8.4 Class ContaFacadeLocal.java .......................................................................................... 18
8.5 Modelo Utilizador.java ................................................................................................... 19
9 Camada de Persistncia ........................................................................................................ 23
9.1 Diagrama da Base de Dados........................................................................................... 23
10 Concluses........................................................................................................................... 24
11-Extenses ............................................................................................................................... 25
Agradecimentos
Agradeo a todos aqueles que me acompanharam durante toda esta
caminhada. Ao professor da cadeira e aos amigos de estudo. Agradeo,
tambm aos meus orientadores, Bruno Banguela, Herbert Neto, Paulo
Mbunga, Francisco Sebastio e demais colegas pelas sugestes e
contribuies que ajudaram no enriquecimento deste trabalho, por fornecer os
equipamentos e tecnologias indispensveis na realizao deste trabalho. E por
fim, agradeo a meus familiares pelo apoio nesta importante fase de minha
vida.
Ao engenheiro Felisberto Delgado pela pacincia na orientao incentivo
q tornaram possvel concluso deste Projecto.
Resumo
Projeto realizado no mbito da cadeira de Sistemas Distribudos e Paralelos II e tem por
objectivo dar o processo no seu todo realizado e as diferentes fases do seu
desenvolvimento.
O principal fato a criao de uma interface grfica com o utilizador, para a principal
operao que a empresa denominada Mawonso realiza em Leiles Online.
O documento constitudo por treze captulos nos quais se apresenta o trabalho
realizado no decorrer do semestre.
Com os diversos requisitos apresentados, para a concepo do mesmo, porm tomei a
iniciativa de transforma-los em vrios mdulos que so: Utilizadores, Gesto
Administrativa (Cadastro Clientes, Utilizador, Artigo, Tabelas dos endereos).
Mas apraz-me dizer que neste documento ser detalhado com maior preciso o
principal objectivo da empresa, que o sorteio do leilo, desde a fase de lances at o
sorteio do vencedor
Introduo
O mundo Online abriu as portas para diversos tipos de novos negcios, e alguns deles
possuem todas as suas bases de funcionamento dentro de ambientes digitais. So
leiles, E-commerce, ERP's, Imobilirias, Sistemas de Reservas para Hotis e Pousadas,
Jogos, entre tantos outros...
A Mawonso vem se especializando em algumas destas plataformas, a fim de poder
oferecer solues ainda mais completas, para beneficiar a sua empresa com ganhos em
produtividade e customizao de processos.
1 - Enquadramento
O sistema de leilo online da Mawonso, possui uma plataforma completa para realizar
leiles online, com lances prvios.
Conta com cadastro de clientes, que aps aprovados, podem dar lances nos lotes, com
notificaes em tempo real a cada lance superado. Nos lotes os clientes podem conferir
fotos, e detalhes. Na parte administrativa h mdulos para administrar os leiles, lotes,
usurios, lances, relatrios entre outros.
O site de leiles tambm contempla um sistema de administrao, com acesso restrito
para os administradores do site, com cadastros (para inserir, editar e excluir leiles),
relatrios de lances, cadastro de lotes (com possibilidades de inserir diversas
imagens/fotos, regras de lances), controle de cadastro de clientes e lances.
preciso deixar claro que o leilo virtual no a mesma coisa que um leilo tradicional.
um novo conceito de leilo que possibilita aos consumidores adquirir produtos dos
mais variados, a preos muito baixos, sendo que, em alguns casos com at 99% de
desconto.
2 - Objetivos
2.1 - Objetivos Gerais
Caracterizam-se como objetivos do presente trabalho, o desenvolvimento de um
sistema de leilo voltado para internet, que implemente os conceitos de multicamadas,
utilizando a tecnologia Java Server Pages. Os objetivos especficos do trabalho so:
a) Desenvolver o sistema de leilo voltado para empresas industriais;
b) Definir as vantagens e a viabilidade de utilizar Java Server Pages no desenvolvimento
de sistemas para internet;
Miguel Sungue Copyright@2016 UCAN
3-Especificao
Para a especificao do sistema, optou-se pela anlise orientada a objetos, utilizando a
linguagem UML (Unified Modeling Language), sugerida por Fowler (2000) para a
implementao de sistemas utilizando linguagens orientadas a objetos.
A UML aborda conceitos fundamentais da orientao a objeto, buscando efetuar um
casamento entre mtodo e utilizao prtica, para cobrir o ciclo de vida de
desenvolvimento.
O modo para descrever os vrios aspectos de modelagem pela UML atravs da notao
definida pelos seus vrios tipos de diagramas. Um diagrama uma apresentao grfica
de uma coleo de elementos de modelo, frequentemente conectados por arcos e
vrtices (outros elementos do modelo).
Segue abaixo, os diagramas que sero utilizados para a especificao do sistema:
a) Diagrama de casos de uso;
b) Diagrama de classes.
Para a construo dos diagramas foi utilizada a ferramenta Astah Professional, seguindo
os padres de modelagem desta ferramenta.
4 - Requisitos do Sistema
4.1 Requisitos Funcionais
Aps um forte na viabilidade de implementao do sistema, cheguei a concluso de
ser preciso avaliar os seguintes requisitos:
5 Ferramentas
NetBeans 7.4
Astah Professional
Java
UML
5.3 - Plataforma
Java EE 6
5. 4- Framework
JSP
5.5 - APIs
JDK 1.7
EJBs
5.6- Servidores
Glassfish 4.0
6 - Arquitetura do Sistema
6.1 Diagram de Casos de Uso
Diagramas de caso de uso fornecem um modo de descrever a viso externa do sistema
e suas interaes com o mundo exterior, representando uma viso de alto nvel de
funcionalidade intencional mediante o recebimento de um tipo de requisio do
usurio.
A figura abaixo demonstra claramente as interaes do sistema com o mundo exterior,
delimitando os personagens e funes do sistema. O anunciante ou compradora poder
efetuar o cadastro no sistema. O anunciante ir anunciar os seus produtos e efetivar ou
fechar a negociao sobre a maior proposta do comprador. O comprador poder
consultar os anncios e efetuar propostas sobre os mesmos.
10
7- Implementao
Nesta etapa desenvolvido o sistema de leilo propriamente dito, onde so descritas as
tcnicas e ferramentas utilizadas para implementao segundo os objetivos propostos.
Alm deste apresentado um estudo de caso, mostrando as funcionalidades do sistema
do ponto de vista do usurio.
11
Descrio
Gerir Utilizador
Cadastrar
Alterar
Eliminar
Listar
12
13
conta.setUsername(request.getParameter("txtusername"));
conta.setSenha(request.getParameter("txtsenha"));
conta.setEmail(request.getParameter("txtemail"));
conta.setAcesso(1);
pessoa2=pessoaFacade.consultarUltimaPessoa();
if(pessoa2!=null){
conta.setIdpessoa(pessoa2);
contaFacade.create(conta);
request.setAttribute("resultado", "Cadastrado com sucesso");
request.getRequestDispatcher("/inserirUtilizador.jsp").forward(request, response);
}
else{
request.setAttribute("resultado", "Erro ao cadastrar");
request.getRequestDispatcher("/inserirUtilizador.jsp").forward(request, response);
}
}
}
14
</section>
</div>
</td>
<td>
<div class="container">
<section class="register">
<h3>Dados Conta</h3>
<div class="reg_section personal_info">
<input value="" id="txtusername" name="txtusername" type="text"
placeholder="username" required="true" autofocus="">
<input value="" id="txtsenha" name="txtsenha" type="password"
placeholder="senha" required="true" autofocus="">
<input value="" id="txtsenha2" name="txtsenha2" type="password"
placeholder="repetir senha" required="true" autofocus="">
<input value="" id="txtemail" name="txtemail" type="text"
placeholder="Email" required="true" autofocus="">
</div>
</section>
</div>
<p class="submit" style="float: left"><input type="submit" name="clear"
value="Limpar" onclick="clearForm(this.form);"/></p>
15
</td>
</tr>
</table>
</fieldset>
</form>
16
17
18
19
20
21
@Override
public int hashCode() {
int hash = 0;
hash += (idconta != null ? idconta.hashCode() : 0);
return hash;
}
@Override
public boolean equals(Object object) {
// TODO: Warning - this method won't work in the case the id fields are not set
if (!(object instanceof Conta)) {
return false;
}
Conta other = (Conta) object;
if ((this.idconta == null && other.idconta != null) || (this.idconta != null &&
!this.idconta.equals(other.idconta))) {
return false;
}
return true;
}
@Override
public String toString() {
return "com.ucan.entidades.Conta[ idconta=" + idconta + " ]";
}
}
22
9 Camada de Persistncia
9.1 Diagrama da Base de Dados
Apresento a imagem que compe o referido diagrama:
23
10 Concluses
Com a disseminao do uso da internet nos ltimos anos, a arquitetura multicamadas
tem-se tornado uma arquitetura bastante utilizada visando atender as necessidades de
sistemas de informaes requeridos pelas empresas para buscar atender seus objetivos
e a satisfao de seus clientes. O objetivo principal deste trabalho foi alcanado atravs
da implementao de um sistema de leilo voltado para a internet.
Com o desenvolvimento do presente trabalho observou-se que a arquitetura
multicamadas oferece vantagens significativas sobre as demais arquiteturas de software
existentes no mercado.
Porm, com estudo e implementao da arquitetura multicamadas atravs da
tecnologia Java Server Pages, algumas dificuldades foram encontradas devido a
quantidade de tecnologias que so envolvidas no desenvolvimento de um sistema para
internet, sendo necessrio estudar cada uma delas para a correta implementao do
sistema. Neste trabalho, foi utilizado tecnologias para criao das telas (HTML,
JavaScript e JSP), tecnologias para encapsular as regras de negcios (JavaBeans),
linguagens para trabalhar com banco de dados como o SQL (Structured Query Language)
alm de ferramentas para desenvolvimento, servidor de aplicao e sistema
gerenciador de banco de dados.
Mesmo com um grande nmero de recursos e ferramentas envolvidas, a tecnologia
JavaServer Pages se mostrou uma excelente soluo para desenvolvimentos de sistemas
para a internet, destacando os seguintes pontos:
a) JavaServer Pages tem suporte a rpida construo e manuteno das aplicaes,
pela implementao da arquitetura multicamadas, atravs da construo de
componentes reutilizveis e pela clara separao da lgica de apresentao da
lgica de negcios;
b) JSP no est vinculado a um fabricante. Qualquer camada de uma aplicao JSP
tem suporte a vrias tecnologias existentes no mercado:
Camada de apresentao, pode ser construda atravs de HTML (Hyper Text
Markup Language), JavaScript, XML (Extended Markup Language) bem como
executar em navegadores como Internet Explorer, Netscape sob vrios sistemas
operacionais como Windows, Linux, Mac, dentre outros;
A camada de regras de negcio implementada atravs de JavaBeans que so
suportados por vrios servidores de aplicao existentes no mercado;
Na camada de acesso aos dados, Java Server Pages tem suporte a uma srie de
bancos de dados atravs da utilizao da API de Java JDBC.
Sendo assim espero que os objetivos alcanados na realizao deste trabalho possam
conduzir elaborao de outros trabalhos na rea de sistemas distribudos e paralelos
II, conforme sugestes a seguir.
24
11-Extenses
Como sugestes para trabalhos futuros sugere-se:
a) Estudar o funcionamento dos servidores de aplicao;
b) Utilizar Java Server Pages na implementao de sistemas distribudos utilizando
o suporte de Java para Enterprise JavaBeans;
Sugere-se ainda estudos no sentido de aprofundar a investigao do conceito de
multicamadas o que diz respeito a camadas de gerncia de aplicaes distribudas,
utilizando tecnologias como Enterprise JavaBeans.
Alm das camadas de lgica do negcio, acesso a banco de dados e interface com o
usurio, pode-se propor arquiteturas mais complexas, que implementem camadas de
servios tpicos de sistemas distribudos, tais como servios de controlo de transaes,
servios de comunicao entre partes do sistema, tolerncia a falhas, dentre outras.
Tais estudos representam a evoluo deste trabalho no que diz respeito ao
aprofundamento de questes relativas a arquiteturas de sistemas distribudos.
25