|
|
| (49 revisões intermediárias por 8 usuários não estão sendo mostradas) |
| Linha 1: |
Linha 1: |
| = Escopo = | | = 1a. Versão do Library Free = |
| <br> | | <br> |
|
| |
|
| * Aplicação web e mobile voltada para controle, doação e empréstimo de livros que permite: | | * [[Library Free - 1a versão]] |
| # 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
| |
| <br> | | <br> |
|
| |
|
| = Requisitos Funcionais = | | = 2a. Versão do Library Free = |
| | <br> |
|
| |
|
| === 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<br>
| |
| # Criar wishlist
| |
| ## Criar uma função que permita ao usuário solicitar livros que não existem na base
| |
| <br>
| |
|
| |
|
| === 2ª Fase === | | = Escopo = |
| # 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
| |
|
| |
|
| = Tarefas (para o Treinamento) = | | = Requisitos Funcionais= |
| | == 1ª Fase == |
|
| |
|
| == Gerais (todos devem fazer) == | | === USUÁRIO: === |
| # Resolver os exercícios de Python no URI
| |
| # Realizar o '''fork''' do projeto no GitHub
| |
| # Fazer, pelo menos, um ''pull request'' ao projeto
| |
| # Desenhar pelo menos uma tabela do diagrama do banco de dados
| |
| # Contribuir com o desenvolvimento do projeto web final (escolher tarefa específica)
| |
| # Seguir as regras da pep-8 (bônus)
| |
| # Criar um nome mais comercial
| |
|
| |
|
| == Específicas == | | ==== Conta: ==== |
| # Documentar o projeto
| | * Cadastrar conta |
| # Criar o script de teste unitário do projeto
| | * Recuperar senha |
| # Implementar a busca de livros com filtros
| | * Alterar dados |
| # Implementar o CRUD de Livros
| |
| # Implementar o cadastro, login/logout e perfil do usuário
| |
| # Implementar as páginas de exibição dos livros por categoria/filtro
| |
| # Implementar o sistema de permutação
| |
| # Implementar o sistema de empréstimo
| |
| # Implementar o sistema de devolução
| |
| # Implementar o sistema de negociação de prazos
| |
| # Implementar o sistema de gerenciamento dos livros emprestados
| |
| # Implementar o sistema de multa (simples, sem gerar cobrança direta)
| |
| # Implementar o sistema de vendas (simples, sem gerar cobrança direta)
| |
| # Implementar o sistema de emails
| |
| # Criar o banco de dados
| |
| # Implementar as tabelas por meio de ORM
| |
|
| |
|
| = Requisitos não-funcionais = | | ==== Livros: ==== |
| | * Cadastrar livros |
| | * Pesquisar livros |
| | * Reservar livros |
| | * Solicitar empréstimo |
| | * Conceder empréstimo |
|
| |
|
| * '''Interpretador''': CPython 3.4
| | ==== Empréstimo e devolução: ==== |
| * '''Framework web''': Django 1.9 e Flask 0.10 | | * Renovar empréstimo |
| * '''SGBD''': PostgreSQL 9.4 | | * Realizar devolução |
| * '''Versionamento''': Git | | * Confirmar devolução |
| * '''Servidor HTTP''': Gunicorn 19.4 | | * Avaliar devolução |
| <br>
| |
|
| |
|
| = Autores = | | === BIBLIOTECA: === |
| <br>
| |
|
| |
|
| * Gustavo Henrique Garcia Silva | | ==== Conta: ==== |
| * Júlia Rizza de Souza | | * Cadastrar conta |
| * Luiz Cláudio Theodoro | | * Recuperar senha |
| <br>
| | * Alterar dados |
|
| |
|
| = Colaboradores = | | ==== Livros: ==== |
| <br>
| | * Cadastrar livros |
| | * Pesquisar livros (encontrar livro no estoque) |
| | * Protocolar empréstimo |
| | * Gerenciar devoluções (talvez cobrar multa) |
|
| |
|
| * Kethllen Andrey Santos
| | ==== Devolução: ==== |
| * Marc Sué Pires Morais Junior | | * Confirmar devolução (verificar o prazo e aplicar a cobrança se necessário) |
| * Pedro Henrique da Costa Avelar | | * Avaliar devolução |
|
| |
|
| * Matheus Cunha Reis
| | === GERAL: === |
| * Leandro de Medeiros Ferreira | | * feed com sugestão de livros disponíveis |
| * Lucas Correia Bernardes | | * visualizar perfis de outros usuários e bibliotecas |
| * Ronistone Gonçalces do Reis Junior | | * visualizar informações do livro |
|
| |
|
| = Projetos Similares =
| |
|
| |
|
| === OpenLibrary === | | == 2ª Fase == |
| O [https://openlibrary.org/ Openlibrary] é um projeto de catalogação e viabilização de empréstimos e vendas de livros, totalmente gratuito, feito pela [https://archive.org/ 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 [https://github.com/internetarchive/openlibrary github]. Há também [https://openlibrary.org/dev/docs/committing uma página com instruções para contribuições] assim como uma [http://code.openlibrary.org/en/latest/ documentaçao para desenvolvedores]. Há também o link da [https://openlibrary.org/developers "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.
| | = Requisitos não-funcionais = |
| | = Scrum = |
| | = Autores = |
| | = Colaboradores = |