Universidade Federal de PernambucoCentro de Informática
IF718 – Análise e Projeto de Sistemas
CONTRATAESPECIFICAÇÃO DE REQUISITOS, CASOS DE USO E
DIAGRAMA DE CLASSES
Equipe:David Benko Iseppon (dbi)Everton Martins Guimarães (emg2)
Recife, 13 de Novembro de 2014
1. Introdução
O documento tem o objetivo de especificar os requisitos do sistema Contrata, proposto para resolver o problema de avaliação e contratação de candidatos a determinadas vagas dentro de uma empresa.
2. Motivação
O processo de seleção de bons profissionais sempre é um trabalho difícil para qualquer empresa. Muitas vezes a seleção de funcionários não segue um processo bem definido, o que acaba dificultando ainda mais o trabalho dos profissionais que o executam. Algumas empresas inclusive terceirizam o processo seletivo para empresas especialistas em recursos humanos e avaliação de pessoas.
A missão do Contrata é facilitar o processo de contratação tanto para as empresas como para os candidatos. Através de um sistema online, a empresa poderá informar suas vagas em aberto, e associar os avaliadores responsáveis pela seleção de cada vaga, que irão criar uma avaliação online. Os candidatos, por sua vez, podem visualizar as empresas e suas respectivas vagas em aberto. Se for do seu interesse, podem aplicar para uma vaga informando no sistema os seus dados e enviando seu currículo. Em seguida podem responder a avaliação cadastrada pelo avaliador. Os resultados são recebidos pelos avaliadores que podem então agendar entrevistas ou efetivar a contratação dos candidatos.
3. Convenções adotadas
3.1. Convenção para identificação de requisitos
Para facilitar a busca e referência de requisitos ao longo do documento será adotada uma convenção. Os requisitos funcionais serão representado no formato [RFxx].
3.2. Convenção para identificação de casos de uso
Assim como utilizamos um convenção para os requisitos o mesmo será feito para os casos de uso do sistema. Neste caso a representação dos casos de uso será dado por [UCxx], onde o “UC” significa “Use Case” , o mesmo que “Caso de Uso” em inglês, e o “xx” novamente representa o número do caso de uso.
4. Requisitos Organizacionais
4.1.Requisitos Funcionais
4.1.1. RF01 – Efetuar Login
Identificação [RF01] Efetuar Login
Casos de Uso Relacionados [UC01]
Descrição Permite que o usuário tenha acesso ao sistema. Para isso será requisitado o preenchimento do login e senha do usuário. Alternativamente, o usuário poderá efetuar o login através do Facebook.
Prioridade Essencial
4.1.2. RF02 - Efetuar Logoff
Identificação [RF02] Efetuar Logoff
Casos de Uso Relacionados [UC02]
Descrição Permite que o usuário finalize o acesso ao sistema.
Prioridade Essencial
4.1.3. RF03 – Listar vagas
Identificação [RF03] Listar Vagas
Casos de Uso Relacionados [UC03]
Descrição Permite ao usuário visualizar todas as vagas em aberto cadastradas no sistema e as respectivas empresas contratantes.
Prioridade Essencial
4.1.4. RF04 – Efetuar cadastro
Identificação [RF04] Efetuar Cadastro
Casos de Uso Relacionados [UC04]
Descrição Permite que o usuário se cadastre no sistema informando: Nome, CPF, Telefone, Endereço, Email e seu currículo.
Prioridade Essencial
4.1.5. RF05 – Atualizar cadastro
Identificação [RF05] Atualizar cadastro
Casos de Uso Relacionados [UC05]
Descrição Permite que o candidato atualize suas informações pessoais salvas na hora do cadastro
Prioridade Essencial
5. Casos de uso
5.1.Diagrama de casos de uso
Figura 1 – Diagrama de casos de uso
5.2.Descrição dos casos de uso
5.2.1. UC01 – Efetuar Login
Identificador [UC01]
Descrição Este caso de uso é responsável pela entrada no sistema do usuário. Com um login e senha, o sistema valida ou não a entrada do usuário.
Atores Avaliador, Gerente, Candidato, Facebook
Prioridade Essencial
Pré-condições Não se aplica
Pós-condições Se o login e a senha estiverem corretos, o sistema irá dar acesso ao usuário às funcionalidades permitidas a ele.
Fluxo principal 1. Estando na tela inicial, o ator preenche os campos de “login” e “senha” e clica no botão “OK”.2. O sistema verifica as informações fornecidas no banco de dados, tentando localizar o usuário e se a senha fornecida é a mesma cadastrada.3. O usuário é localizado e a senha confere.4. É concedido acesso ao usuário no sistema
Fluxo secundário 1 3. O ator fornece um login não cadastrado no sistema;4. A mensagem “Usuário inexistente” é exibida.
Fluxo secundário 2 3. O ator fornece um login e uma senha não correspondentes;4. A mensagem “Senha incorreta” é exibida.
Fluxo secundário 3 1. Estando na tela inicial, o ator clica no botão “Login com Facebook”.2. O ator será direcionado à uma página do Facebook que será responsável pelo processo de autenticação e retornará o e-mail logado;3. O ator é redirecionado novamente à página do sistema, que receberá as informações de sucesso ou de falha no login.
5.2.2. UC02 – Efetuar Logoff
Identificador [UC02]
Descrição Finaliza o acesso ao sistema, necessitando o ator realizar o login novamente.
Atores Avaliador, Gerente, Candidato, Facebook
Prioridade Essencial
Pré-condições Ator está logado no sistema
Pós-condições O ator pederá o acesso ao sistema e o mesmo retorna à
tela inicial.
Fluxo principal 1. O ator clica no botão “Logout”;2. O sistema finaliza todas as operações e retorna à tela inicial.
5.2.3. UC03 – Efetuar Cadastro
Identificador [UC03]
Descrição Este caso de uso permite ao usuário cadastrar um novo candidato, para que este se candidate a alguma vaga existente.
Atores Candidato
Prioridade Essencial
Pré-condições O usuário deve estar logado no sistema.
Pós-condições Usuário é cadastrado no sistema.
Fluxo principal 1. O ator acessa o sistema e na tela de login clica na opção “Envie seu currículo”;2. O sistema exibe uma tela com um formulário para o preenchimento de informações pessoais do como descrito em [RF04]3. O ator preenche os campos com as informações solicitadas;4. O ator clica no botão “Confirmar”;5. O sistema verifica a validade dos dados antes de salvar o cadastro do usuário6. O sistema cria um registro para o novo candidato no banco de dados e o redireciona para a tela inicial do sistema.
Fluxo Secundário 1 5. O ator insere um CPF já cadastrado;6. O sistema exibe uma mensagem informando que já existe um usuário cadastrado com esse CPF e permanece na mesma tela com os campos preenchidos e realça o campo CPF.
5.2.4. UC04 – Atualizar Cadastro
Identificador [UC04]
Descrição Permite ao usuário realizar atualizações nos dados informados no momento do seu cadastro
Atores Candidato
Prioridade Essencial
Pré-condições O ator deve estar logado no sistema; o usuário a ser atualizado deve estar previamente cadastrado no sistema.
Pós-condições As novas informações fornecidas serão atualizadas no registro do sistema.
Fluxo principal 1. O ator clica no menu “Informações pessoais” e seleciona a opção “Atualizar”;2. O sistema exibe uma tela contendo um formulário com as informações do usuário que está logado no sistema;3. O ator modifica as informações que deseja;4. O ator clica no botão “Salvar”;5. O sistema valida as informações;6. O sistema altera as informações referentes àquele usuário no banco de dados;7. O sistema retorna para a tela principal.
Fluxo Secundário 1 4. O ator seleciona o botão “Cancelar”;5. O sistema retorna para a tela principal.
Fluxo Secundário 2 5. O ator modifica o CPF para um já cadastrado;6. O sistema exibe uma mensagem informando que já existe um usuário cadastrado com esse CPF e permanece na mesma tela com os campos preenchidos e realça o campo CPF.
5.2.5. UC05 – Listar Vagas
Identificador [UC05]
Descrição Lista as vagas abertas do sistema.
Atores Gerente, Candidato, Avaliador.
Prioridade Essencial
Pré-condições Usuário está logado no sistema.
Pós-condições As informações consultadas devem permanecer inalteradas
Fluxo principal 1. O ator seleciona no menu “Vagas” a opção “Listar Vagas”;2. O sistema exibe uma tela com a lista de vagas e filtros para a busca;3. O ator seleciona os filtros desejados;4. O ator clica no botão “Listar”;5. O sistema exibe a lista de vagas que atendem aos filtros especificados.
6. Análise dos casos de uso
6.1. Diagrama de classes
6.1.1. UC01 – Efetuar login
Figura 2 – Diagrama de classes para o UC01
6.1.2. UC02 – Efetuar logoff
Figura 3 – Diagrama de classes para o UC02
6.1.3. UC03 – Efetuar cadastro
Figura 4 – Diagrama de classes para o UC03
6.1.4. UC04 – Atualizar cadastro
Figura 5 – Diagrama de classes para o UC04
6.1.5. UC05 – Listar vagas
Figura 6 – Diagrama de classes para o UC05
6.2.Diagramas de sequência
6.2.1. UC01 – Efetuar login
Figura 7 – Diagrama de sequência para o UC01 – fluxo principal
Figura 8 – Diagrama de sequência para o UC01 – fluxo secundário 3
6.2.2. UC02 – Efetuar logoff
Figura 9 – Diagrama de sequência para o UC02
6.2.3. UC03 – Efetuar cadastro
Figura 10 – Diagrama de sequência para o UC03
6.2.4. UC04 – Atualizar cadastro
Figura 11 – Diagrama de sequência para o UC04
6.2.5. UC05 – Listar vagas
Figura 12 – Diagrama de sequência para o UC05