Agradecimentos
Ao professor António Pinto pela orientação e constante disponibilidade ao longo deste projeto.
À minha família, particularmente a minha mãe, pelo apoio ao longo do percurso que culminou na
realização deste relatório.
A todos aqueles que, de alguma forma, contribuíram para a realização do curso, bem como o do
presente documento
I
Resumo
A realização de tarefas com auxilio de um computador veio facilitar o trabalho de muitas pessoas, um
caso em particular, é a gestão de imóveis arrendados. Todos os senhorios têm de executar um conjunto
de tarefas semelhantes, tratar da informação relativa aos inquilinos, manter um registo de todas
despesas e receitas dos imóveis, notificar os inquilinos das mensalidades em falta, manter o registos de
todos os pagamentos feitos. Este projeto visa o desenvolvimento de uma aplicação, multi-plataforma,
capaz de fazer a gestão de imóveis arrendados.
Aplicação resultante deste projeto, de nome GIA, permite que os seus utilizadores façam uma gestão
mais cuidada e organizada dos seus imóveis. Em particular é possível emitir-se recibos de renda
mensais, avisos de débito, permite o envio de emails, e gerir as despesas que o senhorio tenha com o
imóvel (despesas de manutenção/reparação, impostos), entre outros. Esta aplicação permite ainda gerir
conjuntos de imóveis.
Os objetivos do projeto foram alcançados com sucesso, estando a aplicação desenvolvida e passível de
ser utilizada.
II
Índice
1 Introdução............................................................................................................................................1
2 Ferramentas utilizadas.........................................................................................................................2
3 GIA......................................................................................................................................................6
3.1 Caso de Estudo.................................................................................................................................6
3.2 Metodologia......................................................................................................................................6
3.3 Modelo proposto...............................................................................................................................7
3.4 Levantamento requisitos...................................................................................................................9
3.5 Requisitos funcionais......................................................................................................................10
3.6 Descrição de Casos de Uso.............................................................................................................11
3.7 Requisitos não funcionais...............................................................................................................13
3.8 Modelação de processos de negócio...............................................................................................13
3.9 Base Dados.....................................................................................................................................15
4 Avaliação do trabalho........................................................................................................................17
4.1 Multi-plataforma.............................................................................................................................17
4.2 Algoritmos......................................................................................................................................19
5 Conclusões........................................................................................................................................24
6 Anexo A.............................................................................................................................................26
7 Anexo B.............................................................................................................................................27
8 Anexo C- Documento de Especificação de Requisitos......................................................................28
III
Índice de tabelas
Sketch vs Prototype................................................................................................................................3
Pacotes..................................................................................................................................................10
Registar Aluguer...................................................................................................................................11
Gerar Recibo........................................................................................................................................12
Gerar Aviso de Débito..........................................................................................................................12
Registar Inquilino.................................................................................................................................12
Registar imóvel.....................................................................................................................................13
Requisitos Não Funcionais...................................................................................................................13
Descrição da Base Dados......................................................................................................................16
Pacotes..................................................................................................................................................35
Ver Dados Pessoais...............................................................................................................................40
Editar Dados Pessoais...........................................................................................................................41
Selecionar Base Dados.........................................................................................................................42
Efetuar Backup.....................................................................................................................................43
Enviar Email.........................................................................................................................................44
Upload Ficheiro....................................................................................................................................45
Registar Inquilino.................................................................................................................................47
Ver Lista Inquilinos..............................................................................................................................48
Atualizar Inquilino................................................................................................................................49
Remover Inquilino................................................................................................................................50
Pesquisar Inquilinos..............................................................................................................................51
Registar Imóvel....................................................................................................................................52
Ver Lista de Imóveis.............................................................................................................................53
Atualizar imóvel...................................................................................................................................54
Remover Imóvel...................................................................................................................................55
Pesquisar Imóveis.................................................................................................................................56
Registar Aluguer...................................................................................................................................57
Ver Lista de Alugueres..........................................................................................................................58
Renovar Aluguer...................................................................................................................................59
Atualizar Aluguer.................................................................................................................................60
Remover Aluguer..................................................................................................................................61
Pesquisar Aluguer.................................................................................................................................62
Ver Lista de Avisos de Débito...............................................................................................................63
IV
Gerar Avisos de Débito.........................................................................................................................64
Emitir Aviso de Débito.........................................................................................................................65
Ver Detalhes Aviso de Débito...............................................................................................................66
Pesquisar Avisos de Débito...................................................................................................................67
Ver Lista de Mensalidades....................................................................................................................68
Atualizar Mensalidade..........................................................................................................................69
Ver Detalhes da Mensalidade................................................................................................................70
Gerar Recibo........................................................................................................................................71
Ver Lista de Recibos.............................................................................................................................73
Emitir Recibo.......................................................................................................................................74
Ver Detalhes do Recibo........................................................................................................................75
Pesquisar Recibos.................................................................................................................................76
Registar Despesa..................................................................................................................................77
Ver Lista de Despesas...........................................................................................................................78
Atualizar Despesa.................................................................................................................................79
Remover Despesa.................................................................................................................................80
Emitir Relatório de Despesas................................................................................................................81
Emitir Relatório de Conta Corrente......................................................................................................82
Requisitos não funcionais.....................................................................................................................84
V
Índice de ilustrações
Figura 1: Estrutura de um relatório Jasper..............................................................................................4
Figura 2: Jasper API...............................................................................................................................5
Figura 3: Scrum......................................................................................................................................7
Figura 4: Arquitetura MVC....................................................................................................................8
Figura 5: Diagrama de Pacotes.............................................................................................................11
Figura 6: Modelo de processo de negócio-registar aluguer...................................................................14
Figura 7: Modelo de processo de negócio-gerir aluguer.......................................................................14
Figura 8: Diagrama da base dados........................................................................................................15
Figura 9: Windows 7............................................................................................................................17
Figura 10: Windows 8...........................................................................................................................18
Figura 11: Ubuntu 12.04.......................................................................................................................18
Figura 12: Cenário Registar Aluguer- Aluguer.....................................................................................19
Figura 13: Cenário Registar Aluguer- Caução......................................................................................20
Figura 14: Cenário Registar Aluguer- Rendas Antecipadas..................................................................21
Figura 15: Cenário Registar Aluguer- Aluguer Final............................................................................21
Figura 16: Cenário Registar Aluguer-Lista de Mensalidades................................................................22
Figura 17: Cenário Gerar Aviso de Débito- Gerar Aviso de Débito......................................................23
Figura 18: Cenário Gerar Aviso de Débito- Lista de Avisos de Débito.................................................23
Figura 19: Trecho gerar mensalidades..................................................................................................26
Figura 20: Trecho gerar avisos de débito..............................................................................................27
Figura 21: Registar Aluguer..................................................................................................................32
Figura 22: Gerar Recibo.......................................................................................................................33
Figura 23: Enviar email........................................................................................................................34
Figura 24: Diagrama de Pacotes...........................................................................................................36
Figura 25: Diagrama Casos de Uso-Inquilinos.....................................................................................36
Figura 26: Diagrama de caso de uso-Imóveis.......................................................................................37
Figura 27: Diagrama de caso de uso-Alugueres....................................................................................37
Figura 28: Diagrama de caso de uso-Mensalidade,Aviso,Recibo.........................................................38
Figura 29: Diagrama caso de uso- Despesas,Relatórios........................................................................39
Figura 30: Diagrama de caso de uso-Outros.........................................................................................39
Figura 31: Diagrama de sequencia- Ver dados pessoais........................................................................40
Figura 32: Diagrama de sequencia-editar dados pessoais.....................................................................41
Figura 33: Diagrama de sequencia- selecionar a base dados.................................................................42
VI
Figura 34: Diagrama de sequencia-backup...........................................................................................43
Figura 35: Diagrama de sequência-Enviar email..................................................................................44
Figura 36: Diagrama de sequência-upload ficheiro..............................................................................46
Figura 37: Diagrama de sequência-registar inquilino...........................................................................47
Figura 38: Diagrama de sequência-ver lista inquilinos.........................................................................48
Figura 39: Diagrama de sequência-atualizar inquilino..........................................................................49
Figura 40: Diagrama de sequência-remover inquilino..........................................................................50
Figura 41: Diagrama de sequência-pesquisar inquilinos.......................................................................51
Figura 42: Diagrama de sequência-registar imóvel...............................................................................52
Figura 43: Diagrama de sequência- ver lista de imóveis.......................................................................53
Figura 44: Diagrama de sequência-atualizar imóvel.............................................................................54
Figura 45: Diagrama de sequência-remover imóvel.............................................................................55
Figura 46: Diagrama de sequência-pesquisar imóveis..........................................................................56
Figura 47: Diagrama de sequência-registar aluguer..............................................................................57
Figura 48: Diagrama de sequência-ver lista de alugueres.....................................................................58
Figura 49: Diagrama de sequência-renovar aluguer..............................................................................59
Figura 50: Diagrama de sequência-atualizar aluguer............................................................................60
Figura 51: Diagrama de sequência-remover aluguer............................................................................61
Figura 52: Diagrama de sequência-pesquisar alugueres.......................................................................62
Figura 53: Diagrama de sequência-lista de avisos de débito.................................................................63
Figura 54: Diagrama de sequência-gerar avisos de débito....................................................................64
Figura 55: Diagrama de sequência-emitir aviso de débito....................................................................65
Figura 56: Diagrama de sequência-ver detalhes de um aviso de débito................................................66
Figura 57: Diagrama de sequência-pesquisar avisos de débito.............................................................67
Figura 58: Diagrama de sequência-ver lista de mensalidades...............................................................68
Figura 59: Diagrama de sequência-atualizar mensalidade....................................................................69
Figura 60: Diagrama de sequência-detalhes da mensalidade................................................................70
Figura 61: Diagrama de sequência-gerar recibo...................................................................................72
Figura 62: Diagrama de sequência-ver lista de recibos.........................................................................73
Figura 63: Diagrama de sequência-emitir recibo..................................................................................74
Figura 64: Diagrama de sequência-ver detalhes do recibo....................................................................75
Figura 65: Diagrama de sequência-pesquisar recibos...........................................................................76
Figura 66: Diagrama de sequência-registar despesa.............................................................................77
Figura 67: Diagrama de sequência-ver lista de despesas......................................................................78
Figura 68: Diagrama de sequência-atualizar despesa............................................................................79
VII
Figura 69: Diagrama de sequência-remover despesas...........................................................................80
Figura 70: Diagrama de sequência-emitir relatório de despesas...........................................................81
Figura 71: Diagrama de sequência-relatório conta corrente..................................................................82
Figura 72: Diagrama de Classes...........................................................................................................83
VIII
Lista de Abreviaturas
API- Aplication programming interface
BPM-Buisness Process Modeling
ESTGF- Escola Superior Tecnologias e Gestão de Felgueiras
GIA- Gestão de Imóveis Arrendados
MVC- Model-View-Controller
UML- Unified Modelling Language
IX
1
Introdução
Atualmente, as tecnologias de informação afetam o modo como as organizações evoluem e os seus
negócios se desenvolvem. A evolução das tecnologias veio permitir informatizar toda a informação
[1]. Um possível cenário é o do arrendamento de imóveis.
Este projeto tem como objetivo o desenvolvimento de uma aplicação multi-plataforma que permita
fazer a gestão de imóveis arrendados. Este projeto visa auxiliar os proprietários de imóveis arrendados
pois permitirá fazer uma gestão organizada dos mesmos. Para atingir o objetivo supracitado,
entrevistou-se o Docente António Pinto para perceber em concreto o que era necessário fazer, levando
ao modelo proposto.
O objetivo deste projeto é o de desenvolver uma aplicação que permita aos seus utilizadores fazer uma
gestão mais cuidada e organizada dos seus imóveis. A aplicação deverá poder ser usada por qualquer
senhorio para fazer a gestão dos seus imóveis arrendados, permitindo gerir conjuntos de imóveis. Em
particular deve ser possível emitirem-se recibos de renda mensais, avisos de débito, o envio de emails,
e a gestão das despesas que o senhorio tenha com o imóvel (despesas de manutenção/reparação,
impostos).
Este relatório encontra-se dividido em cinco capítulos, e três anexo. No Capitulo 2 apresentam se as
ferramentas utilizadas no desenvolvimento deste projeto. No Capitulo 3 faz-se a descrição de todo o
trabalho efetuado e dos resultados obtidos neste projeto, mais detalhadamente descreve-se como se
procedeu ao levantamento de requisitos, relata-se o caso estudo,apresenta-se a metodologia utilizada
no desenvolvimento deste projeto. No Capitulo 4 é efetuada uma breve descrição de alguns dos
algoritmos implementados neste trabalho bem como exemplos da sua execução e demonstrar-se a
portabilidade da aplicação. No Capítulo 5 são apresentadas as conclusões deste projeto e o que irá ser
possível fazer no futuro. O Anexo A apresenta o código que permite gerar mensalidades e, finalmente,
o Anexo B apresenta o código que permite gerar avisos de débito. O Anexo C contém o documento de
especificação de requisitos, por uma questão de espaço na descrição dos uses cases apenas foram
apresentados os casos de sucesso.
1
2
Ferramentas utilizadas
O Visual Paradigm foi utilizado para elaborar os diagramas de casos de uso, classe, sequência e
processos de negócio. O Visual Paradigm (http://www.visual-paradigm.com/) agrupa 3 ferramentas
numa só, Visual Paradigm for UML, Logian e Agilian. Esta ferramenta está divida em edições com
diferentes funcionalidades, sendo todas elas pagas, mas com um período de 30 dias nos quais é
possível utilizar esta ferramenta sem quaisquer custos. Possui uma interface simples e permite aos
utilizadores escolher diferentes tipos de diagramas como por exemplo: diagrama classes, atividades,
sequência, uses cases entre outros. É ainda possível gerar código a partir de diagramas UML para
várias linguagens de programação algumas delas são Java,C++ . Outras funcionalidades são a
importação/exportação de diagramas para diferentes formatos, XML ,XLS ou outros formatos, além
disto os diagramas podem ser guardados como simples imagens, permite ainda a interligação com
alguns IDE entre eles o Netbeans. Esta ferramenta permite partilhar diagramas com os clientes, para
tal é necessário enviar um convite para o cliente, em seguida esse convite é enviado para o email
depois do cliente aceitar o convite pode começar a ver os diagramas online, caso o cliente pretenda
fazer algum comentário pode fazê-lo, por uma questão de privacidade os clientes apenas podem ver os
comentários criados por eles e as repostas aos mesmos Depois desta análise podemos verificar que o
Visual Paradigm é uma ferramenta completa e que vem facilitar/auxiliar o desenvolvimento de
software.
Balsamiq foi a ferramenta escolhida para o desenvolvimento das mockups deste projeto. Baslamiq
(http://www.visual-paradigm.com/) é uma ferramenta desenvolvida em action script, e que permite o
desenvolvimento de mockups para as aplicações web, desktop ou móveis. Esta ferramenta encontra-se
disponível para desktop, para o browser Google Chrome, entre outros. Para o funcionamento desta
ferramenta no Google Chrome é necessário proceder a instalação de um plugin, sendo que após a
instalação permite o desenho de mockups e o upload das mesmas para o Google Drive. A ferramenta
possui uma interface simples, com uma grande diversidade de componentes para além dos
componentes que, por defeito, vem com a ferramenta, ainda é possível fazer o download de novos
componentes. Balsamiq apresenta dois estilos de interface o wireframe vem ajudar a tornar as
mockups mais apresentáveis, profissionais no entanto pode provocar um certa dependência de um
determinado estilo de layout pois parece “acabado” muito cedo. O sketch têm um aspeto menos
profissional mas possibilita experimentar ideias diferentes com a finalidade de melhorar o design. Bill
Buxton em [2] distingue sketch de prototype da seguinte forma; esta mesma distinção pode ser
aplicada ao sketch e wireframe respetivamente
2
Sketch
Prototype
Evocative
Didactic
Suggest
Describe
Explore
Refine
Question
Anwser
Provoke
Resolve
Tentative
Specific
Noncomminttal
Depiction
Tabela 1: Sketch vs Prototype
Ainda existe a possibilidade de
“ligar” os diferentes mockups, por exemplo, imaginemos uma
aplicação real. Temos uma interface com alguns componentes e um desses quando pressionado
redireciona o utilizador para outra interface, com esta ferramenta conseguimos simular esse
comportamento, basta clicar no componente pretendido selecionar link e escolher da lista o mockup
que pretendemos. É aconselhado aquando o uso desta funcionalidade que os ficheiros BMML estejam
todos na mesma pasta, também é possível “ligar” os mockups a urls
No final desta análise pode-se constatar que a Balsamiq Mockups é uma ferramenta útil no que diz
respeito ao desenho de mockups, fornecendo uma variedade de funcionalidades.
Para a codificação do software foi utilizado o Netbeans IDE que é gratuito e open-source. O
Netbeans(netbeans.org) permite escrever, compilar, analisar e instalar programas. O IDE é todo escrito
em Java mas pode suportar qualquer linguagem de programação pois é possível adicionar suporte para
outras linguagens. O NetBeans indenta o código, associa palavras, realça sintaxe do código-fonte
,fornece exemplos de projetos. Este oferece uma visão simples de grandes projetos, com várias pastas
e muitas linhas de código, permite a interligação com ferramentas de controlo de versão por exemplo o
Git. Permite criar aplicações gráficas para Java SE,HTML5,Java EE,PHP,C/C++ e Java ME de forma
simples e rápida usando drag and drop e se pretender também é possível editar o código no local. Este
IDE disponibiliza uma ferramenta de debug que permite uma análise simples e rápida do código,
permite inserir breaking points, watches, avançar pelo código linha a linha, executar métodos e ver em
tempo real os resultados dos mesmos.
O SQL DataBase Browser (http://sqlitebrowser.org/)é um sistema gestão de base dados compatível
com o SQLite é open-source , gratuito, foi desenvolvido recorrendo à linguagem de programação C, e
não é requer instalação. Disponibiliza aos utilizadores uma interface simples e clara, permite a estes
criar/gerir base dados, exportar e importar registos para diferentes formatos, disponibiliza um registo
3
de todas as queries realizadas via aplicação,possibilita aos utilizadores criarem tabelas a partir de
queries ou a partir de interfaces gráficas
O SQLiteStudio (http://sqlitestudio.pl/) é um sistema de gestão de base dados para base dados
compatíveis com SQLite, é open-source, gratuito e não é requer instalação. Permite criar tabelas,
vistas a partir de interfaces gráficas ou através de queries; é possível exportar e importar base dados.
O iReport foi o programa utilizado para desenhar os diversos relatórios, pelo facto de ser grátis, open-source e ser possível integrar com aplicação desenvolvida.
Um relatório está divido em secções, title, page header, column header, detail, column footer, page
footer, last page footer, summary e background .
Figura 1: Estrutura de um relatório Jasper
Title é a primeira parte do relatório, é apenas gerado uma vez no processo de preenchimento do
relatório page header, é o cabeçalho da pagina, column header aparece no topo de cada coluna,detail
esta secção é onde irá ficar o corpo do relatório column footer esta secção aparece na parte inferior de
cada coluna, é usado para o rodapé da tabela, page footer esta secção é o rodapé, last page footer se
esta secção estiver presente substitui na ultima página o rodapé em vigor, caso essa mesma pagina não
possua sumário pois se existir é criado uma nova pagina para esta secção, summary aparece no final do
relatório antes das secções rodapé da coluna e/ou rodapé da pagina e por ultimo background esta
4
secção é processada em todas as páginas e o seu conteúdo segue-se depois de todas as outras secções.
Todas as secções são opcionais mas é necessário existir pelo menos uma secção, para a construção de
um relatório. iReports permite-nos construir relatórios estáticos, ou seja, o conteúdo é definido no
inicio, ou relatórios dinâmicos em que o conteúdo é preenchido automaticamente por uma base dados.
Um relatório têm no mínimo um data set, este pode ser carregado com dados através de queries sql no
próprio programa e/ou através de um método em Java que retorne um objeto do tipo ResultSet, sendo
este objeto passado ao Jasper “on-fly”. Para a construção do relatório o iReports disponibiliza vários
componentes desde labels, caixas de texto, tabelas entre outros. Fields representam a única forma de
mapear os dados, da base de dados para o relatório, isto é estes campos vão representar os valores das
colunas da base dados. Por exemplo: partindo do principio que o data set está carregado com a
seguinte querie SELECT * FROM Pessoa, todos os campos da tabela pessoa ficam disponíveis em
fields. Parameters são dados passados no momento da compilação, para carregar o data set. Por
exemplo partindo do principio que o data set está carregado com a seguinte querie SELECT * FROM
Pessoa WHERE bi=$P{bi} no momento que este relatório for compilado é passado ao mesmo um
parâmetro com o valor do bi pretendido, e ele substitui esse valor na querie. Variables são utilizadas
para armazenar resultados temporários, como por exemplo totais, contagens, entre outros. Expressions
são utilizadas para especificar o conteúdo de campos de texto. As informações relativas ao relatório
são guardado num ficheiro XML que depois irá ser compilado e preenchido dando origem ao relatório
como se pode verificar na Figura 21.[3]
Figura 2: Jasper API
Para a elaboração deste mesmo relatório foi utilizado o LibreOffice Writer pois é grátis, open-source e
multi-plataforma o que permitiu a este aluno e ao seu orientador comunicarem sem problemas.
1 Fonte: http://www.k19.com.br/artigos/wp-content/uploads/2010/11/diagrama.png
5
3
GIA
Segundo Laudon e Laudon um sistema de informação é um “Conjunto de componentes interrelacionados que colecionam (ou acedem), processam, armazenam e distribuem informação para
suportar a tomada de decisão e controlo numa organização”[4]. A tomada de decisão tem um papel
fundamental no sucesso da organização sendo por isso importante descrever com rigor o modo como a
mesma funciona, para que os sistemas de informação possam satisfazer as necessidades reais da
organização [5].
Partindo destes pressupostos, neste capitulo irá ser descrito o caso de estudo deste trabalho, o modelo
proposto para o presente caso de estudo assim como arquitetura utilizada, as técnicas utilizadas para
efetuar o levantamento de requisitos, assim como uma descrição dos uses cases, metodologia usada
neste projeto.
3.1 Caso de Estudo
Todos os proprietários de imóveis arrendados têm de executar um conjunto de tarefas semelhantes,
tratar da informação relativa aos inquilinos, manter um registo de todas despesas e receitas dos
imóveis, notificar os inquilinos das mensalidades em falta, manter o registos de todos os pagamentos
feitos. Efetuar todas estas tarefas com o auxilio de um programa pode tornar-se mais simples.
3.2 Metodologia
Como se pode verificar em [6] as metodologias ágeis tem como principal prioridade satisfazer o
cliente através de entregas de software funcional rapidamente , permite que o cliente tenha um papel
ativo no diz que diz respeito a ordem pela qual as funcionalidades são entregues, os processos ágeis
aproveitam a mudança para vantagem competitiva do cliente, a informação é obtida através da
conversação cara-a-cara, o progresso do projeto é medido principalmente pela a entrega de software
funcional
A Scrum é uma metodologia ágil e divide-se em três fases, a PreGame, Game e PostGame.
Na PreGame define-se a equipa, recursos é criada a Product Backlog contendo todos os requisitos que
são conhecidos atualmente, estes são priorizados para além disso é efetuada uma estimativa do esforço
necessária para a sua implementação, a lista pode sofrer alterações constantes em todas as iterações, o
produto é atualizado e revisto pela a equipa Scrum., ocorre ainda o planeamento da arquitetura com
base na Product Backlog, são analisadas e feitas decisões sobre as propostas para implementação.
6
Na Game são desenvolvidos os Sprints este pode durar entre uma semana a um mês cada um é
constituído por análise,requisitos,projeto, evolução e entrega esta fase é a parte ágil da abordagem
Scrum. Na PostGame ocorre o encerramento das entregas, documentação, integração e testes.
Figura 3: Scrum
A metodologia utilizada no desenvolvimento deste projeto foi baseada em Scrum, muito embora com a
alteração do número de elementos envolvidos. Neste projeto alguns dos papeis foram atribuídos à
mesma pessoa. Esta metodologia permite o rápido desenvolvimento de software e envolve o cliente no
desenvolvimento do mesmo minimizando a rejeição/resistência na entrega.
3.3 Modelo proposto
Face ao caso estudo descrito acima existe uma necessidade clara de uma aplicação que permita fazer a
gestão de imóveis arrendados, foi essa necessidade que presidiu ao desenvolvimento deste projeto.
Para garantir que os senhorios tenham acesso a informação em tempo útil e de forma organizada. A
proposta de desenvolver um modelo que permita efetuar a gestão de imóveis arrendados com recurso a
linguagem Java, e em que a informação é guardada numa base dados desenvolvida em SQLite, é um
projeto arrojado mas útil e eficaz para o publico em causa. O desenvolvimento desta aplicação
recorrendo a uma base dados SQLite traz algumas vantagens, não existe necessidade de instalar
programas para este correr no computador, é multiplataforma e fica tudo num ficheiro. Uma
particularidade interessante desta aplicação é que existe a possibilidade de escolher a base dados na
7
qual o utilizador quer trabalhar, caso o utilizador tenha instalado no seu computador a dropbox ; este
poderá trabalhar diretamente com a base dados no dropbox, sincronizando automaticamente todas
alterações em todos os seus computadores que tenham a dropbox instalada, mantendo assim a
informação atualizada
A interface com o utilizador foi desenvolvida recorrendo a Swing. É uma API que permite construir
interfaces gráficas, correr as aplicações em todas as plataformas sem grandes alterações nas interfaces
com o utilizador. Esta fornece uma variedade de componentes, contentores para a construção das
interfaces gráficas. Um componente é algo simples como um botão, uma caixa de texto, um contentor
é um objeto que agrupa outros componentes e é responsável pela gestão dos mesmos. Look and Feel
pode ser visto como a “cara” da aplicação (aspeto,cores) por norma o Java vem com um look-and-feel
próprio que tem a mesma “cara” em todas as plataformas suportadas [7]
Esta escolha deve-se a que este aluno já tinha algum conhecimento com este tipo de API.
A arquitetura escolhida para esta aplicação foi a MVC.
MVC é uma arquitetura de software formada por três componentes. O Model é utilizado para
representar a lógica do negocio, View é a interface da aplicação, aquilo que o utilizador realmente vê, e
por Controller este é responsável pelo controlar o fluxo de informação Este tipo de arquitetura permite
uma maior reutilização do código e é mais fácil fazer a sua manutenção. A Figura 42 ilustra o
funcionamento básico do MVC.
Figura 4: Arquitetura MVC
2 Fonte: http://cupsofcocoa.files.wordpress.com/2011/08/mvc-diagram1.png
8
3.4 Levantamento requisitos
O processo de levantamento de requisitos é um processo demorado e complicado, pois é necessário
recolher todos os requisitos do sistema, mas nem sempre o cliente e o perito se conseguem entender,
resultando numa recolha de requisitos inválidos ou apenas a uma parte dos mesmos.
Existe uma necessidade de assegurar que os requisitos vão de encontro ás necessidades dos
stakeholders; para além de recolher os requisitos , é necessário proceder à sua validação
Para o levantamento de requisitos foram utilizadas entrevistas, realizadas nas reuniões semanais que
decorreram na ESTGF. No decorrer dessas reuniões, foi fornecido um ficheiro em .xls pelo cliente;
este ficheiro era utilizado pelo mesmo para fazer a gestão dos imóveis arrendados. O estudo deste
ficheiro ajudou a compreender e a recolher os requisitos necessários para a aplicação.
Um requisito é uma funcionalidade ou caraterística considerada relevante na ótica do utilizador. Os
requisitos podem ser distinguidos em funcionais - estes descrevem o que o sistema faz ou é esperado
fazer, descrevem o que na realidade o sistema irá permitir aos utilizadores fazer por exemplo sistema
deve permitir enviar emails, gerar recibos - e em requisitos não funcionais que estão relacionados com
aspetos gerais do sistema, apesar destes requisitos não fazerem parte diretamente do sistema não
devem ser negligenciados, por exemplo a interface com o utilizador deve ser feita através browser, a
usabilidade [8]
De acordo Nunes e O'Neil em [1] UML “é uma linguagem que utiliza notação padrão para especificar,
construir, visualizar e documentar sistemas de informação orientados por objetos”.
Os diagramas de caso de uso constituem a técnica em UML que permitem representar os requisitos de
um sistema. Estes são compostos por atores, segundo Nunes e O'Neil em [1] um ator representa uma
entidade externa que interage com o sistema,podendo este ser uma pessoa, sistemas físicos ou lógicos,
e os caso de uso estes são utilizados para apresentar os requisitos e para garantir que tanto o cliente
como o perito de uma dada área possuem um entendimento comum dos requisitos funcionais, o seu
objetivo é demonstrar as funcionalidades que o sistema irá ter.
Esta aplicação tem apenas um ator, sendo que esse ator é o senhorio, este é responsável por gerir os
arrendamentos.
9
3.5 Requisitos funcionais
Os requisitos apresentados na Tabela 2 foram agrupados por pacotes, para uma melhor compreensão
Pacote Outros
RF001 Ver os Dados pessoais,RF002-Editar Dados pessoais,
RF003 Selecionar base dados, RF004 Efetuar Backup, RF005-
Pacote Inquilinos
Enviar email, RF006-Upload ficheiro
RF007-Registar
Inquilino,
RF008Inquilinos,RF009-Atualizar
Registar Imóveis
Lista
de
RF010-Remover
Inquilinos,RF11-Pesquisar Inquilinos
RF012-Registar Imóvel,RF013-Ver Lista de Imóveis,RF014Atualizar
Pacote Aluguer
Inquilinos,
Ver
imóvel,RF015-Remover
imóvel,RF016-Pesquisar
imóveis
RF017-Registar Aluguer,RF018-Ver Lista de Alugueres,RF019Renovar
Aluguer,RF020-Atualizar
Aluguer,RF021-Remover
Pacote
Aluguer,RF022-Pesquisar Alugueres
RF023-Ver Lista de Avisos de Débito,RF024-Gerar Avisos de
Mensalidades,Avisos,
Débito,RF025-Emitir Avisos de Débito,RF026-Ver Detalhes do
Recibos
Aviso de Débito,RF027-Pesquisar Avisos de Débito,RF028-Ver
lista de Mensalidades,RF029.Atualizar Mensalidade,RF030-Ver
Detalhes de Mensalidade,RF031-Gerar Recibo,RF032-Ver Lista
de Recibos,RF033-Emitir Recibos,RF034-Ver Detalhes do
Pacote
Relatórios
Despesas,
Recibo,RF035-Pesquisar Recibos,
RF036-Registar Despesa RF037-Ver Lista de Despesas RF038Atualizar Despesa RF039-Remover Despesa RF040-Emitir
Relatório de Despesas RF041-Emitir Relatório de Conta
Corrente
Tabela 2: Pacotes
A Figura 5 é um diagrama de pacotes, que vem complementar informação apresentada na Tabela 2
10
Figura 5: Diagrama de Pacotes
3.6 Descrição de Casos de Uso
De seguida serão descritos algumas das principais funcionalidades desta aplicação, entre elas o registar
aluguer,gerar recibo,gerar avisos de débito,registar inquilino e o registar imóvel.
Para efetuar um registo de um aluguer é necessário um inquilino e um imóvel livre no final do registo
o sistema informa o senhorio se a operação foi bem sucedida.
Registar Aluguer
Pré Condição
Existir pelo menos um inquilino e um imóvel livre
Descrição
Permite a um senhorio efetuar o registo de um aluguer
Pós-Condição
O Sistema informa o senhorio se a operação foi bem
sucedida
Tabela 3: Registar Aluguer
Para gerar um recibo é necessário existir um aluguer ativo e mensalidades por pagar, um recibo é a
prova como o inquilino efetuou um pagamento no final de gerar o recibo sistema informa o senhorio
se a operação foi bem sucedida.
11
Gerar Recibo
Pré Condição
Existir um aluguer ativo e mensalidades por pagar
Descrição
Permite ao senhorio gerar um recibo relativo a um
pagamento efetuado por um inquilino é a prova de como
o inquilino efetuou o pagamento
Pós-Condição
O Sistema informa o senhorio se a operação foi bem
sucedida
Tabela 4: Gerar Recibo
Um aviso de débito é constituído por todas as mensalidades em falta até ao momento do pedido para
gerar um aviso é necessário um aluguer ativo, no final o sistema informa o senhorio se a operação foi
bem sucedida
Gerar Aviso de Débito
Pré Condição
Existir um aluguer ativo
Descrição
Permite ao senhorio gerar um aviso de débito, este é
constituído por todas as mensalidades em falta até ao
momento do pedido
Pós-Condição
O Sistema informa o senhorio se a operação foi bem
sucedida
Tabela 5: Gerar Aviso de Débito
O inquilino é a pessoa que vai alugar o imóvel , no registo do inquilino são armazenados dados
referentes ao próprio. No final do registo o sistema informa o senhorio se a operação foi bem sucedida
Registar Inquilino
Pré Condição
Não existe
Descrição
Permite registar um inquilino
Pós-Condição
O Sistema informa o senhorio se a operação foi bem
sucedida
Tabela 6: Registar Inquilino
O imóvel representa a propriedade sujeita ao aluguer, no registo do imóvel são armazenados dados
referentes ao próprio. No final registo o sistema informa o senhorio se a operação foi bem sucedida
12
Registar Imóvel
Pré Condição
Não existe
Descrição
Permite registar um imóvel
Pós-Condição
O Sistema informa o senhorio se a operação foi bem
sucedida
Tabela 7: Registar imóvel
Uma descrição mais detalhada dos requisitos está disponível em anexo, no documento de
especificação de requisitos.
3.7 Requisitos não funcionais
A aplicação deverá possuir uma interface simples, que permita uma rápida aprendizagem por parte dos
utilizadores, ser o mais eficiente possível e ser suportada por a maioria dos sistemas operativos na
Tabela 8 é apresentado um pequeno resumo dos requisitos não funcionais.
Requisitos
não Identificador Prioridade Descrição
funcionais
Simples/Intuitivo
RNF001
Alta
A
aplicação
deverá
possuir
uma
interface simples e que permita uma
rápida aprendizagem por parte dos
utilizadores
Eficiente
RNF002
Média
A aplicação deverá ser o mais eficiente
possível
Multi-plataforma
RNF003
Alta
Esta aplicação deverá ser suportada por
a maioria dos sistemas operativos
Tabela 8: Requisitos Não Funcionais
3.8 Modelação de processos de negócio
De acordo com [9] BPM é a forma de representar os processos de uma empresa, organização, ou
associação de modo a que os processos existentes possam ser analisados e melhorados, obtendo
melhorias e uma maior eficácia nos processos existentes aumentando assim a sua qualidade .
13
Nesta secção serão apresentados dois processos de negocio, o primeiro processo a ser apresenta é o de
registar um aluguer
Figura 6: Modelo de processo de negócio-registar aluguer
Este processo inicia-se por verificar se o inquilino se encontra registado no sistema, caso não esteja
procede-se ao registo do mesmo, de seguida verifica-se se o imóvel pretendido já se encontra registado
caso não esteja procede-se ao registo do mesmo, como por defeito todos os imóveis registados se
encontram livres não existe necessidade de verificar se o mesmo se encontra livre, posteriormente
procedesse ao preenchimento do formulário registo de aluguer.
O segundo processo a ser apresentado é gerir um aluguer este processo repete-se n vezes dependendo
do número de mensalidades associadas ao aluguer.
Figura 7: Modelo de processo de negócio-gerir aluguer
O processo inicia-se, se o senhorio assim o entender por gerar um aviso de débito caso não o pretenda
fica aguardar pagamento, por outro lado se pretender gerar um aviso de débito, gera aviso de débito
caso existam avisos de débito, emiti-se e envia-se o mesmo por email, de seguida aguarda-se pelo
pagamento quando o pagamento for efetuado é gerado o respetivo recibo emiti-se o mesmo e envia-se
ao inquilino.
14
3.9 Base Dados
Na Figura 8 é apresentado o modelo de dados usado neste projeto, na Tabela Tabela 9 é efetuada uma descrição de cada uma das tabelas da base dados.
Figura 8: Diagrama da base dados
15
Tabela
Descrição
Pessoa
Representa uma pessoa registada na base dados
TipoInteressado
Representa o tipo de pessoa{Senhorio,Empresa,Particular}
Despesa
Representa a despesa de um dado imóvel
Imovel
Representa um imóvel
Aluguer
Representa um aluguer
Classificacao
Representa a classificação que um dado imóvel pode ter{Com
Classificação A ou A++,Sem Classificação A ou A++}
TipoPagamento
Representa
o
tipo
de
pagamento
{Renda,Renda
Antecipada,Caução}
Pagamento
Representa um pagamento
Mensalidade
Representa a mensalidade de um dado aluguer
Recibo
Representa a prova de como um dado inquilino efetuou o
pagamento de uma mensalidade
Recibo_Mensalidade
Representa as linhas do recibo
Notificação
Representa o aviso de débito de um dado aluguer
Notificação_Mensalidade Representa as linhas de um aviso de débito
Tabela 9: Descrição da Base Dados
16
4
Avaliação do trabalho
Este projeto tinha como objetivo o desenvolvimento de um aplicação capaz de fazer a gestão de
imóveis de arrendados e que seja multi-plataforma. Neste capitulo serão apresentados alguns cenários
que serviram para validar se os objetivos foram atingidos.
4.1 Multi-plataforma
De seguida serão apresentados diferentes screen shots da aplicação a correr em diferentes sistemas
operativos, entre eles o Windows 7,Windows 8 e Ubuntu 12.04 estas foram as plataformas escolhidas
para testar a portabilidade da aplicação.
Figura 9: Windows 7
A Figura 9 trata-se de um screen shot da aplicação a correr em Windows 7 a funcionalidade em
questão é ver lista de inquilinos.
17
Figura 10: Windows 8
A Figura 10 trata-se de um screen shot da aplicação a correr em Windows 8 a funcionalidade em
questão é ver lista de inquilino.
Figura 11: Ubuntu 12.04
18
A Figura 11 trata-se de um screen shot da aplicação a correr em Ubuntu 12.04 a funcionalidade em
questão é ver lista de inquilino. Como se verificar a aplicação corre em diferentes sistemas operativos
sem grandes diferenças no aspeto gráfico. Com base nos resultados acima apresentados o pode-se
concluir que o objetivo da portabilidade foi atingido.
4.2 Algoritmos
Agora irão ser apresentados alguns dos algoritmos implementados nesta aplicação. O primeiro a ser
apresentado é o algoritmo que permite gerar as mensalidades para um aluguer. O código deste
algoritmo pode ser visto no Anexo A
Este algoritmo permite efetuar o registo de um aluguer e registar as respetivas mensalidades. No
Registo de um Aluguer temos de escolher o imóvel, o inquilino estes previamente registados no
software, defini-mos uma data de inicio e fim de aluguer, a diferença entre estas datas tem de ser no
mínimo de um mês, caso contrário é lançada uma exceção. Ainda é necessário definir o valor da renda.
Assim como o dia limite de pagamento, caso o dia limite de pagamento seja inferior ao dia do inicio
do aluguer, a primeira mensalidade fica com o dia do inicio do aluguer, sendo que as outras ficam o
dia escolhido pelo senhorio. Ainda no registo do aluguer, é possível definir uma caução é um valor que
o inquilino tem de pagar no inicio do aluguer se o senhorio assim o entender. Esta é devolvida caso o
imóvel não sofra danos, é possível ainda pedir rendas antecipadas estas e a caução podem ser
atenuadas noutras mensalidades.
Cenário Registar um Aluguer
Figura 12: Cenário Registar Aluguer- Aluguer
19
Como se pode verificar na Figura 12 o inquilino António Moreira alugou o imóvel na Avenida de
França 1-A Porto por um ano, a renda foi definida em 300 € e o dia limite para este efetuar o
pagamento das mensalidades é dia 8 de cada mês.
Figura 13: Cenário Registar Aluguer- Caução
Como se pode verificar na Figura 13 a caução foi definida em 200€ e distribuída por duas
mensalidades, ou seja, em vez do inquilino pagar a totalidade da caução de uma só vez, efetua o
pagamento da mesma em duas mensalidades.
20
Figura 14: Cenário Registar Aluguer- Rendas Antecipadas
Como se pode verificar na Figura 14 foi pedido o adiantamento de uma renda e distribuída por quatro
mensalidades, ou seja, em vez do inquilino pagar a totalidade da renda antecipada de uma só vez,
efetua o pagamento da mesma em quatro mensalidades mensalidades.
Figura 15: Cenário Registar Aluguer- Aluguer Final
21
Tendo em conta este cenário, o resultado do mesmo seria um aluguer com duração de 12 meses e
constituído por 11 mensalidades (duração 12 meses menos um mês da renda antecipada). As primeiras
duas mensalidades são compostas por 300 € valor da renda, 100 € valor da caução que foi dividia em
dois, 75 € que corresponde as rendas antecipadas, valor que foi dividido por quatro mensalidades,
perfazendo um total de 475 €. As duas próximas mensalidades são compostas por 300 € valor da
renda, e por 75 valor da renda antecipada que perfaz um total de 375 €, as restantes mensalidades
serão compostas apenas pela renda.
Figura 16: Cenário Registar Aluguer-Lista de Mensalidades
Como se pode verificar na Figura 16 o algoritmo fez o esperado.
De seguida, irá ser apresentado o algoritmo criado para gerar avisos de débito para um aluguer, o
código deste algoritmo pode ser consultado no anexo B. Este algoritmo permite-nos gerar avisos de
débito para um dado aluguer,caso já exista um aviso para o mês em questão nada acontecerá, caso
contrário um aviso irá ser criado. Esse aviso será constituído por todas as mensalidades que não foram
pagas até ao momento geração do aviso. De forma mais detalhada, quando é pedido para gerar novos
avisos de débito, este algoritmo vai buscar todas as mensalidades associadas a um aluguer cuja o seu
estado seja Não ou Parcial, e que o mês seja igual ou anterior ao mês do pedido. Depois percorre essa
mesma lista e vai verificar se já existe um aviso para essa mensalidade no presente mês, caso não
exista é criado um aviso.
22
Cenário Gerar Aviso Débito
Figura 17: Cenário Gerar Aviso de Débito- Gerar Aviso de Débito
O resultado será um aviso de débito com todas as mensalidades em falta até ao mês de junho, este
aviso é constituído por uma mensalidade no valor de 475,0€.
Figura 18: Cenário Gerar Aviso de Débito- Lista de Avisos de Débito
Como pode ser visto na Figura 18 o algoritmo fez o esperado.
No final deste capitulo pode-se concluir que todos os objetivos definidos no inicio do trabalho foram
atingidos.
23
5
Conclusões
O objetivo deste projeto foi o de desenvolver uma aplicação funcional que permita gerir
arrendamentos e que a mesma seja multi-plataforma. Do trabalho produzido, conclui-se que a
aplicação para a gestão de arrendamentos foi concebida e está pronta para ser utilizada, logo os
objetivos definidos para este trabalho foram atingidos.
Esta aplicação focou o aluguer na totalidade do imóvel ou seja, não é possível efetuar a gestão de
aluguer de quartos de um dado imóvel, uma alteração futura poderá consistir em permitir fazer o
aluguer de quartos, outra alteração poderá passar por efetuar backups periódicos.
24
Referencias
[1]: Nunes, Mauro-O'Neil, Henrique, Fundamental de UML, 2004
[2]: Buxton,Bill, Sketching User Experiences: Getting the Design Right and the Right Design, 2007
[3]: Jaspersoft Corporation, JasperSoft Ultimate Guide, 2011,
[4]: Laudon,K-Laundon,J, Management Information Systems, 2011
[5]: Damas,Luís, SQL, 2005
[6]: Pereira,Carla;Sousa,Cristóvão, Metodologias de Desenvolvimento de SW Metodologias “Ágeis”,
2014,
[7]: Aguiar,Ademar, Programação em Java:linguagem, APIs, boas práticas e Eclipse, 2005,
[8]: Perreira,Carla, UML-Diagramas de Casos de Utilização, 2014,
[9]: Rouse,Margaret, business process management (BPM), 2001,
25
6
Anexo A-Trecho do algoritmo gerar mensalidades
Figura 19: Trecho gerar mensalidades
26
7
Anexo B- Trecho do algoritmo gerar avisos de débito
Figura 20: Trecho gerar avisos de débito
27
8
Anexo C- Documento de Especificação de Requisitos
28
Documento de Especificação de
Requisitos
29
1
Introdução
1.1 Objetivo
O software que será explicado neste documento tem como objetivos tornar mais fácil e eficiente, a
gestão de bens imóveis arrendados,auxiliando os utilizadores nas tarefas mais comuns.
Este Documento pretende demonstrar as funcionalidades que irão ser implementadas no sistema
através de diagramas e interfaces, assim com as restrições impostas ao desenvolvimento do software
Este documento destina-se ao aluno responsável pelo desenvolvimento do mesmo e ao Docente
António Pinto
1.2 Âmbito do Sistema
O software apresentado neste documento denomina-se de GAI, este vai permitir aos utilizadores fazer
uma gestão mais cuidada e organizada dos seus imóveis. O GAI poderá ser aplicado por qualquer
senhorio, para fazer a gestão dos seus imóveis. Esta aplicação permite a um senhorio gerir o
arrendamentos de um conjunto de imóveis. Em particular é possível emitir-se recibos de renda
mensais, avisos de débito, permite o envio de emails, e gerir as despesas que o senhorio tenha com o
imóvel (despesas de manutenção/reparação, impostos), entre outros.
1.3 Definições, acrónimos e abreviaturas
GIA:Gestão de Imóveis arrendados
1.4 Referencias
http://www.agilemodeling.com/artifacts/useCaseDiagram.html
http://www.visual-paradigm.com/VPGallery/diagrams/Sequence.html
http://probyte2u.hubpages.com/hub/Software-Requirements-Specification-Example-ABC-OnlineMovie-Booking-System-Part-1
1.5 Visão Geral
A primeira secção contem, basicamente os objetivos do documento e congregações adotadas.
A segunda secção descreve a funcionalidades do software, bem como as características dos seus
utilizadores, restrições.
A terceira secção apresenta a arquitetura do sistema, isto é as suas interfaces, requisitos funcionais,
através de diagramas de casos de utilização, entre outros. Ao longo do documento vão ser apresentadas
imagens de diagramas, e interfaces da aplicação.
30
2
Descrição Geral
2.1 Contexto do Problema
A aplicação será desenvolvido em Java e utilizará uma base de dados desenvolvida em sqlite. A
escolha deste motor de base dados e linguagem de programação, tem como finalidade garantir a sua
portabilidade e minimizar a quantidade de programas necessários para o correto funcionamento desta
aplicação.
2.2 Funções do Produto
Este produto vai permitir aos utilizadores fazer a gestão dos imóveis, inquilinos, alugueres,
despesas,recibos, suportará o envio de emails e permitirá emitir diversos relatórios.
2.3 Características dos utilizadores
Esta aplicação não requer um grande conhecimento informático por parte dos utilizadores, poderá ser
utilizada por qualquer pessoa, que possua imóveis arrendados.
2.4 Restrições
Esta aplicação tem com principal restrição a sua portabilidade, devendo todas as opções tomadas
durante o seu desenvolvimento garantirem esta mesma restrição.
2.5 Pressupostos e dependências
O ambiente do sistema tem de ser de fácil perceção, pois será um programa para efeitos de trabalho;
para trabalhar com o mesmo não é necessário existir uma ligação a internet, a não ser quando o
utilizador pretender enviar emails.
O sucesso do projeto irá depender principalmente da aceitabilidade do utilizadores com isto também se
pressupõe que os utilizadores tenha os requisitos mínimos a nível informático
31
3
Requisitos específicos
3.1 Requisitos de interfaces externas
3.1.1
Interfaces com o Utilizador
Em seguida irão ser apresentadas algumas imagens que representam esboços das interfaces da
aplicação. As interfaces a seguir apresentadas foram desenvolvidas recorrendo à ferramenta Balsamiq
Mockups.
Figura 21: Registar Aluguer
Aplicação permite ao utilizador registar um aluguer sendo esta a interface apresentada, a duração do
aluguer é no mínimo de um mês, ao mesmo ainda pode estar associado uma caução sendo que esta é
devolvida no final caso o imóvel não seja danificado. Ainda é possível solicitar o adiantamento das
rendas, caso o valor da caução e das rendas antecipadas sejam elevados para uma só mensalidade estas
podem ser atenuadas nas mensalidades dos meses seguintes.
32
Figura 22: Gerar Recibo
Quando um inquilino efetua o pagamento de uma mensalidade, este tem que ter um comprovativo que
tal operação foi efetuada, para isso a aplicação disponibiliza ao senhorio a funcionalidade de gerar
recibos.
33
Figura 23: Enviar email
Se o senhorio pretender enviar um aviso de débito, informar um determinado inquilino de algum
assunto, pode fazê-lo recorrendo à funcionalidade envio de emails.
34
3.2 Requisitos Funcionais

Visão Geral
Nesta secção irão ser descritos todos os uses cases do sistema. Devido à existência de muitos uses
cases, estes foram divididos por pacotes para uma melhor compreensão. O sistema permitirá ao
senhorio
Pacote Outros
RF001 Ver os Dados pessoais,RF002-Editar Dados pessoais,
RF003 Selecionar base dados, RF004 Efetuar Backup,
RF005-Enviar email, RF006-Upload ficheiro
Pacote Inquilinos
RF007-Registar
Inquilino,
Inquilinos,RF009-Atualizar
RF008Inquilinos,
Ver
Lista
de
RF010-Remover
Inquilinos,RF11-Pesquisar Inquilinos
Registar Imóveis
RF012-Registar Imóvel,RF013-Ver Lista de Imóveis,RF014Atualizar imóvel,RF015-Remover imóvel,RF016-Pesquisar
imóveis
Pacote Aluguer
RF017-Registar
Aluguer,RF018-Ver
Lista
de
Alugueres,RF019-Renovar
Aluguer,RF020-Atualizar
Aluguer,RF021-Remover
Aluguer,RF022-Pesquisar
Alugueres
Pacote
RF023-Ver Lista de Avisos de Débito,RF024-Gerar Avisos de
Mensalidades,Avisos,Reci
Débito,RF025-Emitir Avisos de Débito,RF026-Ver Detalhes
bos
do
Aviso
de
Débito,RF027-Pesquisar
Avisos
de
Débito,RF028-Ver lista de Mensalidades,RF029.Atualizar
Mensalidade,RF030-Ver Detalhes de Mensalidade,RF031Gerar Recibo,RF032-Ver Lista de Recibos,RF033-Emitir
Recibos,RF034-Ver Detalhes do Recibo,RF035-Pesquisar
Recibos,
Pacote Despesas
RF036-Registar Despesa RF037-Ver Lista de Despesas
RF038-Atualizar Despesa RF039-Remover Despesa RF040Emitir Relatório de Despesas RF041-Emitir Relatório de
Conta Corrente
Tabela 10: Pacotes
35
Figura 24: Diagrama de Pacotes
O primeiro pacote a ser abordado é o de Inquilinos este pacote contém todas as funcionalidades
responsáveis pela gestão dos inquilinos.
Figura 25: Diagrama Casos de Uso-Inquilinos
O pacote Imóveis contém todas as operações responsáveis pela gestão de imóveis.
36
Figura 26: Diagrama de caso de uso-Imóveis
O pacote de Aluguer contém todas as operações responsáveis pela gestão de alugueres
Figura 27: Diagrama de caso de uso-Alugueres
O pacote de Mensalidades, Avisos e Recibos contem todas as operações responsáveis pela gestão dos
mesmos
37
Figura 28: Diagrama de caso de uso-Mensalidade,Aviso,Recibo
O pacote de Despesas, Relatórios contem todas as operações responsáveis pela gestão das despesas
dos imóveis e pela emissão de relatórios
38
Figura 29: Diagrama caso de uso- Despesas,Relatórios
O pacote outros contem funcionalidades, como ver/editar os dados pessoais, abrir e efetuar backup da
base dados assim como o envio de emails.
Figura 30: Diagrama de caso de uso-Outros
39

Atores
Senhorio

Casos de Utilização
Com base nas descrições que se seguem foram identificados os seguintes
objetos: Senhorio, é o ator responsável por despoletar o use case;Sistema,
representa a interface com o ator.
Nota: Optou-se por não detalhar em demasia os diagramas de sequencia.
 Identificação
RF001
 Nome
Ver dados pessoais
 Descrição Sumária
Pré-condição
Não existe
Descrição
Permite ao Senhorio consultar os seus
dados pessoais
Tabela 11: Ver Dados Pessoais
 Ator
Senhorio
 Prioridade
Baixa
 Fluxo de eventos
1. Selecionar Menu Principal
2. Selecionar o item Dados Pessoais
Figura 31: Diagrama de sequencia- Ver dados pessoais
40
 Identificação
RF002
 Nome
Editar dados pessoais
 Descrição Sumária
Pré-condição
Não existe
Descrição
Permite ao Senhorio editar os seus
dados pessoais
Pós- condição
Sistema informa se a operação foi bem
sucedida
Tabela 12: Editar Dados Pessoais
 Ator
Senhorio
 Prioridade
Baixa
 Fluxo de eventos
1. Selecionar Menu Principal
2. Selecionar o item Dados Pessoais
3. Editar os dados pretendidos
4. Clicar no botão alterar
Figura 32: Diagrama de sequencia-editar dados pessoais
41
 Identificação
RF003
 Nome
Selecionar base dados
 Descrição Sumária
Pré-condição
Não existe
Descrição
Permite ao senhorio selecionar a base
dados que pretende utilizar
Pós- condição
Sistema informa se a operação foi bem
sucedida
Tabela 13: Selecionar Base Dados
 Ator
Senhorio
 Prioridade
Baixa
 Fluxo de eventos
1. Selecionar Menu Principal
2. Selecionar o item abrir base dados
3. Selecionar a base dados pretendida
Figura 33: Diagrama de sequencia- selecionar a base dados
42
 Identificação
RF004
 Nome
Efetuar backup
 Descrição Sumária
Pré-condição
Não existe
Descrição
Permite efetuar um backup da base dados
Pós- condição
Sistema informa se a operação foi bem
sucedida
Tabela 14: Efetuar Backup
 Ator
Senhorio
 Prioridade
Baixa
 Fluxo de eventos
1. Selecionar Menu Principal
2. Selecionar o item backup
3. Escolher a localização onde pretende gravar a base dados
Figura 34: Diagrama de sequencia-backup
43
 Identificação
RF005
 Nome
Enviar email
 Descrição Sumária
Pré-condição
Não existe
Descrição
Permite ao senhorio enviar um email
Pós- condição
Sistema informa se a operação foi bem
sucedida
Tabela 15: Enviar Email
 Ator
Senhorio
 Prioridade
Baixa
 Fluxo de eventos
1. Selecionar Menu Principal
2. Selecionar o item enviar email
3. Preencher o assunto
4. Preencher a mensagem
5. Clicar no botão enviar
Figura 35: Diagrama de sequência-Enviar email
44
 Identificação
RF006
 Nome
Upload ficheiro
 Descrição Sumária
Pré-condição
Não existe
Descrição
Permite ao senhorio enviar um email com
anexo
Pós- condição
Sistema informa se a operação foi bem
sucedida
Tabela 16: Upload Ficheiro
 Ator
Senhorio
 Prioridade
Baixa
 Fluxo de eventos
1. Selecionar Menu Principal
2. Selecionar o item enviar email
3. Preencher o assunto
4. Preencher a mensagem
5. Clicar em Adicionar anexo
6. Selecionar o ficheiro pretendido
7. Clicar no botão enviar
45
Figura 36: Diagrama de sequência-upload ficheiro
46
 Identificação
RF007
 Nome
Registar Inquilino
 Descrição Sumária
Pré-condição
Não existe
Descrição
Permite registar os dados associados a um
inquilino.
Pós- condição
Sistema informa se a operação foi bem
sucedida
Tabela 17: Registar Inquilino
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Inquilinos
2. Selecionar o item abrir Registar Inquilino
3. Preencher os dados
4. Clicar no botão Registar
Figura 37: Diagrama de sequência-registar inquilino
47
 Identificação
RF008
 Nome
Ver Lista de Inquilinos
 Descrição Sumária
Pré-condição
Não existe
Descrição
Permite ver a lista dos inquilinos
Tabela 18: Ver Lista Inquilinos
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Inquilinos
2. Selecionar o item Lista de Inquilinos
Figura 38: Diagrama de sequência-ver lista inquilinos
48
 Identificação
RF009
 Nome
Atualizar Inquilino
 Descrição Sumária
Pré-condição
Existir pelo menos um inquilino
Descrição
Permite atualizar dados dos inquilinos
Pós- condição
Sistema informa se a operação foi bem
sucedida
Tabela 19: Atualizar Inquilino
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Inquilinos
2. Selecionar o item Lista de Inquilinos
3. Selecionar o inquilino pretendido
4. Editar os dados
5. Clicar no botão atualizar
Figura 39: Diagrama de sequência-atualizar inquilino
49
 Identificação
RF010
 Nome
Remover Inquilino
 Descrição Sumária
Pré-condição
Existir pelo menos um inquilino
Descrição
Permite remover um inquilino
Pós- condição
Sistema informa se a operação foi
bem sucedida
Tabela 20: Remover Inquilino
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Inquilinos
2. Selecionar o item Lista de Inquilinos
3. Selecionar o inquilino pretendido
4. Clicar no botão remover
Figura 40: Diagrama de sequência-remover inquilino
50
 Identificação
RF011
 Nome
Pesquisar Inquilinos
 Descrição Sumária
Pré-condição
Não existe
Descrição
Permite pesquisar inquilinos pelo o
seu nome
Tabela 21: Pesquisar Inquilinos
 Ator
Senhorio
 Prioridade
Baixa
 Fluxo de eventos
1. Selecionar o Menu Inquilinos
2. Selecionar o item Lista de Inquilinos
3. Escrever o nome do inquilino na caixa de pesquisa
4. Clicar no botão pesquisar
Figura 41: Diagrama de sequência-pesquisar inquilinos
51
 Identificação
RF012
 Nome
Registar Imóvel
 Descrição Sumária
Pré-condição
Não existe
Descrição
Permite registar um imóvel
Pós- condição
Sistema informa se a operação foi bem
sucedida
Tabela 22: Registar Imóvel
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Imóveis
2. Selecionar o item Registar Imóvel
3. Preencher os dados
4. Clicar no botão registar
Figura 42: Diagrama de sequência-registar imóvel
52
 Identificação
RF0013
 Nome
Ver Lista de Imóveis
 Descrição Sumária
Pré-condição
Não existe
Descrição
Permite ver Lista de Imóveis
Tabela 23: Ver Lista de Imóveis
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Imóveis
2. Selecionar o item Lista de Imóveis
Figura 43: Diagrama de sequência- ver lista de imóveis
53
 Identificação
RF014
 Nome
Atualizar Imóvel
 Descrição Sumária
Pré-condição
Existir pelo menos um imóvel
Descrição
Permite atualizar um imóvel
Pós- condição
Sistema informa se a operação foi bem
sucedida
Tabela 24: Atualizar imóvel
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Imóveis
2. Selecionar o item Lista de Imóveis
3. Selecionar o imóvel pretendido
4. Editar os dados
5. Clicar no botão atualizar
Figura 44: Diagrama de sequência-atualizar imóvel
54
 Identificação
RF015
 Nome
Remover Imóvel
 Descrição Sumária
Pré-condição
Existir pelo menos um imóvel
Descrição
Permite remover Imóvel
Pós- condição
Sistema informa se a operação foi bem
sucedida
Tabela 25: Remover Imóvel
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Imóveis
2. Selecionar o item Lista de Imóveis
3. Selecionar o imóvel pretendido
4. Clicar no botão remover
Figura 45: Diagrama de sequência-remover imóvel
55
 Identificação
RF016
 Nome
Pesquisar Imóveis
 Descrição Sumária
Pré-condição
Não existe
Descrição
Permite pesquisar imóveis pelo o
seu estado e localidade
Tabela 26: Pesquisar Imóveis
 Ator
Senhorio
 Prioridade
Baixa
 Fluxo de eventos
1. Selecionar o Menu Imóveis
2. Selecionar o item Lista de Imóveis
3. Selecionar o critério de pesquisa
4. Escrever na caixa de pesquisa o que pretende pesquisar
5. Clicar no botão pesquisar
Figura 46: Diagrama de sequência-pesquisar imóveis
56
 Identificação
RF017
 Nome
Registar Aluguer
 Descrição Sumária
Pré-condição
Existir pelo menos um inquilino e um
imóvel livre
Descrição
Registar Aluguer
Pós- condição
Sistema informa se a operação foi bem
sucedida
Tabela 27: Registar Aluguer
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Alugueres
2. Selecionar o item Registar Aluguer
3. Preencher os dados
4. Clicar no botão registar
Figura 47: Diagrama de sequência-registar aluguer
57
 Identificação
RF018
 Nome
Ver Lista de Alugueres
 Descrição Sumária
Pré-condição
Não existe
Descrição
Permite ver a lista de alugueres
Tabela 28: Ver Lista de Alugueres
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Alugueres
2. Selecionar o item Lista de Alugueres
3. Selecionar o inquilino pretendido
Figura 48: Diagrama de sequência-ver lista de alugueres
58
 Identificação
RF019
 Nome
Renovar Aluguer
 Descrição Sumária
Pré-condição
Aluguer não pode estar ativo
Descrição
Permite renovar Aluguer
Pós- condição
Sistema informa se a operação foi
bem sucedida
Tabela 29: Renovar Aluguer
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Alugueres
2. Selecionar o item Lista de Alugueres
3. Selecionar o aluguer pretendido
4. Clicar no botão renovar
Figura 49: Diagrama de sequência-renovar aluguer
59
 Identificação
RF020
 Nome
Atualizar Aluguer
 Descrição Sumária
Pré-condição
Existir pelo menos um aluguer
Descrição
Permite atualizar um aluguer
Pós- condição
Sistema informa se a operação foi bem
sucedida
Tabela 30: Atualizar Aluguer
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Inquilinos
2. Selecionar o item Lista de Alugueres
3. Selecionar o aluguer pretendido
4. Editar os dados
5. Clicar no botão atualizar
Figura 50: Diagrama de sequência-atualizar aluguer
60
 Identificação
RF021
 Nome
Remover Aluguer
 Descrição Sumária
Pré-condição
Existir pelo menos um aluguer
Descrição
Permite remover um aluguer
Pós- condição
Sistema informa se a operação foi
bem sucedida
Tabela 31: Remover Aluguer
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Alugueres
2. Selecionar o item Lista de Alugueres
3. Selecionar o aluguer pretendido
4. Clicar no botão remover
Figura 51: Diagrama de sequência-remover aluguer
61
 Identificação
RF022
 Nome
Pesquisar Alugueres
 Descrição Sumária
Pré-condição
Não existe
Descrição
Permite pesquisar alugueres por estado
Tabela 32: Pesquisar Aluguer
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Alugueres
2. Selecionar o item Lista de Alugueres
3. Selecionar o critério pretendido
4. Clicar no botão pesquisar
Figura 52: Diagrama de sequência-pesquisar alugueres
62
 Identificação
RF023
 Nome
Ver Lista de Avisos de Débito
 Descrição Sumária
Pré-condição
Existir pelo menos um aluguer
Descrição
Permite ver a lista de avisos de
débito
Tabela 33: Ver Lista de Avisos de Débito
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Avisos de Débito
2. Selecionar o item Lista de Avisos de Débito
3. Selecionar o aluguer pretendido
Figura 53: Diagrama de sequência-lista de avisos de débito
63
 Identificação
RF024
 Nome
Gerar Avisos de Débito
 Descrição Sumária
Pré-condição
Existir um aluguer ativo e mensalidades por
pagar
Permite ao senhorio gerar um aviso de débito,
Descrição
este é constituído por todas as mensalidades em
falta até ao momento do pedido
Pós- condição
Sistema informa se a operação foi bem sucedida
Tabela 34: Gerar Avisos de Débito
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Avisos
2. Selecionar o item Lista de Avisos
3. Selecionar o aluguer pretendido
4. Clicar no botão Gerar Avisos
Figura 54: Diagrama de sequência-gerar avisos de débito
64
 Identificação
RF025
 Nome
Emitir Avisos de Débito
 Descrição Sumária
Pré-condição
Existir um aviso de débito
Descrição
Permite emitir avisos de débito
Pós- condição
Sistema informa se a operação foi bem
sucedida
Tabela 35: Emitir Aviso de Débito
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Avisos de Débito
2. Selecionar o item Lista de Avisos de Débito
3. Selecionar o aluguer pretendido
4. Selecionar o aviso pretendido
5. Clicar no botão emitir aviso
Figura 55: Diagrama de sequência-emitir aviso de débito
65
 Identificação
RF026
 Nome
Ver Detalhes Avisos de Débito
 Descrição Sumária
Pré-condição
Existir um aviso de débito
Descrição
Permite ver os detalhes avisos de débito
Tabela 36: Ver Detalhes Aviso de Débito
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Avisos de Débito
2. Selecionar o item Lista de Avisos de Débito
3. Selecionar o aluguer pretendido
4. Selecionar o aviso pretendido
5. Clicar no botão ver detalhes
Figura 56: Diagrama de sequência-ver detalhes de um aviso de débito
66
 Identificação
RF027
 Nome
Pesquisar Avisos de Débito
 Descrição Sumária
Pré-condição
Não existe
Descrição
Permite pesquisar avisos de débito
pelo o seu estado
Tabela 37: Pesquisar Avisos de Débito
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Avisos de Débito
2. Selecionar o item Avisos de Débito
3. Selecionar o critério pretendido
4. Clicar no botão pesquisar
Figura 57: Diagrama de sequência-pesquisar avisos de débito
67
 Identificação
RF028
 Nome
Ver Lista de Mensalidades
 Descrição Sumária
Pré-condição
Existir pelo menos um aluguer
Descrição
Permite ver a lista de mensalidades dos
alugueres
Tabela 38: Ver Lista de Mensalidades
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Mensalidades
2. Selecionar o item Lista de Mensalidades
3. Selecionar o aluguer pretendido
Figura 58: Diagrama de sequência-ver lista de mensalidades
68
 Identificação
RF029
 Nome
Atualizar Mensalidade
 Descrição Sumária
Pré-condição
Existir pelo menos um a mensalidade
Descrição
Permite atualizar uma mensalidade de
um aluguer
Pós- condição
Sistema informa se a operação foi bem
sucedida
Tabela 39: Atualizar Mensalidade
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Mensalidades
2. Selecionar o item Lista de Mensalidades
3. Selecionar o aluguer pretendido
4. Selecionar a mensalidade pretendida
5. Editar os dados
6. Clicar no botão atualizar
Figura 59: Diagrama de sequência-atualizar mensalidade
69
 Identificação
RF030
 Nome
Ver Detalhes da Mensalidade
 Descrição Sumária
Pré-condição
Existir uma mensalidade
Descrição
Permite ver os detalhes da mensalidade
Tabela 40: Ver Detalhes da Mensalidade
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Mensalidades
2. Selecionar o item Lista de Mensalidades
3. Selecionar o aluguer pretendido
4. Selecionar a mensalidade pretendida
5. Clicar no botão ver detalhes
Figura 60: Diagrama de sequência-detalhes da mensalidade
70
 Identificação
RF031
 Nome
Gerar Recibo
 Descrição Sumária
Pré-condição
Existir pelo menos um aluguer ativo
Descrição
Permite ao senhorio gerar um recibo
relativo a um pagamento efetuado por
um inquilino é a prova de como o
inquilino efetuou o pagamento
Pós- condição
Sistema informa se a operação foi bem
sucedida
Tabela 41: Gerar Recibo
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Recibos
2. Selecionar o item Gerar Recibo
3. Selecionar o aluguer pretendido
4. Selecionar a mensalidade pretendida
5. Escrever o valor recebido dessa mensalidade
6. Clicar no botão adicionar
7. Clicar no botão Gerar Recibo
71
Figura 61: Diagrama de sequência-gerar recibo
72
 Identificação
RF032
 Nome
Ver Lista de Recibos
 Descrição Sumária
Pré-condição
Não existe
Descrição
Permite ver a lista de recibos
Tabela 42: Ver Lista de Recibos
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Recibos
2. Selecionar o item Lista de Recibos
3. Selecionar o aluguer pretendido
Figura 62: Diagrama de sequência-ver lista de recibos
73
 Identificação
RF033
 Nome
Emitir Recibo
 Descrição Sumária
Pré-condição
Existir um recibo
Descrição
Permite emitir recibos
Pós- condição
Sistema informa se a operação foi bem
sucedida
Tabela 43: Emitir Recibo
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Recibos
2. Selecionar o item Lista de Recibos
3. Selecionar o aluguer pretendido
4. Selecionar o recibo pretendido
5. Clicar no botão emitir recibo
Figura 63: Diagrama de sequência-emitir recibo
74
 Identificação
RF034
 Nome
Ver Detalhes do Recibo
 Descrição Sumária
Pré-condição
Existir pelo menos um recibo
Descrição
Permite ver os detalhes do recibo
Tabela 44: Ver Detalhes do Recibo
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Recibos
2. Selecionar o item Lista de Recibos
3. Selecionar o aluguer pretendido
4. Selecionar o recibo pretendido
5. Clicar no botão detalhes
Figura 64: Diagrama de sequência-ver detalhes do recibo
75
 Identificação
RF035
 Nome
Pesquisar Recibos
 Descrição Sumária
Pré-condição
Não existe
Descrição
Permite pesquisar recibos pelo seu
estado
Tabela 45: Pesquisar Recibos
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Recibos
2. Selecionar o item Lista de Recibos
3. Selecionar o aluguer pretendido
4. Selecionar o critério pretendido
5. Clicar no botão pesquisar
Figura 65: Diagrama de sequência-pesquisar recibos
76
 Identificação
RF036
 Nome
Registar Despesa
 Descrição Sumária
Pré-condição
Existir pelo menos um imóvel
Descrição
Permite registar despesa de um
imóvel
Pós- condição
Sistema informa se a operação foi
bem sucedida
Tabela 46: Registar Despesa
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Despesa
2. Selecionar o item Registar Despesa
3. Preencher os dados
4. Clicar no botão Registar
Figura 66: Diagrama de sequência-registar despesa
77
 Identificação
RF037
 Nome
Ver Lista de Despesas
 Descrição Sumária
Pré-condição
Existir pelo menos um aluguer
Descrição
Permite ver a lista de despesas dos
imóveis
Tabela 47: Ver Lista de Despesas
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Despesas
2. Selecionar o item Lista de Despesas
3. Selecionar o imóvel pretendido
Figura 67: Diagrama de sequência-ver lista de despesas
78
 Identificação
RF038
 Nome
Atualizar Despesa
 Descrição Sumária
Pré-condição
Existir pelo menos uma despesa
Descrição
Permite
atualizar
as
despesas
dos
imóveis
Pós- condição
Sistema informa se a operação foi bem
sucedida
Tabela 48: Atualizar Despesa
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Despesas
2. Selecionar o item Lista de Despesas
3. Selecionar o imóvel pretendido
4. Selecionar a despesa pretendida
5. Editar os dados
6. Clicar no botão atualizar
Figura 68: Diagrama de sequência-atualizar despesa
79
 Identificação
RF039
 Nome
Remover Despesa
 Descrição Sumária
Pré-condição
Existir pelo menos um imóvel com uma
despesa
Descrição
Permite remover despesas dos imóveis
Pós- condição
Sistema informa se a operação foi bem
sucedida
Tabela 49: Remover Despesa
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Despesas
2. Selecionar o item Lista de Despesas
3. Selecionar o imóvel pretendido
4. Selecionar a despesa pretendida
5. Clicar no botão remover
Figura 69: Diagrama de sequência-remover despesas
80
 Identificação
RF040
 Nome
Emitir Relatório de Despesas
 Descrição Sumária
Pré-condição
Existir pelo menos um imóvel com uma
despesa
Descrição
Permite emitir o relatório de despesas
Pós- condição
Sistema informa se a operação foi bem
sucedida
Tabela 50: Emitir Relatório de Despesas
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Relatórios
2. Selecionar o item Emitir Relatórios
3. Selecionar o imóvel pretendido
4. Selecionar o Relatório de Despesas
5. Selecionar o ano pretendido
6. Clicar no botão emitir relatório
Figura 70: Diagrama de sequência-emitir relatório de despesas
81
 Identificação
RF041
 Nome
Emitir Relatório de Conta Corrente
 Descrição Sumária
Pré-condição
Existir pelo menos um imóvel com uma
despesa e uma mensalidade paga
Descrição
Emitir Relatório de Conta Corrente
Pós- condição
Sistema informa se a operação foi bem
sucedida
Tabela 51: Emitir Relatório de Conta Corrente
 Ator
Senhorio
 Prioridade
Média
 Fluxo de eventos
1. Selecionar o Menu Relatórios
2. Selecionar o item Emitir Relatórios
3. Selecionar o imóvel pretendido
4. Selecionar o Relatório Conta Corrente
5. Selecionar o ano pretendido
6. Clicar no botão emitir relatório
Figura 71: Diagrama de sequência-relatório conta corrente
82
3.3 Requisitos de Informação
Uma pessoa pode ser um senhorio, um inquilino particular ou um inquilino empresa, sendo que no
negocio vão ver funções diferentes. Um senhorio é aquele que vai fazer efetivamente a gestão dos
arrendamentos, faz-se a diferenciação entre inquilinos particulares e empresa pois caso o inquino seja
uma empresa e o valor do aluguer do imóvel a que este está associado for de igual ou superior a
10.000 euros este está sujeito a uma taxa de retenção. Um imóvel tem um tipo de classificação e este
pode estar associado a um ou mais alugueres sendo que não pode estar associado a mais do que um
aluguer no mesmo instante. Um Aluguer tem um inicio e um fim sendo que quando acaba existe a
possibilidade de renovação. Ainda o aluguer é constituído por uma ou mais mensalidade dependendo
da sua duração, uma mensalidade pode ser constituída por mais do que um pagamento, isto é para
além da renda mensal poderá ainda existir outros pagamentos como por exemplo caução e rendas
antecipadas. Uma notificação/aviso permite ao senhorio saber que mensalidades é que um
determinado inquilino deve num determinado momento, o recibo é a prova de como um inquilino
efetuou um pagamento. Ao longo do ciclo de vida de um imóvel este pode ter associado um conjunto
de despesas como por exemplo reparações, impostos entre outros Este diagrama de classes representa
a estrutura que irá dar suporte ás informações de negócio.
Figura 72: Diagrama de Classes
83
3.4 Requisitos suplementares
A aplicação deverá possuir uma interface simples, que permita uma rápida aprendizagem por parte dos
utilizadores, ser o mais eficiente possível e ser suportada por a maioria dos sistemas operativos na
Tabela 52é apresentado um pequeno resumo dos requisitos não funcionais.
Requisitos não funcionais
Identificador Prioridade Descrição
Simples/Intuitivo
RNF001
Alta
A aplicação deverá possuir uma
interface simples e que permita
uma rápida aprendizagem por
parte dos utilizadores
Eficiente
RNF002
Média
A aplicação deverá ser o mais
eficiente possível
Multi-plataforma
RNF003
Alta
Esta
aplicação
deverá
ser
suportada por a maioria dos
sistemas operativos
Tabela 52: Requisitos não funcionais
84
Indicie
1 Introdução..........................................................................................................................................30
1.1 Objetivo..........................................................................................................................................30
1.2 Âmbito do Sistema.........................................................................................................................30
1.3 Definições, acrónimos e abreviaturas.............................................................................................30
1.4 Referencias.....................................................................................................................................30
1.5 Visão Geral.....................................................................................................................................30
2 Descrição Geral.................................................................................................................................31
2.1 Contexto do Problema....................................................................................................................31
2.2 Funções do Produto........................................................................................................................31
2.3 Características dos utilizadores.......................................................................................................31
2.4 Restrições.......................................................................................................................................31
2.5 Pressupostos e dependências...........................................................................................................31
3 Requisitos específicos........................................................................................................................32
3.1 Requisitos de interfaces externas....................................................................................................32
3.1.1 Interfaces com o Utilizador..........................................................................................................32
3.2 Requisitos Funcionais.....................................................................................................................35
3.3 Requisitos de Informação...............................................................................................................83
3.4 Requisitos suplementares................................................................................................................84
85
Download

Agradecimentos Ao professor António Pinto pela