Linha 11: Linha 11:
<br>
<br>


* CRUD de Livros
# CRUD de Livros
* CRUD de Usuário
# CRUD de Usuário
* Buscar livros disponíveis para empréstimo
# Buscar livros disponíveis para empréstimo
* Avisar de datas para devolução
# Avisar de datas para devolução
* Capturar ISBN do livro
# Capturar ISBN do livro
* Buscar livros com diversas opções de filtragens
# Buscar livros com diversas opções de filtragens
* Dispor Livros em estantes virtuais conforme gênero
# Dispor Livros em estantes virtuais conforme gênero
* Permutar livros
# Permutar livros
* Emprestar livros
# Emprestar livros
* Devolver livros
# Devolver livros
* Vender livros
# Vender livros
* Prorrogar data de devolução
# Prorrogar data de devolução
* Qualificar usuário
# Qualificar usuário
* Enviar livro pelo Correios
# Enviar livro pelo Correios
* Gerar etiqueta de identificação
# Gerar etiqueta de identificação
<br>
<br>



Edição das 01h33min de 14 de julho de 2016

Escopo


  • Aplicação web voltada para o empréstimo e controle de livros dos usuários.
    • Poderão ser cadastrados todos os livros que o usuário possui ou que ele deseja adquirir
    • Poderá ser solicitado o empréstimo de livros de outros usuários, emprestar seus próprios livros e gerenciar todos os empréstimos por categorias como: tempo, conservação, proximidade, etc.
    • Haverá pontuação de acordo com os empréstimos realizados de forma a ser qualificado publicamente.


Requisitos Funcionais


  1. CRUD de Livros
  2. CRUD de Usuário
  3. Buscar livros disponíveis para empréstimo
  4. Avisar de datas para devolução
  5. Capturar ISBN do livro
  6. Buscar livros com diversas opções de filtragens
  7. Dispor Livros em estantes virtuais conforme gênero
  8. Permutar livros
  9. Emprestar livros
  10. Devolver livros
  11. Vender livros
  12. Prorrogar data de devolução
  13. Qualificar usuário
  14. Enviar livro pelo Correios
  15. Gerar etiqueta de identificação


Tarefas (para o Treinamento)

Gerais (todos devem fazer)

  1. Resolver os exercícios de Python no URI
  2. Realizar o fork do projeto no GitHub
  3. Fazer, pelo menos, um pull request ao projeto
  4. Desenhar pelo menos uma tabela do diagrama do banco de dados
  5. Contribuir com o desenvolvimento do projeto web final (escolher tarefa específica)
  6. Seguir as regras da pep-8 (bônus)
  7. Criar um nome mais comercial

Específicas

  1. Documentar o projeto
  2. Criar o script de teste unitário do projeto
  3. Implementar a busca de livros com filtros
  4. Implementar o CRUD de Livros
  5. Implementar o cadastro, login/logout e perfil do usuário
  6. Implementar as páginas de exibição dos livros por categoria/filtro
  7. Implementar o sistema de permutação
  8. Implementar o sistema de empréstimo
  9. Implementar o sistema de devolução
  10. Implementar o sistema de negociação de prazos
  11. Implementar o sistema de gerenciamento dos livros emprestados
  12. Implementar o sistema de multa (simples, sem gerar cobrança direta)
  13. Implementar o sistema de vendas (simples, sem gerar cobrança direta)
  14. Implementar o sistema de emails
  15. Criar o banco de dados
  16. Implementar as tabelas por meio de ORM

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


  • Júlia Rizza
  • Luiz Cláudio Theodoro


Colaboradores


  • Eustáquio Fernandes Júnior
  • Matheus Silva Santos