Você está na página 1de 72

UNIVERSIDADE DO OESTE DE SANTA CATARINA UNOESC UNIDADE CHAPEC

MARCOS EDUARDO LUIZ

PORTAL DE COLABORAO SOCIAL: UMA NOVA FORMA DE AJUDAR

CHAPEC 2011

MARCOS EDUARDO LUIZ

Portal de colaborao social: uma nova forma de ajudar

Trabalho de Concluso de Curso apresentado ao Curso de Sistema de Informao, rea das Cincias Exatas e da Terra, da Universidade do Oeste de Santa Catarina UNOESC Unidade de Chapec como requisito parcial obteno do grau de bacharel em Sistemas de Informao.

Orientador: Cristiano Agosti.

Chapec 2011

PORTAL DE COLABORAO SOCIAL: UMA NOVA FORMA DE AJUDAR

MARCOS EDUARDO LUIZ

Este trabalho foi APROVADO pela Banca Examinadora abaixo nominada em sua forma final, para obteno ttulo de Bacharel em Sistemas de Informao pelo curso de Sistemas de Informao da Universidade do Oeste de Santa Catarina Unidade Chapec.

____________________________ Ms. Carla de Almeida Martins Basso Coordenadora de Estgio

BANCA EXAMINADORA: Ms. Cristiano Agosti Orientador e Presidente da Banca Ms. Carla de Almeida Martins Basso Membro da banca. Ms. Tiago Zonta Membro da Banca _______________________________ _______________________________ _______________________________

Chapec, 05 de julho de 2011

Dedico este trabalho a minha famlia que sempre esteve ao meu lado em todos momentos bons e ruins da minha vida.

AGRADECIMENTOS
Agradeo a minha famlia em primeiro lugar, que me ajuda e me apoia diariamente em tudo que fao na minha vida, principalmente ao meu filho Caio que com apenas seis meses de vida fez toda a diferena, mudando meu jeito de ser de pensar e de como agir na minha vida e a minha esposa Tatiana que sempre soube compreender e me ajudou nesta grande jornada. Aos meus pais, irms e sobrinhos que mesmo longe vivenciaram comigo esta etapa to importante na minha vida. A meu orientador Cristiano que me passou um pouco de seu conhecimento para eu elaborar este trabalho. Enfim agradeo a todos aqueles que me apoiaram no desenvolvimento deste projeto e claro a Deus por sempre estar presente em minha vida.

RESUMO
O trabalho consiste no desenvolvimento de um portal de colaborao onde organizaes no governamentais ONGs e projetos sociais de empresas privadas ou associaes comunitrias, realizem anncios de suas necessidades, materiais ou humanas. Com isso pessoas que dispuserem destes recursos tero a oportunidade de contribuir. O portal se encarrega de juntar quem precisa de ajuda com quem quer ajudar de acordo com critrios de localizao geogrfica das pessoas e instituies, dando a oportunidade para que estas organizaes que no possuem recursos divulguem suas necessidades sem nenhum custo, colocando mais prxima da populao com confiabilidade, acessibilidade e objetividade. O portal desenvolvido utilizando a linguagem de programao Java com o framework Java Server Faces JSF na sua verso 2.0. Palavras chaves: Colaborao, Solidariedade, Internet, Java.

ABSTRACT
The work consists of developing a collaboration portal where non-governmental organizations NGOs and social projects of private companies or community associations, performing ads on your needs, material or human. This person will have these resources available to them the opportunity to contribute. The portal takes care of joining those who need help with those who want to help according to criteria of geographical location of people and institutions, giving the opportunity for these organizations lack the resources to disclose their needs at no cost, putting the nearest population reliability, accessibility and objectivity. The portal is developed using the Java programming language with Java Server Faces JSF framework in its version 2.0. Keywords: Collaboration, Solidarity, Internet, Java.

LISTA DE ILUSTRAES
Figura 1: Fluxo geral de operao.............................................................................. 24 Figura 2: Logar Usurio...............................................................................................31 Figura 3: Manter necessidades e doaes................................................................. 32 Figura 4: Manter projetos............................................................................................ 34 Figura 5: Manter categorias........................................................................................ 35 Figura 6: Pessoas que posso ajudar ou poem de ajudar...........................................36 Figura 7: Realizar doao........................................................................................... 37 Figura 8: Solicitar ajuda...............................................................................................38 Figura 9: Diagrama de classes....................................................................................40 Figura 10: Modelo de entidade relacional................................................................... 42 Figura 11: Pgina inicial portal social.......................................................................... 43 Figura 12: Funes disponveis no portal social......................................................... 44 Figura 13: Editar perfil................................................................................................. 45 Figura 14: Registrar doaes...................................................................................... 46 Figura 15: Registrar necessidades..............................................................................46 Figura 16: Registrar projetos.......................................................................................47 Figura 17: Necessidades pendentes...........................................................................48 Figura 18: Doaes pendentes................................................................................... 48 Figura 19: Pessoas que posso ajudar.........................................................................49 Figura 20: Pessoas que podem me ajudar................................................................. 49 Figura 21: Buscar projetos.......................................................................................... 50 Figura 22: Buscar pessoas..........................................................................................50 Figura 23: Manuteno de pessoas............................................................................ 51 Figura 24: Manuteno de doaes............................................................................52 Figura 25: Manuteno necessidades........................................................................ 53 Figura 26: Manuteno de categorias.........................................................................54 Figura 27: Classificar pessoa...................................................................................... 54 Figura 28: Estrutura de pastas.................................................................................... 55 Figura 29: Complexidade da senha cadastro portal................................................... 58 Figura 30: Auto-complete cidade.................................................................................58

9 Figura 31: Erro de login............................................................................................... 60 Figura 32: Arquitetura Hibernate................................................................................. 60 Figura 33: Modelo ER estado e cidade.......................................................................63

LISTA DE TABELAS
Tabela 1: Uso de redes sociais................................................................................... 19 Tabela 2: Tabela de requisitos funcionais................................................................... 29 Tabela 3: Tabela de requisitos no funcionais............................................................ 30 Tabela 4: Dialetos SQL do Hibernate.......................................................................... 61

LISTA DE QUADROS
Quadro 1: Mtodo listaCidades da classe AcessoControle........................................ 59 Quadro 2: Classe ConverterCidade............................................................................ 59 Quadro 3: Classe Cidade............................................................................................ 62 Quadro 4: Mtodos Classe AcessoControle............................................................... 64 Quadro 5: Configurao do arquivo faces-config.xml.................................................65 Quadro 6: Parte do arquivo mensagens.properties.................................................... 66 Quadro 7: Exemplo de utilizao ResourceBundle....................................................66

12

LISTA DE ABREVIATURAS E SIGLAS


APACHE ER EJB JPA JSF JSR MVC O/R ONG POJO SQL TAG XHTML WWF Associao de Proteo de Animais de Chapec e Regio Oeste Entidade Relacional Enterprise JavaBeans Java Persistence API Java Server Faces Java Specification Request Model View Control Objeto Relacional Organizaes no governamentais Plain Old Java Objetcs Structured Query Language Linguagens de marcao Extensible HyperText Markup Language World Wildlife Fund

13

SUMRIO
1 INTRODUO......................................................................................................... 15 1.1 DELIMITAO DO TEMA DA PESQUISA............................................................15 1.2 PROBLEMA E JUSTIFICATIVA DE PESQUISA................................................... 15 1.3 OBJETIVOS.......................................................................................................... 17 1.3.1 Objetivos gerais..................................................................................................17 1.3.2 Objetivos especficos......................................................................................... 17 2 REVISO DE LITERATURA................................................................................... 18 2.1 MODELOS DE DESENVOLVIMENTO..................................................................20 3 REA DE ESTUDO................................................................................................. 22 4 MTODOS................................................................................................................23 4.1 DELIMITAO DO ESTUDO, MTODOS E TCNICAS.....................................25 4.2 CARACTERIZAO DO ESTUDO.......................................................................26 4.3 DEFINIO ACERCA DA POPULAO E DA AMOSTRA..................................26 4.4 TCNICA DE ANLISE E INTERPRETAO DOS DADOS...............................27 4.5 QUESTES DE PESQUISA................................................................................. 27 5 TECNOLOGIA E RECURSOS NECESSRIOS..................................................... 28 6 APRESENTAAO DOS RESULTADOS DA PESQUISA / ESTUDO..................... 29 6.1 REQUISITOS........................................................................................................ 29 6.1.1 Requisitos funcionais......................................................................................... 29 6.1.2 Requisitos no funcionais.................................................................................. 30 6.2 CASOS DE USO................................................................................................... 31 6.2.1 Logar usurio......................................................................................................31 6.2.1.1 Detalhamento do caso de uso........................................................................ 31 6.2.2 Validar Login.......................................................................................................32 6.2.3 Registrar necessidades ou doaes.................................................................. 32 6.2.3.1 Detalhamento do caso de uso........................................................................ 32 6.2.4 Manter projetos...................................................................................................34 6.2.4.1 Detalhamento do caso de uso........................................................................ 34 6.2.5 Manter categorias...............................................................................................35 6.2.5.1 Detalhamento do caso de uso........................................................................ 35 6.2.6 Pessoas que podem me ajudar ou que eu posso ajudar..................................36

14 6.2.6.1 Detalhamento do caso de uso........................................................................ 36 6.2.7 Realizar doao..................................................................................................37 6.2.7.1 Detalhamento do caso de uso........................................................................ 37 6.2.8 Solicitar ajuda..................................................................................................... 38 6.2.8.1 Detalhamento do caso de uso........................................................................ 38 6.3 DIAGRAMA DE CLASSES....................................................................................39 6.4 MODELAGEM DE DADOS................................................................................... 41 6.5 PORTAL DE COLABORAO SOCIAL............................................................... 43 6.6 RESULTADO DA PESQUISA................................................................................55 6.7 ESTRUTURA DO PROJETO ............................................................................... 55 6.7.1Camada de apresentao................................................................................... 57 6.7.1.1Componentes de interface............................................................................... 58 6.7.2 Camada de persistncia.....................................................................................60 6.7.2.1 Hibernate Annotations..................................................................................... 61 6.7.3 Camada de negcio........................................................................................... 63 6.8 INTERNACIONALIZAO....................................................................................65 7 CONSIDERAES FINAIS.....................................................................................67 REFERNCIAS...........................................................................................................68

15

1
1.1

INTRODUO
DELIMITAO DO TEMA DA PESQUISA O portal de colaborao social visa juntar pessoas dispostas a ajudar com

pessoas que necessitam de ajuda, criando assim um canal aberto para que sejam anunciadas as necessidades materiais ou profissionais dentro de organizaes e projetos sociais. O portal foi desenvolvido com a tecnologia Java 6 utilizando o Framework para desenvolvimento web JSF 2.0, servidor web GlassFish 3.0, banco de dados MYSQL 5.1 e com suporte a internacionalizao. 1.2 PROBLEMA E JUSTIFICATIVA DE PESQUISA Quase todas as pessoas tem algo para doar, porm existe uma dificuldade para achar pessoas que queiram receber estas doaes, e quando localizam, geralmente por indicao de algum conhecido, no tem a certeza que o que est sendo doando realmente ser usado. Como estas doaes so realizadas baseadas na indicao de algum familiar ou amigo fica restringida a rea de colaborao. A motivao deste projeto desenvolver uma ferramenta que auxilia as pessoas a dar um destino social para aqueles objetos que seriam entregues a um destino incerto ou mesmo jogados no lixo, colocar a disposio uma ferramenta que possibilite que ONGs e projetos sociais tenham seus nomes na internet sem a necessidade de nenhum investimento e que pessoas que no possuam bens materiais mas fora de vontade e motivao para ajudar o prximo disponibilizem sua mo de obra. Esta aproximao entre as pessoas e as organizaes benfica j que as prprias pessoas que ajudarem podero classificar as instituies, contribuindo para a divulgao de seu trabalho. A internet uma ferramenta maravilhosa que pode ser melhor explorada para colaborao social. Motivado pela carncia de ferramentas especficas que auxiliem pessoas que querem ajudar mas no sabem onde e como procurar. O portal de colaborao social dar esta alternativa para que seus usurios possam procurar instituies e

16 verificar comentrios de outros que j ajudaram ou foram ajudados por esta instituio, seria como se vrias amigos estivem dizendo que ajudar est organizao ou contribuir com este projeto vale ou no vale a pena.

17 1.3 1.3.1 OBJETIVOS Objetivos gerais Desenvolver o portal de colaborao social. 1.3.2 Objetivos especficos - Definir ONG's e projetos sociais. - Desenvolver a aplicao com suporte a internacionalizao. - Possibilitar a interao entre usurios e empresas. - Pesquisar os frameworks de desenvolvimento, JSF 2.0, Hibernate e JPA. - Verificar como seria a aceitao das pessoas com relao a realizar doaes e divulgaes de necessidades atravs da internet.

18

REVISO DE LITERATURA
O trabalho tem como base realizar a divulgao e colaborao entre pessoas,

ONGs e projetos sociais. Segundo Menescal (1996, .p. 21-38) provindo da denominao em ingls Non-Governmental Organizations (NGO), o termo ONG tem sua origem nas Naes Unidas, onde foi pela primeira vez utilizado como referncia a organizaes supranacionais e internacionais. Na resoluo 288 (X), de 1950, do Conselho Econmico e Social, ONG foi definida no mbito das Naes Unidas como sendo uma organizao internacional a qual no foi estabelecida por acordos governamentais. Existem organizaes que j utilizam a internet para receber doaes como por exemplo a World Wildlife Fund WWF, que a maior rede independente de conservao da natureza, com atuao em mais de 100 pases e est apoiada por cerca de 5 milhes de pessoas, incluindo associados e voluntrios, com explica WWF(2010). Projetos sociais diferentemente de ONGs no so empresas constitudas, so aes individuais, empresarias ou de um grupo de pessoas que visam colaborar para soluo de problemas concretos. Segundo definio da ONU:
[...]um projeto um empreendimento planejado que consiste num conjunto de atividades inter-relaciona- das e coordenadas para alcanar objetivos especficos dentro dos limites de um oramento e de um perodo de tempo dados. (apud COHEN; FRANCO, 1998, p. 85).

Na elaborao de um projeto necessrio deixar claro as solues que sero adotadas e as aes que sero tomadas, ou seja, os projetos:
[...] so empreendimentos finitos que tm objetivos claramente definidos em funo de um problema, oportunidade ou interesse de uma pessoa, grupo ou organizao (MAXIMINIANO, 1997, p. 20).

So exemplos de projetos o Criana Esperana, Amigos da escola e Ao Global que so financiados pela Rede Globo. Ser necessrio realizar um trabalho de captao de instituies por regio para criar um catlogo que possibilite uma busca gil por suas necessidades, tendo

19 como nica tarefa para as organizaes ou responsveis pelos projetos, colocarem informaes relevantes e anncios, para que eles fiquem disponveis na internet e ao alcance de todos. Com a popularizao da internet, muitas formas de comunicao e interao social foram criadas para que pessoas das mais distintas localidades pudessem se comunicar e compartilhar experincias de forma mais rpida e descontrada, desta necessidade surgiram as redes sociais, como ORKUT, FACEBOOK ou at o micro blog TWITTER que so ferramentas que possibilitam o compartilhamento de informaes de forma rpida e com um enorme grau de abrangncia. com este pensamento que o portal de colaborao social ir compartilhar as necessidades sociais de forma eficiente, se valer do grande crescimento na utilizao destes canais de comunicao on-line, segundo o blog NIELSEN em seu artigo Social Networks/Blogs Now Account for One in Every Four and a Half Minutes Online, 86% dos usurios ativos de Internet no Brasil acessaram redes sociais conforme demonstrado na Tabela 1.
Tabela 1: Uso de redes sociais

Pesquisa e busca por pas / Abril 2010(Casa & Trabalho) Rede Social / Blogs Pais % usurios ativos Tempo por pessoa (hh:mm:ss) Brasil 86% 05:03:37 Italia 78% 06:28:41 Espanha 77% 05:11:44 Japo 75% 02:50:50 EUA 74% 06:35:02 Reino Unido 74% 05:52:38 Frana 73% 04:10:27 Australia 72% 07:19:13 Alemanha 63% 04:13:05 Sua 59% 03:43:58
Fonte: Blog Nielsen (2010)

20 Se tratando da nossa regio existem bons exemplos a serem citados de iniciativas scias que colaboram com o bem estar do prximo e que poderiam receber contribuio de muitas pessoas se tivessem um meio eficiente de divulgao. O Centro de Educao Infantil Municipal Criana Esperana, no bairro So Cristvo cultiva um projeto Eu e meus amigos, onde crianas do berrio apreendem a importncia do abrao e e carinho entre colegas e familiares. A APACHE (Associao Protetora dos Animais de Chapec e Oeste Catarinense), que ajuda animais abandonados, divulgando atravs do seu site e recebendo doaes voluntrias. A ONG Verde Vida que atende 70 adolescentes carentes em Chapec, a ONG recicla 280 toneladas de material por ms. Com o dinheiro, desenvolve 12 oficinas para adolescentes de 13 a 17 anos com renda familiar baixa. Em 15 anos de trabalho, foram mais de 800 beneficiados com Vida, 2010) Para que este projeto se torne realidade e o portal esteja na web ser necessrio utilizar as seguintes tecnologias que estaro descritas na sequncia. 2.1 MODELOS DE DESENVOLVIMENTO O portal foi desenvolvido utilizando a tecnologia Java para web com o framework JSF2.0 tecnologia que incorpora caractersticas de um framework MVC(Model-view-controller) para Web e de um modelo de interfaces grficas baseado em eventos, segundo Hemrajani(2006, p.109) O MVC um conceito simples de entender e fornece uma separao perfeita entre apresentao de dados..., ainda segundo Hemrajani(2006, p.109)
O principal beneficio dessa abordagem que o modelo pode se preocupar unicamente com os dados e no ter nenhum conhecimento da visualizao. A interface, ou viso (view), por outro lado, no tem conhecimento do modelo e da lgica do negcio e simplesmente exibe os dados passados[...].

conhecimentos de informtica,

dana, teatro, manicure e lngua estrangeira, entre outros cursos com explica (Verde

O desenvolvimento neste ambiente nos permite uma separao da interface do usurio com a lgica de programao e acesso ao banco que foi realizado

21 utilizando JPA (Java persistence API), desenvolvido pela equipe de software do EJB (Enterprise JavaBeans) 3.0 como parte do JSR 220 (Java Specification Request) esta especificao para gerenciamento de persistncia e mapeamento objeto relacional foi criada para diminuir a complexidade no desenvolvimentos de aplicaes JEE e Java SE que utilizam dados persistentes, com uma completa especificao para realizar o mapeamento objeto relacional, utilizando annotations da linguagem Java (5.0 ou superior). Devido a grande variedade de frameworks desenvolvidos e pelo fato de ser uma linguagem livre, da a possibilidade de realizar um trabalho extremamente profissional sem nenhum custo adicional envolvido na aquisio de ferramentas ou licenas. O banco de dados utilizado o MYSQL , o programa MySQL um servidor robusto de bancos de dados SQL (Structured Query Language Linguagem Estruturada para Pesquisas) muito rpido, multi-tarefa e multi-usurio, como explica Oracle (2009). O Servidor MySQL pode ser usado em sistemas de produo com alta carga e misso crtica bem como pode ser embutido em programa de uso em massa, outra tecnologia envolvida tambm o servidor de Web utilizado o GlassFish V3, o produto GlassFish Enterprise Server da Sun um servidor compatvel com a plataforma Java Enterprise Edition (Java EE) 6 para o desenvolvimento e a implementao de aplicativos Java EE e Java Web Services. O uso deste servidor na produo gratuito, assim como os citados anteriormente, o principal motivo pela escolha deste banco e deste servidor que ambos so mantido pelo SUN(Oracle), assim como a linguagem Java, possibilitando uma melhor integrao no desenvolvimento. A no utilizao de tecnologias comerciais, e sim de software livre, entra de encontro com a proposta de um portal de colaborao, j que software livre qualquer programa de computador que pode ser usado, copiado, estudado, modificado e redistribudo com algumas restries conforme explica a Free Software Foundation (2010). A liberdade de tais diretrizes central ao conceito, o qual se ope ao conceito de software proprietrio. Esta definio se enquadra perfeitamente ao objetivo do portal contribuir, ajudar e no lucrar.

22

REA DE ESTUDO
Este trabalho se destina a ONGs e projetos sociais. Segundo o SEBRAE-SP,

em definies de empresa no link denominado Qual a definio para ONG? A ONG definida como uma entidade sem fins lucrativos e que no est vinculada a nenhum rgo do governo. Essa denominao foi utilizada pela primeira vez pelo Ecosoc (Conselho Econmico e Social das Naes Unidas), em 1950. A criao de uma ONG comea com o interesse de um grupo com objetivos comuns, disposto a formar uma entidade legalizada, sem fins lucrativos., j projetos sociais so iniciativas individuais ou coletivas de pessoas ou empresas que visam colaborar com a populao, exemplos conhecidos de projetos sociais so, Criana Esperana da rede Globo ou ainda HSBC solidariedade.

23

MTODOS
O portal de colaborao se encarregar de sugerir as instituies ou

pessoas que precisem do servio ou material que o usurio est disposto a doar conforme demonstrado na figura 1 se inicia o processo de doao ou necessidade atravs de um cadastro, em seguida o portal j disponibiliza esta necessidade ou doao para que outras pessoas possam acessar, este acesso realizado atravs da funcionalidade Pessoas que posso ajudar ou ainda Pessoas que podem me ajudar. Aps acessar estas funcionalidades o portal disponibilizar ao usurio ajudar ou solicitar ajuda. Definido que a pessoa est interessada em ajudar ou solicitar a ajuda, basta que ela solicite, o portal automaticamente deixar este item pendente para que a pessoa que o cadastrou confirme a operao, o passo seguinte a pessoa que solicitou confirmar o recebimento item e por fim qualificar a pessoa que fez a doao ou solicitou a ajuda. No momento do login do usurio ser apresentado uma lista de necessidades que ele pode suprir com os materiais ou servios oferecidos por ele, a ordenao desta sugestes se dar de acordo com a classificao da instituio ou projeto social dentro do portal. Para os critrios de classificao sero utilizados comentrios positivos, negativos, quantidades de doaes recebidas e quantidade de doaes realizadas. Cada instituio poder ser cadastrada diretamente pelo portal. Um mecanismo de avaliao ser incorporado ao portal para que os prprios usurios possam avaliar as instituies ou pessoas cadastrados, desta forma aps a contribuio ser concretizada ambas as partes deveram sero avaliadas garantindo assim que seu ranking de confiabilidade seja aumentada. A classificao dentro do site far com que a instituio, projeto ou colaborador se apresentado em destaque nas pesquisas do portal. Qualquer usurio, seja ele pessoa fsica ou jurdica poder cadastrar projetos no portal porm estes projetos tambm sero auditados, usurios e instituies podero se tornar colaboradores de qualquer projeto cadastrado no portal. Esta socializao entre pessoas se encarregar de divulgar as instituies e os projetos

24 sociais.

Figura 1: Fluxo geral de operao Fonte: Autor

25 4.1 DELIMITAO DO ESTUDO, MTODOS E TCNICAS O projeto consiste no desenvolvimento do portal de colaborao social, e ser feito nas seguintes etapas: a) Elaborao do trabalho: Desenvolver documentao do projeto de estgio de acordo com as normas da universidade. b) Estudo de ONG's e projetos sociais: Conhecer como funciona e como estas organizaes buscam recursos e ajudas. c) Pesquisa Social: Verificar como seria a aceitao das pessoas com relao a realizar doaes e divulgaes de necessidades atravs da internet. d) Estudo da tecnologia: Estudar as tecnologias JSF 2.0, JPA, XHTML, Hibernate e MYSQL. e) Elaborao do escopo: Elaborar o escopo do trabalho, contendo todas as funcionalidades que sero desenvolvidas. f) Preparao da estrutura de desenvolvimento: Organizar hardware e softwares que sero utilizados no desenvolvimento do projeto, no sero necessrias aquisies j que todo material utilizado ser free. g) Levantamento especificao do requisitos: Ser realizado utilizando casos de uso e ser montada o modelo de entidade relacional da aplicao. h) Desenvolvimento do portal. i) Entrega do projeto.

26 4.2 CARACTERIZAO DO ESTUDO O estudo est baseado uma pesquisa exploratria, que permite a formulao perguntas para verificar a aceitao das ONG`s de Chapec acerca do tema Receber ou realizar doaes atravs da internet, segundo BABBIE(1986)
Exploratory studies are most typically done for three purposes: (1) simply to satisfy the re- searcher's curiosity and desirefor better understanding, (2) to test the feasibility of undertak- ing a more careful study, and (3) to develop the methods to be employed in a more careful study.

Este tipo de estudo foi selecionado j que como alm das ONG's qualquer usurio de internet poder acessar o portal difcil realizar formular hipteses precisas. Para realizao da pesquisa ser utilizado o meio experimental, utilizando o contato telefnico com as ONG, segundo KERLINGER (1980, p.125)
[...] um experimento um estudo no qual uma ou variveis independentes so manipuladas e no qual a influncia de todas ou quase todas as variveis relevantes possveis no pertinentes ao problema da investigao reduzida ao mnimo[...]

Como o escopo inicial do estudo ser a cidade de Chapec a pesquisa experimental servir posteriormente para uma comparao outras cidades do mesmo porte que Chapec. 4.3 DEFINIO ACERCA DA POPULAO E DA AMOSTRA A populao pesquisada so as ONG's existentes na cidade de Chapec, j a amostra sero as instituies cadastradas em nossa prefeitura, o tipo de amostra utilizada sero amostras intencionais, j que o nmero de instituies regulamentadas dente a ser prximo do total, segundo TANAKA;MELO(2001 p.33) [...] entrevistar, observar ou realizar um grupo focal com as pessoas que, por critrios definidos pelo avaliador, sejam capazes de transmitir as informaes que se julgam necessrias para realizar a avaliao[...]

27 4.4 TCNICA DE ANLISE E INTERPRETAO DOS DADOS A pesquisa de carcter quantitativo demonstrar em forma de tabela quantas instituies estariam dispostas a doar ou receber doaes atravs da internet, segundo RICHARDSON (1999, p.70),
[...]caracteriza-se pelo emprego de quantificao tanto nas modalidades de coleta de informaes, quanto no tratamento delas por meio de tcnicas estatsticas, desde as mais simples como percentual, mdia, desvio-padro, s mais complexas, como coeficiente de correlao, anlise de regresso etc.

O resultado ser apresentado com percentuais de adeso com base nas respostas afirmativas ou negativas. 4.5 QUESTES DE PESQUISA Foram realizadas entrevistas com as ONG's da cidade de Chapec, foi questionado se as instituies estariam dispostas a realizar ou receber atravs da internet, com este questionamento ser criado o embasamento para divulgao do portal social na cidade de Chapec.

28

TECNOLOGIA E RECURSOS NECESSRIOS


O desenvolvimento ser realizado utilizando a linguagem Java e seus

frameworks para desenvolvimento Web. Para o desenvolvimento do projeto ser necessrio dispor dos seguintes recursos tecnolgicos: - IDE para desenvolvimento Java Web: - NetBeans 6.9.1: (Oracle, 2010) - Bibliotecas das seguintes Frameworks: - Java Server Faces Core:(JSF, 2010) - Hibernate: (Hibernate, 2010) - JPA:(JPA, 2010) - Servidor de aplicao Web: - GlassFish 3.01: (GlassFish, 2010)

29

6
6.1

APRESENTAAO DOS RESULTADOS DA PESQUISA / ESTUDO REQUISITOS


Requisitos funcionais Os requisitos a seguir apresentados determinam quais a funcionalidades

6.1.1

disponveis para o usurio interagir com o portal, conforme demonstrado na tabela 2.


Tabela 2: Tabela de requisitos funcionais ID Nome 1 Logar usurio Descrio Realiza o login de usurio j cadastrados. Observao Validar se o usurio est cadastrado no portal. No permitir o cadastro de usurios 2 Cadastrar novos Permitir o cadastro de novos usurios usurios. Adicionar informaes j cadastrados, a validao ser realizada atravs do endereo de email. 3 Completar perfil Registrar 4 doaes/necessi dades 5 Classificar usurios. Far a distino entre pessoas ou Os tipos de necessidades ou Registrar o que precisa receber e o que est disposto a doar. doaes sero material ou servio, ser possvel associar esta necessidade ou doao a um projeto Classificar usurios com notas de 0-5 Livre para qualquer usurio. com relao a sua confiabilidade. Disponvel para todos os usurios, a Disponibilizar busca por: instituio, 6 Localizar projeto, necessidade, doaes e ou usurios. ordenao dos resultados se dar de acordo com a classificao do usurio responsvel pelo projeto, necessidade ou doao. Disponibilizar a insero, alterao e excluso de projetos. Disponibilizar para o usurio um espao para digitar textos, que sero mostrados no seu perfil. Projetos que j possuam doaes associadas no podero ser excludos. complementares ao perfil do usurio. instituies.

7 Manter projetos Quem estou 8 ajudando?

30 6.1.2

Requisitos no funcionais
Os requisitos a seguir apresentados determinam quais requisitos de

operacionais do portal, conforme demonstrado na tabela 3.


Tabela 3: Tabela de requisitos no funcionais ID Nome 9 Ocultar senhas Descrio Ocultar da interface caracteres informados em campos que recebero senhas. 10 Suporte aos browsers. Dar suporte aos browsers FireFox 3.6.12, Google Chrome 7.0.517.44 e IE9. A pagina no deve perder suas 11 Resoluo propriedades de acordo com a resoluo do monitor do usurio. Resoluo menores que que 1024768, no tero suporte. Observao Informar ao usurio cual o grau de complexidade da senha informada.

31 6.2 6.2.1 CASOS DE USO Logar usurio Realizar a autenticao usurio ao se conectar no portal, apenas usurios cadastrados podero podero fazer logon no portal. Diagrama do caso de uso demostrado na figura 2.

Figura 2: Logar Usurio Fonte: Autor

6.2.1.1

Detalhamento do caso de uso

Atores: Usurio, Portal. Pr-condio: Estar na pagina inicial do portal e possuir um usurio cadastrado. Ps-condio: Logon efetuado com sucesso, Logon negado(A1,A2 e A3) Fluxo principal: 1. Usurio informa usurio e senha. 2. Usurio confirma operao. (A1)(A2)(A3) 3. Pgina inicial do perfil do usurio carregada. Fluxo alternativo A1: E-mail ou senha invlido. 4. Portal informa ao usurio que usurio ou senha esto erradas. Fluxo alternativo A2: Usurio no cadastrado

32 5. Portal informa ao usurio que usurio ou senha esto erradas. Fluxo alternativo A3: E-mail informado j cadastrado. 6. Portal informa ao usurio que usurio ou senha esto erradas.

6.2.2

Validar Login Realizar a validao do login e senha do usurio, deve retornar verdadeiro

quando os valores conferirem e falso quando existir alguma divergncia entre eles. 6.2.3 Registrar necessidades ou doaes Realizar o cadastro de necessidades ou doaes que estaro disponveis no portal. Diagrama do caso de uso demostrado na figura 3.

Figura 3: Manter necessidades e doaes Fonte: Autor

6.2.3.1

Detalhamento do caso de uso

Atores: Usurio, Portal. Pr-condio: Estar logado no porta (Caso de uso Logar usurio). Ps-condio: Necessidade ou doao registrada no porta. Fluxo principal: 1. Usurio selecionar registrar necessidades (A1). 2. Usurio seleciona o tipo material. (A2)

33 3. Usurio seleciona uma categoria. 4. Usurio informa de forma descritiva. 5. Usurio informa a quantidade. 6. Usurio associa a um projeto (caso de uso manter projetos). 7. Usurio salva as informaes. 8. Portal atualiza a lista de necessidades. Fluxo alternativo A1: Registrar doaes. 9. Usurio informa de forma descritiva o material que deseja prestar. (A3) 10. Retorna ao passo 2 do fluxo principal. Fluxo alternativo A2: Tipo de doao servio. 11. Usurio informa de forma descritiva o servio que deseja prestar. 12. Retorna ao passo 5 do fluxo principal.

34 6.2.4 Manter projetos Realizar incluso excluso e alterao de projetos sociais. Diagrama de caso de uso demostrado na figura 4.

Figura 4: Manter projetos Fonte: Autor

6.2.4.1

Detalhamento do caso de uso

Atores: Usurio, Portal. Pr-condio: Estar logado no porta (Caso de uso Logar usurio). Ps-condio: Projeto registrado no portal. Fluxo principal: 1. Usurio selecionar registrar projetos. 2. Usurio seleciona o tipo pessoal. (A1) 3. Usurio informa de forma descritiva. 4. Usurio informa a data de inicio de projeto. 5. Usurio informa a data de termino do projeto. 6. Usurio seleciona uma imagem. 7. Portal atualiza a lista de projetos. Fluxo alternativo A1: Tipo empresarial. 8. Retorna ao passo 3 do fluxo principal.

35 Exceo E1: Excluso de projetos. 9. Projetos j associados a necessidades ou doaes no podem ser excludos. Exceo E2: Alterao de projetos. 10. Projetos j associados ou no podem ser alterados. 6.2.5 Manter categorias Realizar o cadastro das categorias disponveis para associao a

necessidades e doaes cadastradas no portal. Diagrama de caso de uso demonstrado na figura 5.

Figura 5: Manter categorias Fonte: Autor

6.2.5.1

Detalhamento do caso de uso

Atores: Usurio, Portal. Pr-condio: Estar logado no porta (Caso de uso Logar usurio). Ps-condio: Cadastro de categoria realizado. Fluxo principal: 1. Usurio selecionar registrar categorias. 2. Usurio seleciona o tipo servio. (A1) 3. Usurio informa de forma descritiva. 4. Portal atualiza a lista de categorias. Fluxo alternativo A1: Tipo material. 5. Retorna ao passo 3 do fluxo principal. Exceo E1: Restrio do cadastro. 6. Apenas administradores tero acesso a este caso de uso.

36 6.2.6 Pessoas que podem me ajudar ou que eu posso ajudar Realiza a sugesto de pessoas que podem me ajudar ou que eu posso ajudar. Diagrama de sequencia demonstrado na figura 6.

Figura 6: Pessoas que posso ajudar ou poem de ajudar Fonte: Autor

6.2.6.1

Detalhamento do caso de uso

Atores: Usurio, Portal. Pr-condio: Estar logado no porta (Caso de uso Logar usurio) e possuir necessidade ou doaes registradas no portal. Ps-condio: Apresentar necessidades ou doaes disponveis Fluxo principal: 1. Usurio solicita sugestes de pessoas que ele pode ajudar. (A1) 2. Postal realiza uma busca na base de dados com base nas categorias que possuem afinidade. 3. Portal apresenta sugestes em tela para o usurio. Fluxo alternativo A1: Pessoas que eu posso ajudar. 4. Retorna ao passo 2 do fluxo principal.

37 6.2.7 Realizar doao. Realiza doaes para pessoas que precisam de alguma das doaes disponibilizadas pela pessoa. Diagrama de sequencia demonstrado na figura 7.

Figura 7: Realizar doao Fonte: Autor

6.2.7.1

Detalhamento do caso de uso

Atores: Usurio, Portal. Pr-condio: Estar logado no porta (Caso de uso Logar usurio), possuir doaes registradas no portal e ter buscado pessoas que voc pode ajudar. Ps-condio: Doao realizada. Fluxo principal: 1. Usurio seleciona o item que deseja doar. 2. Usurio informa a quantidade. 3. Usurio confirma a doao. 4. Portal realiza a baixa do item e quantidade selecionadas. Exceo E1: Doar quantidade superior. 5. O portal no faz restrio com relao quantidade doada, ficando assim a critrio do usurio informar a quantidade.

38 6.2.8 Solicitar ajuda Solicita ajuda para pessoas que tenham alguma doao disponvel. Diagrama de sequencia demonstrado na figura 8.

Figura 8: Solicitar ajuda Fonte: Autor

6.2.8.1

Detalhamento do caso de uso

Atores: Usurio, Portal. Pr-condio: Estar logado no porta (Caso de uso Logar usurio), possuir necessidade registradas no portal e ter buscado pessoas que podem te ajudar. Ps-condio: Ajuda solicitada. Fluxo principal: 1. Usurio seleciona o item que solicitar. 2. Usurio informa a quantidade. 3. Usurio confirma solicitao. 4. Portal realiza a baixa do item e quantidade selecionadas. Exceo E1: Solicitar quantidade superior. 5. O portal no faz restrio com relao quantidade doada, ficando assim a critrio do usurio informar a quantidade.

39 6.3 DIAGRAMA DE CLASSES Diagrama geral de classes demonstrado na figura 9.

40 Espao para realizar o impresso em A3.

Figura 9: Diagrama de classes

41 6.4 MODELAGEM DE DADOS Diagrama de entidade relacional demonstrado na figura 10.

42 Espao para realizar o impresso em A3.

Figura 10: Modelo de entidade relacional

43 6.5 PORTAL DE COLABORAO SOCIAL O portal de colaborao tem como primeiro canal de interao sua pagina inicial, a sua esquerda existe um local para que as pessoas que j possuam cadastro possam acessar o portal, j no seu lado direto est disponvel um cadastro bsico para que qualquer pessoa ou empresa possa participar, conforme demonstrado na figura 11.

Figura 11: Pgina inicial portal social Fonte: Autor

Ainda na pagina inicial temos as sesses Sobre que trs informaes dobre o projeto, Links um espao reservado para futuros colaboradores do portal sejam eles pessoas fsicas ou jurdicas e Contatos que contem uma sesso para que os usurios possam enviar suas sugestes e dvidas para o portal.

44 Aps realizado o login o usurio ter uma srie de funes disponveis para interao, como est demonstrado na figura 12.

Figura 12: Funes disponveis no portal social Fonte: Autor

As funcionalidades do portal esto divididas em trs sesses a primeira so as informaes pessoais, a segunda aes e a terceira administrao, cada uma das sesses ser esclarecida a seguir.

45 No menu informaes pessoais permite que o usurio complete seu cadastro, com informaes como cidade natal, ou ainda um pequeno texto de apresentao conforme demonstrado na figura 13.

Figura 13: Editar perfil Fonte: Autor

46 Ainda em informaes pessoas est disponvel um quadro de avisos que disponibiliza para o usurios informaes sobre, necessidade e doaes pendentes, pessoas pendentes de classificao, quantidade de pessoas que podem ou que posso ajudar e os totais de doaes realizadas e recebidas, conforme demostrado na figura 12. O menu aes disponibiliza o registro de doao que permite ao usurio realizar o cadastro dos itens ou servios que deseja doar no portal conforme demonstrado na figura 14.

Figura 14: Registrar doaes Fonte: Autor

O registrar necessidades permite ao usurio cadastrar os itens ou servios que necessita conforme demonstrado na figura 15.

Figura 15: Registrar necessidades Fonte: Autor

47 O registrar projetos permite o cadastro de projetos sociais, projetos podem ser associados a necessidades ou doaes, o seu principal objetivo agrupar itens ou servios que possam servir para um bem comum, como a criao um projeto para ajudar desabrigados conforme demonstrado na figura 16.

Figura 16: Registrar projetos Fonte: Autor

48 Necessidades pendentes apresenta todas as doaes recebidas pendentes de interao por parte do usurio, conforme demonstrado na figura 17, sempre que uma pessoa realiza uma doao esta doao ficar pendente para que a pessoa favorecida possa aceitar esta doao e posteriormente confirmar seu recebimento.

Figura 17: Necessidades pendentes Fonte: Autor

Doaes pendentes apresenta todas as doaes efetuadas pendentes de interao por parte do usurio, conforme demonstrado na figura 18, ou seja so todos os produtos ou servios oferecidos como ajuda, aceitos pela outra pessoa.

Figura 18: Doaes pendentes Fonte: Autor

49 Pessoas que eu posso ajudar apresenta lista de pessoas que o usurio pode ajudar de acordo com as doaes cadastradas, com este recurso possvel visualizar de forma rpida quem precisa de ajuda conforme demonstrado na figura 19.

Figura 19: Pessoas que posso ajudar Fonte: Autor

Pessoas que podem me ajudar apresenta lista de pessoas que possuem algum item ou servio que supra uma necessidade cadastrada pelo usurio conforme demonstrado na figura 20.

Figura 20: Pessoas que podem me ajudar Fonte: Autor

50 Buscar projetos possibilita a busca de projetos sociais cadastrados no portal conforme demonstrado na figura 21. Alimentos no perecveis

Figura 21: Buscar projetos Fonte: Autor

Buscar pessoas possibilita a busca de pessoas cadastradas no portal conforme demonstrado na figura 22 nesta mesma interface possvel visualizar o perfil do usurio selecionado.

Figura 22: Buscar pessoas Fonte: Autor

51 No menu administrao disponveis apenas para administradores do portal, o usurio pode acessar a manuteno de pessoas que realizar o bloqueio de pessoas que tenham atitudes suspeitas no portal conforme demonstrado na figura 23.

Figura 23: Manuteno de pessoas Fonte: Autor

52 Manuteno de doaes que possibilita realizar o bloqueio de doaes duvidosas conforme demonstrado no figura 24.

Figura 24: Manuteno de doaes Fonte: Autor

53 Manuteno de necessidades possibilita realizar o bloqueio de necessidades duvidosas conforme demonstrado na figura 25.

Figura 25: Manuteno necessidades Fonte: Autor

54 Manuteno de categorias possibilita realizar o cadastro de categorias, para utilizao no cadastro de necessidade e doaes conforme demonstrado na figura 26.

Figura 26: Manuteno de categorias Fonte: Autor

Ao final do processo de doao o usurio favorecido deve classificar a pessoa ou instituio que o ajudou conforme demonstrado na figura 27.

Figura 27: Classificar pessoa Fonte: Autor

55 6.6 RESULTADO DA PESQUISA A entrevista telefnica realizada no dia 6 de junho de 2011, nas instituies: APACHE, Amigos dos bichos, Albergue, Abrigo das crianas, Verde Vida e Centro Esprita Bezerra de Menezes, tivemos 100% de aceitao quando questionados se aceitariam receber doaes atravs da internet. 6.7 ESTRUTURA DO PROJETO O projeto foi construdo utilizando o padro MVC, desta forma toda a modelagem de negcio est separada da camada de usurio e da camada de acesso a dados conforme demonstrado na figura 28.

Figura 28: Estrutura de pastas Fonte: Autor

A pasta site dentro do diretrio Web Pages, contm todas as pginas web da aplicao, ou seja, a camada de apresentao onde o usurio poder interagir com o portal, nesta camada nenhuma lgica de negcio aplicado, sendo tratados apenas componentes visuais, ainda neste diretrio existe a subpasta WEB-INF, que contm o arquivo faces-config.xml que faz o controle da navegao entre as paginas web.

56 Dentro do diretrio src, esto contidas as demais camadas da aplicao, modelo, controle e acesso a dados, conforme demonstrado a seguir. Default packag: Diretrio padro do projeto contm o arquivo XML de configurao do Hibernate. br.com.careon.controle. Contm os Manager Beans que controlam controlam a lgica das paginas XHTML da camada de viso. br.com.careon.conversores. Contm conversores utilizados nos componentes utilizados nas pesquisas por auto-complete, ente se faz necessrio a converso de Strings e outros Objetos para seleo na interface. br.com.careon.dao. Contm todas as interfaces de acesso a dados. br.com.careon.daoImp. Contm a implantao da interfaces do pacote anterior. br.com.careon.mensagens Contm as mensagens utilizados nas interfaces XHTML, este arquivo utilizado para internacionalizao. br.com.careon.modelo Contm todas as classes modelo da aplicao, ou seja, todas as classes base. br.com.careon.servico Contm interfaces de classes criadas especificamente para tratar regras de negcio, com isso lgicas comuns podem ser utilizadas por toda a aplicao sem necessidade de replicao de cdigo. br.com.careon.servicoImp Contm a implementao das classes anteriores. br.com.careon.util Contm classes utilitrias como a responsvel pela criao e controle de tabelas no banco de dados, funo est destinada ao Hibernate.

57 br.com.careon.validadores Contm validadores de campos e formulrios que so utilizados pelos controladores de interface. A estrutura ainda apresenta mais dois diretrios Librares e Configuration Files, que representam as bibliotecas externas utilizadas, como o PrimeFaces e Hibernate e arquivos de configuraes do servidor respectivamente. 6.7.1 Camada de apresentao Para construo da camada de apresentao foram utilizadas duas tecnologias em conjunto, o JSF 2.0 e PrimeFaces 2.2.1. Segundo Geary; Hortmann (2007, p.3)A vantagem prometida pelo JSF (Java Server Faces) trazer o desenvolvimento rpido de interfaces de usurio para o Java server-side, este framework veio para quebrar o paradigma que desenvolvimento web em java complicado e ineficiente. O PrimeFaces um conjunto de bibliotecas que trs componentes ricos para construo de interfaces web quando utilizado JSF, segundo Darin(2010, p.9)
PrimeFaces is an open source component suite for Java Server Faces featuring 90+ Ajax powered rich set of JSF components. Additional TouchFaces module features a UI kit for developing mobile web applications. Main goal of PrimeFaces is to create the ultimate component suite for JSF.

Com a combinao do framework JSF com a suite de componentes PrimeFaces possvel trazer para o usurio uma experiencia muito interessante na camada de apresentao da aplicao web.

58
6.7.1.1

Componentes de interface

Na pagina inicial do portal podemos destacar alguns componentes, como a informao de complexidade da senha, que mostrado para o usurio no momento do de seu cadastro no portal conforme figura 29.

Figura 29: Complexidade da senha cadastro portal Fonte: Autor

Ainda na interface de cadastro podemos tambm verificar a utilizao do auto-complete para seleo da cidade conforme demonstrado na figura 30:

Figura 30: Auto-complete cidade Fonte: Autor

59 Para montagem deste recurso apenas foi necessrio a utilizao da tag <p:autoComplete>1 e associar em seus atributos o mtodo demostrado no quadro 1 que retornar a lista de cidades do banco de dados e um conversor demonstrado na quadro 2 para convertes os dados que sero apresentados ao usurio.
Quadro 1: Mtodo listaCidades da classe AcessoControle

Quadro 2: Classe ConverterCidade

O tratamento de mensagens tambm bem simplificado quando utilizada esta combinao de desenvolvimento, dentro da pgina JSF utilizar a tag <p:messages> que todas as mensagens de excees lanadas na pagina so demonstradas nela conforme figura 31, que demonstra um erro de login.

1 Funcionalidade onde o testo completado a medido que usurio inicia a digitao.

60

Figura 31: Erro de login Fonte: Autor

6.7.2

Camada de persistncia Para o desenvolvimento da camada de persistncia do portal foi utilizado o

Hibernate, uma ferramente para mapeamento de objetos relacionais, segundo Gonalves(2007, p.512) assinala [...] Hibernate um framework que se relaciona com o banco de dados, onde esse relacionamento conhecido como mapeamento objeto/relacional [...]. A estrutura de operao do Hibernate est demonstrada na figura 32.

Figura 32: Arquitetura Hibernate Fonte: JBoss Community (2011)

61 Utilizando o Hibernate para a persistncia a aplicao se torna portvel para uma dos bancos de dados suportados por ele, conforme demonstrada na tabela 4.
Tabela 4: Dialetos SQL do Hibernate

Fonte: Hibernate (2011)

6.7.2.1

Hibernate Annotations

O desenvolvimento do portal utilizar o recuso Annotations disponvel a partir do JDK5, ou seja, da verso 5 do Java. Com isso no so necessrios arquivos auxiliares para realizar o mapeamento dos objetos relacionais, basta um simples anotao na prpria classe modelo para que est classe seja persistido no banco de dados. Com isso possvel integrar o Hibernate com o JPA (Java persistence API), disponvel apartir da verso J2EE 1.4, Segundo Gonalves (2007, p.527) A JPA baseada no conceito POJO (Plain Old Java Objects), algo como Bom e Velho Objeto Java, que incorpora ideias de renomados frameworks de persistncia para padronizar o mapeamento O/R em Java. Quando utilizamos JPA os objetos persistentes so denominados entidades, baste utilizar a anotao @Entity, antes da declarao da classe, desta forma

62 utilizando o pacote javax.persistence.Entity , o a entidade j se tornar persistente. Para ilustrar esta situao ser demonstrada a no quadro 3 a classe Cidade do pacote modelo do portal.
Quadro 3: Classe Cidade.

A classe Cidade possui a anotao @Entity o que indica que ela ser uma classe persistente, logo abaixo temos tambm a anotao @Table, esta determina qual o nome da tabela que ser criada no banco de dados, caso ele no seja definido ser criado a tabela como nome da classe. O JPA ainda permite interagir com as as colunas que sero criadas no banco de dados, podendo ser informado se um campo ser sequencial nico e se isso ser

63 controlado pela aplicao pelo banco, no exemplo temos o atributo ID que tem as anotaes @Id e @GeneratedValue que indico respectivamente, campo de identificao da entidade e que este valor ser gerado automaticamente, ou seja, no ser necessrio informar nenhum valor, quando estivermos inserindo valores nesta classe persistente. Outra vantagem das anotaes em conjunto com o mapeamento de objetos relacionais que quando existem ligaes fsicas entre as tabelas, no necessrio se preocupar em definir campos que sero relacionados, neste exemplo termos uma relao de muitos estados para uma cidade, ento basta incluir as anotaes @ManyToOne e @JoinColumn no atributo Estado que derivado da classe Estado dentro da classe Cidade. Com estes simples mapeamentos teremos a resultado mostrado na figura 33.

Figura 33: Modelo ER estado e cidade Fonte: Autor

6.7.3

Camada de negcio A camada de negcio est encarregada de toda lgica da aplicao, o

crebro do portal, far a ligao entre a camada de apresentao e a camada de persistncia. Segundo ARNOLD;GOSLING;HOLMES(2007, P. 29) Na linguagem de programao Java, programas so construdos a partir de classes. Utilizando classes possvel criar um cdigo organizado e reutilizvel , com isso uma mesma classe podemos criar vrias instncias de objetos e trabalhar com eles na aplicao, ainda segundo ARNOLD;GOSLING;HOLMES(2007, P. 29) Pense em uma classe como uma fbrica com esquemas e instrues para construir artefatos objetos so artefatos que a fbrica produz. O Java uma linguagem de programao livre hoje mantida pela ORACLE,

64 mesmo pertencendo a uma empresa que no tem como objetivo produzir software livre, esta linguagem ainda mantem este padro. Todo o modelo do portal foi construdo em java como podemos observar no quadro 4 que demonstra alguns mtodos a classe de controle da pagina acesso.xhtml, que a pagina inicial do portal.
Quadro 4: Mtodos Classe AcessoControle

No quadro 4 existem 3 mtodos o validarPessoa, listarCidades e logout, analisando o primeiro mtodo que realiza a validao de usurio e senha para logon no site possvel observar a utilizao de objetos para que o cdigo java tenha interao o usurio que acessa o portal atravs da interface context que uma instancia de FacesContext permite o envio de mensagens que sero interpretadas pela tag <p:message> utilizada pelo PrimeFaces na composo da interface do usurio. O mtodo retorno um texto, diferentemente de outras linguagens em java uma

65 String no um tipo de dado e sim o objeto, que retorno nado ao final do mtodo para que a interface saiba a ao que dever tomar. 6.8 INTERNACIONALIZAO Com o auxilio do JSF 2.0 tornar sistemas web portveis para outros idiomas uma tarefa relativamente simples usando ResourceBundle, que nos permite localizar automaticamente a localidade do acesso e separar todas os textos das interface em um nico arquivo, segundo GEARY;HORSTMANN (2010, p.42)As part of the internationalization support in Java, the bundle that matches the current locale is automatically loaded. The default bundle without a locale pre- fix is used as a fallback when the appropriate localized bundle is not available. Para que o portal esteja habilitado para utilizar ResourceBundle basta uma simples configurao no arquivo faces-config.xml utilizado pelo JSF conforme demonstrado no quadro 5.
Quadro 5: Configurao do arquivo faces-config.xml

Fonte: Autor

A tag <resource-bundle> detm as definies da classe que armazenar as mensagens demonstrado no quadro 6 e a varivel que far a chamada destas mensagens nas paginas XHTML demonstrada no quadro 7.

66
Quadro 6: Parte do arquivo mensagens.properties

Fonte: Autor Quadro 7: Exemplo de utilizao ResourceBundle

Fonte: Autor

67

CONSIDERAES FINAIS
O desenvolvimento do portal de colaborao social utilizando a tecnologia

java possibilita um acesso de forma fcil e segura para os usurios e organizaes que esto dispostos a ajudar e serem ajudados. O desafio tornar este portal referncia em buscas por pessoas que querem ajudar ou necessitam de algum tipo de ajuda, para que isso seja possvel ser necessrio um trabalho de divulgao primeiro para que as instituies se cadastrem e depois para captar usurios que queiram fornecer ou receber algum tipo de ajuda. A tecnologia java possui uma grande comunidade ativa que contribui para evoluo da linguagem e para o desenvolvimento de frameworks, alm disso uma linguagem free. O desenvolvimento realizado utilizando a arquitetura MVC, que possibilita um desenvolvimento mais organizado com fcil suporte a manutenes ou evolues posteriores, a utilizao do JSF 2.0 em conjunto com o PrimeFaces possibilitou a criao de um projeto com uma interface extremamente rica de forma simples e funcional, a utilizao destes dois frameworks em conjunto possibilitou a aplicao do padro MVC de forma mais fcil. A ideia de desenvolver um portal de servio livre tambm teria que ter em seu desenvolvimento ferramentas livres, assim toda ferramenta utilizada no desenvolvimento deste projeto ser livre. A utilizao de ferramentas livres tambm tem o seu preo, j que dependemos muito de pessoas que j utilizaram ou que esto utilizando para conseguirmos auxilio, ou buscarmos a resoluo de problemas, outra grande dificuldade de conciliar as verses das bibliotecas utilizados para seu funcionamento perfeito, j que cada uma deles mantida por uma empresa e estas trabalham de forma independente. Efetuar o desenvolvimento deste trabalho com essas tecnologia abriu meus horizontes com relao desenvolvimento e percebi que a comunidade que utiliza software livre muito ativa e solidaria o que casou perfeitamente com o desenvolvimento do trabalho.

68

REFERNCIAS
ARNOLD, Ken; GOSLING, James; HOLMES, David; traduo Maria Lcia Lang Lisboa. A Linguagem de Programao Java. 4. ed. Porto Alegre: Bookman, 2007. ASSOCIAO BRASILEIRA DE ORGANIZAES NO GOVERNAMENTAIS. O que uma ONG?. Disponvel em: <http://www.abong.org.br/final/faq_pag.php? faq=12189>. Acesso em 7 de set. 2010. ASSOCIAO PROTETORA DOS ANIMAIS DE CHAPEC E OESTE

CATARINENSE. Disponvel em: <http://www.apacheong.org.br/>. acesso em 25 de setembro de 2010. BABBIE; E. The practice of social research. 4th ed. Belmont, Wadsworth Publ., 1986. BURNS, Ed; SCHALK, Cris; GRIFFIN, Neil. JavaServer Faces 2.0: The Complete Reference . New York, Chicago, San Francisco, Lisbon, London, Madrid, Mexico City, Milan, New Delhi, San Juan, Seoul, Singapore, Sydney, Toronto : McGraw-Hill, 2010, COHEN, E.; FRANCO, R. Avaliao de projetos sociais. Editora Vozes, Petrpolis, 312 pp. 1998. IVICI, agatay; DARIN, Yigi. PrimeFaces: User's Guide .Covers 1.1 and 2.1. Documento gerado em: 26 de julho de 2010. FUNDAO PARA O SOFTWARE LIVRE. Disponvel em: <http://www.fsf.org/>. acesso em 25 de setembro de 2010. GEARY, Davis; HORSTMANN, Cay. Core JavaServerFaces. 3. ed. New York: Prentice Hall, 2010.

69 GEARY, Davis; HORSTMANN, Cay. Core JavaServerFaces Fundamentos. 2. ed. Rio de Janeiro: Alta Books, 2007. GLASSFISH. Disponvel em: <https://glassfish.dev.java.net>. acesso em 25 de setembro de 2010. GRUPO CHAPECO. CEIM desenvolve projeto social: Aluninhos do berrio trabalham a afetividade, a amizade, o companheirismo: Disponvel em: <http://www.grupochapeco.com/portal/regiao/Not%C3%ADcias/Educa %C3%A7%C3%A3o/436_Ceim_desenvolve_projeto_social.html> . acesso em 25 de setembro de 2010. GONALVES, Edson. Desenvolvendo aplicaes Web com JSP, SERVELETS, JAVASERVERFACES, HIBERNATE, EJB 3 PERSISTENCE E AJAX. Rio de Janeiro: Editora Cincia Moderna Ltda., 2007. GONALVES, Edson. Dominando Java Server Faces e Facelets Utilizando Spring 2.5, Hibernate e JPA. Rio de Janeiro: Editora Cincia Moderna Ltda., 2008. HEMRAJANI, Anil. Desenvolvimento agl em Java com Spring, Hubernate e Eclipse; traduo Edson Furmankiewicz & Sandra Figueiredo; reviso tcnica Nivaldo Foresti; So Paulo: Person Prentice Hall, 2007. HSBC. Conhea o Instituto HSBC Solidariedade. Disponvel em:

<http://www.porummundomaisfeliz.org.br/>. acesso em 21 de setembro de 2010. HIBERNATE. Disponvel em: <http://www.hibernate.org>. acesso em 25 de setembro de 2010. JPA. Disponvel em: <http://www.oracle.com/technetwork/articles/javaee/jpa-

137156.html>. acesso em 25 de setembro de 2010.

70 JSF. Disponvel em: <https://javaserverfaces.dev.java.net/>. acesso em 25 de setembro de 2010. KERLINGER, Fred Niclhos; Metodologia da pesquisa em cincias sociais: um tratamento conceitual. So Paulo: RPU, 1980. KING, Gavin; BAUER, Christian; ANDERSEN, M. Rydahl; BERNARD Emmanuel; EBERSOLE, Steve; FERENTSCHIK, Hardy. HIBERNATE - Persistncia Relacional para Java Idiomtico: Documentao de referncia Hibernate 3.6.3.Final. Disponvel em: <http://www.hibernate.org/docs.html>. acesso em 11 de maro de 2011. KRUG, Steve. No me Faa Pensar: Uma abordagem de bom senso usabilidade na Web. 2. ed. Rio de Janeiro: Alta Books, 2006. MAXIMIANO, A. C. A. Administrao de projetos: transformando idias em resultados. So Paulo: Atlas, 1997. MENESCAL, Andra K. Histria e gnese das organizaes no

governamentais. In: Hebe Signorini Gonalves (org.). Organizaes no governamentais: soluo ou pro- blema?. So Paulo: Estao Liberdade, 1996. NETBEANS. Disponvel em: <http://www.netbeans.org/>. acesso em 25 de setembro de 2010. NIELSEN. Social Networks/Blogs Now Account for One in Every Four and a Half Minutes Online. Disponvel em <http://blog.nielsen.com/nielsenwire/online_mobile/social-media-accounts-for-22percent-of-time-online/>. acesso em 21 de setembro de 2010 ORACLE. Java SE Documentation at Glance. Disponvel em:

<http://www.oracle.com/technetwork/java/javase/documentation/index.html>. Acesso

71 em 7 de set. 2010. ORACLE. Manual de Referncia do MySQL 4.1 . reviso 242. Documento gerado em: 14 de maro de 2010. ORACLE. Notas da Versao do Sun GlassFish Enterprise Server v3 . Nmero da pea: 821133711, Dezembro de 2009 . ORACLE. The Java Persistence API - A Simpler Programming Model for Entity Persistence. Disponvel em: <http://www.oracle.com/technetwork/articles/javaee/jpa137156.html>. acesso em 25 de setembro de 2010. PLANNER. Disponvel em: <http://live.gnome.org/Planner>. acesso em 25 de setembro de 2010. REVISTA DAS ONG. Como montar uma ONG?. Disponvel em:

<http://www.revistadasongs.com.br/como_montar_ong.php?ed=64>. Acesso em 16 de set. 2010. REDE GLOBO . Projetos Sociais. Disponvel em:

<http://redeglobo.globo.com/TVG/0,,3915,00.html>. Acesso em 16 de set. 2010. SEBRAE-SP. Qual a definio para ong?. Disponvel em:

<http://www.sebraesp.com.br/faq/criacao_empresa/criacao_empresa/definicao_ong> . Acesso em 7 de set. 2010. TANAKA, Oswaldo Y.; Melo, Cristina. Avaliao de Programas de Sade do Adolescente: um modo de fazer. So Paulo : Edusp, 2001. VIEIRA, F. Marconi. Gerenciamento de Projetos de Tecnologia da Informao. 2. ed. Rio de Janeiro: Elsevier, 2007.

72 WWF. Quem somos?. Disponvel em <http://www.wwf.org.br/wwf_brasil/>. acesso em 25 de setembro de 2010

Você também pode gostar