diff --git a/README.md b/README.md index 7dd0b947..2bdc264a 100644 --- a/README.md +++ b/README.md @@ -1,37 +1,17 @@

Universidade Presbiteriana Mackenzie

-# Template para Disciplina de Engenharia de Software +# Projeto: *Escola Infinito: Sistema de Presença* -O repositório define um modelo (*template*) que deverá ser seguido por cada grupo no projeto. - -A seguir, os passos para a preparação do projeto: - -1. Um dos membros do grupo deverá realizar um *fork* deste repositório. -2. O dono do repositório deverá convidar os demais membros do grupo para serem colaboradores. -3. O dono do repositório deverá convidar o professor para ser colaborador do repositório. -4. O dono do repositório deverá habilitar o GitHub Pages. Basta seguir o [procedimento para habilitar o GitHub Pages](https://docs.github.com/pt/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site), lembrando de escolher em *Source* a opção `/docs` em lugar da opção `/root`. -5. Cada membro do grupo deverá instalar o [Git](https://git-scm.com/downloads). -6. Para a edição do conteúdo deste projeto, sugere-se que cada membro do grupo faça a instalação do [Visual Studio Code](https://code.visualstudio.com/) com as extensões [Markdown All in One](https://marketplace.visualstudio.com/items?itemName=yzhang.markdown-all-in-one) e [GitHub Pull Requests and Issues](https://marketplace.visualstudio.com/items?itemName=GitHub.vscode-pull-request-github). No entanto, cada membro poderá utilizar a IDE de sua preferência. -7. Cada membro do grupo deverá [clonar o repositório do grupo no seu computador](https://learn.microsoft.com/en-us/azure/developer/javascript/how-to/with-visual-studio-code/clone-github-repository?tabs=create-repo-command-palette%2Cinitialize-repo-activity-bar%2Ccreate-branch-command-palette%2Ccommit-changes-command-palette%2Cpush-command-palette). -8. Cada membro do grupo deverá editar o seu próprio nome no arquivo em [/docs/index.md](./docs/index.md), de preferência [criando um novo *branch* e um *pull request*](https://www.youtube.com/watch?v=LdSwWxVzUpo). -9. O dono do repositório deverá editar este arquivo, removendo estas instruções iniciais e preenchendo o restante da página com os dados do projeto do seu grupo. -10. Segurança é imprescindível nas plataforma de hospedagem de repositórios GIT. CUIDADO com exposição de senha e acesso ao repositório. - - -# Projeto: ** - -# Grupo: ** +# Grupo: *SOS* # Descrição -** +Este projeto consiste nas mais diversas etapas da implementação de um sistema de presença em uma escola do ensino fundamental, estendendo-se desde o levantamento de informações competentes ao sistema, como por exemplo os casos de uso, objetivos funcionais, não funcionais e atores, até mesmo o planejamento estrutural e sequencial dos componentes necessários para o bom funcionamento do sistema. O planejamento supracitado se expressa majoritariamente através de diagramas UML e suas respectivas descrições. # Documentação -Os arquivos da documentação deste projeto estão na pasta [/docs](/docs), e o seu conteúdo é publicado em **https://.github.io/UML-Classroom-FCI/blob/master/docs/index.md** - - +Os arquivos da documentação deste projeto estão na pasta [/docs](/docs), e o seu conteúdo é publicado em **https://lihviaa.github.io/UML-Classroom-FCI/** # Releases diff --git a/docs/index.md b/docs/index.md index 1c12922b..130f511c 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,9 +1,9 @@

Universidade Presbiteriana Mackenzie

-

Sistemas de Informação

+

Ciência da Computação

-*<Nome do Projeto>* +

Escola Infinito: Sistema de Presença

>*Observação 1: A estrutura inicial deste documento é só um exemplo. O seu grupo deverá alterar esta estrutura de acordo com o que está sendo solicitado na disciplina.* @@ -12,7 +12,7 @@ **Conteúdo** -- [Autores](#nome-alunos) +- [Autores](#nome-aluno) - [Descrição do projeto](#introdução-do-projeto) - [Análise de requisitos funcionais e não-fucionais](#descrição-dos-requisitos) - [Diagrama de casos de uso](#diagrama-de-comportamento-atores) @@ -27,30 +27,87 @@ # Autores -* Aluno 1 -* Aluno 2 -* Aluno 3 -* Aluno 4 -* Aluno 5 -* Aluno 6 -* Aluno 7 -* Aluno 8 - +* Diogo Lourenzon Hatz +* Leila Akina Ino +* Livia Alabarse dos Santos # Descrição do projeto -*<Introdução do projeto>* +*Este projeto consiste na implementação de um sistema para controlor a preseça de alunos de uma escola que possui múltiplas turmas do Ensino Fundamental I. Esse sistema possui como usuário principal os professores do instituto de ensino Inifinito, o qual leva em consideração as eventuais necessidades de acessibilidade de seus docentes. Ademais, por se tratar de uma atividade rotineira acadêmica dos docentes, o sistema implementado deve ser intuitivo e cumprir com seu papel fundamental sem complicações* # Análise de requisitos funcionais e não-funcionais -*<Descrição dos requisitos>* + +

Requisitos funcionais:

+ +
    +
  1. Realizar a chamada de todas as turmas em dois momentos do dia
  2. +
  3. Gerar relatórios de faltas agrupados por data, ano do ensino, turma, professor, disciplina ou aluno
  4. +
  5. Enviar notificações por e-mail para pais ou responsáveis nos casos em que o comparecimento às aulas dadas até o momento estiverem abaixo de 80%
  6. +
  7. Acessibilidade: tamanho de fonte ajustável, dentre outros
  8. +
  9. Reprovar os alunos com mais de 25% de faltas do total de aulas ministradas
  10. +
+ +

Requisitos não-funcionais:

+ +
    +
  1. O sistema deve ser implementado em web: HTML, CSS e JS
  2. +
  3. O sistema deve permitir múltiplos acessos simultâneos
  4. +
  5. O sistema deve ser compatível com todos os navegadores web
  6. +
  7. O sistema deve ser compatível com dispositivos móveis
  8. +
  9. O sistema deve se comunicar com um banco de dados
  10. +
  11. O usuário deve escolher uma senha com no mínimo 6 caracteres alfanuméricos, contendo peolo menos 1 letra maiúscula e 1 caractere especial
  12. +
  13. O sistema semanalmente verificará de forma automática as porcentagens de comparecimento a partir de um relatório individual gerado e enviará uma notificação aos pais caso o comparecimento esteja abaixo de 80%. Essa verificação ocorrerá de sabádo.
  14. +
# Diagrama de casos de uso -*<Diagrama para visualizar o comportamento dos atores>* +Diagrama de casos de uso # Descrição dos casos de uso - -*<Descrição do comportamento entre os atores/resquisitos>* +

Caso do Uso: Fazer a Chamada

+Descrição Geral: O professor deseja realizar a chamada de uma determinada turma
+Atores: Professor
+Pré-Condição: O professor deve realizar login no sistema
+Pós-Condição: A chamada é feita e enviada para o banco de dados
+Fluxo Básico (Professor deseja realizar a chamada) +
    +
  1. (Opcional) Professor seleciona o ícone de acessibilidade e altera o tamanho da fonte
  2. +
  3. Professor seleciona a opção de fazer a chamada
  4. +
  5. Professor faz a chamada e envia o resultado ao banco de dados
  6. +
+ +
+ +

Caso do Uso: Gerar Relatórios de Faltas

+Descrição Geral: O professor deseja gerar relatórios de faltas com determinado critério de agrupamento
+Atores: Professor
+Pré-Condição: O professor deve realizar login no sistema
+Pós-Condição: O relatório é gerado
+Fluxo Básico (Professor deseja gerar relatório de faltas) +
    +
  1. (Opcional) Professor seleciona o ícone de acessibilidade e altera o tamanho da fonte
  2. +
  3. Professor seleciona a opção de gerar relatórios
  4. +
  5. Professor seleciona o critério de agrupamento do relatório
  6. +
  7. Sistema gera o relatório
  8. +
+ +

Caso do Uso: Verificar porcentagem de presença

+Descrição Geral: O sistema verifica a porcentagem de comparecimento e notifica os pais caso a porcentagem esteja abaixo de 80%
+Atores: Pais e responsáveis
+Pré-Condição:Ser sábado
+Pós-Condição: Nada ou notificação aos pais e responsáveis
+Fluxo Básico (Verificar porcentagem de comparecimento) +
    +
  1. Sistema gera um relatório para cada aluno
  2. +
  3. Sistema verifica a falta do aluno
  4. +
+ +Fluxo Alternativo (Uma notificação é enviada aos responsáveis de alunos com excesso de faltas) +
    +
  1. Sistema gera um relatório para cada aluno
  2. +
  3. Sistema verifica a falta do aluno
  4. +
  5. E-mail é enviado aos responsáveis dos alunos com excesso de faltas
  6. +
# Diagrama de sequencia @@ -75,3 +132,6 @@ # Referências *<Lista de referências>* +
    +
  • https://www.lucidchart.com/pages/pt/diagrama-de-caso-de-uso-uml
  • +
diff --git a/src/Diagrama de casos de uso.png b/src/Diagrama de casos de uso.png new file mode 100644 index 00000000..39ac8b5c Binary files /dev/null and b/src/Diagrama de casos de uso.png differ