UNIVERSIDADE FEDERAL FLUMINENSE
ROSEANE SALVIOTHIAGO SALLES MAGALHÃES LIMA
SISTEMA DE GERÊNCIA E DIVULGAÇÃO DE IMÓVEIS
Niterói2009
ROSEANE SALVIOTHIAGO SALLES MAGALHÃES LIMA
SISTEMA DE GERÊNCIA E DIVULGAÇÃO DE IMÓVEIS
Trabalho de Conclusão de Curso subme-
tido ao Curso de Tecnologia em Siste-
mas de Computação da Universidade
Federal Fluminense como requisito par-
cial para obtenção do Tecnólogo em Sis-
temas de Computação.
Orientador:Alexandre Domingues Gonçalves
NITERÓI2009
ROSEANE SALVIOTHIAGO SALLES MAGALHÃES LIMA
SISTEMA DE GERÊNCIA E DIVULGAÇÃO DE IMÓVEIS
Trabalho de Conclusão de Curso subme-
tido ao Curso de Tecnologia em Siste-
mas de Computação da Universidade
Federal Fluminense como requisito par-
cial para obtenção do Tecnólogo em Sis-
temas de Computação.
Niterói, ___ de _______________ de 2009.
Banca Examinadora:
_________________________________________
Prof. Alexandre Domingues Gonçalves, Msc. – Orientador
UFF - Universidade Federal Fluminense
_________________________________________
Prof. Leandro Soares de Sousa, Msc. – Avaliador
UFF - Universidade Federal Fluminense
AGRADECIMENTOS
A Deus, que sempre iluminou a nossa cami-
nhada.
Aos tutores e professores do CEDERJ pela
atenção e pelo conhecimento que nos passa-
ram.
Aos Colegas do pólo de Volta Redonda pelo
incentivo e troca de experiências.
A todos os nossos familiares e amigos pelo
apoio, colaboração e paciência.
RESUMO
Na cidade de Volta Redonda existem muitas imobiliárias, porém poucas delas pos-suem um sistema eficiente para gerenciar seus imóveis e clientes. A falta de um sis-tema desses dificulta a organização e divulgação dos imóveis cadastrados na imobi-liária.
Clientes que querem pesquisar imóveis disponíveis, sejam eles para compra ou alu-guel, precisam pegar informações por telefone eu se deslocar até a imobiliária para obter mais detalhes.
Nossa trabalho visa elaborar um sistema que permita à uma ou várias imobiliárias controlarem o cadastro de seus imóveis, visando facilitar a divulgação das informa-ções disponíveis para os clientes. Escolhemos a plataforma Web, onde o interessa-dos em imóveis poderão consultar facilmente as informações disponíveis, detalhan-do seus interesses e obtendo dados detalhados dos imóveis bem como fotos do es-tabelecimento e endereço indicado em um mapa on-line.
Palavras-chaves: Imóveis, Sistema Informatizado, Gerência, Divulgação, Goo-gle Maps.
LISTA DE FIGURAS
Figura 1: Diagrama de Casos de Uso.........................................................................24
Figura 2: Tela de Usuários..........................................................................................27
Figura 3: Tela para Adicionar Usuário........................................................................28
Figura 4: Tela de listagem usuários de imobiliária......................................................32
Figura 5: Tela do relatório de todas as imobiliárias....................................................33
Figura 6: Tela do relatório da imobiliária corrente......................................................34
Figura 7: Tela de login.................................................................................................36
Figura 8: Tela de cadastro de imobiliária....................................................................37
Figura 9: Tela de inclusão de imóvel..........................................................................40
Figura 10: Tela de listagem de imóveis......................................................................41
Figura 11: Tela de consulta rápida de imóveis...........................................................43
Figura 12: Tela de consulta detalhada de imóveis.....................................................44
Figura 13: Tela de consulta no mapa de imóveis.......................................................45
Figura 14: Tela de consulta de imobiliárias.................................................................47
Figura 15: Tela de inclusão de perfil de imóveis.........................................................49
Figura 16: Tela de listagem de perfis de imóveis.......................................................50
Figura 17: Tela de listagem de imóveis preferidos.....................................................52
Figura 18: Tela de registro..........................................................................................53
Figura 19: Controle de Acesso....................................................................................55
Figura 20: Imobiliárias e Imóveis.................................................................................56
Figura 21: Preferências de cliente cadastrado............................................................57
Figura 22: Cadastrar usuário.......................................................................................58
Figura 23: Gerar relatório estatístico de todas as imobiliárias....................................58
Figura 24: Gerar relatório estatístico de sua imobiliária.............................................59
Figura 25: Fazer login..................................................................................................59
Figura 26: Manter dados cadastrais da imobiliária.....................................................60
Figura 27: Manter cadastro de imóveis.......................................................................60
Figura 28: Registrar-se................................................................................................61
Figura 29: Consultar imóveis.......................................................................................61
Figura 30: Consultar imobiliárias.................................................................................62
Figura 31: Manter cadastro de características desejadas no imóvel..........................62
Figura 32: Manter lista de imóveis preferidos.............................................................63
Figura 33: DER Controle de Acesso...........................................................................65
Figura 34: DER Imobiliárias e Imóveis........................................................................66
Figura 35: DER Preferências de cliente cadastrado...................................................67
LISTA DE TABELAS
Tabela 1: Bairros.........................................................................................................68
Tabela 2: Cidades.......................................................................................................68
Tabela 3: Estados........................................................................................................68
Tabela 4: Imobiliária x Usuários..................................................................................68
Tabela 5: Imobiliárias..................................................................................................69
Tabela 6: Imóveis........................................................................................................69
Tabela 7: Imóveis preferidos.......................................................................................69
Tabela 8: Imagens de Imovel......................................................................................70
Tabela 9: Imóvel x Propriedades de Imóvel................................................................70
Tabela 10: Preferências de imóvel..............................................................................70
Tabela 11: Preferências de Imóvel x Propriedades de Imóvel...................................70
Tabela 12: Propriedades de Imóvel............................................................................71
Tabela 13: Subtipos de imóvel....................................................................................71
Tabela 14: Tipos de imóvel.........................................................................................71
Tabela 15: Transações de imóvel...............................................................................71
Tabela 16: Usuários....................................................................................................71
LISTA DE ABREVIATURAS E SIGLAS
DCP – Diagrama de Classes do Projeto
IDE – Integrated Development Enviroment (Ambiente integrado para desenvolvimen-
to de software)
PHP – Acrônimo recursivo para: PHP: Hypertext Preprocessor
SGBD – Sistema Gerenciador de Banco de Dados
UML – Unified Modeling Language (Linguagem de modelagem unificada)
SUMÁRIO
RESUMO ...................................................................................................................... 7
LISTA DE FIGURAS ..................................................................................................... 8
LISTA DE TABELAS .................................................................................................. 10
LISTA DE ABREVIATURAS E SIGLAS ..................................................................... 11
1 Introdução ................................................................................................................. 15
1.1 Motivação ........................................................................................................... 16
1.2 Objetivo .............................................................................................................. 16
2 Análise ...................................................................................................................... 17
2.1 Descrição dos envolvidos no sistema direta e indiretamente ........................... 17
2.2 Descrição dos usuários do sistema ................................................................... 18
2.3 Requisitos funcionais ......................................................................................... 19
2.4 Requisitos não-funcionais .................................................................................. 20
2.5 Pesquisa de softwares existentes no mercado ................................................. 22
3 Modelagem ............................................................................................................... 23
3.1 Diagrama de casos de uso ................................................................................ 23
3.2 Descrição dos casos de uso .............................................................................. 24
3.3 Diagrama de classes ......................................................................................... 53
3.3.1 Controle de Acesso ..................................................................................... 54
3.3.2 Imobiliária e Imóveis ................................................................................... 55
3.3.3 Preferências de cliente cadastrado ............................................................. 56
3.4 Diagramas de sequência ................................................................................... 57
4 Construção do sistema ............................................................................................. 64
4.1 Banco de dados ................................................................................................. 64
4.2 Dicionário de dados ........................................................................................... 67
4.3 Testes ................................................................................................................ 72
4.4 Implantação ....................................................................................................... 73
CONCLUSÕES E TRABALHOS FUTUROS ............................................................. 74
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................... 75
15
1 INTRODUÇÃO
O processo de compra, venda e aluguel de imóveis feito do modo tradicio-
nal, demanda tempo e esforço por parte dos clientes. A pessoa interessada em fe-
char uma negociação com uma imobiliária geralmente só tem em mente que precisa
de um imóvel com uma faixa de preço que ela pode pagar e uma região em que de-
seja morar. E ela não sabe qual imobiliária oferece o que ela procura, levando à ne-
cessidade de se deslocar a cada uma delas em busca disso. E geralmente, quando
se faz uma busca prévia em classificados de jornais e revistas, estes não oferecem
fotos detalhadas, nem informações suficientes que auxiliem na seleção de um imó-
vel desejável.
Com o auxílio das páginas da Internet, que oferecem anúncios, fotos, di-
cas e outros serviços, a negociação de um imóvel pode ser feita de forma mais rápi-
da. Com a vantagem de oferecer agilidade, a web hoje é um dos grandes mecanis-
mos de negociações para interessados em transações imobiliárias.
O usuário acessa os sites, consulta as ofertas e a partir dos dados já faz
uma seleção prévia e quando vão fechar negócio já sabem exatamente o que que-
rem. Em um segundo momento, o internauta se dirige à imobiliária responsável ou
entra em contato com os proprietários dos imóveis desejados. Com esse mecanis-
mo, ganha-se tempo no processo de negociação do imóvel.
A venda também fica mais prática. Sem anunciar semanalmente em di-
versos classificados, o vendedor consegue fechar contratos mensais, com sites que
disponibilizam imagens e todas as informações necessárias do imóvel 24 horas por
dia. O acesso é mais fácil, os custos são baixos e a visibilidade é muito grande.
Porém, na área de imóveis isso ainda não é realidade forte em Volta Redonda.
Observamos que os interessados em imóveis possuem pouca informação
na internet e isso dificulta suas pesquisas, atrasando no fechamento do negócio e
possivelmente fazendo com que o cliente não encontre exatamente o que deseja.
16
Pensando nisso e nas facilidades que a divulgação de imóveis pela inter-
net traz, chegamos à conclusão de que a implantação de um sistema de gerência e
divulgação de imóveis é vantajosa.
1.1 MOTIVAÇÃO
Atualmente em Volta Redonda, o principal meio de divulgação de imóveis
são os classificados em jornais, porém essa modalidade de divulgação tem um custo
elevado e as informações apresentadas são bastante limitadas. Além disso, as infor-
mações incluídas em uma determinada data nos jornais podem estar desatualizadas
no dia seguinte caso ocorra alguma atualização no cadastro de um imóveis, alguém
pode ter alugado, comprado ou o proprietário pode ter desistido de negociar o imó-
vel.
Pensando nisso, observamos a necessidade de uma ferramenta que per-
mita a divulgação de imóveis na internet por várias imobiliárias, facilitando ainda
mais ao cliente selecionar o que ele precisa sem se deslocar até elas.
1.2 OBJETIVO
O objetivo do nosso trabalho é desenvolver um sistema de gerência e di-
vulgação de imóveis na Internet, ferramenta esta que permite ao futuro cliente, a
consulta de imóveis cadastrados pelas próprias imobiliárias, contendo detalhes de
todas as suas características como número de cômodos, tipo de transação (aluguel,
venda), fotos e localização.
O sistema otimiza a busca por imóveis pela internet, levando em conside-
ração a sua localização, iniciando a procura em áreas determinadas pelo cliente e
ampliando a busca em toda a região de Volta Redonda. Além da busca por área, o
portal oferece, para facilitar a escolha, diversas opções de critérios de seleção e
comparação entre diferentes imobiliárias.
17
2 ANÁLISE
Análise de Requisitos é o estudo das características que o sistema deverá
ter para atender às necessidades e expectativas do cliente. É a primeira fase de de-
senvolvimento de software.
Cada funcionalidade demandada pelo cliente deve ser analisada para ve-
rificar os possíveis impactos no desenvolvimento das demais funcionalidades do sis-
tema, e verificado em conjunto com a equipe de desenvolvimento se as necessida-
des tecnológicas para a sua implementação estão disponíveis.
2.1 DESCRIÇÃO DOS ENVOLVIDOS NO SISTEMA DIRETA E INDIRETAMENTE
Stakeholder (em português, parte interessada ou interveniente), é um ter-
mo usado em administração que refere-se a qualquer pessoa ou entidade que afeta
ou é afetada pelas atividades de uma empresa.
O termo foi usado pela primeira vez pelo filósofo Robert Edward Freeman
(1984). Segundo ele, os stakeholders são um elemento essencial ao planejamento
estratégico de negócios.
De maneira mais ampla, compreende todos os envolvidos em um proces-
so, que pode ser de caráter temporário (como um projeto) ou duradouro (como o ne-
gócio de uma empresa ou a missão de uma organização ).
Foram identificados os seguintes stakeholders:
Administrador do portal: pessoa responsável por contatar as imobiliárias e
oferecer o sistema como forma de divulgação dos imóveis na Internet. Tem a
responsabilidade de manter o site.
Operador do portal: pessoa capacitada para gerenciar o site e responsável
pelo controle de acesso deste.
Administrador da imobiliária: pessoa que exercita total ou parcialmente as fun-
ções de iniciar, coordenar, controlar e instituir maiores mudanças no negócio
18
ou empresa. Maior interessada em divulgar os imóveis e efetuar negociações
a partir destes. Tem a responsabilidade de supervisionar o andamento da di-
vulgação no site através de relatórios personalizados e prover soluções para
tirar melhor proveito dos recursos do site.
Operador da imobiliária: funcionário capacitado para operar o sistema, efetu-
ando o cadastro dos imóveis para divulgação e disponibilizando as informa-
ções sobre estes.
Cliente: pessoa interessada em adquirir ou alugar um imóvel e que usa o sis-
tema como forma de busca de ofertas e manifestação de interesse.
Proprietário do imóvel: pessoa interessada em vender ou alugar um imóvel e
que disponibiliza as informações deste em uma imobiliária, para negociação.
2.2 DESCRIÇÃO DOS USUÁRIOS DO SISTEMA
Foi determinado aqui como usuários stakeholders irão realmente interagir
com o sistema. Segue uma breve descrição sobre estas pessoas e suas responsabi-
lidades com o sistema:
Administrador do portal: Responsável pelo cadastramento de novas contas de
operador e outros administradores do portal. Emitirá relatórios de estatística
de acessos aos imóveis, imóveis divulgados, atualizações de imóveis e usará
essas informações para avaliação do sistema e controle de qualidade do site.
Será responsável pela manutenção geral do site.
Operador do portal: Proverá o cadastro de permissões e liberação do acesso
ao sistema para os operadores das imobiliárias. Gerenciamento do portal.
Administrador da imobiliária: Proverá o cadastro de permissões e liberação do
acesso ao sistema para os operadores da imobiliária. Terá acesso a todas as
informações divulgadas referentes a sua imobiliária. Emitirá relatórios estatís-
ticos para controle de divulgação e gerência de informações pertinentes à
imobiliária.
19
Operador da imobiliária: Manterá os cadastros dos imóveis e dos dados da
imobiliária no site.
Cliente visitante: Irá utilizar o sistema para efetuar buscas de imóveis para ne-
gociação. Terá a opção de efetuar um cadastro no site a fim de informar a
uma imobiliária seu interesse em um ou mais de seus imóveis ofertados. Terá
acesso a uma estatística de preços da região pesquisada.
Cliente cadastrado: Terá os mesmos privilégios do Cliente da imobiliária visi-
tante. Além disso, poderá também criar uma lista dos imóveis encontrados
preferidos para uma consulta pessoal posterior e um cadastro com os atribu-
tos desejados em um imóvel para que o sistema possa notificá-lo quando sur-
gir um imóvel que se enquadre nas características especificadas.
2.3 REQUISITOS FUNCIONAIS
Descrevem as funcionalidades que se espera que o sistema disponibilize,
de uma forma completa e consistente. É aquilo que o utilizador espera que o sistema
ofereça, atendendo aos propósitos para qual o sistema será desenvolvido. Os requi-
sitos funcionais identificados são os seguintes:
Portal Web: Para acesso do cliente (cadastrado ou não) aos dados disponibili-
zados pelas imobiliárias. Para acesso às imobiliárias de forma a fornecerem
suas informações e seus respectivos imóveis para acesso aos clientes.
Consultas: O sistema deverá fornecer diversos tipos de consulta: rápida , utili -
zando dados de localidade do imóvel, detalhada utilizando todas as caracte-
rísticas desejadas no imóvel, consulta de imobiliárias e suas respectivas ofer-
tas, consulta de imóveis no mapa. Além disso, apresentará uma estatística de
preços da região pesquisada.
Cadastros: O sistema deverá manter diversos tipos de cadastros: cadastro de
usuários de acesso ao sistema que serão usados pelas imobiliárias, cadastro
20
de imobiliárias, cadastro de imóveis para divulgação, cadastro de imóveis pre-
feridos e de características desejadas.
Relatórios: estatística da conta de usuário da imobiliária, com informações so-
bre a quantidade de visualização dos imóveis e quantidade de contatos efetu-
ados pelo interessado, média de fotos por imóvel e quantidade de atualiza-
ções dos dados de divulgação pela imobiliária.
2.4 REQUISITOS NÃO-FUNCIONAIS
Especifica todos os requisitos não funcionais do sistema. Foram divididos
em requisitos de acesso, usabilidade, desempenho, interface, operacionais e de se-
gurança.
Acesso
Os perfis de usuário para acesso aos recursos do sistema são:
Administrador do portal: Terá acesso global ao sistema
Operador do portal: Terá acesso administrativo ao cadastro de administrado-
res da imobiliária
Administrador da imobiliária: Terá acesso global às informações de sua imobi-
liária
Operador do sistema: Terá acesso as operações relacionadas aos dados ca-
dastrais de sua imobiliária
Cliente cadastrado: Terá acesso a módulos adicionais do sistema
UsabilidadeO sistema será desenvolvido visando a simplicidade de visualização das
informações para que o cliente possa identificar rapidamente o que procura. Para
isso as páginas serão desenvolvidas evitando mistura de cores chamativas e exces-
so de propagandas.
21
O sistema oferecerá mecanismos que contemplem usuários "novatos",
isto é, oferecer recursos ( ajuda, exemplos, imagens...) para que o usuário que este-
ja aprendendo a utilizar a ferramenta saiba sem grandes dificuldades como trabalhar
nela.
O sistema oferecerá mecanismos que contemplem usuários "avançados",
isto é, oferecer recursos facilitadores (teclas de atalho, personalização de atividades)
para o usuário com maior vivência na ferramenta.
O sistema oferecerá mecanismos que permitam contemplar usuários "es-
porádicos", isto é, oferecer telas de interação ("look") fáceis de serem utilizadas
(lembradas).
O sistema deverá ser "fácil" de usar. Operações pertinentes aos requisitos
devem ser ágeis. Em outras palavras, devem ser simples, fáceis de serem executa-
das e consumir pouco tempo.
Desempenho
O sistema deve operar de forma leve, com o menor tempo de resposta
possível, para que até clientes com conexões mais lentas possam utilizar o sistema
de forma favorável.
O sistema deverá se comportar "elegantemente" quando estiver sobrecar-
regado, isto é, disponibilizar para o usuário recurso de visualização do processa-
mento que está sendo executado (por exemplo, barra de progressão).
InterfaceO acesso ao sistema requer o uso de um computador com acesso à Inter-
net.
OperacionaisO sistema deverá ser capaz de importar arquivos gráficos Jpeg.
O sistema poderá ser acessado em estações de trabalho que tenham ca-
pacidade de rodar algum navegador de Internet.
22
O sistema será hospedado em um provedor contratado que atenda à lin-
guagem PHP e ao banco de dados MySQL. Para isso, o servidor deve possuir prefe-
rencialmente o sistema operacional Linux.
Segurança
O sistema deverá restringir o acesso aos módulos de cadastro.
O sistema deverá gerar backups automáticos diariamente dos dados ar-
mazenados para uma restauração caso ocorra algum problema no servidor. Esses
backups serão enviados pelo sistema por email para os administradores do portal.
As senhas de todos os usuários deverão ser criptografadas para garantir
a segurança do sistema.
2.5 PESQUISA DE SOFTWARES EXISTENTES NO MERCADO
Encontramos alguns sites que oferecem serviços de divulgação de imó-
veis na Internet mais amplos e semelhantes ao que estamos propondo. Porém, es-
ses sites favorecem as capitais, deixando de fora cidades interinas como Volta Re-
donda e região. Destes, seguem dois:
Verícia Imóveis - site com anúncio de imóveis de vários estados e cidades, de vári-
as imobiliárias. Opções de busca: localidade, área de abrangência ao redor da locali-
dade, situação do imóvel(todos,revendas e lançamentos), preço, tipo de imóvel,
quantidade de quartos e banheiros, área do imóvel, por imobiliária. Possui visualiza-
ção no mapa.
Site http://www.vericia.com/
ZAP Imóveis - site com anúncio de imóveis de vários estados e cidades, de várias
imobiliárias. Opções de busca: simples (tipo de transação,informações e localidade),
no mapa(informa a localidade e traz os imóveis disponíveis mostrando a localização
da cidade no mapa), por lançamento (imóveis prontos para morar ou em fase de fi-
nalização), por imobiliária, busca de imobiliária.
Site http://www.zap.com.br/imoveis/busca-de-imoveis-simples.aspx
23
3 MODELAGEM
A modelagem existe para que possamos entender melhor o sistema que
está sendo desenvolvido. Os modelos fornecem uma cópia do projeto de um sistema
e ajudam a visualizá-lo como ele é ou como desejamos que seja, permitem especifi-
car a estrutura ou comportamento do sistema, proporcionam um guia para a sua
construção e documentam as decisões tomadas.
3.1 DIAGRAMA DE CASOS DE USO
Um diagrama de casos de uso é uma excelente imagem do contexto do siste-
ma; ele é um bom diagrama de contexto, ou seja, mostra a fronteira de um sistema,
o que está fora dele e como o sistema é usado. Serve como uma ferramenta de co-
municação que resume o comportamento do sistema e seus atores. (Larman,2005).
Segue abaixo o diagrama de casos de uso do sistema.
24
Figura 1: Diagrama de Casos de Uso
3.2 DESCRIÇÃO DOS CASOS DE USO
Descrição dos Casos de Uso são narrativas de texto que usualmente to-
mam a forma de uma nota ou um documento que é de alguma maneira ligado ao
Caso de Uso, e detalha o processo ou atividades que serão executadas ao longo
dele. Segue abaixo a descrição dos casos de uso do sistema:
25
Cadastrar operadores e outros administradores do portal
Sumário - O caso de uso inicia quando o administrador do portal necessita fazer a
manutenção (inclusão, alteração, exclusão) de um operador ou de um administrador
do portal. A manutenção de um usuário inclui a informação de permissão de acesso
ao sistema.
Ator primário: Administrador do portal
Pré-condições: O administrador deve estar identificado pelo sistema.
Fluxo básico1. De acordo com o tipo de manutenção desejado pelo administrador um dos
Subfluxos é executado:
a. Se o administrador deseja incluir um novo operador ou administrador do
portal, o subfluxo Incluir Administrador ou Operador do Portal é executado.
b. Se o administrador deseja alterar informações de um operador ou de um
administrador do portal já cadastrado, o subfluxo Alterar Administrador ou
Operador do Portal é executado.
c. Se o administrador deseja excluir um operador ou um administrador do por-
tal já cadastrado, o subfluxo Remover Administrador ou Operador do Portal é
executado.
Subfluxo Incluir Administrador ou Operador do Portal1. Este subfluxo inicia quando o administrador solicita incluir um usuário (um
operador ou um administrador do portal);
2. O sistema solicita ao administrador dados do novo usuário, incluindo as
permissões de acesso ao sistema que o usuário possuirá.
3. O Administrador preenche os dados acima e confirma a inclusão;
4. O sistema realiza a inclusão dos dados informados pelo administrador no
passo 3;
5. O sistema exibe uma mensagem informando que a inclusão do usuário foi
efetivada com sucesso;
Subfluxo Alterar Administrador ou Operador do Portal1. Este fluxo inicia quando o administrador solicita alterar um usuário (um ope-
rador ou um administrador do portal);
26
2. O administrador seleciona um único usuário;
3. O administrador altera os dados desejados e confirma a alteração;
4. O sistema realiza a alteração dos dados informados no passo 3;
5. O sistema exibe uma mensagem de confirmação informando que a altera-
ção do usuário foi efetivada com sucesso;
Subfluxo Remover Administrador ou Operador do Portal1. Este subfluxo inicia quando o administrador solicita remover um usuário
(um operador ou um administrador do portal);
2. O administrador seleciona qual usuário deseja remover e solicita a remo-
ção;
3. O sistema solicita a confirmação para a remoção;
4. O administrador confirma a remoção;
5. O sistema remove o usuário confirmado;
6. O sistema exibe uma mensagem informando que a remoção do usuário foi
efetivada com sucesso;
Pós-condições: As operações de inclusão, alteração, exclusão são registradas.
28
Figura 3: Tela para Adicionar Usuário
Cadastrar administradores das imobiliárias
Sumário: O caso de uso inicia quando o operador do portal necessita fazer a manu-
tenção (inclusão, alteração, exclusão) de um administrador de uma imobiliária. A
manutenção de um usuário inclui a informação de permissão de acesso ao sistema.
Ator primário: Operador do portal.
Pré-condições: O operador do portal deve estar identificado pelo sistema.
Fluxo básico:1. De acordo com o tipo de operação que o operador do portal deseja efetuar,
será executado um dos seguintes subfluxos:
a. Se o operador do portal deseja incluir um administrador de uma imobili-
ária, o subfluxo Incluir Administrador da Imobiliária é executado.
29
b. Se o operador do portal deseja alterar um administrador de uma imobi-
liária, o subfluxo Alterar Administrador da Imobiliária é executado.
c. Se o operador do portal deseja remover um administrador de uma imo-
biliária, o subfluxo Remover Administrador da Imobiliária é executado.
Subfluxo Incluir Administrador da Imobiliária1. Esse subfluxo inicia quando o operador do portal solicita a inclusão de um
administrador de uma imobiliária;
2. O sistema solicita o preenchimento dos dados do administrador da imobili-
ária, incluindo as permissões de acesso ao sistema que o usuário possui-
rá;
3. O operador do portal preenche os dados solicitados e confirma a inclusão;
4. O sistema efetua a inclusão do novo administrador da imobiliária de acor-
do com os dados informados no passo 3;
5. O sistema exibe uma mensagem informando que a inclusão foi efetuada
com sucesso.
Subfluxo Alterar Administrador da Imobiliária1. Esse subfluxo inicia quando o operador do portal solicita a alteração de
um administrador de imobiliária;
2. O sistema exibe os dados atuais do administrador da imobiliária e solicita
a alteração dos dados desejados;
3. O operador do portal preenche os dados desejados e confirma a altera-
ção;
4. O sistema efetua a alteração do administrador da imobiliária de acordo
com os dados informados no passo 3;
5. O sistema exibe uma mensagem informando que a alteração foi efetuada
com sucesso.
Subfluxo Remover Administrador da Imobiliária1. Esse subfluxo inicia quando o operador do portal solicita a remoção de um
administrador de imobiliária;
2. O sistema solicita a seleção do administrador de imobiliária a ser removi-
do;
30
3. O operador do portal seleciona o administrador de imobiliária que deseja
remover e solicita a remoção;
4. O sistema pede a confirmação dos dados para a remoção;
5. O operador do portal confirma a remoção;
6. O sistema remove o administrador de imobiliária confirmado;
7. O sistema exibe uma mensagem informando que a remoção foi efetuada
com sucesso.
Pós-condições: As operações de inclusão, alteração e remoção são registradas.
Cadastrar operadores das imobiliárias
Sumário: O caso de uso inicia quando o administrador da imobiliária necessita fazer
a manutenção (inclusão, alteração, exclusão) de um operador da imobiliária. A ma-
nutenção de um usuário inclui a informação de permissão de acesso ao sistema.
Ator primário: Administrador da imobiliária.
Pré-condições: O administrador da imobiliária deve estar identificado pelo sistema.
Fluxo básico:1. De acordo com o tipo de operação que o administrador da imobiliária de-
seja efetuar, será executado um dos seguintes subfluxos:
d. Se o administrador da imobiliária deseja incluir um operador da imobili-
ária, o subfluxo Incluir Operador da Imobiliária é executado.
e. Se o administrador da imobiliária deseja alterar um operador da imobili -
ária, o subfluxo Alterar Operador da Imobiliária é execuado.
f. Se o administrador da imobiliária deseja remover um operador da imo-
biliária, o subfluxo Remover Operador da Imobiliária é execuado.
Subfluxo Incluir Operador da Imobiliária1. Esse subfluxo inicia quando o administrador da imobiliária solicita a inclu-
são de um operador da imobiliária;
2. O sistema solicita o preenchimento dos dados do operador da imobiliária,
incluindo as permissões de acesso ao sistema que o usuário possuirá;
31
3. O administrador da imobiliária preenche os dados solicitados e confirma a
inclusão;
4. O sistema efetua a inclusão do novo operador da imobiliária de acordo
com os dados informados no passo 3;
5. O sistema exibe uma mensagem informando que a inclusão foi efetuada
com sucesso.
Subfluxo Alterar Operador da Imobiliária1. Esse subfluxo inicia quando o administrador da imobiliária solicita a altera-
ção de um operador da imobiliária;
2. O sistema exibe os dados atuais do operador da imobiliária e solicita a al-
teração dos dados desejados;
3. O administrador da imobiliária preenche os dados desejados e confirma a
alteração;
4. O sistema efetua a alteração do operador da imobiliária de acordo com os
dados informados no passo 3;
5. O sistema exibe uma mensagem informando que a alteração foi efetuada
com sucesso.
Subfluxo Remover Operador da Imobiliária1. Esse subfluxo inicia quando o administrador da imobiliária solicita a remo-
ção de um operador da imobiliária;
2. O sistema solicita a seleção do operador da imobiliária a ser removido;
3. O administrador da imobiliária seleciona o operador da imobiliária que de-
seja remover e solicita a remoção;
4. O sistema pede a confirmação dos dados para a remoção;
5. O administrador da imobiliária confirma a remoção;
6. O sistema remove o operador da imobiliária confirmado;
7. O sistema exibe uma mensagem informando que a remoção foi efetuada
com sucesso.
Pós-condições: As operações de inclusão, alteração e remoção são registradas.
32
Figura 4: Tela de listagem usuários de imobiliária
Gerar relatórios de estatística de acessos aos imóveis, imóveis divulgados e atualizações de imóveis de todas as imobiliárias.
Sumário: Esse caso de uso inicia quando um administrador do portal necessitar ge-
rar relatórios de estatísticas de acessos aos imóveis, imóveis divulgados e atualiza-
ções de imóveis de todas as imobiliárias a fim de avaliar o sistema e controlar a qua-
lidade do portal.
Ator primário: Administrador do portal.
Pré-condições: O administrador do portal deve estar identificado pelo sistema.
Fluxo básico:1. O administrador acessa a opção 'Relatórios';
2. O sistema solicita o período para a geração do relatório e se deseja ge-
rar de todas as imobiliárias ou de uma específica;
33
3. O administrador do portal informa os dados solicitados ao sistema;
4. O sistema apresenta as estatísticas das imobiliárias quanto aos imó-
veis, imóveis divulgados e atualizações de imóveis.
Pós-condições: Gera-se um relatório de estatísticas de acessos aos imóveis, imó-
veis divulgados e atualizações de imóveis.
Figura 5: Tela do relatório de todas as imobiliárias
Gerar relatórios de estatística de acessos aos imóveis e de imóveis divulgados de sua imobiliária
Sumário: O caso de uso se inicia quando um administrador da imobiliária necessita
de um relatório de divulgação.
Atores: Administrador da imobiliária.
Pré-condições: O administrador da imobiliária deve estar previamente cadastrado
com permissão de acesso ao sistema.
34
Fluxo principal: 1. O administrador da imobiliária aciona a opção 'Relatórios'.
2. O sistema solicita o período para a geração do relatório.
3. O administrador da imobiliária informa o período ao sistema e confirma a ge-
ração do relatório.
4. O sistema exibe um relatório mostrando o total de acessos por imóvel e o to-
tal de imóveis divulgados pela imobiliária.
Pós-condições: Pergunta se deseja imprimir o relatório.
Figura 6: Tela do relatório da imobiliária corrente
Fazer login
35
Sumário: O caso de uso se inicia quando um usuário necessita estar logado no sis-
tema.
Ator primário: Administrador do portal, operador do portal, administrador da imobili-
ária, operador da imobiliária e cliente cadastrado.
Pré-condições: O usuário deve estar previamente cadastrado com permissão de
acesso ao sistema.
Fluxo principal:1. O usuário aciona a opção 'Login'.
2. O sistema aciona o módulo responsável pelo login no sistema e solicita o lo-
gin e a senha do usuário.
3. O usuário preenche os campos com os dados solicitados.
4. O sistema faz uma verificação de permissão de acesso do usuário utilizando
os parâmetros informados(login e senha).
5. O sistema aciona o módulo correspondente à permissão de acesso do usuá-
rio, exibindo sua tela principal e uma mensagem de boas vindas.
Pós-condições: O login e a senha são autenticados e é aberta uma sessão de uso
do sistema para o usuário.
36
Figura 7: Tela de login
Manter dados cadastrais da imobiliária
Sumário - O caso de uso inicia quando um operador da imobiliária necessita fazer a
inclusão ou alteração dos dados cadastrais da imobiliária.
Ator primário: Operador da imobiliária
Pré-condições: O operador da imobiliária deve estar identificado pelo sistema.
Fluxo básico1. O operador da imobiliária aciona a opção 'Dados cadastrais da imobiliária';
2. O sistema exibe um formulário;
a. Se já houver informações da imobiliária registradas no banco, o formu-
lário as exibe e o usuário pode alterá-las.
b. Se não houver informações registradas no banco, o formulário é exibido
com os campos em branco e o usuário pode preenchê-los.
37
3. O operador da imobiliária confirma a operação.
4. O sistema realiza a inclusão dos dados informados pelo operador da imobiliá-
ria no
passo 2;
Pós-condições: Os dados são gravados e o sistema exibe uma mensagem confir-
mando a gravação;
Figura 8: Tela de cadastro de imobiliária
Manter Cadastro de Imóveis
Sumário: Esse caso de uso inicia quando um operador de uma imobiliária deseja in-
cluir um novo cadastro de imóvel no sistema.
38
Ator primário: Operador da imobiliária.
Pré-condições: O Operador da imobiliária deve estar identificado pelo sistema.
Fluxo básico:1. De acordo com o tipo de operação que o operador da imobiliária deseja efetu-
ar, será executado um dos seguintes subfluxos:
a. Se o operador da imobiliária deseja incluir um imóvel, o subfluxo Incluir
Imóvel é executado.
b. Se o operador da imobiliária deseja remover um imóvel, o subfluxo
Remover Imóvel é execuado.
c. Se o operador da imobiliária deseja alterar um imóvel, o subfluxo Alte-
rar Imóvel é executado.
Subfluxo Incluir Imóvel1. Esse subfluxo inicia quando o operador da imobiliária solicita a inclusão
de um imóvel;
2. O sistema solicita o preenchimento dos dados do imóvel;
3. O operador da imobiliária preenche os dados solicitados e confirma a
inclusão;
4. O sistema efetua a inclusão do novo imóvel de acordo com os dados
informados;
5. O sistema exibe uma mensagem informando que a inclusão foi efetua-
da com sucesso.
Subfluxo Remover Imóvel1. Esse subfluxo inicia quando o operador da imobiliária solicita a remo-
ção de um ou mais imóveis;
2. O sistema solicita a seleção dos imóveis a serem removidos;
3. O operador da imobiliária seleciona os imóveis desejados e solicita a
remoção;
4. O sistema pede a confirmação dos dados para a remoção;
5. O operador da imobiliária confirma a remoção;
6. O sistema remove os imóveis confirmados;
7. O sistema exibe uma mensagem informando que a remoção foi efetua-
da com sucesso.
Subfluxo Alterar Imóvel
39
1. Esse subfluxo inicia quando o operador da imobiliária solicita a altera-
ção de um imóvel;
2. O sistema exibe os dados atuais do imóvel e solicita a alteração dos
dados desejados;
3. O operador da imobiliária preenche os dados desejados e confirma a
alteração;
4. O sistema efetua a alteração do imóvel de acordo com os dados infor-
mados;
5. O sistema exibe uma mensagem informando que a alteração foi efetua-
da com sucesso.
Pós-condições: As operações de inclusão, remoção e alteração são registradas.
41
Figura 10: Tela de listagem de imóveis
Consultar imóveis
Sumário - O caso de uso inicia quando um cliente, cadastrado ou não deseja con-
sultar imóveis.
Ator primário: Cliente visitante e Cliente cadastrado.
Fluxo básico:1. De acordo com o tipo de consulta desejada pelo cliente um dos Subfluxos é
executado:
a. Se o cliente deseja uma consulta rápida de imóveis, o subfluxo Consulta rá-
pida é executado.
b. Se o cliente deseja uma consulta detalhada de imóveis, o subfluxo Consul-
ta detalhada é executado.
42
c. Se o cliente deseja uma consulta de imóveis no mapa, o subfluxo Consulta
no mapa é executado.
Subfluxo Consulta Rápida1. Este subfluxo inicia quando o cliente solicita uma consulta rápida de imó-
veis;
2. O sistema solicita ao cliente o tipo de transação (comprar,alu-
gar,alugar por temporada), tipo do imóvel (casa,apartamento,etc) e bair-
ro do imóvel.
3. O cliente preenche os dados acima e confirma a consulta;
4. O sistema exibe os imóveis encontrados com as características informa-
das;
Subfluxo Consulta Detalhada1. Este fluxo inicia quando o cliente solicita uma consulta detalhada de imó-
veis.
2. O sistema exibe um formulário com todas as características que um imóvel
pode ter.
3. O cliente seleciona as características que deseja e confirma a consulta;
4. O sistema exibe os imóveis que contemplam as características informadas.
Subfluxo Consulta no Mapa1. Este subfluxo inicia quando o cliente solicita uma consulta de imóveis no
mapa;
5. O sistema solicita ao cliente o tipo de transação (comprar,alu-
gar,alugar por temporada), tipo do imóvel (casa,apartamento,etc) e bair-
ro do imóvel.
2. O cliente preenche os dados acima e confirma a consulta;
3. O sistema exibe uma tabela com os dados dos imóveis encontrados;
4. O sistema exibe uma opção de apontar no mapa a localização de um de-
terminado imóvel.
Pós-condições: O sistema oferece opção de contato com a imobiliária responsável
pelo imóvel escolhido.
46
Consultar ImobiliáriasSumário: Esse caso de uso inicia quando um cliente, cadastrado ou não, deseja
consultar as imobiliárias disponíveis no sistema.
Ator primário: Cliente visitante e Cliente cadastrado
Fluxo básico:1. O cliente acessa a opção 'Imobiliárias'.
2. O sistema solicita o preenchimento das seguintes informações para
consulta:
a. localidade (cidade, bairro);
b. nome da imobiliária;
c. CRECI;
3. O cliente preenche as informações de acordo com o desejado e solicita
a busca;
4. O sistema apresenta o resultado da busca de acordo com os dados in-
formados no passo 2.
Pós-condições: O sistema apresenta uma opção para impressão.
47
Figura 14: Tela de consulta de imobiliárias
Manter cadastro de características desejadas no imóvel
Sumário - O caso de uso inicia quando um cliente cadastrado deseja manter
(incluir,alterar,excluir) informações a cerca das características desejadas em um
imóvel, tornando possível um contato da imobiliária caso ofereça um imóvel que se
enquadre.
Ator primário: Cliente cadastrado.
Pré-condições: O cliente deve estar identificado pelo sistema.
Fluxo básico1. O cliente aciona a opção 'Perfis de imóveis'.
2. De acordo com o tipo de manutenção desejado pelo cliente um dos
Subfluxos é executado:
48
a. Se o cliente deseja incluir informações sobre as características desejadas
em um imóvel, o subfluxo Incluir perfil é executado.
b. Se o cliente deseja alterar informações sobre as características desejadas
em um imóvel, o subfluxo Alterar perfil é executado.
c. Se o cliente deseja excluir um perfil de imóvel, o subfluxo Remover perfil é
executado.
Subfluxo Incluir Perfil1. Este subfluxo inicia quando o cliente solicita incluir um perfil de imóvel;
2. O sistema solicita ao cliente as características desejadas em um imóvel.
3. O cliente preenche os dados acima e confirma a inclusão;
4. O sistema realiza a inclusão dos dados informados pelo cliente no
passo 3;
Subfluxo Alterar Perfil1. Este fluxo inicia quando o cliente solicita alterar um perfil de imóvel;
2. O cliente seleciona um único perfil;
3. O cliente altera os dados desejados e confirma a alteração;
4. O sistema realiza a alteração dos dados informados no passo 3;
Subfluxo Remover Perfil1. Este subfluxo inicia quando o cliente solicita remover um perfil de imóvel;
2. O cliente seleciona qual perfil deseja remover e solicita a remoção;
3. O sistema solicita a confirmação para a remoção;
4. O cliente confirma a remoção;
5. O sistema remove o perfil confirmado;
Pós-condições: A operação é registrada e o sistema exibe uma mensagem de su-
cesso para o cliente;
50
Figura 16: Tela de listagem de perfis de imóveis
Manter lista de imóveis preferidosSumário: Esse caso de uso inicia quando um cliente cadastrado deseja incluir um
imóvel em sua lista de preferidos.
Ator primário: Cliente cadastrado
Pré-condições: O Cliente cadastrado deve estar identificado pelo sistema.
Fluxo básico:1. De acordo com o tipo de operação que o cliente cadastrado deseja efe-
tuar, será executado um dos seguintes subfluxos:
a. Se o cliente cadastrado deseja incluir um imóvel na lista de preferidos,
o subfluxo Incluir Imóvel na Lista de Preferidos é executado.
b. Se o cliente cadastrado deseja remover um imóvel da lista de preferi-
dos, o subfluxo Remover Imóvel da Lista de Preferidos é executado.
51
Subfluxo Incluir Imóvel na Lista de Preferidos1. Esse subfluxo inicia quando o cliente cadastrado, ao consultar um imó-
vel, solicita a inclusão deste na lista de preferidos;
2. O sistema pergunta se o cliente cadastrado deseja receber informações
sobre modificações no imóvel informado;
3. O cliente cadastrado responde a pergunta e confirma a inclusão;
4. O sistema efetua a inclusão do novo imóvel na lista de preferidos;
5. O sistema exibe uma mensagem informando que a inclusão foi efetua-
da com sucesso.
Subfluxo Remover Imóvel da Lista de Preferidos1. Esse subfluxo inicia quando o operador da imobiliária solicita a remo-
ção de um imóvel da lista de preferidos;
2. O sistema solicita a seleção do imóvel a ser removido da lista;
3. O cliente cadastrado seleciona o imóvel desejado e solicita a remoção;
4. O sistema pede a confirmação para a remoção;
5. O cliente cadastrado confirma a remoção;
6. O sistema remove o imóvel confirmado da lista de preferidos;
7. O sistema exibe uma mensagem informando que a remoção foi efetua-
da com sucesso.
Pós-condições: As operações de inclusão e remoção são registradas.
52
Figura 17: Tela de listagem de imóveis preferidos
Registrar-seSumário: O caso de uso se inicia quando um cliente visitante solicita registrar-se no
site.
Ator primário: Cliente visitante.
Fluxo principal:1. O cliente aciona a opção 'Registrar-se'.
2. O sistema aciona o módulo responsável pelo cadastro de clientes no sistema
e solicita o email, nome e a senha do cliente.
3. O cliente preenche os campos com os dados solicitados.
4. O sistema efetua a inclusão do cliente utilizando os dados enviados.
5. O sistema exibe uma mensagem informando que o cadastro foi concluído.
Pós-condições: A operação de inclusão de cliente é registrada.
53
Figura 18: Tela de registro
3.3 DIAGRAMA DE CLASSES
UML inclui diagramas de classe para ilustrar classes, interfaces e suas associações. Eles
são usados para modelagem estática de objetos. O mesmo diagrama UML pode ser
usado em múltiplas perspectivas. Em uma perspectiva conceitual, o diagrama de classes
pode ser usado para visualizar um modelo de domínio. Pode ser usado também em uma
perspectiva de software ou projeto. Um termo para essa finalidade é diagrama de
classes de projeto (DCP). (LARMAN,2005)
Seguem abaixo os diagramas de classe em uma perspectiva conceitual para
visualização do modelo de domínio.
54
3.3.1 Controle de Acesso
O sistema apresenta seis atores diferenciados pelas funcionalidades a que
tem acesso.
Administrador do portal – responsável pela manutenção geral do site. Res-
ponsável também por cadastrar e liberar acesso a outros administradores do portal e
aos operadores do portal. Tem acesso também aos relatórios de divulgação referen-
tes a todas as imobiliárias cadastradas.
Operador do portal – responsável por cadastrar e liberar acesso aos administrado-
res das imobiliárias e pelo gerenciamento desses usuários.
Administrador da imobiliária – responsável por cadastrar e liberar acesso aos
operadores da imobiliária e pelo gerenciamento desses usuários.Tem acesso aos re-
latórios de divulgação relativos à sua imobiliária.
Operador da imobiliária – responsável por manter o cadastro da imobiliária a
que estiver vinculado e por manter e gerenciar o cadastro de imóveis.
Cliente cadastrado – tem acesso a funcionalidades como manter o cadastro de
preferências pessoais em um imóvel e lista de imóveis preferidos, além das funcio-
nalidades que o cliente visitante tem acesso.
Cliente visitante – tem acesso às consultas de imóveis e de imobiliárias.
Esses níveis de acesso ao sistema foram modelados segundo o diagrama de
classes abaixo.
55
Figura 19: Controle de Acesso
3.3.2 Imobiliária e Imóveis
Segue o diagrama de classes referentes à imobiliária e aos imóveis.
56
Figura 20: Imobiliárias e Imóveis
3.3.3 Preferências de cliente cadastrado
Um cliente cadastrado possui benefícios como um cadastro de imóveis
preferidos (favoritos) acessados no site e um cadastro de características desejadas
em um imóvel, para possibilitar um contato da imobiliária se o imóvel com o perfil ca-
dastrado estiver disponível. Segue a modelagem:
57
Figura 21: Preferências de cliente cadastrado
3.4 DIAGRAMAS DE SEQUÊNCIA
Os diagramas de sequência e os diagramas de comunicação – chamados de diagramas
de interação – são dois dos diagramas utilizados na UML para a modelagem dos
aspectos dinâmicos de sistemas. Um diagrama de interação mostra uma interação,
formada por um conjunto de objetos e seus relacionamentos, incluindo as mensagens
que poderão ser enviadas entre eles. Um diagrama de sequência é um diagrama de
interação que dá ênfase à ordenação temporal das mensagens; o diagrama de
comunicação é um diagrama de interação que dá ênfase à organização estrutural dos
objetos que enviam e recebem mensagens. (BOOCH, RUMBAUGH, JACOBSON, 2006)
Neste trabalho faremos uso apenas do diagrama de sequência por ser de
mais fácil construção e entendimento, já que apresenta a rotina de forma sequencial
de acordo com o fluxo de chamada. A seguir apresentamos os diagramas de se-
quência.
62
Figura 30: Consultar imobiliárias
Figura 31: Manter cadastro de características desejadas no imóvel
64
4 CONSTRUÇÃO DO SISTEMA
A seguir, descrevemos as ferramentas utilizadas no processo de desen-
volvimento do sistema:
• Para a construção da base de dados será utilizado o MySQL, um sistema de
gerenciamento de banco de dados (SGBD) de fácil integração com a lingua-
gem de programação adotada, boa portabilidade (suporta praticamente qual-
quer plataforma atual), excelente desempenho e estabilidade, e fácil de usar.
• Adotamos o PHP como linguagem de programação. O PHP é uma linguagem
de desenvolvimento para web que tem como objetivo principal a implementa-
ção de soluções web velozes, simples e eficientes. Outra boa característica
dessa linguagem é a portabilidade, que se dá pela independência de platafor-
ma.
• Para auxiliar o desenvolvimento da aplicação com o PHP, adotamos também
o framework CakePHP, que tem por objetivo o desenvolvimento ágil sem a
perda de flexibilidade. O CakePHP utiliza padrões de projeto conhecidos, en-
tre eles o MVC (Model-View-Controller).
• Como ferramenta auxiliar, foi utilizado também o Netbeans IDE 6.5, que é um
ambiente de desenvolvimento integrado (IDE) gratuito, multiplataforma e de
código aberto para desenvolvedores de software na linguagem Java, C/C++,
PHP, Groovy, Ruby entre outras.
4.1 BANCO DE DADOS
Os bancos de dados surgiram graças à necessidade das grandes empre-
sas de armazenar grandiosas quantidades de informação de uma forma rápida, sim-
65
ples e confiável, e que por sua vez pudessem acessá-la em qualquer momento sem
a necessidade de se deslocar às salas dedicadas a arquivar documentação, como
até há pouco tempo se fazia.
Quando começou o surgimento de programas de computador, começou-
se a armazenar dados nos arquivos dos programas, o qual era mais cômodo, porém,
ainda assim tinham grandes dificuldades na hora de modificar registros, estruturas
ou simplesmente buscar informação.
Na década de sessenta, surgiram os bancos de dados. Nestes bancos de
dados eram salvos os dados utilizados pelos usuários, empresas, etc.
Como definição de banco de dados, entendemos que se trata de um con-
junto de dados inter-relacionados e armazenados sem redundâncias desnecessári-
as, os quais servem às aplicações sem estar relacionados de uma maneira direta a
elas.
Um banco de dados pode ser utilizado por várias aplicações e usuários.
Todo banco de dados deve permitir inserir, modificar e excluir dados, portanto nos
bancos de dados se salvam informações de dois tipos:
Os dados de usuários (dados usados pelas aplicações)
Os dados de sistema (dados que o banco de dados utiliza para sua administração.
Ex: Dados dos usuários que têm acesso ao banco de dados).
Segue o diagrama de entidades e relacionamentos do sistema implemen-
tado no MySQL.
Figura 33: DER Controle de Acesso
67
Figura 35: DER Preferências de cliente cadastrado
4.2 DICIONÁRIO DE DADOS
“É um documento que registra dados sobre os dados – ou seja, registra
metadados.” (LARMAN,2005). Nas tabelas seguintes, são apresentados os campos
de cada entidade no banco de dados, com os respectivos tipos, tamanhos, chaves e
descrições:
Tabela BAIRROS
68
Campo Chave Tipo Descriçãoid primária int(11) identificação do bairro
nome única varchar(100) nome do bairro
cidade_id estrangeira int(11) identificação da cidade
created datetime data de criação do registro
modified datetime data de modificação do registroTabela 1: Bairros
Tabela CIDADESCampo Chave Tipo Descrição
id primária int(11) identificação da cidade
nome única varchar(100) nome da cidade
estado_id estrangeira int(11) identificação do estado
created datetime data de criação do registro
modified datetime data de modificação do registroTabela 2: Cidades
Tabela ESTADOSCampo Chave Tipo Descrição
id primária int(11) identificação do estado
nome única varchar(50) nome do estado
sigla char(2) sigla do estado
created datetime data de criação do registro
modified datetime data de modificação do registroTabela 3: Estados
Tabela IMOBILIARIA_USUARIOSCampo Chave Tipo Descrição
id primária int(11) identificação do registro
imobiliaria_id estrangeira int(11) identificação da imobiliária
usuario_id estrangeira int(11) identificação do usuário
tipo int(11) tipo de acesso ao sistema
created datetime data de criação do registro
modified datetime data de modificação do registroTabela 4: Imobiliária x Usuários
Tabela IMOBILIARIAS
69
Campo Chave Tipo Descriçãoid primária int(11) identificação da imobiliária
nome única varchar(100) nome da imobiliária
logradouro varchar(100) logradouro
numero varchar(20) número
complemento varchar(50) complemento
bairro_id estrangeira int(11) identificação do bairro
telefone varchar(50) telefone
site varchar(100) site
email varchar(100) email
created datetime data de criação do registro
modified datetime data de modificação do registroTabela 5: Imobiliárias
Tabela IMOVEISCampo Chave Tipo Descrição
id primária int(11) identificação do imóvel
descricao text descrição do imóvel
imobiliaria_id estrangeira int(11) identificação da imobiliáriaimovel_transa-
cao_idestrangeira int(11) identificação da transação
imovel_subti-
po_idestrangeira int(11) identificação do subtipo
bairro_id estrangeira int(11) identificação do bairro
logradouro varchar(100) logradouro
numero varchar(20) número
complemento varchar(50) complemento
created datetime data de criação do registro
modified datetime data de modificação do registroTabela 6: Imóveis
Tabela IMOVEIS_PREFERIDOSCampo Chave Tipo Descrição
usuario_id primária int(11) identificação do usuário
imovel_id primária int(11) identificação do imóvelTabela 7: Imóveis preferidos
Tabela IMOVEL_IMAGENSCampo Chave Tipo Descrição
70
id primária int(11) identificação da imagem
imovel_Id estrangeira int(11) identificação do imóvel
imagem blob imagem do imóvel
descricao varchar(100) descrição da imagem
ordem int(11) ordem de exibição
created datetime data de criação do registroTabela 8: Imagens de Imovel
Tabela IMOVEL_IMOVEL_PROPRIEDADESCampo Chave Tipo Descrição
id primária int(11) identificação do registro
imovel_id estrangeira int(11) identificação do imóvelimovel_propri-
edade_idestrangeira int(11) identificação da propriedade
valor varchar(100) valor da propriedade
created datetime data de criação do registro
modified datetime data de modificação do registroTabela 9: Imóvel x Propriedades de Imóvel
Tabela IMOVEL_PREFERENCIASCampo Chave Tipo Descrição
id primária int(11) identificação de preferência em imóvel
transacao_id estrangeira int(11) transação desejada
subtipo_id estrangeira int(11) subtipo de imóvel desejado
bairro_id estrangeira int(11) bairro desejado
usuario_id estrangeira int(11) identificação do usuárioTabela 10: Preferências de imóvel
Tabela IMOVEL_PREFERENCIA_IMOVEL_PROPRIEDADESCampo Chave Tipo Descrição
imovel_propri-
edades_idprimária int(11) identificação da propriedade desejada
valor varchar(30) valor da propriedade desejadaimovel_prefe-
rencias_idprimária int(11) identificação das preferências do usuário
Tabela 11: Preferências de Imóvel x Propriedades de Imóvel
Tabela IMOVEL_PROPRIEDADESCampo Chave Tipo Descrição
71
id primária int(11) identificação da propriedade
nome única varchar(100) nome da propriedade
texto_ajuda varchar(255) texto_ajudaTabela 12: Propriedades de Imóvel
Tabela IMOVEL_SUBTIPOSCampo Chave Tipo Descrição
id primária int(11) identificação do subtipo
imovel_tipo_id estrangeira int(11) identificação do tipo
nome varchar(100) nome do subtipo
created datetime data de criação
modified datetime data de modificaçãoTabela 13: Subtipos de imóvel
Tabela IMOVEL_TIPOSCampo Chave Tipo Descrição
id primária int(11) identificação do tipo de imóvel
nome varchar(100) nome do tipo de imóvel
created datetime data de criação
modified datetime data de modificaçãoTabela 14: Tipos de imóvel
Tabela IMOVEL_TRANSACOESCampo Chave Tipo Descrição
id primária int(11) identificação da transação
nome varchar(50) nome da transação
created datetime data de criação
modified datetime data de modificaçãoTabela 15: Transações de imóvel
Tabela 16: UsuáriosTabela USUARIOS
Campo Chave Tipo Descriçãoid primária int(11) identificação do usuário
email varchar(100) email do usuário
senha varchar(40) senha do usuário
nome varchar(100) nome do usuário
created datetime data de criação do registro
modified datetime data de modificação do registro
ativo tinyint(1) indicação se o usuário está ativo
tipo int(1) tipo de acesso ao sistema
72
4.3 TESTES
“Não se pode garantir que todo software funcione corretamente, sem a
presença de erros” (MYERS, 2004, p. 8), visto que os mesmos muitas vezes possu-
em um grande número de estados com atividades e algoritmos complexos. O tama-
nho do projeto a ser desenvolvido e a quantidade de pessoas envolvidas no proces-
so aumentam ainda mais a complexidade. Idealmente, toda permutação possível do
software deveria ser testada. Entretanto, isso se torna impossível para a ampla mai-
oria dos casos devido à quantidade impraticável de possibilidades. “A qualidade do
teste acaba se relacionando à qualidade dos profissionais envolvidos em filtrar as
permutações relevantes” (MYERS, 2004, p. 5).
Falhas podem ser originadas por diversos motivos. Por exemplo, a espe-
cificação pode estar errada ou incompleta, ou pode conter requisitos impossíveis de
serem implementados, devido à limitações de hardware ou software. A implementa-
ção também pode estar errada ou incompleta, como um erro de um algoritmo. Por-
tanto, uma falha é o resultado de um ou mais defeitos em algum aspecto do sistema.
Durante a implementação do sistema, as funcionalidades principais foram
sendo desenvolvidas e testadas em pequena escala, sendo que as falhas encontra-
das foram sendo corrigidas. No final da implementação dos módulos principais, es-
ses testes foram intensificados, utilizando a técnica de leitura baseada na perspecti -
va do usuário. Nessa técnica, os requisitos devem capturar adequadamente as fun-
cionalidades necessárias para o sistema. Representa a visão do usuário do sistema
(e não uma visão de implementação) e ajuda a validar se o sistema sendo descrito
irá funcionar da maneira esperada pelos usuários. A representação escolhida para
as funcionalidades foram os casos de uso, que tomados em conjunto, constituem to-
das as possibilidades de utilização do sistema. Tomando as funcionalidades princi -
pais executadas em conjunto com o controle de acesso, o sistema apresentou falhas
restritas ao controle de acesso. Atualmente, somente o administrador do portal está
com permissão total a todas as funcionalidades do sistema, sendo que essa falha,
que é um tanto complexa, deverá ser corrigida antes da implantação do sistema. To-
mando as funcionalidades principais isoladamente, todas apresentaram respostas
73
positivas aos testes, com índice mínimo de falhas que foram imediatamente corrigi-
das.
4.4 IMPLANTAÇÃO
O sistema será implantado em um servidor contratado que seja capaz de hos-
pedar aplicações Web em PHP e MySQL, preferencialmente com o sistema operaci-
onal Linux. Para que o sistema possa ser bem utilizado esse servidor deve ser segu-
ro e estável.
Após a instalação do sistema no servidor escolhido, ele será apresentado ao
maior número de imobiliárias possível, a fim de termos uma base de dados rica e
maior índice de sucesso nas buscas realizadas pelos clientes através do sistema.
Cada imobiliária que aderir ao sistema será devidamente cadastrada por um
dos operadores do portal e passará por uma fase de treinamento para conhecer to-
das as funcionalidades e fazer um bom uso do sistema. Feito isso as imobiliárias es-
tarão aptas a divulgar seus imóveis adequadamente, inserindo dados detalhados e
fotos dos mesmos.
O portal foi desenvolvido para ter uma boa colocação em sites de busca e será
divulgado para que chegue ao conhecimento da população que poderá fazer suas
buscas e se cadastrar gratuitamente.
74
CONCLUSÕES E TRABALHOS FUTUROS
O desenvolvimento e implantação desta ferramenta para a centralização
dos anúncios de imóveis em um único site na internet traz grandes benefícios ao pú-
blico que deseja encontrá-los. Benefícios tais como detalhes de informações sobre
os imóveis encontrados, agilidade nas buscas e a própria centralização das informa-
ções.
No futuro pretendemos implantar o sistema em toda a região Sul Flumi-
nense agregando o máximo de imobiliárias possível, construindo uma base de da-
dos rica em informações e atualizada para atender bem a população. Com a utiliza-
ção da ferramenta ao longo do tempo e o aumento da demanda, novas funcionalida-
des poderão ser implementadas para atender ainda melhor aos usuários.
75
REFERÊNCIAS BIBLIOGRÁFICAS
1. LARMAN, Craig. Utilizando UML e Padrões: uma introdução à análise e ao projeto orientado a objeto e ao desenvolvimento iterativo, tradução
Rosana Vaccare Braga, 3. Ed., Porto Alegre, RS, Bookman, 2007.
2. BOOCH, Grady. UML: guia do usuário / Grady Booch, James Rumbaugh, Ivar Jacobson; tradução de Fábio Freitas da Silva e Cristina de Amorim Ma-
chado. Rio de Janejro: Elsevier, 2005 - 2ª Reimpressão.
3. BOGONI, Eduardo H. Um novo sistema de atendimento aos pacientes do sistema hospitalar público do município de Volta Redonda, 2007. Mono-
grafia - Curso de Tecnologia de Sistemas de Computação, CEDERJ
(UFF/UFRJ), Volta Redonda, RJ.
4. SILVA, Henrique D. da; CARVALHO, Emanual C. de. Sistema de Gerência de Tutorias do CEDERJ – Volta Redonda, 2009. Monografia – Curso de
Tecnologia em Sistemas de Computação, CEDERJ (UFF/UFRJ), Volta Re-
donda, RJ.
5. AGUIAR, Daniel G.; LIMA, Rafael O. Gerenciamento de Disciplinas, 2009.
Monografia – Curso de Tecnologia em Sistemas de Computação, CEDERJ
(UFF/UFRJ), Piraí, RJ.
6. http://book.cakephp.org/pt - Manual do CakePHP, em português. Acessado
em 15/12/2009.
7. http://br.php.net/manual/pt_BR/ - Manual do PHP, em português. Acessado
em 14/12/2009.
8. http://pt.wikipedia.org/ - Wikipédia, a enciclopédia livre, em português. Aces-
sado em 16/12/2009.