SlideShare uma empresa Scribd logo
APLICATIVO PARA MAPEAMENTO E SELEÇÃO DE VAGAS DE
ESTACIONAMENTO E RAMPAS DE ACESSO PARA IDOSOS,
DEFICIENTES FÍSICO E PESSOAS COM MOBILIDADE REDUZIDA
APPLICATION FOR MAPPING AND SELECTION OF PARKING VACANCIES AND ACCESS RAMPS
FOR ELDERLY, PHYSICALLY DISABLED AND PEOPLE WITH REDUCED MOBILITY
Allef Sousa¹
Rafael Gomes Caldas²
Cacildo José Devós³
Documentação
Sumário
1- Requisitos Funcionais/Não Funcionais
1.1 - Requisitos Funcionais
1.2 - Requisitos não Funcionais
2 - Casos de Uso
2.1 - Caso de Uso Cadastrar Usuário
2.2 - Caso de Uso Cadastrar Vaga
2.3 - Caso de Uso Visualizar Vaga
3 – Diagramas
3.1 – Diagrama de Casos de Uso
3.2 – Diagrama de Classes
3.3 – Diagrama de Estado
3.3.1 – Diagrama de Estado – Visualizar Vagas
3.3.2 – Diagrama de Estado – Cadastrar Vaga
4 – Banco de dados Nosql
4.1 – Estrutura
1.1 – Requisitos Funcionais
APLICATIVO MOVEL PARA CONTROLE DE VAGAS PREFERENCIAS E
RAMPAS PARA PORTADORES DE NECESSIDADES ESPECIAIS
Requisitos Funcionais
Nome: Acessar o aplicativo (RF1) Evidente/Oculto (E)
Descrição: O aplicativo deve permitir que o Usuário tenha acesso (Nome de
usuário e senha) na aplicação, para efetuar toda e qualquer operação que
envolva inserção ou consultas às vagas para idosos, para deficientes físicos e
rampas de acesso.
Nome: Cadastrar Usuário (RF2) Evidente/Oculto (E)
Descrição: O aplicativo deve permitir que possa ser efetuado a operação de
inserção do cadastro de Usuário.
Nome: Login (RF3) Evidente/Oculto (E)
Descrição: O aplicativo deve permitir que o usuário possa efetuar login no
aplicativo, para a realizar as operações de inserção, consulta, edição e exclusão
de vagas.
Nome: Cadastrar Vagas (RF4) Evidente/Oculto (E)
Descrição: O aplicativo deve permitir que possa ser efetuado a operação de
inserção de vagas e rampas de acesso após o usuário efetuar a operação de
login.
Nome: Consultar Vagas (RF5) Evidente/Oculto (E)
Descrição: O aplicativo deve permitir que o usuário possa visualizar as vagas
cadastradas por todos os usuários assim que iniciar o aplicativo e renderizar o
mapa.
Nome: Editar Vagas (RF6) Evidente/Oculto (E)
Descrição: O aplicativo deve permitir que o usuário possa visualizar rotas que
permita chegar até a vaga ou rampa de acesso desejada.
Nome: Excluir Vagas (RF7) Evidente/Oculto (E)
Descrição: O aplicativo deve permitir que o usuário visualizar dados da vaga ou
rampa de acesso, como status, tempo e distância até o local desejado.
Nome: localização Atual (RF8) Evidente/Oculto (E)
Descrição: O aplicativo deve permitir que o usuário veja sua localização atual
assim que iniciar o aplicativo e renderizar o mapa.
1.2 – Requisitos não Funcionais
Sistema de Controle de Transportadora
Requisitos Não Funcionais
Nome: Requisitos do sistema (NF1) Desejável/Permanente: (D)
Descrição: Ter um sistema Operacional Android Instalado, versão 4.0 ou
superior.
Nome: Comunicação do Sistema (NF2) Desejável/Permanente: (D)
Descrição: Para a primeira utilização é necessário que tenha conexão com a
internet para que o sistema se comunique com a base de dados da plataforma
Firebase.
Nome: Armazenamento dos dados (NF3) Desejável/Permanente: (P)
Descrição: Os dados serão armazenados em um banco de dados não
relacional utilizando a plataforma Firebase.
Nome: Controle de Acesso (NF4) Desejável/Permanente: (P)
Descrição: Para acessar o aplicativo o usuário deve ter um número de telefone
válido, ou possuir uma conta no Google ou Facebook.
Nome: Controle de acesso por telefone (NF5) Desejável/Permanente: (P)
Descrição: O usuário receberá uma mensagem de texto (sms), caso opte
realizar login utilizando um número de telefone válido.
Nome: Usabilidade do Sistema (NF6) Desejável/Permanente: (P)
Descrição: O sistema deve ser intuitivo e de fácil utilização.
2 – Casos de Uso
2.1 – Caso de Uso Acessar o Aplicativo.
Caso de Uso: Acessar o Aplicativo.
Sumário: Usuário inicia o aplicativo e realiza o acesso.
Ator Principal: Usuário.
Pré-condições: Usuário ter o aplicativo instalado, um número de telefone válido, ou
uma conta no Google ou Facebook.
Fluxo Principal:
1. Usuário inicia o aplicativo.
2. Usuário seleciona a opção de acesso.
3. Usuário insere seus dados.
4. Aplicativo confere se tipos de dados estão corretos.
5. Aplicativo libera o acesso.
6. Encerrar caso de uso.
Fluxo Alternativo: (4) Sistema informa que tipos de dados estão incorretos.
4.1 - Aplicativo não libera cadastro para Usuário.
4.3 - Aplicativo mostra mensagem de erro.
4.2 - Seguir para passo 2.
Pós-condições: Acesso do Usuário liberado.
2.2 – Caso de Uso Cadastrar Vaga.
Caso de Uso: Cadastrar Vaga.
Sumário: Usuário acessa o aplicativo e realiza cadastro da vaga ou rampa de
acesso.
Ator Principal: Usuário.
Pré-condições: Usuário ter realizado login no aplicativo.
Fluxo Principal:
1. Usuário inicia o aplicativo.
2. Usuário realiza login.
3. Usuário seleciona a funcionalidade de Adicionar Local.
4. Usuário pesquisa local utilizando endereço, ou utilizando a localização
atual.
5. Usuário seleciona o tipo de local que deseja inserir.
6. Aplicativo verifica a existência do local.
7. Aplicativo realiza o cadastro da vaga.
8. Encerrar caso de uso.
Fluxo Alternativo: (2) Dados do login errados ou inexistentes.
2.1 - Aplicativo não libera o acesso para cadastrar vaga.
2.2 - Aplicativo mostra mensagem de erro e solicita que o usuário realize o login
no aplicativo.
4.2 - Seguir para passo 2.
Fluxo Alternativo: (6) Local desejado não existe.
2.1 – Endereço não encontrado.
2.2 - Aplicativo mostra mensagem que não obteve nenhum resultado.
4.2 - Seguir para passo 5.
Pós-condições: Cadastro do local realizado.
2.3 – Caso de Uso Visualizar Vaga e rampas de acesso.
Caso de Uso: Visualizar Vaga.
Sumário: Usuário acessa o aplicativo e visualiza as vagas cadastradas.
Ator Principal: Usuário.
Pré-condições: Na primeira vez quer utilizar o aplicativo o usuário deverá estar
conectado à internet, para obter dados dos locais cadastrados, uma vez que os dados
das vagas ficarão armazenado em cache para uso off-line, permitindo a visualização
das vagas posteriormente.
Fluxo Principal:
1. Usuário inicia o aplicativo.
2. Aplicativo realiza a requisição dos dados das vagas e rampas de acesso
cadastradas.
3. Aplicativo renderiza o mapa com as vagas e rampas cadastradas.
4. Encerrar caso de uso.
Fluxo Alternativo: (2) Sistema informa ao Usuário que é necessário conexão
com a internet.
2.1 - Aplicativo informa que não há conexão com a internet.
2.2 - Aplicativo mostra mensagem de erro e solicita que o usuário realize a
conexão com a internet.
4.2 - Seguir para passo 1.
Pós-condições: Vagas visualizadas.
3 – Diagramas
3.1 – Diagrama de Casos de Uso
Figura 1 - Diagrama de Casos de Uso - Fonte: O Autor
3.2 - Diagrama de Classes
+ setIdUsuario(idUsuario : String) : void
+ getIdUsuario() : String
+ setSenha(senha : String) : void
+ getSenha() : String
+ setEmail(email : String) : void
+ getEmail() : String
+ setNome(nome : String) : void
+ getNome() : String
+ setUrlPhto(urlPhto : String) : void
+ getUrlPhto() : String
+ Usuario(idUsuario : String)
+ Usuario()
- urlPhto : String
- senha : String
- email : String
- nome : String
- idUsuario : String
Usuario
+ toString() : String
+ setStatusVaga(statusVaga : String) : void
+ getStatusVaga() : String
+ setLongitude(longitude : Double) : void
+ getLongitude() : Double
+ setLatitude(latitude : Double) : void
+ getLatitude() : Double
+ setNomeRua(nomeRua : String) : void
+ getNomeRua() : String
+ setTipoVaga(tipoVaga : int) : void
+ getTipoVaga() : int
+ setId(id : String) : void
+ getId() : String
+ LocalVaga()
- statusVaga : String
- tipoVaga : int
- id : String
- longitude : Double
- nomeRua : String
- latitude : Double
+ serialVersionUID : long = 100L
LocalVaga
+ setCreatedAt( in createdAt : Long) : void
+ getCreatedAt() : Long
+ setContadorComentarios( in contadorComentarios : int) : void
+ getContadorComentarios() : int
+ setContadorLikes( in contadorLikes : int) : void
+ getContadorLikes() : int
+ setImagem( in imagem : String) : void
+ getImagem() : String
+ setEmailUserPost( in emailUserPost : String) : void
+ getEmailUserPost() : String
+ setNomeUserPost( in nomeUserPost : String) : void
+ getNomeUserPost() : String
+ setPhotoperfil( in photoperfil : String) : void
+ getPhotoperfil() : String
+ setUserId( in userId : String) : void
+ getUserId() : String
+ setLegenda( in legenda : String) : void
+ getLegenda() : String
+ setHoraPost( in horaPost : String) : void
+ getHoraPost() : String
+ setDataPost( in dataPost : String) : void
+ getDataPost() : String
+ Feed()
- createdAt : Long
- contadorComentarios : int
- contadorLikes : int
- imagem : String
- emailUserPost : String
- legenda : String
- nomeUserPost : String
- horaPost : String
- dataPost : String
- photoperfil : String
- userId : String
Feed
<<interface>>
Serializable
3.3 Diagrama de Estado
3.3.1 – Diagrama de Estado – Visualizar Local
3.3.2 – Diagrama de Estado – Cadastrar Local
4- Banco de dados Nosql
4.1-Estrutura dos dados

Mais conteúdo relacionado

Semelhante a Documentação Smart moobi

Diagrama de Classe
Diagrama de ClasseDiagrama de Classe
Diagrama de Classe
Marcus Vinicius
 
Integração do Flex com PHP através do AMFPHP
Integração do Flex com PHP através do AMFPHPIntegração do Flex com PHP através do AMFPHP
Integração do Flex com PHP através do AMFPHP
elliando dias
 
Marshmallow for developers
Marshmallow for developersMarshmallow for developers
Marshmallow for developers
Athila Henrique dos Santos
 
Plano de projeto final
Plano de projeto finalPlano de projeto final
Plano de projeto final
Leo Paixão
 
2009 05 20 Floripa Flex
2009 05 20 Floripa Flex2009 05 20 Floripa Flex
2009 05 20 Floripa Flex
Eduardo Kraus
 
VRaptor 3, JPA, Hibernate, Geotools e OpenLayers, ajudando Pedro Alvares Cabr...
VRaptor 3, JPA, Hibernate, Geotools e OpenLayers, ajudando Pedro Alvares Cabr...VRaptor 3, JPA, Hibernate, Geotools e OpenLayers, ajudando Pedro Alvares Cabr...
VRaptor 3, JPA, Hibernate, Geotools e OpenLayers, ajudando Pedro Alvares Cabr...
Carlos A. Junior Spohr Poletto
 
Os 10 maus habitos dos desenvolvedores jsf (JustJava e CCT)
Os 10 maus habitos dos desenvolvedores jsf (JustJava e CCT)Os 10 maus habitos dos desenvolvedores jsf (JustJava e CCT)
Os 10 maus habitos dos desenvolvedores jsf (JustJava e CCT)
Rafael Ponte
 
Plano de projeto final
Plano de projeto finalPlano de projeto final
Plano de projeto final
Leo Paixão
 
Conectividade social pdf
Conectividade social pdfConectividade social pdf
Conectividade social pdf
Monitoria Contabil S/C
 
Introducao ao Spring Web MVC
Introducao ao Spring Web MVCIntroducao ao Spring Web MVC
Introducao ao Spring Web MVC
Eder Magalhães
 
Teste para dispositivos móveis apresentação pra ufam -eliane
Teste para dispositivos móveis   apresentação pra ufam -elianeTeste para dispositivos móveis   apresentação pra ufam -eliane
Teste para dispositivos móveis apresentação pra ufam -eliane
Eliane Collins
 
Iniciando com Yii Framework - Volmar Machado da Silva Neto (Rede Pampa de Com...
Iniciando com Yii Framework - Volmar Machado da Silva Neto (Rede Pampa de Com...Iniciando com Yii Framework - Volmar Machado da Silva Neto (Rede Pampa de Com...
Iniciando com Yii Framework - Volmar Machado da Silva Neto (Rede Pampa de Com...
Tchelinux
 
Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1
Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1
Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1
Thyago Maia
 
Relógio de Ponto REP Compacto Portátil - - Manual volume 4
Relógio de Ponto REP Compacto Portátil -  - Manual volume 4Relógio de Ponto REP Compacto Portátil -  - Manual volume 4
Relógio de Ponto REP Compacto Portátil - - Manual volume 4
Totalseg - Soluções em Controle de Ponto e Acesso
 
Uma Plataforma para Programação de Agentes Robóticos Estendendo o Framework J...
Uma Plataforma para Programação de Agentes Robóticos Estendendo o Framework J...Uma Plataforma para Programação de Agentes Robóticos Estendendo o Framework J...
Uma Plataforma para Programação de Agentes Robóticos Estendendo o Framework J...
Carlos Eduardo Pantoja
 
Sistema de denúncia de desperdício de água - Etapa de Avaliação
Sistema de denúncia de desperdício de água - Etapa de AvaliaçãoSistema de denúncia de desperdício de água - Etapa de Avaliação
Sistema de denúncia de desperdício de água - Etapa de Avaliação
CRISLANIO MACEDO
 
Relógio Eletrônico de Ponto Henry Prisma Super Fácil R03 - Aplicativo Web Em...
Relógio Eletrônico de Ponto Henry Prisma Super Fácil  R03 - Aplicativo Web Em...Relógio Eletrônico de Ponto Henry Prisma Super Fácil  R03 - Aplicativo Web Em...
Relógio Eletrônico de Ponto Henry Prisma Super Fácil R03 - Aplicativo Web Em...
Totalseg - Soluções em Controle de Ponto e Acesso
 
JavaME no mundo real
JavaME no mundo realJavaME no mundo real
JavaME no mundo real
Awdren Fontão
 
Artigo Cientifico
Artigo CientificoArtigo Cientifico
Artigo Cientifico
Vinicius Peres
 
Unupar virtual5 semestre
Unupar virtual5 semestreUnupar virtual5 semestre
Unupar virtual5 semestre
Georgecley Alves
 

Semelhante a Documentação Smart moobi (20)

Diagrama de Classe
Diagrama de ClasseDiagrama de Classe
Diagrama de Classe
 
Integração do Flex com PHP através do AMFPHP
Integração do Flex com PHP através do AMFPHPIntegração do Flex com PHP através do AMFPHP
Integração do Flex com PHP através do AMFPHP
 
Marshmallow for developers
Marshmallow for developersMarshmallow for developers
Marshmallow for developers
 
Plano de projeto final
Plano de projeto finalPlano de projeto final
Plano de projeto final
 
2009 05 20 Floripa Flex
2009 05 20 Floripa Flex2009 05 20 Floripa Flex
2009 05 20 Floripa Flex
 
VRaptor 3, JPA, Hibernate, Geotools e OpenLayers, ajudando Pedro Alvares Cabr...
VRaptor 3, JPA, Hibernate, Geotools e OpenLayers, ajudando Pedro Alvares Cabr...VRaptor 3, JPA, Hibernate, Geotools e OpenLayers, ajudando Pedro Alvares Cabr...
VRaptor 3, JPA, Hibernate, Geotools e OpenLayers, ajudando Pedro Alvares Cabr...
 
Os 10 maus habitos dos desenvolvedores jsf (JustJava e CCT)
Os 10 maus habitos dos desenvolvedores jsf (JustJava e CCT)Os 10 maus habitos dos desenvolvedores jsf (JustJava e CCT)
Os 10 maus habitos dos desenvolvedores jsf (JustJava e CCT)
 
Plano de projeto final
Plano de projeto finalPlano de projeto final
Plano de projeto final
 
Conectividade social pdf
Conectividade social pdfConectividade social pdf
Conectividade social pdf
 
Introducao ao Spring Web MVC
Introducao ao Spring Web MVCIntroducao ao Spring Web MVC
Introducao ao Spring Web MVC
 
Teste para dispositivos móveis apresentação pra ufam -eliane
Teste para dispositivos móveis   apresentação pra ufam -elianeTeste para dispositivos móveis   apresentação pra ufam -eliane
Teste para dispositivos móveis apresentação pra ufam -eliane
 
Iniciando com Yii Framework - Volmar Machado da Silva Neto (Rede Pampa de Com...
Iniciando com Yii Framework - Volmar Machado da Silva Neto (Rede Pampa de Com...Iniciando com Yii Framework - Volmar Machado da Silva Neto (Rede Pampa de Com...
Iniciando com Yii Framework - Volmar Machado da Silva Neto (Rede Pampa de Com...
 
Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1
Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1
Desenvolvimento de Sistemas Web com PHP Frameworks - 2019.1 - Aula 1
 
Relógio de Ponto REP Compacto Portátil - - Manual volume 4
Relógio de Ponto REP Compacto Portátil -  - Manual volume 4Relógio de Ponto REP Compacto Portátil -  - Manual volume 4
Relógio de Ponto REP Compacto Portátil - - Manual volume 4
 
Uma Plataforma para Programação de Agentes Robóticos Estendendo o Framework J...
Uma Plataforma para Programação de Agentes Robóticos Estendendo o Framework J...Uma Plataforma para Programação de Agentes Robóticos Estendendo o Framework J...
Uma Plataforma para Programação de Agentes Robóticos Estendendo o Framework J...
 
Sistema de denúncia de desperdício de água - Etapa de Avaliação
Sistema de denúncia de desperdício de água - Etapa de AvaliaçãoSistema de denúncia de desperdício de água - Etapa de Avaliação
Sistema de denúncia de desperdício de água - Etapa de Avaliação
 
Relógio Eletrônico de Ponto Henry Prisma Super Fácil R03 - Aplicativo Web Em...
Relógio Eletrônico de Ponto Henry Prisma Super Fácil  R03 - Aplicativo Web Em...Relógio Eletrônico de Ponto Henry Prisma Super Fácil  R03 - Aplicativo Web Em...
Relógio Eletrônico de Ponto Henry Prisma Super Fácil R03 - Aplicativo Web Em...
 
JavaME no mundo real
JavaME no mundo realJavaME no mundo real
JavaME no mundo real
 
Artigo Cientifico
Artigo CientificoArtigo Cientifico
Artigo Cientifico
 
Unupar virtual5 semestre
Unupar virtual5 semestreUnupar virtual5 semestre
Unupar virtual5 semestre
 

Documentação Smart moobi

  • 1. APLICATIVO PARA MAPEAMENTO E SELEÇÃO DE VAGAS DE ESTACIONAMENTO E RAMPAS DE ACESSO PARA IDOSOS, DEFICIENTES FÍSICO E PESSOAS COM MOBILIDADE REDUZIDA APPLICATION FOR MAPPING AND SELECTION OF PARKING VACANCIES AND ACCESS RAMPS FOR ELDERLY, PHYSICALLY DISABLED AND PEOPLE WITH REDUCED MOBILITY Allef Sousa¹ Rafael Gomes Caldas² Cacildo José Devós³ Documentação
  • 2. Sumário 1- Requisitos Funcionais/Não Funcionais 1.1 - Requisitos Funcionais 1.2 - Requisitos não Funcionais 2 - Casos de Uso 2.1 - Caso de Uso Cadastrar Usuário 2.2 - Caso de Uso Cadastrar Vaga 2.3 - Caso de Uso Visualizar Vaga 3 – Diagramas 3.1 – Diagrama de Casos de Uso 3.2 – Diagrama de Classes 3.3 – Diagrama de Estado 3.3.1 – Diagrama de Estado – Visualizar Vagas 3.3.2 – Diagrama de Estado – Cadastrar Vaga 4 – Banco de dados Nosql 4.1 – Estrutura
  • 3. 1.1 – Requisitos Funcionais APLICATIVO MOVEL PARA CONTROLE DE VAGAS PREFERENCIAS E RAMPAS PARA PORTADORES DE NECESSIDADES ESPECIAIS Requisitos Funcionais Nome: Acessar o aplicativo (RF1) Evidente/Oculto (E) Descrição: O aplicativo deve permitir que o Usuário tenha acesso (Nome de usuário e senha) na aplicação, para efetuar toda e qualquer operação que envolva inserção ou consultas às vagas para idosos, para deficientes físicos e rampas de acesso. Nome: Cadastrar Usuário (RF2) Evidente/Oculto (E) Descrição: O aplicativo deve permitir que possa ser efetuado a operação de inserção do cadastro de Usuário. Nome: Login (RF3) Evidente/Oculto (E) Descrição: O aplicativo deve permitir que o usuário possa efetuar login no aplicativo, para a realizar as operações de inserção, consulta, edição e exclusão de vagas. Nome: Cadastrar Vagas (RF4) Evidente/Oculto (E) Descrição: O aplicativo deve permitir que possa ser efetuado a operação de inserção de vagas e rampas de acesso após o usuário efetuar a operação de login. Nome: Consultar Vagas (RF5) Evidente/Oculto (E) Descrição: O aplicativo deve permitir que o usuário possa visualizar as vagas cadastradas por todos os usuários assim que iniciar o aplicativo e renderizar o mapa. Nome: Editar Vagas (RF6) Evidente/Oculto (E) Descrição: O aplicativo deve permitir que o usuário possa visualizar rotas que permita chegar até a vaga ou rampa de acesso desejada.
  • 4. Nome: Excluir Vagas (RF7) Evidente/Oculto (E) Descrição: O aplicativo deve permitir que o usuário visualizar dados da vaga ou rampa de acesso, como status, tempo e distância até o local desejado. Nome: localização Atual (RF8) Evidente/Oculto (E) Descrição: O aplicativo deve permitir que o usuário veja sua localização atual assim que iniciar o aplicativo e renderizar o mapa. 1.2 – Requisitos não Funcionais Sistema de Controle de Transportadora Requisitos Não Funcionais Nome: Requisitos do sistema (NF1) Desejável/Permanente: (D) Descrição: Ter um sistema Operacional Android Instalado, versão 4.0 ou superior. Nome: Comunicação do Sistema (NF2) Desejável/Permanente: (D) Descrição: Para a primeira utilização é necessário que tenha conexão com a internet para que o sistema se comunique com a base de dados da plataforma Firebase. Nome: Armazenamento dos dados (NF3) Desejável/Permanente: (P) Descrição: Os dados serão armazenados em um banco de dados não relacional utilizando a plataforma Firebase. Nome: Controle de Acesso (NF4) Desejável/Permanente: (P) Descrição: Para acessar o aplicativo o usuário deve ter um número de telefone válido, ou possuir uma conta no Google ou Facebook. Nome: Controle de acesso por telefone (NF5) Desejável/Permanente: (P) Descrição: O usuário receberá uma mensagem de texto (sms), caso opte realizar login utilizando um número de telefone válido.
  • 5. Nome: Usabilidade do Sistema (NF6) Desejável/Permanente: (P) Descrição: O sistema deve ser intuitivo e de fácil utilização. 2 – Casos de Uso 2.1 – Caso de Uso Acessar o Aplicativo. Caso de Uso: Acessar o Aplicativo. Sumário: Usuário inicia o aplicativo e realiza o acesso. Ator Principal: Usuário. Pré-condições: Usuário ter o aplicativo instalado, um número de telefone válido, ou uma conta no Google ou Facebook. Fluxo Principal: 1. Usuário inicia o aplicativo. 2. Usuário seleciona a opção de acesso. 3. Usuário insere seus dados. 4. Aplicativo confere se tipos de dados estão corretos. 5. Aplicativo libera o acesso. 6. Encerrar caso de uso. Fluxo Alternativo: (4) Sistema informa que tipos de dados estão incorretos. 4.1 - Aplicativo não libera cadastro para Usuário. 4.3 - Aplicativo mostra mensagem de erro. 4.2 - Seguir para passo 2. Pós-condições: Acesso do Usuário liberado. 2.2 – Caso de Uso Cadastrar Vaga. Caso de Uso: Cadastrar Vaga. Sumário: Usuário acessa o aplicativo e realiza cadastro da vaga ou rampa de acesso. Ator Principal: Usuário. Pré-condições: Usuário ter realizado login no aplicativo. Fluxo Principal: 1. Usuário inicia o aplicativo. 2. Usuário realiza login. 3. Usuário seleciona a funcionalidade de Adicionar Local. 4. Usuário pesquisa local utilizando endereço, ou utilizando a localização atual. 5. Usuário seleciona o tipo de local que deseja inserir. 6. Aplicativo verifica a existência do local. 7. Aplicativo realiza o cadastro da vaga. 8. Encerrar caso de uso. Fluxo Alternativo: (2) Dados do login errados ou inexistentes.
  • 6. 2.1 - Aplicativo não libera o acesso para cadastrar vaga. 2.2 - Aplicativo mostra mensagem de erro e solicita que o usuário realize o login no aplicativo. 4.2 - Seguir para passo 2. Fluxo Alternativo: (6) Local desejado não existe. 2.1 – Endereço não encontrado. 2.2 - Aplicativo mostra mensagem que não obteve nenhum resultado. 4.2 - Seguir para passo 5. Pós-condições: Cadastro do local realizado. 2.3 – Caso de Uso Visualizar Vaga e rampas de acesso. Caso de Uso: Visualizar Vaga. Sumário: Usuário acessa o aplicativo e visualiza as vagas cadastradas. Ator Principal: Usuário. Pré-condições: Na primeira vez quer utilizar o aplicativo o usuário deverá estar conectado à internet, para obter dados dos locais cadastrados, uma vez que os dados das vagas ficarão armazenado em cache para uso off-line, permitindo a visualização das vagas posteriormente. Fluxo Principal: 1. Usuário inicia o aplicativo. 2. Aplicativo realiza a requisição dos dados das vagas e rampas de acesso cadastradas. 3. Aplicativo renderiza o mapa com as vagas e rampas cadastradas. 4. Encerrar caso de uso. Fluxo Alternativo: (2) Sistema informa ao Usuário que é necessário conexão com a internet. 2.1 - Aplicativo informa que não há conexão com a internet. 2.2 - Aplicativo mostra mensagem de erro e solicita que o usuário realize a conexão com a internet. 4.2 - Seguir para passo 1. Pós-condições: Vagas visualizadas. 3 – Diagramas 3.1 – Diagrama de Casos de Uso
  • 7. Figura 1 - Diagrama de Casos de Uso - Fonte: O Autor 3.2 - Diagrama de Classes + setIdUsuario(idUsuario : String) : void + getIdUsuario() : String + setSenha(senha : String) : void + getSenha() : String + setEmail(email : String) : void + getEmail() : String + setNome(nome : String) : void + getNome() : String + setUrlPhto(urlPhto : String) : void + getUrlPhto() : String + Usuario(idUsuario : String) + Usuario() - urlPhto : String - senha : String - email : String - nome : String - idUsuario : String Usuario + toString() : String + setStatusVaga(statusVaga : String) : void + getStatusVaga() : String + setLongitude(longitude : Double) : void + getLongitude() : Double + setLatitude(latitude : Double) : void + getLatitude() : Double + setNomeRua(nomeRua : String) : void + getNomeRua() : String + setTipoVaga(tipoVaga : int) : void + getTipoVaga() : int + setId(id : String) : void + getId() : String + LocalVaga() - statusVaga : String - tipoVaga : int - id : String - longitude : Double - nomeRua : String - latitude : Double + serialVersionUID : long = 100L LocalVaga + setCreatedAt( in createdAt : Long) : void + getCreatedAt() : Long + setContadorComentarios( in contadorComentarios : int) : void + getContadorComentarios() : int + setContadorLikes( in contadorLikes : int) : void + getContadorLikes() : int + setImagem( in imagem : String) : void + getImagem() : String + setEmailUserPost( in emailUserPost : String) : void + getEmailUserPost() : String + setNomeUserPost( in nomeUserPost : String) : void + getNomeUserPost() : String + setPhotoperfil( in photoperfil : String) : void + getPhotoperfil() : String + setUserId( in userId : String) : void + getUserId() : String + setLegenda( in legenda : String) : void + getLegenda() : String + setHoraPost( in horaPost : String) : void + getHoraPost() : String + setDataPost( in dataPost : String) : void + getDataPost() : String + Feed() - createdAt : Long - contadorComentarios : int - contadorLikes : int - imagem : String - emailUserPost : String - legenda : String - nomeUserPost : String - horaPost : String - dataPost : String - photoperfil : String - userId : String Feed <<interface>> Serializable
  • 8. 3.3 Diagrama de Estado 3.3.1 – Diagrama de Estado – Visualizar Local 3.3.2 – Diagrama de Estado – Cadastrar Local
  • 9. 4- Banco de dados Nosql 4.1-Estrutura dos dados