Pantufood: mudanças entre as edições

De Wiki Cursos IFPR Foz
Ir para navegaçãoIr para pesquisar
Linha 149: Linha 149:
<tr><th>email</th><td>email</td><td>varchar(100)</td><td>-</td><td>-</td><td>Not Null, email único</td><td>-</td></tr>
<tr><th>email</th><td>email</td><td>varchar(100)</td><td>-</td><td>-</td><td>Not Null, email único</td><td>-</td></tr>
<tr><th>profile_img</th><td>profile_img</td><td>varchar(30)</td><td>-</td><td>-</td><td>Tamanho de arquivo máximo 5mb</td><td>-</td></tr>
<tr><th>profile_img</th><td>profile_img</td><td>varchar(30)</td><td>-</td><td>-</td><td>Tamanho de arquivo máximo 5mb</td><td>-</td></tr>
<tr><th>status</th><td>status</td><td>enum</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><th>status</th><td>status</td><td>enum('ATIVO', 'INATIVO')</td><td>-</td><td>-</td><td>-</td><td>ATIVO</td></tr>
<tr><th>created</th><td>created</td><td>date</td><td>-</td><td>-</td><td>Not Null</td><td>-</td></tr>
<tr><th>created</th><td>created</td><td>date</td><td>-</td><td>-</td><td>Not Null</td><td>-</td></tr>
<tr><th>Imagem</th><td>image</td><td>varchar(100)</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><th>Imagem</th><td>image</td><td>varchar(100)</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>

Edição das 00h05min de 7 de novembro de 2017

Pantufood

Equipe

Professores orientadores
  • Estevan Brandt Braz Costa
  • Alcione Benacchio
Alunos
  • Eduardo Marques Cardozo
  • Fabio Augusto Nakamura de Jesus
  • Wagner dos Santos Backes

Objetivo Geral

Desenvolver um sítio eletrônico que auxilie a busca de receitas baseadas em ingredientes e categorias, prática que pode trazer uma melhoria de vida dependendo dos ingredientes que o usuário escolher, além de incitar as práticas culinárias de um jeito simplificado e atrativo.

Objetivo Especifico

Maior interação entre usuários permitindo favoritar e comentar receitas de outros, além de conseguir um maior controle de receitas favoritas.

Ter uma base de receitas auto sustentável, onde o utilizador do produto em desenvolvimento possa cadastrar (com aprovação do moderador do website), alterar, excluir e consultar receitas de sua própria autoria.

O administrador pode gerenciar receitas (exclusão, adição e alteração), usuários,categorias e tags.

Problema

  • Sítios eletrônicos similares que vendem seu produto prometendo cumprir tais funcionalidades, mas não as cumprem adequadamante.
  • Jovens adultos que moram sozinhos optam por Fast-food's por falta de tempo ou conhecimento culinário.
  • Os sites de receitas convencionais exigem que o usuário já tenha uma noção do que preparar e do que comprar.

Proposta

  • Criar um ambiente WEB capaz de buscar receitas a partir de ingredientes.
  • Aumentar o interesse culinário de pessoas que moram sozinhas.
  • Facilitar o preparo de comidas sem precisar de conhecimento prévio do que comprar ou fazer.
  • Incitar o consumo de alimentos saudáveis, colocando estes em prioridade quando o usuário for buscar receitas.

Principais Funcionalidades

  • Consulta de receitas a partir de ingredientes.
  • Cadastro, edição, e solicitação de exclusão de receitas.
  • Cadastro, edição, consulta e desativação de usuário.
  • Login a partir da conta criada.
  • Comentar as receitas, filtrando comentários maldosos.

Público Alvo

Primário

  • Jovens adultos e adultos que possuem dificuldades culinárias.
  • Pessoas que moram sozinha.

Secundário

Trata-se de um público adjacente muito grande, pois devido a praticidade do aplicativo, qualquer pessoa com algum interesse culinário pode ser considerado público alvo.

Dicionário de Dados

-


Categorias
Campo LógicoCampo FísicoTipoPKFKRestriçõesObservações
ididint(11)PK-Not Null-
linklinkvarchar(200)---
Nomenometinytext----
--
Comentario
Campo LógicoCampo FísicoTipoPKFKRestriçõesObservações
ididint(11)PK-Not Null-
Autorautorint(11)-FK-
Id respostaresponta_idint(11)-FK--
Comentáriocomentariotext----
Datadataint---Quando atualizar, valor é agora
ID Receitareceita_idint----
-
Preparo
Campo LógicoCampo FísicoTipoPKFKRestriçõesObservações
ididint(11)PK-Not Null-
id_receitaid_receitatinytextPKFKNot Null-
instrucaoinstrucaotinytext--Not Null-
Instricão Tipoinstrucao_tipoenum('titulo', 'instrucao')----
Receitas
Campo LógicoCampo FísicoTipoPKFKRestriçõesObservações
ididint(11)PK-Not Null-
nomenometinytext--Not Null-
tempotempoint(3)--Not Null-
porcoesporcoesint(3)--Not Null-
favoritosfavoritosint(11)--Not Null-
id_categoriaid_categoriasint(11)-FKNot Null-
quantidade_ingredientesquantidade_ingredientesint(3)--Not Null-
Autorautorint(11)-FK--
Visitadovisitadotimestamp--Not NullCURRENT_TIMESTAMP


Ingredientes
Campo LógicoCampo FísicoTipoPKFKRestriçõesObservações
ididint(11)PK-Not Null-
id_receitaid_receitaint(11)PKFKNot Null-
ingredienteingredientetinytext--Not Null-
ingrediente_tagingrediente_tagint(11)-FK--
ingrediente_tipoingrediente_tipoenum---enum('titulo', 'ingrediente')
ordemordemint(3)----
Quantidadequantidadeint(11)----
Ingredientes_tags
Campo LógicoCampo FísicoTipoPKFKRestriçõesObservações
ingrediente_idingrediente_idint(11)PKFKNot Null-
tag_idtag_idint(11)PK-Not Null-
Tags
Campo LógicoCampo FísicoTipoPKFKRestriçõesObservações
ididint(11)PK-Not Null-
nomenomevarchar(64)--Not Null, não pode ter número-
opcionalopcionaltinyint(1)--Not Null-
Autoropcionalint(11)---Default 3
Statusestatustinyint(1)---Default 1
User
Campo LógicoCampo FísicoTipoPKFKRestriçõesObservações
ididint(11)PK-Not Null-
namenamevarchar(100)--não pode conter números-
loginloginvarchar(60)--Not Null, login único-
senhasenhavarchar(32)--Not Null-
emailemailvarchar(100)--Not Null, email único-
profile_imgprofile_imgvarchar(30)--Tamanho de arquivo máximo 5mb-
statusstatusenum('ATIVO', 'INATIVO')---ATIVO
createdcreateddate--Not Null-
Imagemimagevarchar(100)----
Descriçãodescriptiontext----
profile_users
Campo LógicoCampo FísicoTipoPKFKRestriçõesObservações
ididint(11)PK-Not Null-
user_iduser_idint(11)PKFKNot Null-
profile_idprofile_idint(11)PKFKNot Null-
createdcreateddate--Not Null-
deleteddeletedint(1)--Not Null-
Profiles
Campo LógicoCampo FísicoTipoPKFKRestriçõesObservações
ididint(11)PK-Not Null-
namenamevarchar(60)--não pode conter números-
descriptiondescriptiontext----
createdcreateddate--Not Null-
modifiedmodifieddate--Not Null-
deleteddeletedint(1)--Not Null-

Caso de Uso

Lista de Requisitos

CódigoRequisito Funcional
RF 01O sistema deve permitir a busca por receitas culinárias a partir de ingredientes e ou categorias.
RF 02O sistema deve permitir a seleção de dois ou mais ingredientes para uma busca.
RF 03O sistema deve permitir a seleção de uma ou mais categorias para uma busca.
RF 04O sistema deve permitir a troca de ingredientes enquanto o usuário não acessar a busca.
RF 05O sistema deve permitir a troca de categorias enquanto o usuário não acessar a busca.
RF 06O sistema deve permitir a volta para o formulário de pesquisa a qualquer momento.
RF 07O sistema deve permitir realizar cadastro, desativação, consulta e edição de usuário.
RF 08O sistema deve permitir realizar cadastro, solicitação da exclusão, consulta e edição das receitas.
RF 09O sistema deve permitir a edição da maneira que as receitas são consultadas.

-

CódigoRequisito FuncionalRegras de Negócio
RN 1 RF 1 As respostas serão ordenadas pelo quanto os ingredientes da busca se parecem com os ingredientes dentro das receitas.
RN 1 RF 2 As receitas serão ordenadas por popularidade, e irá existir prioridade nas receitas saudáveis
RN 2 RF 3 Serão permitidos no mínimo um ingredientes e no máximo vinte.
RN 3 RF 4 Se nenhuma categoria for selecionada, será considerado que todas foram selecionadas.
RN 4 RF 5 Os tipos de categorias considerados serão: “Carnes”, “bolos

tortas doces”, “aves”, “peixes e frutos do mar”, “saladas molhos e acompanhamentos”, “sopas”, “massas”, “doces e

sobremesas”, “lanches”, “alimentação saudável”.
RN 5 RF 6 Quando o usuário voltar para a tela de busca, todos os

ingredientes e categorias anteriormente escritos estarão

preenchidos automaticamente.
RN 6 RF 7 Um usuário cadastrado poderá apenas editar os seus dados, porém poderá consultar o de terceiros..
RN 7 RF 8 O usuário poderá cadastrar, editar, e consultar suas receitas, porém exclusão não irá deletar a receita da base de dados, apenas desativá-la.
RN 8 RF 9 O usuário poderá fazer a busca por mais favoritadas

-

CódigoRequisito não Funcional Tecnológico
RNFT 01O sistema deve executar em ambiente Web.
RNFT 02O banco de dados deve ser MariaDB
RNFT 03O sistema deve ser responsivo em diferentes tamanhos de tela.

Logotipo

Tecnologias a serem Utilizadas

PHP
- Versão: 5.6
MariaDB
- Versão: 10.2.8
HTML
- Versão: 5
CSS
- Versão: 3
Bootstrap 
- Versão: 4
Javascript
- Versão: 1.8.5
Eclipse Oxygen
- Versão: 4.7.0
AngularJS
- Versão: 1.6.0

Referências