~~ODT~~ echo "
"; echo "Última atualização: "; ver('', false); echo "
";
====== Cadastrar Para utilizar os Serviços da Biblioteca ====== Este caso uso permite ao usuário se cadastrar para criar uma conta e utilizar os serviços de empréstimos da biblioteca. Geralmente é o primeiro caso de uso que o usuário utiliza do módulo da biblioteca. \\ \\ O cadastro consiste em criar uma conta na biblioteca com a senha para realizar os empréstimos. \\ \\ Cada novo usuário da biblioteca precisa, a partir de agora (Junho/2013), concordar com um termo de responsabilidade antes de se cadastrar como usuário da biblioteca. O bibliotecário tem acesso a visualizar, alterar e remover o texto a ser exibido no Termo de Adesão. Caso o bibliotecário remova esse texto, alunos novos não terão que assinar termo algum. A funcionalidade ficaria desabilitada até que o bibliotecário adicionasse um novo texto. \\ \\ Caso o usuário já possua um conta na biblioteca, **não** é permitido criar uma nova e ficar do duas ou mais ativas, em vez disso, o sistema deve mostrar as informação da conta ativa e permitir ao usuário APENAS alterar a sua senha. \\ \\ \\ Anteriormente, cada usuário possuía apenas uma conta ativa na biblioteca durante todo a sua vida acadêmica. Mas na nova abordagem, o usuário vai poder possuir diversas contas na biblioteca, mas **apenas uma conta ativa não quitada por vez**. (Adicionado em 02/05/2011 referente à tarefa //#58611 - Mudar a forma do como o usuário obtém o vínculo que vai usar para realizar os empréstimos//.). \\ \\ A quantidade de contas permitidas é a quantidade de vínculo que o usuário possuí com a instituição. Para criar uma nova conta, ele deve primeiro "quitar" a conta anterior. \\ \\ Caso a conta usada seja quitada, e o usuário não possua nenhuma outro vínculo com a instituição, será mostrado o usuário como estando **inativo** e não será permitido a ele realizar o novo cadastro. \\ \\ A quitação do vínculo é realizada ao se [[ desenvolvimento:especificacoes:sigaa:biblioteca:casos_de_uso:circulacao:controle_de_emprestimos:verificar_situacao_do_usuario_emitir_declaracao_de_quitacao| emitir o documento de quitação ]]. Assim de posse do documento o usuário não poderá mais realizar empréstimos com o vínculo quitado, aumentando a segurança do sistema em relação ao usuário permanecer com materiais após emitir o documento de quitação. As outros mecanismos de seguranças são a invalidação do código de autenticação do documento se o usuário realizar um novo empréstimo e as verificações de empréstimos pendentes que existem ao concluir o vínculo de discentes ou ao se emitir o diploma. \\ \\ \\ Pré-condições: O usuário deve possuir um cadastro no sistema (alguma pessoa cadastrada com CPF válido ou Passaporte), e um vínculo ativo com a instituição que possa realizar empréstimos. \\ \\ Os vínculos ativos utilizando para a biblioteca estão descritos em [[desenvolvimento:especificacoes:sigaa:biblioteca:circulacao:regras_gerais_emprestimos | Regras Gerais dos empréstimos ]] \\ \\ \\ ===== Descrição do Caso de Uso ===== Esta especificação é válida quando o usuário inicia uma das operações abaixo: \\ //SIGAA -> Biblioteca -> Módulo Servidor -> Cadastre-se para Utilizar os Serviços da Biblioteca //, \\ [[ desenvolvimento:especificacoes:sigaa:portal_do_discente:casos_de_uso:biblioteca:cadastrar_para_utilizar_os_servicos_da_biblioteca | SIGAA -> Portal Discente -> Biblioteca -> Cadastre-se para Utilizar os Serviços da Biblioteca ]] e \\ [[ desenvolvimento:especificacoes:sigaa:portal_do_docente:casos_de_uso:biblioteca:cadastrar_para_utilizar_os_servicos_da_biblioteca | SIGAA -> Portal Docente -> Biblioteca -> Cadastre-se para Utilizar os Serviços da Biblioteca.]] \\ [[desenvolvimento:especificacoes:sigaa:biblioteca:casos_de_uso:circulacao:gerenciamentos_dos_usuarios_da_biblioteca:cadastrar_alterar_senha | SIGAA -> Biblioteca -> Circulação -> Gerenciamento de Usuários -> Cadastrar Alterar senha do usuário ]] \\ Ao entrar no caso de uso o sistema verifica se o usuário ** atualmente logado ou o usuário selecionado na busca (caso se inicie o caso de uso do último link) ** já possui uma conta ativa não quitada na biblioteca. * **Caso já possua conta ativa**: A mensagem "//A Senha vai ser Atualizada para o Vínculo xxxxxx //" é mostrada para o usuário, e apenas a atualização da senha é permitida. * **Caso já possua conta ativa e o vínculo utilizado para o conta não está mais ativo**: Uma mensagem dizendo que o vínculo utilizando não está mais ativo e que a conta atual precisar ser quitada, para só então poder se cadastrar, é mostrada ao usuário. * **Caso não possua conta ativa**: Caso exista um termo de responsabilidade, o usuário precisa concordar com o termo. O vínculo preferencial para realizar empréstimos é calculado e uma conta na biblioteca é criada para esse vínculo. O ordem de preferência do vínculo é determinada pela interface: ObtemVinculoUsuarioBibliotecaStrategy e pode ser redefinida em cada instituição. Para realizar o cadastro o usuário deve concordar com o termo de responsabilidade (caso exista) e preencher 3 campos: * **__Digite a senha para usar na biblioteca__:** Senha para realizar os empréstimos, Tipo - NUMÉRICO * **__Confirmação a senha para usar na biblioteca__:** Confirmação da senha digitada, Tipo - NUMÉRICO * **__Entre com a sua senha do sistema para validação__:** A senha utilizada para acessar o SIGAA, Tipo - TEXTO \\ O caso de uso é finalizado. ===== Principais Regras de Negócio ===== * **RN01** - O usuário não pode ter duas ou mais conta ativas não quitadas ao mesmo tempo. (Adicionado em 02/05/2011 referente à tarefa //#58611 - Mudar a forma do como o usuário obtém o vínculo que vai usar para realizar os empréstimos//.). * **RN02** - Quando o usuário se cadastra, uma nova conta na bibiloteca é criada, ele pode alterar a senha quantas vezes quiser para essa conta. Caso o usuário possua mais de um vínculo com a instituíção, por exemplo é aluno e servidor ao mesmo tempo, ele pode alterar o vínculo da sua conta. Por exemplo, realizou empréstimos como servidor e agora que alterar para realizar como aluno. Para realizar a alteração de um vínculo já criado ele não pode possuir empréstimos ativos no vínculo anterior e nem nenhum tipo de punição. Senão ele receberia a punição ou atrasaria o empréstimos, trocaria o vínculo e continuaria a utilizar a biblioteca. Ou mudaria a regra para os empréstimos já feitos. * **RN03** - Caso o usuário não possua nemhum vínculo para realizar empréstimos, uma conta não pode ser cadastrada. * **RN04** - Se o vínculo utilizado expirou, por exemplo o discente do aluno passou de "ativo" para "concluído". Não é mais permitido alterar a senha da conta que utiliza esse vínculo de discente. (Adicionado em 02/05/2011 referente à tarefa //#58611 - Mudar a forma do como o usuário obtém o vínculo que vai usar para realizar os empréstimos//.). * **RN05** - Usuários sem CPF válidos e que também não possuem passaporte não podem realizar o cadastro na biblioteca. * **RN06** - Caso o usuário esteja suspenso ou com multa a ser paga não pode cadastra-se com outro vínculo na biblioteca, ou alterar o atual. * **RN07** - Caso o usuário tenha empréstimos em algum vínculo anterior paga não pode cadastra-se com outro vínculo na biblioteca, ou alterar o atual. \\ ==== Resoluções/Legislações Associadas ==== "Não se Aplica". ===== Classes Persistentes e Tabelas Envolvidas ===== ^ Classe ^ Tabela | | br.ufrn.sigaa.biblioteca.circulacao.dominio.UsuarioBiblioteca| sigaa.biblioteca.usuario_biblioteca| | br.ufrn.sigaa.pessoa.dominio.Pessoa| sigaa.comum.pessoa| ====== Plano de Teste ====== Sistema: SIGAA Módulo: BIBLIOTECA Link(s): SIGAA -> Biblioteca -> Módulo Servidor -> Cadastre-se para Utilizar os Serviços da Biblioteca \\ Usuário: ilueny (servidor) , gleydson (servidor com vários vínculo com a UFRN) \\ Papel que usuário deve ter: Não se aplica ===== Cenários de Teste ===== Escolha diversos usuários para realizar o cadastro. Usuários antigos que não possuem CPF, usuários que já possuem cadastro, usuários que nunca possuíram vínculos para realizar empréstimos (por exemplo, alunos especiais de pós-graduação), usuários que possuem vários vínculos (aluno e servidor ao mesmo tempo), etc. Quando mais variado os usuários selecionados, maior é a probabilidade de encontrar um erro. ===== Dados para o Teste ===== \\ Sql Para verificar as informações da contas do usuário na biblioteca a partir do nome do usuário : select * from biblioteca.usuario_biblioteca ub inner join comum.pessoa p using(id_pessoa) where p.nome ilike '%nome do usuário%' and ub.ativo = true -- SQL referente ao Termo de Adesão ao Sistema de Bibliotecas -- Pode-se verificar que usuários JÁ TEM usuário biblioteca SELECT DISTINCT p.nome, u.login FROM comum.pessoa p INNER JOIN comum.usuario u on u.id_pessoa = p.id_pessoa INNER JOIN discente d on d.id_pessoa = p.id_pessoa LEFT JOIN biblioteca.usuario_biblioteca b ON b.id_pessoa = p.id_pessoa WHERE b.id_usuario_biblioteca IS NOT NULL AND p.nome is not NULL AND p.nome <> '' AND d.matricula > 2013000000 LIMIT 10 -- Pode-se verificar que usuários NÃO TEM usuário biblioteca SELECT DISTINCT p.nome, u.login FROM comum.pessoa p INNER JOIN comum.usuario u on u.id_pessoa = p.id_pessoa INNER JOIN discente d on d.id_pessoa = p.id_pessoa LEFT JOIN biblioteca.usuario_biblioteca b ON b.id_pessoa = p.id_pessoa WHERE b.id_usuario_biblioteca IS NULL AND p.nome is not NULL AND p.nome <> '' AND d.matricula > 2013000000 LIMIT 10 -- Com esse resultado você pode cadastrar alguns usuários no Sistema de Bibliotecas e verifica o Termo de Adesão