Prévia do material em texto
UNIVERSIDADE ESTÁCIO DE SÁ BACHARELADO EM SISTEMAS DE INFORMAÇÃO WEST SHOPPING – CAMPO GRANDE TCC EM SISTEMAS DE INFORMAÇÃO RIO DE JANEIRO 2019 Gabriel Da Silva Pereira Klayton De Melo Brito Mauro Areia Marins SIGCond (Sistema de Gerenciamento de Condomínio) Projeto Final apresentado como exigência da disciplina TCC em Sistemas da Informação, sendo requisito para a conclusão do curso Sistemas de Informação da Universidade Estácio de Sá, campus West Shopping – Campo Grande. Orientador (a): MSc. Luciana Amaral Teixeira. RIO DE JANEIRO 2019 Gabriel Da Silva Pereira Klayton De Melo Brito Mauro Areia Marins Trabalho de Conclusão de Curso, apresentado a Universidade Estácio de Sá, como parte das exigências para a conclusão do curso de Sistemas de Informação. Aprovado em ___/___/___ Banca Examinadora Prof.ª. Luciana do Amaral Teixeira, MSc. – Orientador Universidade Estácio de Sá Prof.ª. Sheila de Goes Monteiro, MSc. - Professor Universidade Estácio de Sá Prof.ª. Adriana Aparício Sicsú Ayres do Nascimento, Dr. – Professor Universidade Estácio de Sá Dedicamos este trabalho primeiramente a Deus que nos capacitou e, orientou durante toda esta jornada, aos nossos pais, amigos, familiares e todos que nos auxiliaram de alguma forma a chegar onde estamos, obrigado por tudo. Autores deste projeto. AGRADECIMENTOS Primeiramente agradecemos a Deus, por ter nos capacitado, orientado, nos ter dado sabedoria em todos os momentos, coragem e força para seguirmos firme até aqui. Às nossas famílias e amigos, que sempre estiveram ao nosso lado, nos incentivando e apoiando durante todos esses anos de faculdade. Á esta universidade e seu corpo docente por todo conhecimento que nos foi transmitido, em especial à nossa orientadora Luciana do Amaral Teixeira por nos apoiar e conduzir durante este projeto final. Tudo é possível se você se dedicar de cabeça e coração. (Bel Pesce) Os dias prósperos não vêm por acaso. Nascem de muito trabalho e persistência. (Henry Ford) No que diz respeito ao empenho, ao compromisso, ao esforço, à dedicação, não existe meio termo. Ou você faz uma coisa bem feita ou não faz. (Ayrton Senna) Sejam fortes e corajosos. Não tenham medo nem fiquem apavorados por causa deles, pois o Senhor, o seu Deus, vai com vocês; nunca os deixará, nunca os abandonará. (Deuteronômio 31:6) RESUMO O presente trabalho tem como objetivo o desenvolvimento de um sistema Web para otimizar e facilitar o gerenciamento do Condomínio Viver Bem, possibilitando à administração ter um melhor controle do cadastro de moradores e funcionários, gerenciamento de espaços para reserva e locação, aplicação e controle de multas e notificações, além das ocorrências e agendamentos que poderão ser realizados pelos moradores, facilitando também o dia a dia da portaria através de acesso mais rápido a algumas informações. O projeto foi elaborado com técnicas de levantamento de requisitos, desenvolvimento de diagrama de casos de uso, diagrama de classes, diagrama de objeto, prototipação e com o modelo conceitual de dados. Sendo assim, o sistema desenvolvido será uma ferramenta muito útil para a administração, funcionários e moradores do condomínio, pois agilizará e facilitará a realização de tarefas antes feitas manualmente. Palavra-chave: Desenvolvimento de Sistema; Gerenciamento de Condomínio; RIO DE JANEIRO 2019 ABSTRACT This work aims to develop a Web system to optimize and facilitate the management of Viver Bem Condominium, allowing management to have a better control of residents and employees registration, management of spaces for reservation and rental, application and control of fines and notifications, in addition to the occurrences and schedules that can be made by the residents, facilitating also the day-to-day of the concierge through faster access to some information. The project was elaborated with requirements surveying techniques, use case diagram development, class diagram, object diagram, prototyping and with the conceptual data model. Therefore, the system developed will be a very useful tool for the administration, employees and residents of the condominium, as it will streamline and facilitate the accomplishment of tasks previously done manually. Keyword: System Development; Management of Condominium; RIO DE JANEIRO 2019 LISTAS DE SIGLAS E ABREVIATURAS SQL – Linguagem de Consulta Estruturada (do inglês, Structured Query Language). UML – Linguagem de Modelagem Unificada (do inglês, Unified Modeling Language). CSS – Cascading Style Sheets. HTML – Linguagem de Marcação de Hipertexto (do inglês, Hypertext Markup Language). ABNT – Associação Brasileira de Normas Técnicas. WEB – Rede mundial de computadores (do inglês: World Wide Web). C# – C Sharp. IoT – Internet das Coisas (do inglês, Internet of Things) LISTA DE TABELAS Tabela 1 - Descrição e quantidade de hardwares utilizados no projeto. ................... 21 Tabela 2 - Nome e função dos recursos humanos envolvidos no projeto. ................ 21 Tabela 3 - Descrição, tipo e quantidade de licenças de softwares utilizadas no projeto. ...................................................................................................................... 22 Tabela 4 - Análise de custos dos recursos de hardware, software e humanos do projeto. ...................................................................................................................... 23 Tabela 5 - Recursos e valores necessários para o desenvolvimento do sistema. .... 23 Tabela 6 - Dicionário de dados da tabela avisos ..................................................... 130 Tabela 7 - Dicionário de dados da tabela cotas ...................................................... 130 Tabela 8 - Dicionário de dados da tabela usuários ................................................. 130 Tabela 9 - Dicionário de dados da tabela moradores .............................................. 131 Tabela 10 - Dicionário de dados da tabela dependentes ........................................ 132 Tabela 11 - Dicionário de dados da tabela blocos ................................................... 132 Tabela 12 - Dicionário de dados da tabela apartamentos ....................................... 132 Tabela 13 - Dicionário de dados da tabela funcionários .......................................... 133 Tabela 14 - Dicionário de dados da tabela espaços ................................................ 134 Tabela 15 - Dicionário de dados da tabela vagas ................................................... 134 Tabela 16 - Dicionário de dados da tabela multas .................................................. 135 Tabela 17 - Dicionário de dados da tabela tipo_multa............................................ 135 Tabela 18 - Dicionário de dados da tabela notificações .......................................... 136 Tabela 19 - Dicionário de dados da tabela ocorrências .......................................... 136 Tabela 20 - Dicionário de dados da tabela comentários_ocorrencias ..................... 136 Tabela 21 - Dicionário de dados da tabela reserva_espaço ................................... 137 Tabela 22 - Dicionário de dados da tabela reserva_vagas ..................................... 137 LISTA DE FIGURAS Figura 1 - Análise de custos dos recursos de hardware, software e humanos do projeto. ...................................................................................................................... 24 Figura 2 - Diagrama de Caso de Uso Morador.......................................................... 34 Figura 3 - Diagrama de Caso de Uso Porteiro. ......................................................... 35 Figura 4 - Diagrama de Caso de Uso Zelador. .......................................................... 36 Figura 5 - Diagrama de Caso de Uso Síndico ........................................................... 37 Figura 6 - Modelo Conceitual de Classe – Parte 1 de 3 ............................................ 72 Figura 7 - Modelo Conceitual de Classe – Parte 2 de 3 ............................................ 73 Figura 8 - Modelo Conceitual de Classe Parte 3 de 3 ............................................... 74 Figura 9 - Modelo Conceitual De Dados ................................................................... 75 Figura 10 - Diagrama de Sequência Realizar Login – Parte 1 de 3 .......................... 76 Figura 11 - Diagrama de Sequência Realizar Login – Parte 2 de 3 .......................... 77 Figura 12- Diagrama de Sequência Realizar Login – Parte 3 de 3 ........................... 78 Figura 13 - Diagrama de Sequência Registrar Cota Condominial ............................. 79 Figura 14 - Diagrama de Sequência Manter Aviso – Parte 1 de 2 ............................ 80 Figura 15 - Diagrama de Sequência Manter Aviso – Parte 2 de 2 ............................ 81 Figura 16 - Diagrama de Sequência Manter Morador – Parte 1 de 5 ........................ 82 Figura 17 - Diagrama de Sequência Manter Morador – Parte 2 de 5 ........................ 83 Figura 18 - Diagrama de Sequência Manter Morador – Parte 3 de 5 ........................ 84 Figura 19 - Diagrama de Sequência Manter Morador – Parte 4 de 5 ........................ 85 Figura 20 - Diagrama de Sequência Manter Morador – Parte 5 de 5. ....................... 86 Figura 21 - Diagrama de Sequência Manter Dependente – Parte 1 de 2 .................. 87 Figura 22 - Diagrama de Sequência Manter Dependente – Parte 2 de 2 .................. 88 Figura 23 - Diagrama de Sequência Manter Funcionário – Parte 1 de 4 .................. 89 Figura 24 - Diagrama de Sequência Manter Funcionário – Parte 2 de 4 ................. 90 Figura 25 - Diagrama de Sequência Manter Funcionário – Parte 3 de 4 .................. 91 Figura 26 - Diagrama de Sequência Manter Funcionário – Parte 4 de 4 .................. 92 Figura 27 - Diagrama de Sequência Manter Espaço – Parte 1 de 3 ......................... 93 Figura 28 - Diagrama de Sequência Manter Espaço – Parte 2 de 3 ......................... 94 Figura 29 - Diagrama de Sequência Manter Espaço – Parte 3 de 3 ......................... 95 Figura 30 - Diagrama de Sequência Manter Vaga – Parte 1 de 3 ............................. 96 Figura 31 - Diagrama de Sequência Manter Vaga – Parte 2 de 3 ............................. 97 Figura 32 - Diagrama de Sequência Manter Vaga – Parte 3 de 3 ............................. 98 Figura 33 - Diagrama de Sequência Multar Morador – Parte 1 de 4 ......................... 99 Figura 34 - Diagrama de Sequência Multar Morador – Parte 2 de 4 ....................... 100 Figura 35 - Diagrama de Sequência Multar Morador – Parte 3 de 4 ....................... 101 Figura 36 - Diagrama de Sequência Multar Morador – Parte 4 de 4 ....................... 102 Figura 37 - Diagrama de Sequência Manter Tipo de Multa – Parte 1 de 3 ............. 103 Figura 38 - Diagrama de Sequência Manter Tipo de Multa – Parte 2 de 3 ............. 104 Figura 39 - Diagrama de Sequência Manter Tipo de Multa – Parte 3 de 3 ............. 105 Figura 40 - Diagrama de Sequência Notificar Morador – Parte 1 de 6 .................... 106 Figura 41 - Diagrama de Sequência Notificar Morador – Parte 2 de 6 .................... 107 Figura 42 - Diagrama de Sequência Notificar Morador – Parte 3 de 6 .................... 108 Figura 43 - Diagrama de Sequência Notificar Morador – Parte 4 de 6 .................... 109 Figura 44 - Diagrama de Sequência Notificar Morador – Parte 5 de 6 .................... 110 Figura 45 - Diagrama de Sequência Notificar Morador – Parte 6 de 6 .................... 111 Figura 46 - Diagrama de Sequência Registrar Ocorrência – Parte 1 de 4 .............. 112 Figura 47 - Diagrama de Sequência Registrar Ocorrência – Parte 2 de 4 .............. 113 Figura 48 - Diagrama de Sequência Registrar Ocorrência – Parte 3 de 4 .............. 114 Figura 49 - Diagrama de Sequência Registrar Ocorrência – Parte 4 de 4 .............. 115 Figura 50 - Diagrama de Sequência Alugar Espaço – Parte 1 de 3 ........................ 116 Figura 51 - Diagrama de Sequência Alugar Espaço – Parte 2 de 3 ........................ 117 Figura 52 - Diagrama de Sequência Alugar Espaço – Parte 3 de 3 ........................ 118 Figura 53 - Diagrama de Sequência Reservar Vaga – Parte 1 de 3 ....................... 119 Figura 54 - Diagrama de Sequência Reservar Vaga – Parte 2 de 3 ....................... 120 Figura 55 - Diagrama de Sequência Reservar Vaga – Parte 3 de 3 ....................... 121 Figura 56 - Diagrama de Sequência Gerar Relatórios – Parte 1 de 3 ..................... 122 Figura 57 - Diagrama de Sequência Gerar Relatórios – Parte 2 de 3 ..................... 123 Figura 58 - Diagrama de Sequência Gerar Relatórios – Parte 3 de 3 ..................... 124 Figura 59 – Diagrama de objeto - Parte 1 de 2 ....................................................... 125 Figura 60 – Diagrama de objeto - Parte 2 de 2 ....................................................... 126 Figura 61 - Modelo lógico de banco de dados - Parte 1 de 2 .................................. 128 Figura 62 - Modelo lógico de banco de dados - Parte 2 de 2 .................................. 129 SUMÁRIO 1 INTRODUÇÃO ...................................................................................................... 14 1.1 DESCRIÇÃO DO PROBLEMA ............................................................................ 15 1.2 MÉTODO DE TRABALHO .................................................................................. 16 1.3 JUSTIFICATIVA DO PROJETO .......................................................................... 16 1.4 PROPOSTA DE SOLUÇÃO ................................................................................ 17 1.5 METODOLOGIA DE DESENVOLVIMENTO ....................................................... 18 1.6 ORGANIZAÇÃO DO TRABALHO ....................................................................... 20 2 ANÁLISE DE VIABILIDADE .................................................................................. 20 2.1 VIABILIDADE TÉCNICA ..................................................................................... 21 2.1.1 Hardware ........................................................................................................ 21 2.1.2 Recursos Humanos ........................................................................................21 2.1.3 Software .......................................................................................................... 22 2.2 VIABILIDADE ECONÔMICA ............................................................................... 22 2.3 VIABILIDADE OPERACIONAL ........................................................................... 23 2.4 VIABILIDADE DE CRONOGRAMA ..................................................................... 24 3 O SISTEMA........................................................................................................... 25 3.1 O QUE É O SISTEMA ......................................................................................... 26 3.2 REGRAS DE NEGÓCIO ..................................................................................... 26 3.3 LEVANTAMENTO DE REQUISITOS .................................................................. 30 3.4 REQUISITOS FUNCIONAIS ............................................................................... 30 3.5 REQUISITOS NÃO FUNCIONAIS ...................................................................... 31 4 DIAGRAMAS UML ................................................................................................ 32 4.1 LISTA DE CASOS DE USO ................................................................................. 32 4.2 DIAGRAMAS DE CASOS DE USO ..................................................................... 33 4.3 DESCRIÇÃO DE CASO DE USO ........................................................................ 38 4.3.1 Realizar Login (CSU01) ................................................................................. 38 4.3.2 Registrar Cota Condominial (CSU02) ............................................................. 39 4.3.3 Manter Aviso (CSU03) .................................................................................... 40 4.3.4 Manter Morador (CSU04) ............................................................................... 42 4.3.5 Manter dependente (CSU05) .......................................................................... 46 4.3.6 Manter funcionário (CSU06) ........................................................................... 48 4.3.7 Manter espaço (CSU07) ................................................................................. 51 4.3.8 Manter vaga (CSU08) ..................................................................................... 53 4.3.9 Multar morador (CSU009) ............................................................................... 55 4.3.10 Manter tipos de multa (CSU010) .................................................................... 58 4.3.11 Notificar morador (CSU011) ........................................................................... 60 4.3.12 Registrar ocorrência (CSU012) ....................................................................... 63 4.3.13 Alugar espaço (CSU013) ................................................................................ 66 4.3.14 Reservar vaga (CSU014) ................................................................................ 68 4.3.15 Gerar relatórios (CSU015) .............................................................................. 70 4.4 MODELO CONCEITUAL DE CLASSE ................................................................ 72 4.5 MODELO CONCEITUAL DE DADOS ................................................................. 75 4.6 DIAGRAMAS DE SEQUÊNCIA ........................................................................... 76 4.7 DIAGRAMA DE OBJETO .................................................................................. 125 5 BANCO DE DADOS ........................................................................................... 127 5.1 MODELO LÓGICO DE BANCO DE DADOS ..................................................... 127 5.2 DICIONÁRIO DE DADOS ................................................................................. 130 6 IMPLEMENTAÇÃO DO SISTEMA ..................................................................... 138 7 CONCLUSÃO ..................................................................................................... 139 REFERÊNCIAS ....................................................................................................... 140 14 1 INTRODUÇÃO O gerenciamento e controle de um condomínio não é uma tarefa fácil de realizar, existem diversas tarefas e controles que precisam ser realizados pelo síndico e funcionários para atender as necessidades e até mesmo conflitos de diversos moradores, e sem a utilização de tecnologias e a modernização desses serviços pode ficar ainda mais difícil. Ao analisar essas questões foi identificada a necessidade de evolução e melhoria no processo de diversas atividades cotidianas do Condomínio Viver Bem. A ideia deste projeto é poder atender algumas das necessidades mais comuns na administração do condomínio, permitindo a comunicação do síndico com os moradores através de um painel de avisos, realizar o gerenciamento de espaços para locação bem como os aluguéis realizados, além do controle de vagas para visitantes e os agendamentos destas vagas, ter um controle sobre as ocorrências registradas pelos moradores, poder aplicar notificações e multas aos moradores de uma forma mais prática, possibilitando também o controle do cadastro de moradores e funcionários. Para isso, será desenvolvido um sistema Web de fácil acesso e utilização que permitirá tanto à administração e funcionários, quanto aos moradores a realização destas funções que serão melhores descritas ao longo deste documento. 15 1.1 DESCRIÇÃO DO PROBLEMA Este capítulo detalha a situação atual do Condomínio Viver Bem e as dificuldades e necessidades que nos levaram ao desenvolvimento deste projeto. O condomínio existe há 5 anos, é formado por 10 blocos, contento 200 apartamentos e possuindo mais de 400 moradores. Existe uma administração formada por síndico e subsíndico que são os responsáveis por controlar e manter o funcionamento de todos os serviços prestados, toda a estrutura física, administrativa e convívio social, existe também o zelador que é o intermediário entre o síndico, funcionários e moradores, e existem também os funcionários, incluindo os porteiros que têm um contato direto com os moradores. Atualmente o condomínio não dispõe de nenhum sistema informatizado que auxilie a administração, existe apenas um computador com o pacote Office instalado que permite a criação e impressão de alguns arquivos e documentos e a utilização de planilhas em Excel que auxiliam no controle de algumas informações, fora isso, é tudo mantido em fichas de papel e agendas, ficando tudo armazenado em pastas e arquivos físicos, o que muitas vezes dificulta a localização de documentos e informações de forma mais rápida. Para um morador registrar uma ocorrência, é necessário se dirigir até a portaria e fazer o registro da ocorrência em um livro próprio para isso, e caso queira saber a resolução ou o que foi feito, deve entrar em contato com a administração que buscará o registro no livro para passar a informação. Com os registros sendo feitos desta forma, fica difícil até mesmo a extração de relatórios ou saber se algum tipo de ocorrência tem ocorrido com frequência ou se algum morador tem feito algo com recorrência. A mesma dificuldade se observa na aplicação e controle das notificações e multas feitas aos moradores, pois muitas vezes ao se aplicar uma dessas infrações, é necessário saber se já existe alguma do mesmo tipo já aplicada para que possa gerar uma multa caso seja uma notificação recorrente ou até mesmo uma multa num valor maior caso o morador játenha sido multado por algo semelhante, além disso, para notificar ou multar é necessário imprimir um documento com informações sobre a infração e entregar pessoalmente ao morador. Outra dificuldade encontrada é referente ao agendamento de vagas para visitantes e reserva de espaços para locação, pois é necessário o morador se dirigir até a administração, verificar se a data está disponível, assinar o termo de compromisso e realizar o agendamento. Por parte da administração existe ainda a 16 necessidade e dificuldade de obter um relatório dos agendamentos realizados pois uma vez no mês é necessário emitir este relatório para enviar para a administradora que responde pela parte financeira do condomínio, e esta mesma situação se aplica na questão das multas que também precisam ser enviadas a esta administradora para que possa realizar as cobranças. 1.2 MÉTODO DE TRABALHO A proposta do projeto é o desenvolvimento de um sistema web que permita aos moradores visualizarem os comunicados da administração do condomínio em um painel de avisos, registrarem ocorrências conforme suas necessidades, alugar espaços – ex.: salão de festa e churrasqueira, reservar vaga de estacionamento para visitante, visualizar as notificações e multas recebidas. O sistema permitirá ao síndico gerenciar os espaços para reserva/locação, cadastrar e gerenciar as multas aplicadas aos moradores. Permitirá também ao síndico e zelador, manter mensagens em um painel de avisos que será visível para todos que acessarem o sistema, gerenciar as ocorrências registradas pelos moradores e porteiros, gerenciar o cadastro de moradores e de funcionários, além das notificações que serão realizadas aos moradores. Aos porteiros, também será permitido consultar o cadastro de moradores, as reservas/locações realizadas além de poder consultar e registrar ocorrências. O sistema também disponibilizará alguns relatórios para auxiliar ao síndico na administração e controle do condomínio. Para ter acesso a esses serviços, será desenvolvido um ambiente web que poderá ser acessado de qualquer dispositivo com conexão à internet, permitindo aos moradores e funcionários do condomínio logarem no sistema e acessarem as funções conforme suas devidas permissões. 1.3 JUSTIFICATIVA DO PROJETO Podemos observar as dificuldades impostas aos moradores e à administração do condomínio para a realização de diversas atividades que acabam demandando um tempo maior do que o necessário por terem de ser realizadas de forma presencial e 17 manual, o que não ocorreria caso essas atividades fossem informatizadas e disponibilizadas eletronicamente. Este contexto foi visto e vivenciado por um dos integrantes, morador de condomínio, encontrando dificuladae para registrar uma reclamação (ocorrência) e até atualizar informação no cadastro, o que muitas vezes deixaram de ser feitas por demandarem um tempo para isso, e ao iniciar o estudo para este projeto foi percebido também o trabalho que a administração tem para gerenciar o condomínio devido muitas dessas tarefas serem realizadas de forma manual. A partir da identificação destas questões surgiu a ideia do desenvolvimento deste sistema web para facilitar o cadastro de moradores e funcionários, realizar o registro de ocorrências, aplicar multas e notificações, realizar agendamentos entre outras atividades, sendo assim, facilitando o gerenciamento do condomínio e agilizando a realização de algumas atividades feitas pela administração e moradores. Portanto, é esperado deste projeto a criação de um sistema de fácil uso, e que seja eficiente, cumprindo os requisitos que foram levantados devidamente junto ao síndico e aos moradores, aumentando a qualidade dos serviços e seus resultados para a maior satisfação de todos. 1.4 PROPOSTA DE SOLUÇÃO Após a identificação superficial dessas dificuldades e problemas que podem ocorrer em um condomínio sem a utilização de sistemas informatizados, será realizada uma entrevista com o síndico para obter mais informações sobre o funcionamento do condomínio e conhecer as reais necessidades da administração, começando assim o levantamento dos requisitos funcionais e não funcionais para a realização do projeto. Feito este levantamento e listados todos os requisitos, serão apresentados ao síndico para a validação e aprovação. Uma vez aprovados os requisitos iniciais, a equipe de desenvolvimento dará a continuidade ao projeto, passando para a fase de planejamento e levantamento de possíveis novos requisitos através de encontros com moradores e funcionários, bem como novas reuniões com o próprio síndico. Ao se identificar novos requisitos ou desconsiderar algum já listado, será realizada a atualização no documento do projeto, onde conta a lista dos requisitos. 18 Passada esta etapa, a equipe começará a realizar o protótipo do sistema para validação dos requisitos e realizar uma simulação do que será feito, facilitando assim a visualização do projeto e a realização de teste. Caso seja identificada alguma necessidade de alteração no projeto, esta será feita no protótipo e apresentada ao usuário final, para que somente após a aprovação do protótipo a equipe possa começar a desenvolver a programação do sistema. Feita a aprovação do protótipo, dará início à fase de desenvolvimento das interfaces e dos módulos que farão parte do sistema. Após a interface ser definida e aprovada pelo cliente, será feita a implementação dos módulos, acompanhados de testes unitários e de integração. Durante este período de desenvolvimento, continuarão a ser realizadas reuniões com o síndico para demonstrar e mantê-lo atualizado sobre os processos e andamento do projeto. Concluso o desenvolvimento e integração de todos os módulos do sistema, será iniciada a fase de teste como um todo, aonde todos os envolvidos na utilização do sistema testarão todas as funções possíveis, a fim de identificar eventuais falhas em seu funcionamento. Caso seja identificada alguma falha, será realizada a devida correção e encaminhado para a realização de novos testes. Após a realização e validação dos testes, o sistema estará pronto para ser entregue e utilizado pelos moradores, funcionários e síndico do condomínio, ficando a equipe desenvolvedora e fornecedora disponível para instruir na utilização do sistema e fornecer suporte para eventuais problemas. 1.5 METODOLOGIA DE DESENVOLVIMENTO A seguir serão listados todos os pontos relacionados aos processos de elaboração da documentação do sistema proposto: Escolha e proposta do tema: O tema foi escolhido após a observação das dificuldades e necessidades encontradas em um condomínio onde um dos integrantes da equipe mora. Pesquisa bibliográfica: As informações e dados reunidos e listados neste documento foram obtidas através de livros e artigos disponíveis na Internet; Padrão de formatação da documentação: baseada nas normas da ABNT adotadas pela instituição de ensino Universidade Estácio de Sá; 19 Criação e organização dos capítulos, seções e subseções: baseada nas normas definidas pela ABNT adotadas pela instituição de ensino Universidade Estácio de Sá. O sistema será desenvolvido por meio do Framework .NET utilizando as linguagens C#, HTML5, CSS3, Bootstrap 4.1.3, além do JavaScript e JQuery, e a linguagem SQL como ferramenta de banco de dados. C# é uma linguagem de programação orientada a objetos desenvolvida pela Microsoft como parte da plataforma .NET, permitindo a criação de diversos tipos de aplicações, como: aplicações web, desktop, mobile, IoT entre outras. HTML5 é a versão maisrecente da linguagem HTML que é uma linguagem de marcação utilizada para criação de páginas e aplicações web. CSS3 é a versão mais recente da linguagem CSS que é utilizada para definir os estilos para páginas web, descrevendo como os elementos HTML devem ser exibidos. Bootstrap 4.1.3 é a versão mais recente deste framework que é utilizado para facilitar o desenvolvimento de páginas e aplicações web responsivas usando HTML, CSS e JavaScript. JavaScript é uma linguagem de programação baseada em scripts com orientação a objetos, sendo uma linguagem cliente-servidor em navegadores web, utilizada junto com o HTML e o CSS para manipular comportamentos nas páginas. JQuery é uma biblioteca de funções JavaScript que interage com o HTML, desenvolvida para simplificar os scripts interpretados no navegador do cliente (client- side) que simplifica e facilita a programação em JavaScript permitindo a compatibilidade com diversos navegadores. SQL é uma linguagem de programação designada para manipular dados em um banco de dados relacional, é usada por um grande número de aplicativos e organizações pois interage com os principais bancos de dados baseados no modelo relacional. 20 1.6 ORGANIZAÇÃO DO TRABALHO O projeto está estruturado e organizado da seguinte maneira: Capítulo 1: foram apresentadas as informações iniciais sobre as dificuldades encontradas no cenário atual do condomínio, bem como informações sobre como será realizado o desenvolvimento do sistema e de suas funcionalidades; Capítulo 2: será abordada a análise de viabilidade com as seções de viabilidade técnica, econômica, operacional e de cronograma; Capítulo 3: serão apresentadas informações detalhadas sobre os sistemas propostos: uma breve definição, regras de negócios e levantamentos de requisitos; Capítulo 4: serão mostrados todos os diagramas UML dos sistemas: diagramas de casos de uso, listagem dos casos de uso, descrições textuais dos casos de uso, diagrama de classe, diagrama de objeto e diagramas de sequência. Capítulo 5: o banco de dados do sistema será evidenciado, mostrando os modelos lógico, físico e o script da base de dados que foi construído; Capítulo 6: todo o processo de implementação será detalhado de acordo com a linguagem de programação escolhida; Capítulo 7: trata a respeito da conclusão do projeto final. 2 ANÁLISE DE VIABILIDADE Esta seção trata da análise de viabilidade do projeto e foi dividida em quatro partes, sendo estas a análise de viabilidade técnica, econômica, operacional e a viabilidade de cronograma de desenvolvimento. 21 2.1 VIABILIDADE TÉCNICA Para o melhor entendimento, esta seção foi dividida em três tópicos: Hardware; Recursos Humanos; Software. 2.1.1 Hardware Equipamentos físicos utilizados para o desenvolvimento do sistema. Descrição Quantidade Desktop com processador Intel Core i3 3.50GHz, 12GB RAM MarkVision, HD Western Digital 1TB SATA, Placa de Vídeo GeForce Gt 630 1GB, Placa Mãe Gigabyte H81M-H 01 Notebook Samsung com processador AMD A4-3305M 2.50GHz, 6GB RAM, HD Samsung 500GB. 01 Notebook Semp Toshiba com processador Intel Core i5 2430M 2.40GHz, 4GB RAM, HD Western Digital 500GB. 01 Tabela 1 - Descrição e quantidade de hardwares utilizados no projeto. 2.1.2 Recursos Humanos Pessoas que trabalharam no desenvolvimento deste projeto. Nome Função Gabriel Da Silva Pereira Analista de Sistemas; Analista Front-End. Klayton De Melo Brito Analista de Sistemas; Analista Back-End. Mauro Areia Marins Analista de Sistemas; Analista de Negócios. Tabela 2 - Nome e função dos recursos humanos envolvidos no projeto. 22 2.1.3 Software Programas e licenças utilizadas para o desenvolvimento deste projeto. Descrição Tipo Quantidade Microsoft Office 365 Suíte de aplicativos 1 GanttProject Gerenciamento de projeto 1 Astah Community Modelagem 1 brModelo Modelagem 1 Visual Studio Commnity 2017 IDE de programação 3 SQL Server 2017 Gerenciador de banco de dados. 3 Tabela 3 - Descrição, tipo e quantidade de licenças de softwares utilizadas no projeto. 2.2 VIABILIDADE ECONÔMICA Relação de custos dos recursos de hardware, software e humano para a realização do projeto. Hardware Valor Desktop com processador Intel Core i3 3.50GHz, 12GB RAM MarkVision, HD Western Digital 1TB SATA, Placa de Vídeo GeForce Gt 630 1GB, Placa Mãe Gigabyte H81M-H R$2.200,00 Notebook Samsung com processador AMD A4-3305M 2.50GHz, 6GB RAM, HD Samsung 500GB. R$1.350,00 Notebook Semp Toshiba com processador Intel Core i5 2430M 2.40GHz, 4GB RAM, HD Western Digital 500GB. R$1.200,00 Softwares Valor Microsoft Office 365 R$239,00 Astah Community R$0,00 brModelo R$0,00 GanttProject R$0,00 23 Visual Studio Commnity 2017 R$0,00 SQL Server 2017 R$0,00 Recursos Humanos Valor Gabriel Da Silva Pereira R$18.000,00 Klayton De Melo Brito R$18.000,00 Mauro Areia Marins R$18.000,00 TOTAL R$58.989,00 Tabela 4 - Análise de custos dos recursos de hardware, software e humanos do projeto. 2.3 VIABILIDADE OPERACIONAL Para iniciar o desenvolvimento do projeto será necessário a disponibilização de parte da quantia descrita na tabela abaixo, como acordado previamente com a contratante de acordo com os termos assinados no contrato, visando à viabilização da execução das etapas de planejamento e desenvolvimento do sistema. Visando os benefícios que os sistemas trarão, os investimentos e requisitos descritos tornam-se de extrema importância. A tabela abaixo discrimina os detalhes dos recursos e os valores (em reais) da viabilidade operacional do projeto. Recursos Valores (Reais) Duração Hospedagem do Website R$ 250,00 1 ano Analista de Negócios R$ 18.000,00 2460h Analista de Front-End R$ 18.000,00 2460h Analista de Banco de Dados R$ 18.000,00 2460h Tabela 5 - Recursos e valores necessários para o desenvolvimento do sistema. 24 2.4 VIABILIDADE DE CRONOGRAMA Figura 1 - Análise de custos dos recursos de hardware, software e humanos do projeto. 25 3 O SISTEMA Atualmente no Condomínio Viver Bem, para registrar qualquer reclamação, fazer agendamentos, aplicar multas ou até mesmo consultar informações de moradores demanda muito tempo dos funcionários, moradores e até do síndico, pois essas e outras atividades são todas realizadas de forma manual através de fichas de papel, agendas, livros e pastas, o que dificulta bastante a realização destas ações. A administração dispõe de um computador que é utilizado para atualizar uma planilha com o cadastro dos moradores e os agendamentos, e gerar e imprimir os arquivos para aplicação de multa, notificações e alugueis de espaços, porém não existe nenhum sistema que facilite o controle e gerenciamento dessas demandas. Sempre que tem alguma ocorrência dentro do condomínio, os moradores precisam registrá-la em um livro que fica na portaria, para ser repassada ao sindico que vai tomar as devidas providências para a resolução do problema, porém não é tão fácil manter o controle dessas ocorrências, o que dificulta também a resolução dos problemas de forma mais eficiente e rápida para dar mais conforto aos moradores, O mesmo problema ocorre para se aplicar e controlar as notificações e multas, pois para se aplicar é necessário ir até o morador ou chamá-lo na administração e fazer o registro pessoalmente, onde será entregue umdocumento com informações sobre o ocorrido. Para realizar a locação de espaços e reserva de vagas também é necessário o morador ir até a administração, onde o síndico verificará na planilha se existe algum agendamento para a data desejada, caso esteja disponível será impresso o termo de compromisso que deverá ser assinado pelo morador. Ao analisar estes fatos percebemos que a estrutura atual não fornece o devido suporte para os moradores e até mesmo para a administração do condomínio, o que dificulta a comunicação entre ambos, levando mais tempo para realizar atividades que podem ser feitas de forma rápida com a utilização de um sistema programado para atender estas necessidades. 26 3.1 O QUE É O SISTEMA O Sistema de Gerenciamento de Condomínio é um sistema web que otimizará o gerenciamento do Condomínio Viver Bem, facilitando e agilizando a realização das atividades mais comuns no condomínio e poderá ser acessado tanto pela administração do condomínio (síndico e zelador) quanto pelo porteiro e moradores. Por ser um sistema web pode ser acessado através do navegador, sem a necessidade de instalação. O sistema poderá ser utilizado pelos moradores para o registo de ocorrências, locação de espaços, reserva de vagas, consultar notificações e multas e atualizar informações do próprio cadastro. Servirá também para a administração do condomínio ter um conhecimento mais rápido dos problemas ocorridos no condomínio, aplicar notificações e multas de uma forma mais fácil, gerenciar os espaços e vagas, ter um controle do cadastro dos funcionários além de proporcionar um controle sobre a habitação dos apartamentos com um cadastro dos moradores no sistema. Além disso, o sistema facilitará o trabalho dos porteiros, permitindo uma busca mais rápida no cadastro de moradores, consultar os agendamentos realizados no dia e registrar e atualizar as ocorrências conforme a necessidade. 3.2 REGRAS DE NEGÓCIO Formato de login e senha (RN001) Descrição: O login de acesso será sempre o CPF. A senha deverá ser alfanumérica com o limite de 8 caracteres. Perfis de acesso (RN002) Descrição: Os perfis de acesso ao sistema serão: Síndico (que valerá para o síndico e subsíndico), Zelador, Porteiro e Morador. 27 Quantidade de cadastro por pessoa (RN003) Descrição: Se uma pessoa morar e trabalhar no condomínio, poderá ter dois cadastros, sendo um para cada tipo de conta, e ao logar o sistema deverá exibir os perfis de acesso para que a pessoa escolha com qual perfil quer acessar o sistema. Um morador só pode ser cadastrado em apenas um apartamento. Quantidade de cadastro por apartamento (RN004) Descrição: Cada apartamento poderá ter apenas uma conta de morador ativa. Caso um morador alugue o apartamento, a conta dele deverá ser desativada e deverá ser criada uma conta no nome do locatário. Quantidade de carro e vaga por morador (RN005) Descrição: Um morador só pode ter um carro e uma vaga cadastrados no sistema. Uma vaga pertence a somente um morador. Alteração de dados pessoais (RN006) Descrição: O zelador, morador e porteiro só poderão alterar os telefones de contato, e- mail e senha do próprio cadastro. Exclusão de informações (RN007) Descrição: Nenhum registro (cadastro de morador e funcionário, ocorrências, notificações, multas, agendamentos) deverá ser excluído do sistema. Somente os dependentes (pessoas que moram no apartamento) e avisos poderão ser excluídos. Permissões sobre as multas (RN008) Descrição: Somente o síndico poderá aplicar multas. O zelador e morador poderão apenas consultar e visualizar multas. Fechamento de ocorrências (RN009) Descrição: Somente o síndico e o zelador poderão finalizar as ocorrências. 28 Permissão sobre as consultas (RN010) Descrição: O morador poderá consultar apenas as notificações e multas feitas a ele e as ocorrências e agendamentos realizados por ele. Bloqueio de vagas e espaços (RN011) Descrição: As vagas de visitantes e espaços para locação só poderão ser bloqueadas para manutenção caso não tenha nenhuma agenda realizada para o período desejado. Reserva de vagas e espaços (RN012) Descrição: As reservas de vagas poderão ser realizadas com até 30 dias de antecedência, e de espaços com até 90 dias, podendo ser realizada até no dia desejado, desde que o espaço ou vaga esteja disponível. Um morador poderá agendar apenas um espaço ou vaga para a data desejada e no máximo 3 agendamentos de vagas para cada semana. Cancelamento de reservas (RN013) Descrição: O cancelamento das locações de espaço só poderá ser realizado até 7 dias antes da data agendada. O cancelamento das reservas de vagas poderá ser realizado a qualquer momento, até mesmo na data agendada. Tipos de multas (RN014) Descrição: O síndico deverá cadastrar os tipos de multas de acordo com as regras do regimento interno, informando o valor em porcentagem. O sistema deverá calcular a porcentagem sobre o valor da cota condominial e exibir o valor em reais. Os tipos de multas cadastrados pelo síndico também serão usados como tipos de notificações e de ocorrências. Aplicação de multas (RN015) Descrição: A multa poderá ser aplicada com ou sem uma notificação anterior. 29 Recurso de multas (RN016) Descrição: O morador não poderá recorrer multa pelo sistema. Caso uma multa seja recorrida de forma judicial ou na assembleia, após a validação do recurso a multa deverá ser cancelada. Infrações recorrentes (RN017) Descrição: Da segunda infração (notificação) em diante, que seja do mesmo tipo para o mesmo morador, será passível de multa, a ser aplicada pelo síndico. Da segunda multa em diante, do mesmo tipo para o mesmo morador poderá ter o valor da multa duplicado. Reabertura de ocorrência (RN018) Descrição: Uma ocorrência só poderá ser reaberta dentro de um período de 3 dias corridos após o fechamento. Passado esse período ela se dará por encerrada, não permitindo nenhuma alteração. Cota condominial (RN019) Descrição: Deverá ser informado o valor médio da cota, sem incluir as cobranças adicionais. Alteração de multas e notificações (RN020) Descrição: Após a multa ou notificação ser aplicada, não será possível alterar nenhuma informação. Criação de cadastros (RN021) Descrição: Somente o síndico terá permissão para criar o cadastro de moradores e funcionários, ou seja, caso alguém precise de acesso ao sistema deverá solicitar o cadastramento ao síndico. Idade mínima para cadastro (RN022) Descrição: O sistema não deverá permitir o cadastramento de moradores e funcionários menores de 18 anos. 30 3.3 LEVANTAMENTO DE REQUISITOS O levantamento de requisitos é uma parte fundamental para o desenvolvimento do projeto, pois a partir dele será possível identificar as necessidades a serem atendidas no sistema. Para o levantamento desses requisitos foram realizadas entrevistas com funcionários e moradores do condomínio. A seguir serão listados os requisitos funcionais e não funcionais obtidos. 3.4 REQUISITOS FUNCIONAIS RF001 – O síndico, o morador, o zelador e o porteiro deverão realizar login no sistema. RF002 – O síndico mantém o cadastro de moradores. RF003 – O porteiro consulta o cadastro de moradores. RF004 – O zelador e morador visualizam e alteram o cadastro de morador. RF005 – O síndico, o zelador e o morador mantêm dependentes de moradores. RF006 – O porteiro consultadependente de moradores RF007 – O síndico mantém o cadastro de funcionários. RF008 – O zelador consulta e altera o cadastro de funcionários. RF009 – O porteiro visualiza e altera o próprio cadastro. RF010 – O síndico mantém espaços para reserva. RF011 – O síndico mantém vagas de visitantes. RF012 – O síndico mantém multas. RF013 – O zelador e o morador consultam multas. RF014 – O síndico mantém os tipos de multas. RF015 – O porteiro e o morador mantêm ocorrências. RF016 – O síndico e o zelador consultam e alteram ocorrências. RF017 – O síndico e o zelador mantêm notificações. RF018 – O morador consulta notificações. RF019 – O síndico, o zelador e o morador mantêm locação de espaços. RF020 – O porteiro consulta as locações de espaços. RF021 – O síndico, o zelador e o morador mantêm reservas de vagas. RF022 – O porteiro consulta as reservas de vagas. RF023 – O síndico e o zelador mantêm avisos no painel de avisos. 31 RF024 – O morador e o porteiro consultam os avisos. RF025 – O síndico poderá emitir relatórios. RF026 – O síndico mantém a cota condominial. 3.5 REQUISITOS NÃO FUNCIONAIS RNF01 – Plataforma. O sistema deverá ser acessado via WEB e ser compatível com os principais navegadores disponíveis no mercado. RNF02 – Usabilidade. O sistema deve possuir uma interface simples, intuitiva e de fácil utilização para o morador e para os funcionários tornando confortável a utilização. RNF03 – Segurança. O sistema deverá ser acessado somente com autenticação; RNF04 – Confidencialidade. As informações contidas no sistema devem ser restritas aos usuários que possuem acesso a elas. RNF05 – Padrão. O sistema deverá fazer uso da programação orientada a objeto; O sistema deve ser projetado no modelo de 3 camadas (MVC). 32 4 DIAGRAMAS UML 4.1 LISTA DE CASOS DE USO Lista de atores que interagem com os sistemas: Morador Porteiro Zelador Síndico Lista de Casos de Uso: 1 - Efetuar login 2 - Manter aviso 3 - Manter funcionário 4 - Notificar morador 5 - Multar morador 6 - Aplicar multa 7 - Manter tipo de multa 8 - Manter morador 9 - Manter dependente 10 - Registrar ocorrência 11 - Manter espaço para locação 12 - Manter vaga 13 - Alugar espaço 14 - Reservar vaga 15 - Registrar cota condominial 16 - Visualizar aviso 17 - Alterar funcionário 18 - Alterar morador 19 - Alterar ocorrência 20 - Cadastrar reserva de vaga 33 21 - Cadastrar locação de espaço 22 - Cadastrar ocorrência 23 - Cadastrar notificação 24 - Consultar morador 25 - Consultar dependente 26 - Consultar funcionário 27 - Consultar multa 28 - Consultar notificação 29 - Consultar locação de espaço 30 - Consultar ocorrência 31 - Consultar reserva de vaga 32 - Consultar vaga 33 - Consultar espaço 34 - Consultar tipo de multa 35 - Consultar cota condominial 36 - Reabrir ocorrência 37 - Gerar relatórios 4.2 DIAGRAMAS DE CASOS DE USO Este diagrama descreve as funcionalidades propostas para o desenvolvimento do sistema do ponto de vista do usuário, é uma excelente ferramenta para o levantamento dos requisitos funcionais do sistema. Ele mostra as interações dos atores com os casos de uso, contendo os relacionamentos de dependência, associação e generalização proporcionando uma melhor visão do sistema a ser desenvolvido. 34 Figura 2 - Diagrama de Caso de Uso Morador. 35 Figura 3 - Diagrama de Caso de Uso Porteiro. 36 Figura 4 - Diagrama de Caso de Uso Zelador. 37 Figura 5 - Diagrama de Caso de Uso Síndico 38 4.3 DESCRIÇÃO DE CASO DE USO 4.3.1 Realizar Login (CSU01) Sumário: O usuário usa o sistema para realizar login. Ator Primário: Síndico. Atores Secundários: Zelador, Porteiro e Funcionário. Pré-condições: O usuário possuir cadastro no sistema. P - Fluxo Principal 1. O Síndico abre a página de acesso ao sistema. 2. O sistema apresenta a interface de acesso. A01 - Fluxo alternativo (P.2): Logar no sistema a. O Síndico informa as suas credenciais de acesso e seleciona o botão “Entrar”. b. O sistema compara os dados informados com os dados do banco e fornece o acesso à página inicial. A02 - Fluxo alternativo (P.2): Redefinir senha a. O síndico seleciona a opção “Esqueci minha senha”. b. O sistema exibe um modal com o campo para inserir o CPF. c. O síndico digita o CPF e clica no botão “Enviar”. d. O sistema valida o CPF, envia o e-mail com os passos para redefinir a senha e exibe mensagem confirmando o envio da senha. e. O síndico clica no link recebido por e-mail. f. O sistema exibe a tela de redefinição de senha. g. O síndico insere a senha recebida por e-mail, a nova senha e clica em “Trocar Senha”. h. O sistema valida a senha, altera no banco e retorna para a tela de login. A03 - Fluxo alternativo (P.2): Opção “Não tem uma conta?” selecionada (RN021) a. O sistema exibe um modal com informações de como obter acesso ao sistema. 39 E01 - Fluxo de exceção (A01.a): Usuário ou senha incorretos a. O Sistema exibe mensagem informando que o usuário ou senha estão incorretos. E02 - Fluxo de exceção (A01.a): Usuário possui mais de um perfil de acesso (RN003) a. O sistema compara os dados informados com os dados do banco e exibe um modal para o usuário escolher o tipo de perfil. b. Usuário seleciona o perfil e clica em “Entrar”. c. O sistema fornece acesso à página inicial do perfil selecionado. E03 - Fluxo de exceção (A01.a): Primeiro acesso ao sistema a. O sistema compara os dados informados com os dados do banco e exibe a página para trocar a senha. b. O síndico insere a senha recebida por e-mail, a nova senha e clica em “Trocar Senha”. c. O sistema valida a senha, altera a senha no banco e retorna para a tela de login. E04 - Fluxo de exceção (A02.c): Login não cadastrado a. O Sistema exibe mensagem informando que o usuário não está cadastrado. Pós-condições: O usuário estar logado no sistema. Regras de negócio: RN003, RN021. 4.3.2 Registrar Cota Condominial (CSU02) Sumário: O síndico usa a interface do sistema para registrar e visualizar os valores da cota condominial. Ator Primário: Síndico. Atores Secundários: n/a Pré-condições: O síndico deve estar logado no sistema. P - Fluxo Principal 1. O Síndico seleciona a opção “Cota” no Menu Principal. 40 2. O sistema apresenta a interface com o valor atual da cota, uma lista das cotas cadastradas e a opção para cadastrar nova cota. A01 - Fluxo alternativo (P.2): Cadastrar nova cota a. O síndico informa o novo valor da cota conforme RN019 e clica em “Cadastrar”. b. O sistema exibe um modal perguntando se confirma o cadastro do novo valor da cota. c. O síndico seleciona a opção “Sim”. d. O sistema cadastra o novo valor da cota e exibe uma mensagem confirmando o cadastro do novo valor. A02 - Fluxo alternativo (A01.b): Opção “Não” selecionada a. O sistema fecha o modal. E01 - Fluxo de exceção (A01.c): Campo obrigatório não preenchido a. O sistema exibe mensagem informando que o campo obrigatório não foi preenchido. Pós-condições: Foram visualizadas as informações sobre cotas ou uma nova cota foi cadastrada. Regra de Negócio: RN019. 4.3.3 Manter Aviso (CSU03) Sumário: O síndico usa a interface do sistema para cadastrar, visualizar e excluiravisos. Ator Primário: Síndico. Atores Secundários: Zelador, Porteiro e Morador. Pré-condições: O síndico deve estar logado no sistema. P - Fluxo Principal 1. O síndico seleciona a opção “Avisos” no Menu principal. 2. O sistema apresenta a interface com a lista dos avisos cadastrados e as opções para visualizar o aviso, criar novo e excluir aviso. 41 A01 - Fluxo alternativo (P.1): Lista de avisos (Usuários: Morador e Porteiro) a. O sistema apresenta a interface com a lista dos avisos cadastrados apenas com o status “Postado” e a opção para visualizar o aviso. A02 - Fluxo alternativo (P.2): Cadastrar aviso a. O síndico seleciona o botão “Novo”. b. O sistema apresenta a tela de cadastro de aviso com o campo data já preenchido com a data atual. c. O síndico preenche os campos. d. O sistema valida a data. e. O síndico clica em “Salvar”. f. O sistema exibe uma mensagem perguntando se confirma a criação do aviso. g. O síndico seleciona a opção “Sim”. h. O sistema cadastra o novo aviso e exibe mensagem confirmando a criação do aviso. A03 - Fluxo alternativo (A02.b): Agendar aviso a. O síndico seleciona a data em que deseja exibir o aviso. b. O sistema valida a data. c. O síndico clica em “Salvar”. d. O sistema exibe mensagem perguntando se confirma o agendamento para a data selecionada. e. O síndico seleciona a opção “Sim”. f. O sistema cadastra o novo aviso com o status “agendado” e exibe mensagem confirmando a criação do aviso. A04 - Fluxo alternativo (A02.b): Opção “Cancelar” selecionada a. O síndico seleciona o botão “Cancelar”. b. O sistema exibe um modal perguntando se confirma o cancelamento da criação do aviso. c. O síndico seleciona a opção “Sim”. d. O sistema retorna ao passo P.2. 42 A05 - Fluxo alternativo (P.2): Visualizar aviso (Usuários: Síndico, Zelador, Porteiro e Morador) a. O síndico seleciona o botão “Visualizar”. b. O sistema exibe o aviso selecionado. A06 - Fluxo alternativo (P.2): Excluir aviso (RN007) a. O síndico seleciona o botão “Excluir aviso”. b. O sistema exibe um modal perguntando se confirma a exclusão do aviso. c. O síndico seleciona a opção “Sim”. d. O sistema exclui o aviso e exibe a mensagem confirmando a exclusão. A07 - Fluxo alternativo (A02.f, A03.d, A04.b e A06.b): Opção “Não” selecionada a. O sistema fecha o modal. E01 - Fluxo de exceção (A03.a): Data inferior a data atual a. O sistema exibe mensagem informando que a data não pode ser inferior a data atual. E02 - Fluxo de exceção (A02.g, A03.e): Campo obrigatório não preenchido a. O sistema exibe mensagem informando que o campo obrigatório não foi preenchido. Pós-condições: Um aviso foi cadastrado, consultado ou excluído. Regras de negócio: RN007. 4.3.4 Manter Morador (CSU04) Sumário: O síndico usa a interface do sistema para cadastrar, consultar e alterar moradores. Ator Primário: Síndico. Atores Secundários: Zelador, Porteiro e Morador Pré-condições: O síndico deve estar logado no sistema. 43 P - Fluxo Principal 1. O síndico seleciona a opção “Cadastros” e depois “Moradores” no menu principal. 2. O sistema apresenta a interface com a lista dos moradores cadastrados e as opções para pesquisar, visualizar ou cadastrar novo morador. A01 - Fluxo alternativo (P.2): Cadastrar Morador (RN021) a. O síndico seleciona o botão “Novo”. b. O sistema apresenta a tela com o formulário de cadastro de morador - com os campos “Nº. de vaga”, “Modelo”, “Cor”, “Placa”, “Quantidade de Animais” e “Tipo(s) de animal(ais)” desabilitados para preenchimento, que só serão habilitados conforme a escolha da opção “Sim” nos campos “Possui vaga?”, “Possui veículo?” e “Possui animais?”. c. O síndico preenche os campos. d. O sistema valida o CPF, data de nascimento, apartamento e vaga. e. O síndico clica em “Salvar”. f. O sistema exibe um modal perguntando se confirma a criação do cadastro. g. O síndico seleciona a opção “Sim”. h. O sistema cadastra o morador, exibe mensagem confirmando o envio do e-mail para o morador cadastrado com o link de acesso ao sistema, login e senha, e exibe mensagem de confirmação do cadastro. i. O sistema retorna ao passo P.2. A02 - Fluxo alternativo (A01.b): Cadastrar dependente a. O sistema inicia o fluxo A01 do caso de uso CSU05. A03 - Fluxo alternativo (P.2): Pesquisar morador a. O síndico seleciona por qual campo realizará a consulta. b. O síndico digita o texto ou palavra desejada no campo de pesquisa. c. O sistema exibe a lista dos moradores compatíveis com a pesquisa realizada. A04 - Fluxo alternativo (P.2): Visualizar morador (Usuários: Síndico, Zelador e Porteiro) a. O síndico identifica o morador na lista e clica no ícone “Visualizar”. b. O sistema exibe a tela com o cadastro do morador selecionado. 44 A05 - Fluxo alternativo (A04.b): Alterar morador (RN006) (Usuários: Síndico, Zelador e Morador) a. O síndico altera o(s) campo(s) desejado(s). b. O sistema valida a data de nascimento, apartamento e vaga. c. O síndico clica em “Salvar”. d. O sistema exibe um modal perguntando se confirma a alteração do cadastro. e. O síndico seleciona a opção “Sim”. f. O sistema altera o(s) dado(s) e exibe mensagem confirmando a alteração do cadastro. A06 - Fluxo alternativo (A04.b): Opção “Trocar senha” selecionada (Usuários: Síndico, Zelador) a. O sistema exibe modal perguntando se confirma o envio de nova senha para o e- mail cadastrado. b. O síndico seleciona a opção “Sim”. c. O sistema envia e-mail com a nova senha para o morador e exibe a mensagem confirmando o envio da senha. A07 - Fluxo alternativo (A04.b): Opção “Trocar senha” selecionada (Quando estiver no próprio cadastro – Usuário: Morador) a. O sistema exibe um modal com os campos “Senha atual”, “Nova Senha” e “Confirmar Nova Senha”. b. O morador preenche os campos e clica em “Troca Senha”. c. O sistema exibe modal perguntando se confirma a alteração da senha. d. O morador seleciona a opção “Sim”. e. O sistema valida e altera a senha e exibe mensagem confirmando a alteração da senha. A08 - Fluxo alternativo (A04.b): Incluir, Alterar ou Excluir dependente a. O sistema inicia o Caso de Uso CSU05 (Manter dependente). A09 - Fluxo alternativo (A01.b, A04.b): Opção “Voltar” selecionada a. O sistema exibe um modal perguntando se deseja sair da página. 45 b. O síndico seleciona a opção “Sim”. c. O sistema retorna ao fluxo P.2. A010 - Fluxo alternativo (A01.f, A05.d, A06.a, A07.c, A09.a): Opção “Não” selecionada a. O sistema fecha o modal. E01 - Fluxo de exceção (A01.c): Morador já possui cadastro (RN003) a. O sistema exibe mensagem informando que já existe um morador cadastrado com este CPF. E02 - Fluxo de exceção (A01.c): CPF cadastrado como funcionário a. O sistema preenche os campos Nome, Data de Nascimento, Telefones de contato e e-mail automaticamente com os dados do funcionário cadastrado. E03 - Fluxo de exceção (A01.c, A05.a): Data de nascimento maior que a atual ou inferior a 18 anos (RN022) a. O sistema exibe mensagem informando que o morador não pode ser menor de 18 anos. E04 - Fluxo de exceção (A01.c, A05.a): E-mail em formato inválido a. O sistema exibe mensagem informando que o formato do e-mail não está correto. E05 - Fluxo de exceção (A01.c, A05.a): Apartamento já possui morador cadastrado (RN004) a. O sistema exibe mensagem informando que já existe um morador ativocadastrado para o apartamento. E06 - Fluxo de exceção (A01.c, A05.a): Vaga já cadastrada (RN005) a. O sistema exibe mensagem informando que a vaga já está cadastrada para outro morador. 46 E07 - Fluxo de exceção (A01.g, A05.e, A07.b): Campo obrigatório não preenchido a. O sistema exibe mensagem informando que o campo obrigatório não foi preenchido. E08 - Fluxo de exceção (A07.d): Senha atual incorreta a. O sistema exibe mensagem informando que a senha atual está incorreta. E09 - Fluxo de exceção (A07.d): Senha não atende aos requisitos (RN001) a. O sistema exibe mensagem informando que a senha não atende aos requisitos. Pós-condições: Um morador foi cadastrado, consultado ou alterado. Regras de negócio: RN001, RN003, RN004, RN005, RN006, RN021, RN022. 4.3.5 Manter dependente (CSU05) Sumário: O síndico usa a interface do sistema para cadastrar, consultar, alterar e excluir dependente. Ator Primário: Síndico. Atores Secundários: Zelador, Porteiro e Morador. Pré-condições: O síndico estar logado no sistema. P - Fluxo Principal 1. O síndico acessa a tela de cadastro de novo morador ou a de visualização de morador. 2. O sistema apresenta a interface com a opção para cadastrar um novo dependente e uma lista de dependentes cadastrados (caso já possua cadastrado). A01 - Fluxo alternativo (P.2): Cadastrar dependente a. O síndico seleciona a opção “Sim” no campo “Possui dependente?”. b. O sistema exibe o botão “Novo dependente”. c. O síndico seleciona o botão “Novo dependente”. d. O sistema apresenta um modal de cadastro de dependente. e. O síndico preenche os campos. 47 f. O sistema valida a data de nascimento. g. O síndico clica em “Incluir”. h. O sistema cadastra o dependente, exibe mensagem confirmando o cadastro e exibe o dependente cadastrado na lista. A02 - Fluxo alternativo (P.2): Alterar dependente a. O síndico seleciona o ícone “Editar dependente” do dependente que deseja alterar na lista. b. O sistema exibe o cadastro do dependente. c. O síndico altera o(s) campo(s) desejado(s). d. O sistema valida a data de nascimento. e. O síndico clica em “Salvar”. f. O sistema altera os dados e exibe mensagem confirmando a alteração do cadastro. A03 - Fluxo alternativo (P.2): Excluir dependente (RN007) a. O síndico seleciona o ícone “Excluir Dependente” do dependente que deseja excluir da lista. b. O sistema exibe um modal perguntando se confirma a exclusão do dependente. c. O síndico seleciona a opção “Sim”. d. O sistema exclui o dependente e exibe mensagem confirmando a exclusão. A04 - Fluxo alternativo (A03.b): Opção “Não” selecionada a. O sistema fecha o modal. A05 - Fluxo alternativo (A01.d, A02.b): Opção “Cancelar” selecionada a. O sistema fecha a janela de cadastro. E01 - Fluxo de exceção (A01.e, A02.c): Data de nascimento maior que a atual a. O sistema exibe mensagem informando que a data não pode ser maior que a atual. E02 - Fluxo de exceção (A01.g, A02.e): Campo obrigatório não preenchido a. O sistema exibe mensagem informando que o campo obrigatório não foi preenchido. 48 Pós-condições: Um dependente foi cadastrado, consultado, alterado ou excluído. Regras de negócio: RN007. 4.3.6 Manter funcionário (CSU06) Sumário: O síndico usa a interface do sistema para cadastrar, consultar e alterar funcionário. Ator Primário: Síndico. Atores Secundários: Zelador, Porteiro. Pré-condições: O síndico estar logado no sistema. P - Fluxo Principal 1. O síndico seleciona a opção “Cadastros” e depois “Funcionários” no menu principal. 2. O sistema apresenta a interface com a lista dos funcionários cadastrados e as opções para pesquisar, visualizar ou cadastrar um novo funcionário. A01 - Fluxo alternativo (P.2): Cadastrar Funcionário a. O síndico seleciona o botão “Novo”. b. O sistema apresenta a tela com o formulário de cadastro de funcionário. c. O síndico preenche os campos. d. O sistema valida o CPF, data de nascimento e de admissão. e. O síndico clica em “Salvar”. f. O sistema exibe um modal perguntado se confirma a criação do cadastro. g. O síndico seleciona a opção “Sim”. h. O sistema cadastra o funcionário, exibe mensagem confirmando o envio do e-mail para o funcionário cadastrado com o link de acesso ao sistema, login e senha, e exibe mensagem de confirmação do cadastro. i. O sistema retorna ao passo P.2. A02 - Fluxo alternativo (P.2): Pesquisar funcionário a. O síndico seleciona por qual campo realizará a consulta. b. O síndico digita o texto ou palavra desejada no campo de pesquisa. c. O sistema exibe a lista dos funcionários compatíveis com a pesquisa realizada. 49 A03 - Fluxo alternativo (P.2): Visualizar funcionário a. O síndico localiza o funcionário na lista e clica no ícone “Visualizar Funcionário”. b. O sistema exibe a tela com o cadastro do funcionário selecionado. A04 - Fluxo alternativo (A03.b): Alterar funcionário (RN006) a. O síndico altera o(s) campo(s) desejado(s). b. O sistema valida as datas de nascimento e admissão, e caso tenha selecionado a opção “Inativo” no campo “Status do funcionário” válida também a data de demissão. c. O síndico clica em “Salvar”. d. O sistema exibe um modal perguntando se confirma a alteração do cadastro. e. O síndico seleciona a opção “Sim”. f. O sistema altera o(s) dado(s) e exibe mensagem confirmando a alteração do cadastro. A05 - Fluxo alternativo (A03.b): Opção “Trocar senha” selecionada (Usuários: Síndico, Zelador) a. O sistema exibe um modal perguntando se confirma o envio de nova senha para o e-mail cadastrado. b. O síndico seleciona a opção “Sim”. c. O sistema envia e-mail com a nova senha para o funcionário e exibe a mensagem confirmando o envio da senha. A06 - Fluxo alternativo (A03.b): Opção “Trocar senha” selecionada (Ao acessar o próprio cadastro) a. O sistema exibe uma janela com os campos “Senha atual”, “Nova Senha” e “Confirmar Nova Senha”. b. O síndico preenche os campos e clica em “Troca Senha”. c. O sistema exibe modal perguntando se confirma a alteração da senha. d. O síndico seleciona a opção “Sim”. e. O sistema valida e altera a senha e exibe mensagem confirmando a alteração da senha. A07 - Fluxo alternativo (A01.b, A03.b): Opção “Voltar” selecionada a. O sistema exibe um modal perguntando se deseja sair da página. 50 b. O síndico seleciona a opção “Sim”. c. O sistema retorna ao fluxo P.2. A08 - Fluxo alternativo (A01.f, A04.d, A05.a, A06.d A07.a): Opção “Não” selecionada a. O sistema fecha o modal. E01 - Fluxo de exceção (A01.c): Funcionário já possui cadastro (RN003) a. O sistema exibe mensagem informando que já existe um funcionário cadastrado com este CPF. E02 - Fluxo de exceção (A01.c): CPF cadastrado como morador a. O sistema preenche os campos nome, data de nascimento, telefones de contato e e-mail com os dados do morador. E03 - Fluxo de exceção (A01.c, A04.a): Data de nascimento maior que a atual ou inferior a 18 anos (RN022) a. O sistema exibe mensagem informando que o funcionário não pode ser menor de 18 anos. E04 - Fluxo de exceção (A01.c, A04.a): E-mail em formato inválido a. O sistema exibe mensagem informando que o formato do e-mail não está correto. E05 - Fluxo de exceção (A01.g, A04.e, A06.d): Campo obrigatório não preenchido a. O sistema exibe mensagem informando que o campo obrigatório não foi preenchido. E06 - Fluxo de exceção(A06.d): Senha atual incorreta a. O sistema exibe mensagem informando que a senha atual está errada. E07 - Fluxo de exceção (A06.d): Senha não atende aos requisitos (RN001) a. O sistema exibe mensagem informando que a senha não atende aos requisitos. 51 Pós-condições: O cadastro de um funcionário foi criado, consultado ou alterado. Regras de negócio: RN001, RN003, RN006 e RN022. 4.3.7 Manter espaço (CSU07) Sumário: O síndico usa a interface do sistema para cadastrar, consultar e alterar espaços. Ator Primário: Síndico. Atores Secundários: n/a. Pré-condições: O síndico estar logado no sistema. P - Fluxo Principal 1. O síndico seleciona a opção “Espaços” e depois “Locação” no menu principal. 2. O sistema apresenta a interface com a lista dos espaços cadastrados e as opções para pesquisar, visualizar ou cadastrar um novo espaço para locação. A01 - Fluxo alternativo (P.2): Cadastrar espaço a. O síndico seleciona o botão “Novo”. b. O sistema apresenta a tela com o formulário de cadastro de espaço. c. O síndico preenche os campos. d. O sistema valida o nome do espaço e calcula o valor em reais. e. O síndico clica em “Salvar”. f. O sistema exibe um modal perguntando se confirma a criação do espaço. g. O síndico seleciona a opção “Sim”. h. O sistema cadastra o espaço e exibe mensagem confirmando o cadastro. i. O sistema retorna ao passo P.2. A02 - Fluxo alternativo (P.2): Pesquisar espaço a. O síndico seleciona por qual campo realizará a consulta. b. O síndico digita o texto ou palavra desejada no campo de pesquisa. c. O sistema exibe a lista dos espaços compatíveis com a pesquisa realizada. A03 - Fluxo alternativo (P.2): Visualizar espaço a. O síndico localiza o espaço na lista e clica no ícone “Visualizar Espaço”. 52 b. O sistema exibe a tela com as informações do espaço selecionado. A04 - Fluxo alternativo (A03.b): Alterar espaço a. O síndico altera o(s) campo(s) desejado(s). b. O sistema valida o nome e agendamentos e calcula o “Valor em R$”. c. O síndico clica em “Salvar”. d. O sistema valida as informações e exibe um modal perguntando se confirma a alteração do espaço. e. O síndico seleciona a opção “Sim”. f. O sistema altera o(s) dado(s) e exibe mensagem confirmando a alteração do espaço. A05 - Fluxo alternativo (A03.b, E03.b): Opção “Consultar Reservas” selecionada. a. O sistema inicia o fluxo A02 do caso de uso “Alugar espaço” (CSU013), listando apenas as reservas do espaço que está sendo visualizado. A06 - Fluxo alternativo (A01.b, A03.b): Opção “Voltar” selecionada a. O sistema exibe um modal perguntando se deseja sair da página. b. O síndico seleciona a opção “Sim”. c. O sistema retorna ao passo P.2. A07 - Fluxo alternativo (A01.f, A04.d, A06.a): Opção “Não” selecionada a. O sistema fecha o modal. E01 - Fluxo de exceção (A01c, A04.a): Espaço já cadastrado a. O sistema exibe mensagem informando que já existe um espaço cadastrado com o mesmo nome. E02 - Fluxo de exceção (A01.g, A04.e): Campo obrigatório não preenchido a. O sistema exibe mensagem informando que o campo obrigatório não foi preenchido. E03 - Fluxo de exceção (A04.a): Bloquear agendamento ou Alterar status (RN011) 53 a. O síndico seleciona a data desejada para o bloqueio ou altera o status. b. O sistema exibe mensagem informando que já existe um agendamento realizado para aquele espaço na data selecionada. c. O síndico seleciona o botão “OK”. d. O sistema retorna ao passo A03.b. Pós-condições: Um espaço foi criado, consultado ou alterado. Regras de negócio: RN011 4.3.8 Manter vaga (CSU08) Sumário: O síndico usa a interface do sistema para cadastrar, consultar e alterar vagas. Ator Primário: Síndico. Atores Secundários: n/a. Pré-condições: O síndico estar logado no sistema. P - Fluxo Principal 1. O síndico seleciona a opção “Espaços” e depois “Vaga” no menu principal. 2. O sistema apresenta a interface com a lista das vagas cadastradas e as opções para pesquisar visualizar ou cadastrar uma nova vaga. A01 - Fluxo alternativo (P.2): Cadastrar vaga a. O síndico seleciona o botão “Novo”. b. O sistema apresenta a tela com formulário de cadastro de vaga. c. O síndico preenche os campos. d. O sistema valida o nome. e. O síndico clica em “Salvar”. f. O sistema exibe uma mensagem perguntando se confirma a criação da vaga. g. O síndico seleciona a opção “Sim”. h. O sistema cadastra a vaga e exibe mensagem confirmando o cadastro. i. O sistema retorna ao passo P.2. A02 - Fluxo alternativo (P.2): Pesquisar vaga 54 a. O síndico seleciona por qual campo realizará a consulta. b. O síndico digita o texto ou palavra desejada no campo de pesquisa. c. O sistema exibe a lista das vagas compatíveis com a pesquisa realizada. A03 - Fluxo alternativo (P.2): Visualizar vaga a. O síndico localiza a vaga na lista clica no ícone “Visualizar vaga”. b. O sistema exibe a tela com as informações da vaga selecionada. A04 - Fluxo alternativo (A03.b): Alterar vaga a. O síndico altera o(s) campo(s) desejado(s). b. O sistema valida o nome e data de bloqueio. c. O síndico clica em “Salvar”. d. O sistema exibe uma mensagem perguntando se confirma a alteração do cadastro. e. O síndico seleciona a opção “Sim”. f. O sistema altera o(s) dado(s) e exibe mensagem confirmando a alteração da vaga. A05 - Fluxo alternativo (A03.b, E03.b): Opção “Consultar Reservas” selecionada a. O sistema inicia o fluxo A02 do caso de uso “Reservar vaga” (CSU014), listando apenas as reservas da vaga que está sendo visualizada. A06 - Fluxo alternativo (A01.b, A03.b): Opção “Voltar” selecionada a. O sistema exibe uma mensagem perguntando se deseja sair da página. b. O síndico seleciona a opção “Sim”. c. O sistema retorna ao passo P.2. A07 - Fluxo alternativo (A01.f, A04.d, A06.a): Opção “Não” selecionada a. O sistema fecha a mensagem. E01 - Fluxo de exceção (A01c, A04.a): Vaga já cadastrada a. O sistema exibe mensagem informando que já existe uma vaga cadastrada com o mesmo nome. E02 - Fluxo de exceção (A01.g, A04.e): Campo obrigatório não preenchido 55 a. O sistema exibe mensagem informando que o campo obrigatório não foi preenchido. E03 - Fluxo de exceção (A04.a): Bloquear agendamento ou Alterar status (RN011) a. O síndico seleciona a data desejada para o bloqueio ou altera o status. b. O sistema exibe mensagem informando que já existe um agendamento realizado para aquela vaga na data selecionada. c. O síndico seleciona o botão “OK”. d. O sistema retorna ao passo A03.b. Pós-condições: Uma vaga foi criada, consultada ou alterada. Regras de negócio: RN011. 4.3.9 Multar morador (CSU009) Sumário: O síndico usa a interface do sistema para aplicar multa ao morador e também é possível consultar, visualizar e alterar as multas. Ator Primário: Síndico. Atores Secundários: Zelador, Morador. Pré-condições: Ter pelo menos um morador e um tipo de multa cadastrados. P - Fluxo Principal 1. O Síndico seleciona a opção “Multas” e depois “Aplicadas” no menu principal. 2. O sistema apresenta a interface com a lista de multas já cadastradas e as opções para consultar, alterar ou cadastrar uma nova multa. (RN008) A01 - Fluxo alternativo (P.2): Aplicar multa (Usuário: Síndico) a. O síndico seleciona o botão “Novo”. b. O sistema apresenta a tela de cadastro de multa com o campo “Nº. Notificação” oculto, pois só estará disponívelse escolher a opção “Sim” no campo “Houve notificação?” (RN015), e os campos “Artigo RI” e “Valor” que serão preenchidos automaticamente após a seleção do “Tipo”. c. O síndico preenche os campos. 56 d. O sistema busca informações do nome, tipo de multa e se já houve notificação do mesmo tipo ao morador. e. O síndico clica em “Salvar”. f. O sistema exibe um modal perguntando se confirma a aplicação da multa. g. O síndico seleciona a opção “Sim”. h. O sistema registra a nova multa, envia e-mail para o morador e exibe mensagem confirmando a aplicação da multa. i. O sistema retorna ao passo P.2. A02 - Fluxo alternativo (E01.a): Opção “Visualizar Última Multa Aplicada” selecionada a. O sistema exibe um modal com detalhes da última multa semelhante aplicada ao morador. b. O síndico seleciona a opção “Fechar”. c. O sistema volta para a tela de cadastro de multa com os dados preenchidos. d. O síndico marca a caixa “Recorrente”. e. O sistema duplica o valor da multa no campo “Valor”. f. O síndico seleciona a opção “Salvar”. g. O sistema retorna para o passo A01.f. A03 - Fluxo alternativo (E01.a): Opção “Aplicar Nova Multa” selecionada a. O sistema retorna para o passo A01.f. A04 - Fluxo alternativo (P.2): Pesquisar multa (Usuários: Síndico, Zelador, Morador) (RN008) a. O síndico seleciona por qual campo realizará a consulta. b. O síndico digita o texto ou palavra desejada no campo de pesquisa. c. O sistema exibe a lista das multas compatíveis com a pesquisa realizada. A05 - Fluxo alternativo (P.2): Visualizar multa (RN020) a. O síndico localiza a multa na lista e clica no ícone “Visualizar Multa”. b. O sistema exibe a tela com informações da multa selecionada. 57 A06 - Fluxo alternativo (A03.b): Opção “Multa paga” selecionada (Usuário: Síndico) a. O síndico seleciona a opção “Multa paga”. b. O sistema exibe um modal perguntando se confirma o pagamento da multa. c. O síndico seleciona a opção “Sim”. d. O sistema altera o status da multa para “Paga” e exibe mensagem confirmando o pagamento da multa. e. O sistema exibe os detalhes da multa, não permitindo mais nenhuma alteração. A07 - Fluxo alternativo (A03.b): Cancelar multa (RN016) (Usuário: Síndico) a. O síndico seleciona a opção “Cancelar multa”. b. O sistema exibe um modal com o campo de texto para informar o motivo do cancelamento. c. O síndico informa o motivo e seleciona a opção “Salvar”. d. O sistema exibe um modal perguntando se confirma o cancelamento da multa. e. O síndico seleciona a opção “Sim”. f. O sistema altera o status da multa para “Cancelada”, envia e-mail para o morador e exibe mensagem confirmando o cancelamento da multa. g. O sistema exibe os detalhes da multa com o campo “Motivo do cancelamento” preenchido, não permitindo mais nenhuma alteração. A08 - Fluxo alternativo (A01.b, A05.b): Opção “Voltar” selecionada a. O sistema exibe um modal perguntando se deseja sair da página. b. O síndico seleciona a opção “Sim”. c. O sistema retorna ao fluxo P.2. A09 - Fluxo alternativo (A01.d, A06.b, A07.d, A08.a): Opção “Não” selecionada a. O sistema fecha o modal. E01 - Fluxo de exceção (A01.e): Multa recorrente (RN017) a. O sistema verifica e identifica que existe multa do mesmo tipo aplicada para o morador e exibe um modal com as opções para visualizar a multa ou aplicar uma nova. 58 E02 - Fluxo de exceção (A01.g, A07.c): Campo obrigatório não preenchido a. O sistema exibe mensagem informando que o campo obrigatório não foi preenchido. Pós-condições: Uma multa foi aplicada, consultada, cancelada ou alterada para o status de “Paga”. Regras de negócio: RN008, RN015, RN016, RN017, RN020. 4.3.10 Manter tipos de multa (CSU010) Sumário: O síndico usa a interface do sistema para cadastrar, consultar e alterar tipo de multa. Ator Primário: Síndico. Atores Secundários: n/a. Pré-condições: O síndico estar logado no sistema. P - Fluxo Principal 1. O Síndico seleciona a opção “Multas” e depois “Catálogo” no menu principal. 2. O sistema apresenta a interface com a lista de tipos de multas já cadastrados e as opções para consultar, alterar ou cadastrar um novo tipo. A01 - Fluxo alternativo (P.2): Cadastrar tipo de multa (RN014) a. O síndico seleciona o botão “Novo”. b. O sistema apresenta a tela de cadastro de tipo de multa com o campo “Valor em R$” desabilitado para o preenchimento pois este campo será preenchido automaticamente após preencher o campo “Valor em %”, pois o sistema fará um cálculo da porcentagem informada neste campo sobre o valor atual da cota. c. O síndico preenche os campos. d. O sistema verifica o nome do tipo e calcula o valor. e. O síndico clica em “Salvar”. f. O sistema exibe um modal perguntando se confirma a criação do tipo de multa. g. O síndico seleciona a opção “Sim”. h. O sistema cadastra o tipo e exibe mensagem confirmando o cadastro. i. O sistema retorna ao passo P.2. 59 A02 - Fluxo alternativo (P.2): Pesquisar tipo a. O síndico seleciona por qual campo realizará a consulta. b. O síndico digita o texto ou palavra desejada no campo de pesquisa. c. O sistema exibe a lista dos tipos compatíveis com a pesquisa realizada. A03 - Fluxo alternativo (P.2): Visualizar tipo a. O síndico localiza o tipo na lista e clica no ícone “Visualizar”. b. O sistema exibe a tela com os dados do tipo selecionado. A04 - Fluxo alternativo (A03.b): Alterar tipo a. O síndico altera o campo desejado. b. O sistema verifica o nome do tipo e calcula o valor. c. O síndico clica em “Salvar”. d. O sistema exibe um modal perguntando se confirma a alteração do cadastro. e. O síndico seleciona a opção “Sim”. f. O sistema altera os dados e exibe mensagem confirmando a alteração do cadastro. A05 - Fluxo alternativo (A01.b, A03.b): Opção “Voltar” selecionada a. O sistema exibe um modal perguntando se deseja sair da página. b. O síndico seleciona a opção “Sim”. c. O sistema retorna ao fluxo P.2. A06 - Fluxo alternativo (A01.f, A04.d, A05.a): Opção “Não” selecionada a. O sistema fecha o modal. E01 - Fluxo de exceção (A01.g, A04.e): Campo obrigatório não preenchido a. O sistema exibe mensagem informando que o campo obrigatório não foi preenchido. E02 - Fluxo de exceção (A01.g, A04.e): Tipo já cadastrado a. O sistema exibe mensagem informando que o tipo já está cadastrado. Pós-condições: Um tipo de multa foi criado, consultado ou alterado. Regras de negócio: RN014 60 4.3.11 Notificar morador (CSU011) Sumário: O síndico usa a interface do sistema para aplicar notificações ao morador, e também será possível consultar e alterar notificações. Ator Primário: Síndico. Atores Secundários: Zelador, Morador. Pré-condições: Ter pelo menos um morador cadastrado no sistema. P - Fluxo Principal 1. O Síndico seleciona a opção Notificações no menu principal. 2. O sistema apresenta a interface com a lista de notificações já cadastradas e as opções para consultar, alterar ou cadastrar uma nova notificação. A01 - Fluxo alternativo (P.2): Aplicar notificação a. O síndico seleciona o botão “Novo”. b. O sistema apresenta a tela com o formulário de cadastro de notificação. c. O síndico preenche os campos. d. O sistema verifica o nome do morador e o tipo de notificação. e. O síndico clica em “Salvar”. f. O sistema exibe mensagem perguntando se confirma a aplicação da notificação. g. O síndico seleciona a opção “Sim”. h. O sistema registra a notificação,envia e-mail para o morador e exibe mensagem confirmando a aplicação da notificação. i. O sistema retorna ao fluxo P.2. A02 - Fluxo alternativo (E01.a): Opção “Visualizar Última Notificação Aplicada” selecionada. a. O sistema exibe um modal com a última notificação daquele tipo aplicada ao morador. A03 - Fluxo alternativo (E01.a): Opção “Aplicar Multa” selecionada. a. O sistema inicia ao fluxo A01.b do Caso de uso “Multar Morador” (CSU009), já com os dados preenchidos conforme as informações da notificação. 61 A04 - Fluxo alternativo (E01.a): Opção “Aplicar Notificação” selecionada. a. O sistema exibe mensagem perguntando se confirma a aplicação da notificação. b. O sistema retorna ao fluxo A01.f. A05 - Fluxo alternativo (P.2): Pesquisar notificação (RN010) a. O síndico seleciona por qual campo realizará a consulta. b. O síndico digita o texto ou palavra desejada no campo de pesquisa. c. O sistema exibe a lista das notificações compatíveis com a pesquisa realizada. A06 - Fluxo alternativo (P.2): Visualizar notificação (RN020) a. O síndico localiza a notificação na lista e clica no ícone “Visualizar”. b. O sistema exibe a tela com os dados da notificação selecionada. A07 - Fluxo alternativo (A03.b): Cancelar notificação a. O síndico seleciona a opção “Cancelar notificação”. b. O sistema exibe um modal com o campo de texto para informar o motivo do cancelamento. c. O síndico informa o motivo e seleciona a opção “Salvar”. d. O sistema exibe uma mensagem perguntando se confirma o cancelamento da notificação. e. O síndico seleciona a opção “Sim”. f. O sistema altera o status da notificação para “Cancelada”, envia e-mail para o morador e exibe mensagem confirmando o cancelamento da notificação. g. O sistema exibe os detalhes da notificação com o campo “Motivo do cancelamento” preenchido e o status como “Cancelada”, não permitindo mais nenhuma alteração. A08 - Fluxo alternativo (A03.b): Opção “Visualizar Última Notificação Aplicada” selecionada (Notificação com status Pendente) a. O sistema exibe um modal com a última notificação daquele tipo aplicada ao morador. A09 - Fluxo alternativo (A03.b): Opção “Confirmar notificação” selecionada (Notificação com status Pendente) a. O sistema exibe um modal perguntando se confirma a aplicação da notificação. 62 b. O síndico seleciona a opção “Sim”. c. O sistema altera o status para “Aplicada”, envia e-mail para o morador e exibe a mensagem confirmando a aplicação da notificação. A010 - Fluxo alternativo (A03.b): Opção “Aplicar multa” selecionada (Notificação com status Pendente) a. O sistema inicia ao fluxo A01.b do Caso de uso “Multar Morador” (CSU009), já com os dados preenchidos conforme as informações da notificação. b. Após a confirmação da aplicação da multa o sistema altera o status da notificação para “Cancelada” com o motivo preenchido como “Multa aplicada”. A011 - Fluxo alternativo (A03.b): Opção “Cancelar notificação” selecionada (Notificação com status Pendente) a. O sistema exibe um modal com o campo de texto para informar o motivo do cancelamento. b. O síndico informa o motivo e seleciona a opção “Salvar”. c. O sistema exibe um modal perguntando se confirma o cancelamento da notificação. d. O síndico seleciona a opção “Sim”. e. O sistema altera o status da notificação para “Cancelada” e exibe mensagem confirmando o cancelamento da notificação. f. O sistema exibe os detalhes da notificação com o campo “Motivo do cancelamento” preenchido e o status como “Cancelada”, não permitindo mais nenhuma alteração. A012 - Fluxo alternativo (A01.b, A06.b): Opção “Voltar” selecionada a. O sistema exibe uma mensagem perguntando se deseja sair da página. b. O síndico seleciona a opção “Sim”. c. O sistema retorna ao fluxo P.2. A013 - Fluxo alternativo (A01.f, A07.d, A09.a, A011.c, A012.a): Opção “Não” selecionada a. O sistema fecha o modal. 63 E01 - Fluxo de exceção (A01.e): Notificação recorrente (RN017) (Usuário: Síndico) a. O sistema identifica a existência de uma notificação do mesmo tipo aplicada ao morador e exibe modal perguntando se deseja visualizar a última notificação aplicada, aplicar notificação ou aplicar multa. E02 - Fluxo de exceção (A01.g): Notificação recorrente (RN017) (Usuário: Zelador) a. O sistema aplica a notificação com o status “Pendente”, caso tenha sido identificada outra notificação do mesmo tipo aplicada ao morador, e exibe mensagem confirmando a aplicação da notificação. b. O sistema retorna ao fluxo P.2. E03 - Fluxo de exceção (A01.g, A07.e, A011.d): Campo obrigatório não preenchido a. O sistema exibe mensagem informando que o campo obrigatório não foi preenchido. Pós-condições: Uma notificação foi aplicada, consultada, cancelada ou alterada. Regras de negócio: RN010, RN017 e RN020. 4.3.12 Registrar ocorrência (CSU012) Sumário: O morador usa a interface do sistema para registrar as ocorrências, além de poder consultar e alterar as ocorrências. Ator Primário: Morador. Atores Secundários: Síndico, Zelador, Porteiro, Morador. Pré-condições: Estar logado no sistema. P - Fluxo Principal 1. O morador seleciona a opção “Ocorrências” no menu principal. 2. O sistema apresenta a interface com a lista de ocorrências já registradas e as opções para consultar, alterar ou cadastrar uma nova ocorrência. 64 A01 - Fluxo alternativo (P.2): Registrar ocorrência a. O morador seleciona o botão “Novo”. b. O sistema apresenta a tela com o formulário de registro de ocorrência. c. O morador preenche os campos e clica em “Salvar”. d. O sistema exibe um modal perguntando se confirma o registro da ocorrência. e. O morador seleciona a opção “Sim”. f. O sistema registra a ocorrência, envia e-mail para o morador com detalhes da ocorrência e exibe mensagem confirmando o registro. g. O sistema retorna ao fluxo P.2. A02 - Fluxo alternativo (P.2): Pesquisar ocorrência (RN010) a. O morador seleciona por qual campo realizará a consulta. b. O morador digita o texto ou palavra desejada no campo de pesquisa. c. O sistema exibe a lista das ocorrências compatíveis com a pesquisa realizada. A03 - Fluxo alternativo (P.2): Visualizar ocorrência a. O morador localiza a ocorrência na lista e clica no ícone “Visualizar”. b. O sistema exibe a tela com os dados da ocorrência selecionada. A04 - Fluxo alternativo (A03.b): Incluir comentário a. O morador seleciona a opção “Novo Comentário”. b. O sistema exibe um modal com um campo para incluir o comentário. c. O morador inclui o comentário e clica em “Salvar”. d. O sistema exibe um modal perguntando se confirma a inclusão do comentário. e. O morador seleciona a opção “Sim”. f. O sistema cadastra o comentário e exibe mensagem confirmando a inclusão. A05 - Fluxo alternativo (A03.b): Visualizar comentário a. O morador seleciona o comentário que deseja visualizar. b. O sistema exibe o comentário em um modal. A06 - Fluxo alternativo (A03.b): Reabrir ocorrência (RN018) (Quando a ocorrência estiver fechada) a. O morador seleciona a opção “Reabrir Ocorrência”. 65 b. O sistema exibe um modal com um campo para informar o motivo da reabertura. c. O morador preenche o campo e clica em “Reabrir”. d. O sistema exibe um modal perguntando se confirma a Reabertura da ocorrência. e. O morador seleciona a opção “Sim”. f. O sistema altera o status para “Reaberta”, envia e-mail para o morador e exibe mensagem confirmando a reaberturada ocorrência. g. O sistema exibe a ocorrência. A07 - Fluxo alternativo (A03.b): Finalizar ocorrência (RN009) (Usuários: Síndico e Zelador) a. O síndico seleciona a opção “Finalizar ocorrência”. b. O sistema exibe um modal com um campo para informar o motivo do fechamento. c. O síndico preenche o campo e clica em “Finalizar”. d. O sistema exibe um modal perguntando se confirma a finalização da ocorrência. e. O síndico seleciona a opção “Sim”. f. O sistema altera o status para “Finalizada”, envia e-mail para o morador e exibe mensagem confirmando o fechamento da ocorrência. g. O sistema exibe a ocorrência com o status Finalizada. A08 - Fluxo alternativo (A01.b, A03.b): Opção “Voltar” selecionada a. O sistema exibe um modal perguntando se deseja sair da página b. O morador seleciona a opção “Sim”. c. O sistema retorna ao fluxo P.2. A09 - Fluxo alternativo (A01.d, A04.d, A06.d, A07.d, A08.a): Opção “Não” selecionada a. O sistema fecha o modal. E01 - Fluxo de exceção (A01.e, A04.e, A06.e, A07.e): Campo obrigatório não preenchido a. O sistema exibe mensagem informando que o campo obrigatório não foi preenchido. 66 Pós-condições: Uma ocorrência foi registrada, consultada, atualizada, fechada ou reaberta. Regras de negócio: RN009, RN010 e RN018. 4.3.13 Alugar espaço (CSU013) Sumário: O síndico usa a interface do sistema para alugar um espaço, consultar e alterar agendamento. Ator Primário: Síndico. Atores Secundários: Zelador, Porteiro, Morador. Pré-condições: Ter pelo menos um morador e um espaço cadastrado no sistema. P - Fluxo Principal 1. O Síndico seleciona a opção “Reservas” e depois “Espaço” no menu principal. 2. O sistema apresenta a interface com os agendamentos realizados e as opções para consultar, alterar ou realizar uma nova locação. A01 - Fluxo alternativo (P.2): Nova locação a. O síndico seleciona o botão “Novo”. b. O sistema apresenta a tela com o formulário de locação de espaço com o campo “Valor” desabilitado para edição, pois ele será preenchido automaticamente ao selecionar o espaço. c. O síndico preenche os campos. d. O sistema valida informações sobre o morador e sobre o espaço. e. O síndico clica no link para visualizar o termo de uso. f. O sistema exibe o modal com o termo de uso. g. O síndico clica na opção “Concordo”. h. O sistema fecha o modal e marca a caixa de confirmação de leitura do termo. i. O síndico clica em “Salvar”. j. O sistema exibe um modal perguntando se confirma o agendamento. k. O síndico seleciona a opção “Sim”. l. O sistema registra a locação, envia e-mail para o morador com detalhes do agendamento e exibe mensagem confirmando o agendamento. m. O sistema retorna ao fluxo P.2. 67 A02 - Fluxo alternativo (P.2): Pesquisar locações (RN010) a. O síndico seleciona por qual campo realizará a consulta. b. O síndico digita o texto ou palavra desejada no campo de pesquisa. c. O sistema exibe a lista das locações compatíveis com a pesquisa realizada. A03 - Fluxo alternativo (P.2): Visualizar locações a. O síndico localiza a locação na lista e clica no ícone “Visualizar”. b. O sistema exibe a tela com os dados da locação selecionada. A04 - Fluxo alternativo (A03.b): Cancelar locação (RN013) a. O síndico seleciona a opção “Cancelar reserva”. b. O sistema exibe um modal perguntando se confirma o cancelamento da reserva. c. O síndico seleciona a opção “Sim”. d. O sistema altera o status da locação para “Cancelada”, envia e-mail para o morador e exibe mensagem confirmando o cancelamento. A05 - Fluxo alternativo (A01.b, A03.b): Opção “Voltar” selecionada a. O sistema exibe um modal perguntando se deseja sair da página. b. O síndico seleciona a opção “Sim”. c. O sistema retorna ao fluxo P.2. A06 - Fluxo alternativo (A01.f, A01.j, A04.b, A05.a): Opção “Não” selecionada a. O sistema fecha o modal. E01 - Fluxo de exceção (A01.d): Fora do prazo (RN012) a. O sistema exibe mensagem informando que está fora do prazo para agendamento. E02 - Fluxo de exceção (A01.d): Data indisponível a. O sistema exibe mensagem informando que a data não está disponível para agendamento. E03 - Fluxo de exceção (A01.k): Campo obrigatório não preenchido a. O sistema exibe mensagem informando que o campo obrigatório não foi preenchido. 68 Pós-condições: Uma locação foi agendada, consultada ou cancelada. Regras de negócio: RN010, RN012 e RN013. 4.3.14 Reservar vaga (CSU014) Sumário: O síndico usa a interface do sistema para reservar uma vaga, consultar e alterar agendamento. Ator Primário: Síndico. Atores Secundários: Zelador, Porteiro, Morador. Pré-condições: Ter pelo menos um morador e uma vaga cadastrada no sistema. P - Fluxo Principal 1. O Síndico seleciona a opção “Reservas” e depois “Vagas” no menu principal. 2. O sistema apresenta a interface com os agendamentos realizados e as opções para consultar, alterar ou realizar uma nova reserva. A01 - Fluxo alternativo (P.2): Nova reserva a. O síndico seleciona o botão “Novo”. b. O sistema apresenta a tela com o formulário reserva de vaga c. O síndico preenche os campos. d. O sistema valida informações sobre o morador e sobre a vaga. e. O síndico clica no link para visualizar o termo de uso. f. O sistema exibe o modal com o termo de uso. g. O síndico clica na opção “Concordo”. h. O sistema fecha o modal e marca a caixa de confirmação de leitura do termo. i. O síndico clica em “Salvar”. j. O sistema exibe um modal perguntando se confirma o agendamento. k. O síndico seleciona a opção “Sim”. l. O sistema registra a reserva, envia e-mail para o morador com detalhes do agendamento e exibe mensagem confirmando o agendamento. m. O sistema retorna ao fluxo P.2. A02 - Fluxo alternativo (P.2): Pesquisar reservas (RN010) a. O síndico seleciona por qual campo realizará a consulta. 69 b. O síndico digita o texto ou palavra desejada no campo de pesquisa. c. O sistema exibe a lista das reservas compatíveis com a pesquisa realizada. A03 - Fluxo alternativo (P.2): Visualizar reservas de vaga a. O síndico localiza a reserva na lista e clica no ícone “Visualizar”. b. O sistema exibe a tela com os dados da locação selecionada. A04 - Fluxo alternativo (A03.b): Cancelar reserva (RN013) a. O síndico seleciona a opção “Cancelar reserva”. b. O sistema exibe um modal perguntando se confirma o cancelamento da reserva. c. O síndico seleciona a opção “Sim”. d. O sistema altera o status da reserva para “Cancelada”, envia e-mail para o morador e exibe mensagem confirmando o cancelamento. A05 - Fluxo alternativo (A01.b, A03.b): Opção “Voltar” selecionada a. O sistema exibe um modal perguntando se deseja sair da página. b. O síndico seleciona a opção “Sim”. c. O sistema retorna ao fluxo P.2. A06 - Fluxo alternativo (A01.f, A01.j, A04.b, A05.a): Opção “Não” selecionada a. O sistema fecha o modal. E01 - Fluxo de exceção (A01.d): Fora do prazo (RN012) a. O sistema exibe mensagem informando que está fora do prazo para agendamento. E02 - Fluxo de exceção (A01.d): Data indisponível a. O sistema exibe mensagem informando que a data não está disponível para agendamento. E03 - Fluxo de exceção (A01.k): Campo obrigatório não preenchido a. O sistema exibe mensagem informando que o campo obrigatório não foi preenchido. Pós-condições: Uma reserva foi realizada, consultada ou cancelada.70 Regras de negócio: RN010, RN012 e RN013. 4.3.15 Gerar relatórios (CSU015) Sumário: O síndico usa a interface do sistema para emitir relatórios. Ator Primário: Síndico. Atores Secundários: n/a Pré-condições: O síndico estar logado no sistema. P - Fluxo Principal 1. O Síndico seleciona no menu principal a opção “Relatórios”. 2. O sistema exibe a lista de opções para emissão de relatório. A01 - Fluxo alternativo (P.2): Opção “Multas” selecionada. a. O sistema apresenta a interface com os campos para realizar a consulta. b. O síndico preenche os campos desejados e clica em “Extrair Relatório”. c. O sistema busca as informações conforme o preenchimento do formulário e exibe o modal com as informações solicitadas. A02 - Fluxo alternativo (P.2): Opção “Notificações” selecionada. a. O sistema apresenta a interface com os campos para realizar a consulta. b. O síndico preenche os campos desejados e clica em “Extrair Relatório”. c. O sistema busca as informações conforme o preenchimento do formulário e exibe o modal com as informações solicitadas. A03 - Fluxo alternativo (P.2): Opção “Ocorrências” selecionada. a. O sistema apresenta a interface com os campos para realizar a consulta. b. O síndico preenche os campos desejados e clica em “Extrair Relatório”. c. O sistema busca as informações conforme o preenchimento do formulário e exibe o modal com as informações solicitadas. A04 - Fluxo alternativo (P.2): Opção “Reserva de Espaços” selecionada. a. O sistema apresenta a interface com os campos para realizar a consulta. 71 b. O síndico preenche os campos desejados e clica em “Extrair Relatório”. c. O sistema busca as informações conforme o preenchimento do formulário e exibe o modal com as informações solicitadas. A05 - Fluxo alternativo (P.2): Opção “Reserva de vagas” selecionada. a. O sistema apresenta a interface com os campos para realizar a consulta. b. O síndico preenche os campos desejados e clica em “Extrair Relatório”. c. O sistema busca as informações conforme o preenchimento do formulário e exibe o modal com as informações solicitadas. A06 - Fluxo alternativo (A01.c, A02.c, A03.c, A04.c, A05.c): Imprimir relatório a. O síndico seleciona o botão “Imprimir”. b. O sistema abre a tela de visualização de impressão. c. O síndico seleciona a opção “Imprimir”. d. O arquivo é enviado para impressora. A07 - Fluxo alternativo (A01.c, A02.c, A03.c, A04.c, A05.c): Gerar PDF a. O síndico seleciona o botão “Gerar PDF”. b. O sistema gera o arquivo PDF para download. A08 - Fluxo alternativo (A01.c, A02.c, A03.c, A04.c, A05.c): Opção “Fechar” selecionada a. O sistema fecha o modal. 72 4.4 MODELO CONCEITUAL DE CLASSE Figura 6 - Modelo Conceitual de Classe – Parte 1 de 3 73 Figura 7 - Modelo Conceitual de Classe – Parte 2 de 3 74 Figura 8 - Modelo Conceitual de Classe Parte 3 de 3 75 4.5 MODELO CONCEITUAL DE DADOS Figura 9 - Modelo Conceitual De Dados 76 4.6 DIAGRAMAS DE SEQUÊNCIA Figura 10 - Diagrama de Sequência Realizar Login – Parte 1 de 3 77 Figura 11 - Diagrama de Sequência Realizar Login – Parte 2 de 3 78 Figura 12- Diagrama de Sequência Realizar Login – Parte 3 de 3 79 Figura 13 - Diagrama de Sequência Registrar Cota Condominial 80 Figura 14 - Diagrama de Sequência Manter Aviso – Parte 1 de 2 81 Figura 15 - Diagrama de Sequência Manter Aviso – Parte 2 de 2 82 Figura 16 - Diagrama de Sequência Manter Morador – Parte 1 de 5 83 Figura 17 - Diagrama de Sequência Manter Morador – Parte 2 de 5 84 Figura 18 - Diagrama de Sequência Manter Morador – Parte 3 de 5 85 Figura 19 - Diagrama de Sequência Manter Morador – Parte 4 de 5 86 Figura 20 - Diagrama de Sequência Manter Morador – Parte 5 de 5. 87 Figura 21 - Diagrama de Sequência Manter Dependente – Parte 1 de 2 88 Figura 22 - Diagrama de Sequência Manter Dependente – Parte 2 de 2 89 Figura 23 - Diagrama de Sequência Manter Funcionário – Parte 1 de 4 90 Figura 24 - Diagrama de Sequência Manter Funcionário – Parte 2 de 4 91 Figura 25 - Diagrama de Sequência Manter Funcionário – Parte 3 de 4 92 Figura 26 - Diagrama de Sequência Manter Funcionário – Parte 4 de 4 93 Figura 27 - Diagrama de Sequência Manter Espaço – Parte 1 de 3 94 Figura 28 - Diagrama de Sequência Manter Espaço – Parte 2 de 3 95 Figura 29 - Diagrama de Sequência Manter Espaço – Parte 3 de 3 96 Figura 30 - Diagrama de Sequência Manter Vaga – Parte 1 de 3 97 Figura 31 - Diagrama de Sequência Manter Vaga – Parte 2 de 3 98 Figura 32 - Diagrama de Sequência Manter Vaga – Parte 3 de 3 99 Figura 33 - Diagrama de Sequência Multar Morador – Parte 1 de 4 100 Figura 34 - Diagrama de Sequência Multar Morador – Parte 2 de 4 101 Figura 35 - Diagrama de Sequência Multar Morador – Parte 3 de 4 102 Figura 36 - Diagrama de Sequência Multar Morador – Parte 4 de 4 103 Figura 37 - Diagrama de Sequência Manter Tipo de Multa – Parte 1 de 3 104 Figura 38 - Diagrama de Sequência Manter Tipo de Multa – Parte 2 de 3 105 Figura 39 - Diagrama de Sequência Manter Tipo de Multa – Parte 3 de 3 106 Figura 40 - Diagrama de Sequência Notificar Morador – Parte 1 de 6 107 Figura 41 - Diagrama de Sequência Notificar Morador – Parte 2 de 6 108 Figura 42 - Diagrama de Sequência Notificar Morador – Parte 3 de 6 109 Figura 43 - Diagrama de Sequência Notificar Morador – Parte 4 de 6 110 Figura 44 - Diagrama de Sequência Notificar Morador – Parte 5 de 6 111 Figura 45 - Diagrama de Sequência Notificar Morador – Parte 6 de 6 112 Figura 46 - Diagrama de Sequência Registrar Ocorrência – Parte 1 de 4 113 Figura 47 - Diagrama de Sequência Registrar Ocorrência – Parte 2 de 4 114 Figura 48 - Diagrama de Sequência Registrar Ocorrência – Parte 3 de 4 115 Figura 49 - Diagrama de Sequência Registrar Ocorrência – Parte 4 de 4 116 Figura 50 - Diagrama de Sequência Alugar Espaço – Parte 1 de 3 117 Figura 51 - Diagrama de Sequência Alugar Espaço – Parte 2 de 3 118 Figura 52 - Diagrama de Sequência Alugar Espaço – Parte 3 de 3 119 Figura 53 - Diagrama de Sequência Reservar Vaga – Parte 1 de 3 120 Figura 54 - Diagrama de Sequência Reservar Vaga – Parte 2 de 3 121 Figura 55 - Diagrama de Sequência Reservar Vaga – Parte 3 de 3 122 Figura 56 - Diagrama de Sequência Gerar Relatórios – Parte 1 de 3 123 Figura 57 - Diagrama de Sequência Gerar Relatórios – Parte 2 de 3 124 Figura 58 - Diagrama de Sequência Gerar Relatórios – Parte 3 de 3 125 4.7 DIAGRAMA DE OBJETO Figura 59 – Diagrama de objeto - Parte 1 de 2 126 Figura 60 – Diagrama de objeto - Parte 2 de 2 127 5 BANCO DE DADOS 5.1 MODELO LÓGICO DE BANCO DE DADOS O modelo lógico de dados define o planejamento das estruturas lógicas dos dados a serem utilizadas no banco de dados (Chen, Peter. 1990). Sendo assim, o modelo lógico de banco de dados, entende-se como uma descrição das estruturas de dados que serão armazenadasno banco e que tem como resultado uma especificação gráfica desses dados de uma maneira lógica, inclusive nomeando os componentes e ações que exercem uns sobre os outros. A seguir, na próxima página, será expressa a imagem do modelo lógico do banco de dados do SIGCond. 128 Figura 61 - Modelo lógico de banco de dados - Parte 1 de 2 129 Figura 62 - Modelo lógico de banco de dados - Parte 2 de 2 130 5.2 DICIONÁRIO DE DADOS Tabela Avisos Atributo Classe Domínio Tamanho Descrição ID_Aviso Determinante Numérico - Chave Primária ID_Funcionario Determinante Numérico - Chave Estrangeira Mensagem Simples Texto 1000 Mensagem de aviso Data Simples Data - Data agendada para exibir o aviso Titulo Simples Texto 500 Título do aviso Status Simples Texto 255 Status do aviso Tabela 6 - Dicionário de dados da tabela avisos Tabela Cotas Atributo Classe Domínio Tamanho Descrição ID_Cota Determinante Numérico - Chave Primária Valor Simples Numérico - Valor da cota condominial Data Simples Data - Data do cadastramento do valor Tabela 7 - Dicionário de dados da tabela cotas Tabela Usuários Atributo Classe Domínio Tamanho Descrição ID_Usuario Determinante Numérico - Chave Primária Login Simples Texto 14 Login do usuário Senha_Login Simples Texto 8 Senha de acesso ao sistema Nome_Usuario Simples Texto 100 Nome do morador Status Simples Texto 8 Status da conta Tipo_Conta Simples Texto 50 Tipo de conta funcionário Morador Simples Booleano - Se é morador ou não Primeiro_Acesso Simples Booleano - Se é o primeiro acesso ou não Tabela 8 - Dicionário de dados da tabela usuários 131 Tabela Moradores Atributo Classe Domínio Tamanho Descrição ID_Morador Determinante Numérico - Chave Primária ID_Usuario Determinante Numérico - Chave estrangeira ID_Apt Determinante Numérico - Chave estrangeira Bloco_Apt Simples Numérico - Número do bloco Numero_Apt Simples Numérico - Número do apartamento Nome Simples Texto 100 Nome do morador CPF Simples Texto 14 CPF do Morador Telefone Simples Texto 15 Telefone de contato Celular Simples Texto 15 Celular de contato Tel_Recado Simples Texto 15 Telefone para recado Data_Nascimento Simples Texto 10 Data de nascimento do morador Possui_Veiculo Simples Booleano - Se possui veículo Modelo_Veiculo Simples Texto 25 Modelo do veículo Cor_Veiculo Simples Texto 15 Cor do veículo Placa_Veiculo Simples Texto 8 Placa do veículo Email Simples Texto 100 E-mail do morador Possui_Vaga Simples Booleano - Se possui vaga Numero_Vaga Simples Numérico - Número da vaga Possui_Dependentes Simples Booleano - Se possui dependente Possui_Animais Simples Booleano - Se possui animais Quantidade_Animais Simples Numérico - Quantidade de animais Tipo_Animal Simples Texto 255 Tipo do animal Status Simples Texto 8 Situação do morador Tabela 9 - Dicionário de dados da tabela moradores 132 Tabela Dependentes Atributo Classe Domínio Tamanho Descrição ID_Dependente Determinante Numérico - Chave Primária ID_Morador Determinante Numérico - Chave estrangeira Nome Simples Texto 100 Nome do dependente Data_Nascimento Simples Texto 10 Data de nascimento do dependente Parentesco Simples Texto 100 Grau de parentesco do dependente Tabela 10 - Dicionário de dados da tabela dependentes Tabela Blocos Atributo Classe Domínio Tamanho Descrição ID_Bloco Determinante Numérico - Chave Primária Numero_Bloco Simples Numérico - Número do bloco Tabela 11 - Dicionário de dados da tabela blocos Tabela Apartamentos Atributo Classe Domínio Tamanho Descrição ID_Apartamento Determinante Numérico - Chave Primária ID_Bloco Determinante Numérico - Chave estrangeira ID_Morador Determinante Numérico - Chave estrangeira Numero_Apt Simples Numérico - Número do apartamento Tabela 12 - Dicionário de dados da tabela apartamentos Tabela Funcionários Atributo Classe Domínio Tamanho Descrição ID_Funcionario Determinante Numérico - Chave Primária ID_Usuario Determinante Numérico - Chave estrangeira Nome Simples Texto 100 Nome do funcionário CPF Simples Texto 14 CPF do Funcionário Endereco Simples Texto 200 Endereço do funcionário CEP Simples Texto 9 CEP do funcionário 133 Bairro Simples Texto 100 Bairro em que o funcionário mora Cidade Simples Texto 100 Cidade em que o funcionário mora Telefone Simples Texto 15 Telefone de contato Celular Simples Texto 15 Celular de contato Tel_Recado Simples Texto 15 Telefone para recado Data_Nascimento Simples Texto 10 Data de nascimento do funcionário Funcao Simples Texto 30 Função do funcionário Tipo_Conta Simples Texto 50 Tipo de conta de acesso ao sistema Email Simples Texto 100 E-mail do funcionário Horario Simples Texto 14 Horário de trabalho do funcionário Data_Demissao Simples Texto 10 Data em que o funcionário foi demitido Situacao Simples Texto 8 Situação do funcionário Data_Admissao Simples Texto 10 Data em que o funcionário foi contratado Numero Simples Numérico - Número da residência Complemento Simples Texto 200 Complemento do endereço Tabela 13 - Dicionário de dados da tabela funcionários Tabela Espaços Atributo Classe Domínio Tamanho Descrição ID_Espaco Determinante Numérico - Chave Primária Nome_Espaco Simples Texto 100 Nome do espaço Valor_Porcentagem Simples Numérico - Porcentagem que será cobrada sobre o valor da cota Valor_Reais Simples Numérico - Valor calculado da porcentagem sobre a cota 134 Status Simples Texto 255 Situação do espaço Data_Inicio_Bloqueio Simples Texto 10 Data de início do bloqueio Data_Fim_Bloqueio Simples Texto 10 Data de início do bloqueio Observacoes Simples Texto 800 Observações sobre o espaço Tabela 14 - Dicionário de dados da tabela espaços Tabela Vagas Atributo Classe Domínio Tamanho Descrição ID_Vaga Determinante Numérico - Chave Primária Numero_Vaga Simples Numérico - Número da vaga Status Simples Texto 13 Situação da vaga Data_Inicio_Bloqueio Simples Texto 10 Data de início do bloqueio Data_Fim_Bloqueio Simples Texto 10 Data de início do bloqueio Observacao Simples Texto 800 Observações sobre o espaço Tabela 15 - Dicionário de dados da tabela vagas Tabela Multas Atributo Classe Domínio Tamanho Descrição ID_Multa Determinante Numérico - Chave Primária ID_Tipo_Multa Determinante Numérico - Chave estrangeira ID_Morador Determinante Numérico - Chave estrangeira ID_Funcionario Determinante Numérico - Chave estrangeira Data_Ocorrido Simples Texto 10 Data em que ocorreu o problema Hora_Ocorrido Simples Texto 5 Hora em que ocorreu o problema Notificacao Simples Boleano - Se foi registrada alguma notificação Numero_Notificacao Simples Numérico - Número da notificação (caso exista) Recorrente Simples Boleano - Se é uma multa recorrente Descricao Simples Texto 300 Descrição da multa 135 Data Simples Datetime - Data do registro da multa Status Simples Texto 15 Situação da multa Atualizacao Simples Texto 300 Motivo do cancelamento da multa Valor_Cobrado Simples Numérico - Valor da multa Tabela 16 - Dicionário de dados da tabela multas Tabela Tipo_Multa Atributo Classe Domínio Tamanho Descrição ID_Tipo_Multa Determinante Numérico - Chave Primária Tipo Simples Texto 100 Tipo de multa Artigo_Ri Simples Texto 10Artigo do regimento interno Valor_Porcentagem Simples Numérico - Porcentagem que será cobrada sobre o valor da cota Valor_Reais Simples Numérico - Valor calculado da porcentagem sobre a cota Descricao Simples Texto 500 Descrição do tipo de multa Tabela 17 - Dicionário de dados da tabela tipo_multa Tabela Notificações Atributo Classe Domínio Tamanho Descrição ID_Notificacao Determinante Numérico - Chave Primária ID_Morador Determinante Numérico - Chave estrangeira ID_Tipo Determinante Numérico - Chave estrangeira ID_Funcionario Determinante Numérico - Chave estrangeira Data_Ocorrido Simples Texto 10 Data em que ocorreu o problema Hora Simples Texto 5 Hora em que ocorreu o problema Descricao Simples Texto 300 Descrição da notificação Data Simples Data - Data da aplicação da notificação Status Simples Texto 15 Situação da notificação 136 Atualizacao Simples Texto 300 Motivo do cancelamento da notificação Tabela 18 - Dicionário de dados da tabela notificações Tabela Ocorrências Atributo Classe Domínio Tamanho Descrição ID_Ocorrencia Determinante Numérico - Chave Primária ID_Morador Determinante Numérico - Chave estrangeira ID_Tipo Determinante Numérico - Chave estrangeira ID_Usuario_Logado Determinante Numérico - Chave estrangeira Perfil_Usuario_Logado Simples Texto 255 Perfil do usuário logado no sistema Data_Ocorrido Simples Texto 10 Data em que ocorreu o problema Descricao Simples Texto 1000 Descrição da ocorrência Data Simples Data - Data do registro da ocorrência Status Simples Texto 15 Situação da ocorrência Hora_Ocorrido Simples Texto 5 Hora em que ocorreu o problema Tabela 19 - Dicionário de dados da tabela ocorrências Tabela Comentários_Ocorrências Atributo Classe Domínio Tamanho Descrição ID_Comentario Determinante Numérico - Chave Primária ID_Ocorrencia Determinante Numérico - Chave estrangeira ID_Usuario_Logado Determinante Numérico - Chave estrangeira Comentario Simples Texto 200 Comentário sobre a ocorrência Data Simples Data - Data do comentário Status_Ocorrencia Simples Texto 10 Status da ocorrência Tabela 20 - Dicionário de dados da tabela comentários_ocorrencias 137 Tabela Reserva_Espaco Atributo Classe Domínio Tamanho Descrição ID_Locacao_Espaco Determinante Numérico - Chave Primária ID_Morador Determinante Numérico - Chave estrangeira ID_Local Determinante Numérico - Chave estrangeira ID_Usuario_Logado Determinante Numérico - Chave estrangeira Data_Agendamento Simples Texto 10 Data do evento Data Simples Data - Data em que foi agendado Status Simples Texto 255 Status do agendamento Valor Simples Numérico - Valor do espaço Tabela 21 - Dicionário de dados da tabela reserva_espaço Tabela Reserva_Vagas Atributo Classe Domínio Tamanho Descrição ID_Reserva_Vagas Determinante Numérico - Chave Primária ID_Morador Determinante Numérico - Chave estrangeira ID_Vaga Determinante Numérico - Chave estrangeira ID_Usuario_Logado Simples Numérico - Chave estrangeira Nome_Visitante Simples Texto 100 Nome do visitante Placa_Veiculo Simples Texto 8 Número da placa do carro Data_Agendamento Simples Texto 10 Data do evento Data Simples Data - Data em que foi agendado Status Simples Texto 15 Status do agendamento Tabela 22 - Dicionário de dados da tabela reserva_vagas 138 6 IMPLEMENTAÇÃO DO SISTEMA Para o desenvolvimento do SIGCond, foi utilizado uma plataforma única para desenvolvimento e execução de sistemas e aplicações, o framework .NET, com a linguagem C# para o desenvolvimento do BackEnd, e as linguagens HTML5, CSS3, JavaScript e JQuery para o FrontEnd. Para o FrontEnd, foi utilizado também o Framework Bootstrap, que proporcionou agilidade e coerência durante todo o processo de desenvolvimento abordado pela equipe. Todas são tecnologias altamente utilizadas no mercado e foram inseridas com sucesso na implementação do sistema. O sistema gerenciador de banco de dados utilizado para a persistência de dados foi o SQL Server, devido a sua facilidade de uso, bom desempenho e funcionalidades para integrações das interfaces Web, sendo administrado com o auxílio da ferramenta Microsoft SQL Management Studio, além da integração com o framework utilizado para desenvolvimento do sistema. O processo de documentação e codificação foi acompanhado pela orientadora, prof. Luciana Teixeira de forma a assegurar que as expectativas do cliente fossem inferidas da melhor forma possível. 139 7 CONCLUSÃO Muitas mudanças estão ocorrendo ao redor do mundo em diversos segmentos devido ao uso da tecnologia, que visa aprimorar algo e tornar a vida em sociedade mais fácil. Essas mudanças ocorrem de maneira rápida e as vezes imperceptível, porem têm grande influência no dia-a-dia de muitas pessoas. É essencial que todos estejam atentos a essas mudanças e evoluções buscando sempre melhorar suas atividades, utilizando novas tendências tecnológicas e assim maximizando seus resultados e otimizando processos e metodologias. A partir desta observação, identificamos uma área que vem crescendo ao nosso redor, porém sem muito acompanhamento de tecnologia. Sendo assim, fizemos um levantamento e análise das necessidades do condomínio em questão, buscando automatizar os processos, bem como facilitar o dia-a-dia da administração, funcionários e moradores em tarefas simples, porém que tomavam um tempo maior do que o necessário, como o agendamento de espaços, registros de ocorrências, aplicação de multas e notificações entre outras atividades cotidianas de um condomínio. Sabemos e entendemos que o SIGCond não é um sistema perfeito bem como não atenderá inicialmente todas as demandas do condomínio, por isso já estão sendo estudadas algumas melhorias para futuras implementações, como; controle financeiro, possibilidade de anexar arquivos nos registros de ocorrências, notificações e multas, controle de acesso de visitantes e prestadores de serviços, inclusão do regimento interno e atas para consulta e aumentar a segurança do sistema como um todo. Concluímos, então, que o desenvolvimento deste sistema fará a modernização e controle informatizado de serviços e cadastros do condomínio, trazendo assim uma série de benefícios para todos aqueles que residem e/ou trabalham no Condomínio Viver Bem. 140 REFERÊNCIAS BEZERRA, Eduardo – Princípio de análise e projetos de sistemas com UML, Um guia prático para modelagem de sistemas orientado a objetos atravessa da linguagem de modelagem unificada – 2ª.ed. Editora Campus. T. A. GUEDES, Gilleanes – UML 2, Uma abordagem prática – 3ª ed. Novatec Editora. MEDEIROS, Ernani Sales de. Desenvolvendo software com UML 2.0: definitivo. São Paulo: Pearson Makron Books, 2004. SÍNDICONET O BRAÇO DIREITO DO SÍNDICO. Disponível em <www.sindiconet.com.br>. Acesso em: 13 mar. 2019. DIRECIONAL CONDOMÍNIOS. Disponível em <www.direcionalcondominios.com.br/sindicos>. Acesso em: 01 abr. 2019.