Etiqueta: visualeditor |
Etiqueta: visualeditor |
||
| Linha 85: | Linha 85: | ||
## Atualizar o livro no banco de dados (UPDATE) marcando-o como posto à venda | ## Atualizar o livro no banco de dados (UPDATE) marcando-o como posto à venda | ||
## Disponibilizar um botão para que interessados possam entrar em contato com o vendedor | ## Disponibilizar um botão para que interessados possam entrar em contato com o vendedor | ||
= Requisitos não-funcionais = | = Requisitos não-funcionais = | ||
| Linha 125: | Linha 96: | ||
= Autores = | = Autores = | ||
* Gustavo Henrique Garcia Silva | * Gustavo Henrique Garcia Silva | ||
* Júlia Rizza de Souza | * Júlia Rizza de Souza | ||
* Luiz Cláudio Theodoro | * Luiz Cláudio Theodoro | ||
= Colaboradores = | |||
* Kethllen Andrey Santos | * Kethllen Andrey Santos | ||
* Marc Sué Pires Morais Junior | * Marc Sué Pires Morais Junior | ||
Edição das 18h22min de 4 de novembro de 2016
Escopo
- Aplicação web e mobile voltada para controle, doação e empréstimo de livros que permite:
- Cadastrar todos os livros que o usuário possui ou que ele deseja adquirir
- Aos usuários Incluir organizações que permitirão o movimento de livros
- Solicitar os livros via sistema e aprovação/negação pelo dono
- Selecionar o processo de entrega (pessoal, Correios, Malote, etc) pelos usuários
- Pontuar de acordo com os empréstimos realizados de forma a ser qualificado publicamente.
- Disponibilizar um Chat para contato
- Gerenciar os empréstimos e devoluções notificando prazos e gerando multas quando houver atrasos
- Solicitar feedbacks após o empréstimo e/ou devolução
Requisitos Funcionais
1ª Fase
- CRUD de Livros - Julia [24/10 - 01/12]
- Criar uma página para cada operação do CRUD
- Verificar se o usuário tem permissão para realizar a operação
- Atualizar as alterações realizadas no CRUD no banco de dados
- CRUD de Usuário - Julia [24/10 - 01/12]
- Criar uma página para cada operação do CRUD
- Verificar se o usuário tem permissão para realizar a operação
- Atualizar as alterações realizadas no CRUD no banco de dados
- CRUD de Organizações - Julia [24/10 - 01/12]
- Criar uma página para cada operação do CRUD
- Verificar se o usuário tem permissão para realizar a operação
- Atualizar as alterações realizadas no CRUD no banco de dados
- Buscar livros disponíveis para empréstimo - Marc [24/10 - 01/12]
- Receber os termos da busca por um campo (linha de formulário)
- Realizar a busca no banco de dados (SELECT)
- Filtrar os resultados por localidade, datas, gênero ou popularidade
- Permitir múltiplos filtros simultaneamente
- Exibir o resultado da pesquisa em uma página
- Exibir botão de "empréstimo" na pesquisa de livros
- Ao clicar no botão, enviar uma solicitação para o dono do livro
- O empréstimo do livro será aceito ou não pelo dono
- A forma de entrega do livro deve ser negociada pelos usuários
- Entrar na lista de espera ao requerer um livro não disponível
- Sua posição na lista de espera é classificada tanto por data de solicitação quanto por créditos (qualificação)
- Avisar de datas para devolução - Ronistone [03/11 - 01/12]
- Enviar e-mail / sms de aviso uma semana, três dias e um dia antes da data de devolução
- Notificar via aplicativo uma semana, três dias e um dia antes da data de devolução
- Dispor livros em estantes virtuais conforme gênero- Pedro [24/10 - 01/12]
- Armazenar para cada livro do usuário/organização, sua posição na estante
- Realizar a busca no banco de dados (SELECT) dos livros que o usuário possui
- Para cada estante, realizar a busca no banco de dados (SELECT) dos livros que pertencem àquele gênero
- Exibir o resultado da pesquisa em uma página de acordo com a posição
- Devolver livros - Kethllen [24/10 - 01/12]
- O processo de devolução também é de responsabilidade dos usuários
- Solicitar feedback ao final do empréstimo para ambos os usuários
- Gerenciar livros emprestados - Leandro [03/11 - 01/12]
- Realizar a busca no banco de dados (SELECT) dos livros, filtrando somente aqueles que estão emprestados
- Exibir o resultado da pesquisa em uma página
- Prorrogar data de devolução - Kethllen [24/10 - 01/12]
- Exibir formulário para receber a mensagem de prorrogação e a quantidade de dias
- Enviar solicitação via e-mail para o dono do livro
- Aumentar (ou não) o prazo de devolução de acordo com a resposta do dono
- Enviar e-mail de confirmação (ou não confirmação) da prorrogação ao solicitante
- Dar feedback - Lucas [03/11 - 01/12]
- Criar atributo de créditos do usuário (positivo, negativo e neutro)
- Criar função para qualificar o usuário após um empréstimo / venda
- Qualificar solicitante e atendente do pedido de empréstimo / venda
- Opções de qualificação: prazo de entrega/devolução, estado do livro, negociação, satisfação.
- Gerar etiqueta de identificação - Matheus [03/11 - 01/12]
- Gerar um código de barras para cada livro cadastrado
- Salvar automaticamente código de barras nas informações do livro
- Criar wishlist
- Criar uma função que permita ao usuário solicitar livros que não existem na base
2ª Fase
- Uplaod de ebooks
- Gamificar plataforma
- Criar um serviço inteligente de filtros de mapa de interesse por usuário
- Capturar ISBN do livro
- Criar função para ativar a câmera do smartphone para capturar o código do ISBN no momento de cadastro do livro
- Criar função para digitar o código do ISBN no momento do cadastro do livro
- Permutar livros
- Empréstimo bidirecional: o usuário pede um livro e empresta um à outro usuário
- Os livros devem estar previamente cadastrados no sistema
- Vender livros
- Receber num formulário o preço e as opções de frete oferecidas pelo vendedor
- Atualizar o livro no banco de dados (UPDATE) marcando-o como posto à venda
- Disponibilizar um botão para que interessados possam entrar em contato com o vendedor
Requisitos não-funcionais
- Interpretador: CPython 3.4
- Framework web: Django 1.9 e Flask 0.10
- SGBD: PostgreSQL 9.4
- Versionamento: Git
- Servidor HTTP: Gunicorn 19.4
Autores
- Gustavo Henrique Garcia Silva
- Júlia Rizza de Souza
- Luiz Cláudio Theodoro
Colaboradores
- Kethllen Andrey Santos
- Marc Sué Pires Morais Junior
- Pedro Henrique da Costa Avelar
- Matheus Cunha Reis
- Leandro de Medeiros Ferreira
- Lucas Correia Bernardes
- Ronistone Gonçalces do Reis Junior
Projetos Similares
OpenLibrary
O Openlibrary é um projeto de catalogação e viabilização de empréstimos e vendas de livros, totalmente gratuito, feito pela InternetArchive.
Ele é feito em Python com a api de wiki Infogami (que é baseada em web.py) e tem seu código fonte disponível no github. Há também uma página com instruções para contribuições assim como uma documentaçao para desenvolvedores. Há também o link da "central de desenvolvedores" que contém todos os acima, além de links para outras páginas e também está disponibilizado o download do banco de dados do projeto.