Descrição dos Requisitos Funcionais
Este documento especifica os requisitos do sistema Rhecruta, fornecendo aos desenvolvedores as informações necessárias para o projeto e implementação, assim como para realização dos testes e homolagação do sistema.
[RF01] Solicitação de cadastro de Candidato
Para uma pessoa entrar no rhecruta como um candidato, o sistema deve prover um meio para realizar a solicitação do cadastro de uma conta para este papel.
Prioridade: Essencial
Entradas e pré-condições: Não tem
Saídas e pós condições : Uma solicitação de cadastro de candidato é realizada
[RF02] Solicitação de cadastro de Administrador
Para uma pessoa se juntar a equipe do rhecruta como um gerente ou um avaliador, o sistema deve prover um meio para realização de solicitação do cadastro de uma conta para estes papéis.
Prioridade : Essencial
Entradas e pré-condições: Não tem
Saídas e pós condições: Uma solicitação de cadastro de administrator é realizada
[RF03] Resposta à solicitações de cadastro
Após a realização do procedimento cadastral de um candidato, gerente ou avaliador, o cadastro do mesmo deve ser aprovado por um gerente do sistema e apenas após isso o usuário que se cadastrou poderá ter acesso ao sistema através de login.
Prioridade: Essencial
Entradas e pré-condições: O gerente deve estar logado no sistema
Saídas e pós condições: O conta cadastrada aprovada poderá ter acesso ao sistema
[RF04] Mudança de papéis (Role)
Todo gerente pode mudar o seu papel no sistema para avaliador de maneira que ele possa atuar como avaliador nas entrevistas agendadas.
Prioridade: Essencial
Entradas e pré-condições: O gerente deve estar logado no sistema
Saídas e pós condições: O papel do gerente deve ser alterado para avaliador e o mesmo será “deslogado” do sistema para que não tenha acesso às funcionalidades de gerente.
[RF05] Cadastro de Oferta
Um gerente cadastrado no rhecruta deverá ter a possibilidade de cadastrar uma oferta de emprego. Esta oferta pode ser de dois tipos, por Convite ou Pública. Na oferta por convite, o gerente terá a possibilidade de convidar quaisquer candidatos de seu interesse e somente quem ele convidar terá acesso a oferta.
Na oferta pública qualquer candidato com conta cadastrada no site poderá se inscrever e posteriormente participar do processo de recrutamento.
Prioridade: Essencial
Entradas e pré-condições: O gerente deve estar logado no sistema
Saídas e pós condições: Uma oferta cadastrada no banco de dados
[RF06] Notificação de nova oferta
Para cada oferta registrada no sistema, deverá ser enviado um e-mail para todos os candidatos que possuam pelo menos uma habilidade relacionada às competências exigidas para a oferta.
Prioridade: Essencial
Entradas e pré-condições: Uma nova oferta cadastrada no sistema
Saídas e pós condições: O candidato que possuir pelo menos uma habilidade relacionada às competências exigidas para a oferta deverá ser notificado por e-mail.
[RF07] Integração com Github
Para obtenção das habilidades de cada candidato inscrito numa oferta,o rhecruta deverá ser integrado ao github do candidato. O acesso a conta do candidato se dará por meio do "username" da conta do github informado no momento de cadastro.
Prioridade: Essencial
Entradas e pré-condições: nenhuma
Saídas e pós condições: nenhuma
[RF08] Escolha de avaliador para oferta
O gerente que criou uma oferta poderá escolher um dos avaliadores cadastrados para as entrevistar os candidatos inscritos na oferta.
Prioridade: Essencial
Entradas e pré-condições: O gerente deve estar logado no sistema, deverá haver avaliadores cadastrados no sistema e a oferta não poderá ter nenhum avaliador anexado a ela.
Saídas e pós condições: Um avaliador será relacionado à oferta e o mesmo poderá visualizar as entrevistas agendadas em sua página.
[RF09] Agendamento de entrevista
O gerente que criou uma oferta poderá agendar uma entrevista para cada candidato com o avaliador previamente escolhido, cada entrevista possuirá uma data de inicio, uma data de fim e uma pontuação que será definida pelo avaliador no final da entrevista.
Prioridade: Essencial
Entradas e pré-condições: O gerente deve estar logado no sistema, um avaliador deve estar anexado à oferta e não deverá haver choque de horário entre as datas escolhidas para a entrevista com as entrevistas agendados para o avaliador.
Saídas e pós condições: Uma nova entrevista será cadastrada
[RF10] Agendamento da entrevista no Google Calendar
Sempre que uma entrevista é agendada, a mesma deverá ser salva no Google calendar para fácil acesso aos agendamentos. Caso a entrevista seja cancelada, a entrevista salva no google calendar deverá ser removida.
Prioridade: Essencial
Entradas e pré-condições: nova entrevista previamente cadastrada
Saídas e pós condições: Entrevista agendada no google calendar caso uma nova entrevista seja agendada e remoção da entrevista do google calendar caso a mesma seja cancelada.
[RF11] Cancelamento de Entrevista
O gerente poderá cancelar uma entrevista previamente marcada caso a mesma não tenha sido iniciada.
Prioridade: Essencial
Entradas e pré-condições: Entrevista previamente cadastrada não pode ter sido iniciada
Saídas e pós condições: Entrevista deve ser removida do banco de dados e do google calendar.
[RF12] Notificação de nova entrevista
Ao agendar ou cancelar uma entrevista com um candidato, um e-mail será enviado automaticamente informando o candidato sobre o agendamento ou cancelamento da entrevista.
Prioridade: Essencial
Entradas e pré-condições: Entrevista agendada ou cancelada
Saídas e pós condições: Candidato recebe e-mail sobre agendamento ou cancelamento da entrevista.
[RF13] Geração de pontuação (score) para candidato baseado na oferta
Para auxiliar a escolha dos candidatos inscritos na oferta no agendamento de uma entrevista, uma pontuação para cada candidato será gerada automaticamente pelo sistema baseado no rank do sistema suggestions e na igualdade entre as habilidades do candidato e as exigidas para a oferta. (Algorítmo utilizado: rank_suggestions0.5 + match_candidate_offer0.5)
Prioridade: Essencial
Entradas e pré-condições: Candidato inscrito numa oferta
Saídas e pós condições: Uma pontuação baseada no rank do sistema suggestions e na igualdade entre as habilidades do candidato e as exigidas para a oferta é persistido no banco de dados para consultas posteriores.
[RF14] Avaliação da entrevista
O avaliador poderá atribuir uma nota de 0 a 1 para cada entrevista realizada, esta nota é atribuída de acordo com o desempenho do candidato na entrevista.
Prioridade: Essencial
Entradas e pré-condições: Entrevista agendada
Saídas e pós condições: Uma pontuação deverá ser atribuída à entrevista
[RF15] Gerenciamento de currículo
Cada candidato poderá fazer o upload de seu currículo no formato pdf. A persistência deste documento deverá ser feita no dropbox.
Prioridade: Essencial
Entradas e pré-condições: Candidato cadastrado
Saídas e pós condições: O currículo deverá estar disponível no dropbox e os gerentes e avaliadores poderão visualizá-lo por meio da aplicação.
[RF16] Emissão de relatórios mensais
O gerente poderá visualizar relatórios mensais de candidatos e ofertas. Os relatórios escolhidos foram: Número de ofertas criadas no mês Quantidade de ofertas por skill Porcentagem de presença das skills nas ofertas
Prioridade: Essencial
Entradas e pré-condições: Gerente logado no sistema
Saídas e pós condições: Relatório emitido e disponível para visualização na página do gerente