0% acharam este documento útil (0 voto)
2 visualizações34 páginas

Modelagem de Plataforma de Ensino Online

O documento apresenta um projeto integrador de modelagem de software para uma plataforma de ensino online, incluindo diagramas que descrevem as funcionalidades, estrutura de dados e interações entre usuários. Os diagramas abordam casos de uso, classes, sequência e atividades, facilitando a compreensão e implementação do sistema. A modelagem busca unificar a visão do projeto, permitindo uma gestão eficiente do ambiente virtual de aprendizagem.

Enviado por

zangerolami12
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato DOCX, PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
2 visualizações34 páginas

Modelagem de Plataforma de Ensino Online

O documento apresenta um projeto integrador de modelagem de software para uma plataforma de ensino online, incluindo diagramas que descrevem as funcionalidades, estrutura de dados e interações entre usuários. Os diagramas abordam casos de uso, classes, sequência e atividades, facilitando a compreensão e implementação do sistema. A modelagem busca unificar a visão do projeto, permitindo uma gestão eficiente do ambiente virtual de aprendizagem.

Enviado por

zangerolami12
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato DOCX, PDF, TXT ou leia on-line no Scribd

Enzo Lago Ribeiro - 089134

Erick Souza Borba - 095401


João Paulo Silva Sergio - 093103
Juan Felipe de Morais Zangerolami - 063576

Projeto integrador de modelagem de software


Plataforma de ensino online

Brasília
2025
Projeto integrador de modelagem de software, por Hyago Santana.

Introdução

Este trabalho tem como objetivo representar de forma visual e


estruturada o funcionamento de uma plataforma de ensino online. A
proposta consiste em criar um conjunto completo de diagramas de
modelagem que descrevem as principais funcionalidades do sistema, sua
estrutura de dados e as interações entre os diferentes tipos de usuários —
especialmente alunos e professores.
A plataforma em estudo contempla um ambiente virtual que permite
o cadastro de alunos, cursos e avaliações, além de recursos voltados à
interação entre alunos e professores, como também o acompanhamento de
trilhas de aprendizado personalizadas. A modelagem busca, portanto,
ilustrar como cada elemento do sistema se relaciona, desde o fluxo de
informações até a comunicação entre os componentes internos.
Os diagramas elaborados — de casos de uso, classes, colaboração,
sequência, atividades, entre outros — têm como finalidade unificar a visão
do projeto, servindo como base técnica para a equipe de desenvolvimento
compreender, planejar e implementar a solução de forma coesa. Essa
representação visual facilita a identificação de requisitos, o entendimento
das relações entre módulos e a validação dos processos de negócio.
Dessa forma, este documento reúne todos os diagramas de
modelagem do sistema, organizados de maneira integrada e coerente, a fim
de apresentar uma visão ampla, clara e fundamentada da estrutura e do
funcionamento da plataforma de ensino online proposta.
Diagrama de casos de uso
Código do [Link]

@startuml

left to right direction

actor Administrador

actor Professor actor

Estudante

usecase "Fazer Login" as Login

' --- Estudante --- usecase "Cadastrar-se na Plataforma" as

Cadastro usecase "Enviar Mensagens" as

MensagensEstudante usecase "Visualizar Cursos

Disponíveis" as VerCursos usecase "Enviar Dúvidas" as

Duvidas usecase "Inscrever-se em Curso" as Inscricao

usecase "Realizar Avaliação" as RealizarAval usecase "Ver

Feedback da Avaliação" as VerFeedback usecase "Acessar

Trilha de Aprendizado" as Trilha

' --- Professor --- usecase "Criar Trilha de Aprendizado" as

CriarTrilha usecase "Responder Dúvidas" as

ResponderDuvidas usecase "Criar/Editar Curso" as

EditarCurso usecase "Publicar Avaliação" as PublicarAval

usecase "Corrigir Avaliação" as CorrigirAval usecase

"Acompanhar Progresso" as Acompanhar

' --- Administrador --- usecase "Gerar Relatórios de Uso" as

Relatorios usecase "Aprovar Curso" as AprovarCurso usecase


"Gerenciar Usuários" as GerenciarUsuarios usecase "Gerenciar

Cursos" as GerenciarCursos usecase "Monitorar Desempenho da

Plataforma" as Monitorar usecase "Suspender Usuário" as

Suspender

' --- Relações Estudante ---

Estudante --> Cadastro

Estudante --> Login

Estudante --> MensagensEstudante

Estudante --> VerCursos

Estudante --> Duvidas

Estudante --> Inscricao

Estudante --> RealizarAval

Estudante --> Trilha

' --- Relações Professor ---

Professor --> Login

Professor --> MensagensEstudante

Professor --> CriarTrilha

Professor --> ResponderDuvidas

Professor --> EditarCurso

Professor --> PublicarAval

Professor --> CorrigirAval

Professor --> Acompanhar

' --- Relações Administrador ---


Administrador --> Login

Administrador --> Relatorios

Administrador --> AprovarCurso


Administrador --> GerenciarUsuarios

Administrador --> GerenciarCursos

Administrador --> Monitorar

Administrador --> Suspender

' --- Includes e Extends ---

Login <.. MensagensEstudante : <<include>>

Login <.. VerCursos : <<include>>

Login <.. Duvidas : <<include>>

Login <.. Inscricao : <<include>>

Login <.. RealizarAval : <<include>>

Login <.. Trilha : <<include>>

Login <.. CriarTrilha : <<include>>

Login <.. ResponderDuvidas : <<include>>

Login <.. EditarCurso : <<include>>

Login <.. PublicarAval : <<include>>

Login <.. CorrigirAval : <<include>>

Login <.. Acompanhar : <<include>>

Login <.. Relatorios : <<include>>

Login <.. AprovarCurso : <<include>>

Login <.. GerenciarUsuarios : <<include>>

Login <.. GerenciarCursos : <<include>>

Login <.. Monitorar : <<include>>

Login <.. Suspender : <<include>>

RealizarAval <.. VerFeedback : <<extend>> Duvidas <..


ResponderDuvidas : <<extend>>

Trilha <.. Acompanhar : <<include>>


@enduml

Tabelas de descrição dos casos de uso

Casos de uso comuns

Casos de uso Ator(es) Descrição Pré-condições Pós-condições Relações

Fazer login Todos Autenticação do Usuário deve Acesso ao Incluído na


usuário na estar sistema maioria dos
plataforma cadastrado concedido casos de uso

Enviar Todos Usuário Mensagem -


mensagens Envio de autenticado enviada e
mensagens para registrada
outros usuários
da plataforma

Casos de uso do estudante


Casos de uso Ator(es) Descrição Pré-condições Pós-condições Relações

Cadastrar-se na Estudante Criação de E-mail válido Conta criada -


plataforma nova conta de não cadastrado pendente de
estudante ativação
Visualizar Estudante Usuário Lista de cursos Inclui fazer
cursos Listagem de autenticado exibida login
disponíveis cursos
disponíveis
para inscrição
Enviar dúvidas Estudante Envio de Estudante Dúvida Inclui fazer
dúvidas sobre inscrito registrada no login
cursos ou em sistema
conteúdo algum curso

Inscrever-se em Estudante Inscrição em Estudante Matrícula Inclui fazer


curso curso autenticado, realizada login
disponível curso disponível

Realizar Estudante Realização de Estudante Avaliação Inclui fazer


avaliação avaliação do inscrito, submetida para login
curso avaliação correção
disponível

Ver feedback Estudante Visualização Avaliação Feedback Estende


de avaliação do resultado e corrigida pelo disponível para realizar
feedback da professor visualização avaliação
avaliação

Acessar a Estudante Acesso ao Estudante Trilha de Inclui fazer


trilha de conteúdo e inscrito no aprendizado login
progresso do

aprendizado curso curso exibida

Casos de uso do professor

Ator(es) Descrição Pré-condições Pós-condições Relações


Casos de uso
Criar trilha de Professor Criação e Professor Trilha de Inclui fazer
aprendizado organização do autenticado, aprendizado login
conteúdo do curso criado definida
curso

Responder Professor Respostas às Dúvidas Dúvida Estende enviar


dúvidas dúvidas dos pendentes respondida e dúvidas
estudantes disponíveis estudante
notificado

Criar/editar Professor Professor Curso Inclui fazer


curso Criação e autenticado criado/editado login
edição (aguardando
de aprovação)
cursos
Publicar Professor Publicação de Curso ativo, Avaliação Inclui fazer
avaliação avaliação para avaliação criada disponível para login
estudantes os estudantes

Corrigir Professor Correção de Avaliações Avaliações Inclui fazer


avaliação avaliações submetidas pelos corrigidas e login
realizadas estudantes feedback gerado

acessar trilha
Monitoramento de
do Estudantes Dados de aprendizado
Acompanhar progresso dos inscritos no progresso
progresso Professor estudantes curso disponíveis

Casos de uso do administrador

Ator(es) Descrição Pré-condições Pós-condições Relações


Casos de uso
Gerar relatório Administrador Geração de Administrador Relatórios Inclui fazer
de uso relatório de autenticado gerados e login
uso da disponíveis
plataforma

Aprovar curso Administrador Aprovação de Cursos Curso aprovado Inclui fazer


cursos criados pendentes de e publicado login
por professores aprovação

Gerenciar Administrador Gestão de Administrador Alterações nas Inclui fazer


usuários contas de autenticado contas login
usuários (criar, realizadas
editar e
excluir)

Administrador Alterações nos


Gerenciar Administrador cursos Inclui fazer
cursos plataforma autenticado realizados login
Monitorar Administrador Monitorament Administrador Dados de Inclui fazer
desempenho o do autenticado desempenho login
da plataforma desempenho atualizados
técnico da
plataforma

Suspender Administrador Usuário Usuário Inclui fazer


usuário Suspensão existente na suspenso e login
temporária ou plataforma acesso
permanente de revogado
usuários

Diagrama de classes
Documentação do Diagrama de Classes

Classe Atributo/Método Tipo de Dado Descrição

Usuário id int Identificador único


do usuário.
Usuário nome string Nome completo do
usuário.
Usuário email string Endereço de email
do usuário.
Usuário senha string Senha de acesso à
plataforma.
Usuário fazerLogin() método
Realizar o processo
de autenticação do
usuário.
Usuário enviarMensagem() método Permiter enviar
uma mensagem a
outro usuário.
Usuário receberMensagem() método
Receber mensagens
enviadas para outros
usuários.
Estudante matricula string
Código de matrícula
do estudante.
Estudante progresso float

Indicar o progresso
do estudante nos
cursos matriculados.
Estudante inscreverEmCurso() método Inscrever o
estudante em um
curso.
Estudante realizarAvaliacao() método Permiter que o
estudante realize
uma avaliação.
Estudante verFeedback() método Visualizar o
feedback
das
avaliações.
Professor especialidade string Área de
conhecimento do
professor.
Professor corrigirAvaliacao() método Corriger e atribuir
nota às avaliações
enviadas.
Administrador nivelAcesso int Definir o nível de
permissão do
administrador.
Administrador gerenciarUsuario() método Cadastrar, editar
ou remover
usuários.
Administrador gerenciarCursos() método Criar, editar ou
excluir cursos da
plataforma.
Administrador monitorarPlataform método Acompanhar o
a() funcionamento
geral do sistema.
Mensagem idMensagem int Identificador único
da mensagem.
Mensagem conteudo string
Texto da mensagem
enviada.
Mensagem dataEnvio date Data e hora em que
a mensagem foi
enviada.
Mensagem statusLida boolean Indicar se a

mensagem foi lida.


Mensagem remetente Usuário
Usuário que enviou
a mensagem.
Mensagem destinatario Usuário Usuário que
recebe a
mensagem.
Mensagem enviar() método
Enviar a mensagem
ao destinatário.
Mensagem responder() método
Permiter responder
a uma mensagem
recebida.
Curso idCurso int Identificador único
do curso.
Curso titulo string Nome do curso.
Curso descricao string
Resumo do
conteúdo do curso.
Curso cargaHoraria int Tempo total do
curso em horas.
Curso adicionarConteudo( método
) Adicionar novos
conteúdos ao curso.
Curso removerConteudo() método

Remover conteúdos
existentes do curso.
TrilhaAprendizado idTrilha int Identificador da
trilha de
aprendizado.
TrilhaAprendizado titulo string Nome da trilha de
aprendizado.

TrilhaAprendizado adicionarCurso() método Associar um curso à


trilha.
TrilhaAprendizado listarCurso() método Lista todos os
cursos contidos na
trilha.
Avaliação idAvaliacao int Identificador único
da avaliação.
Avaliação titulo string Nome ou tema da
avaliação.
Avaliação comentario string Observações
adicionais sobre a
avaliação.
Avaliação aplicarAvaliacao() método Disponibilizar a
avaliação para os
estudantes.
Avaliação gerarFeedback() método Gerar o feedback
após a correção.
Matrícula dataInscricao date Data em que o
estudante se
matriculou.
Matrícula status string
Situação atual da
matrícula (ativa,
trancada,
concluída).
Matrícula progresso float
Percentual de
progresso no curso.
Matrícula atualizarProgresso() método
Atualizar o
progresso do
estudante.
Matrícula trancar() método
Trancar a matrícula
do estudante.
Matrícula concluir() método Marcar o curso
como concluído.
Submissão idSubmissao int Identificador da
submissão de
avaliação.
Submissão nota float
Nota atribuída pelo
professor.
Submissão comentarioProfesso r string Comentário ou
feedback dado pelo
professor.
Submissão dataEntrega date
Data em que o
estudante entregou a
avaliação.
Submissão status string
Estado da submissão
(pendente,
corrigida, etc.).
Submissão enviarAvaliacao() método Enviar a avaliação
para correção.
Submissão receberFeedback() método
Receber o retorno do
professor.

Diagrama de sequência
O diagrama de sequência representa o funcionamento de uma plataforma de
ensino online, mostrando como estudantes e professores interagem com o sistema em
atividades como login, acesso a aulas, envio de conteúdos e realização de avaliações,
tendo como objetivo descrever de forma clara e dinâmica como cada parte do sistema se
comunica, desde a autenticação até o armazenamento e retorno de dados.
No fluxo, o estudante faz login, acessa o curso, assiste às aulas e realiza testes,
enquanto o professor autentica-se para enviar e gerenciar conteúdos.
O sistema de autenticação valida credenciais, o portal do curso centraliza o
acesso às informações, o repositório de aulas armazena vídeos e materiais, o sistema de
avaliações administra provas e notas, e o banco de dados guarda todas as informações.
Entre as decisões mais importantes estão a validação das credenciais, a
confirmação de uploads e o registro de resultados, garantindo que apenas usuários
autorizados acessem e interajam com o conteúdo.
O diagrama também mostra a troca contínua de mensagens entre os módulos,
reforçando a integração e o bom funcionamento do ambiente virtual de aprendizagem.
Diagrama e atividade
O diagrama mostra o funcionamento geral da plataforma de ensino online,
apresentando as principais ações de cada tipo de usuário: estudante, professor e
administrador. O estudante acessa o sistema, escolhe e se inscreve em cursos,
acompanha suas aulas, realiza avaliações e visualiza o feedback de seu desempenho. Já
o professor é responsável por criar e gerenciar cursos, publicar avaliações, corrigir
atividades enviadas pelos alunos e responder dúvidas. O administrador, por sua vez,
cuida da parte de gestão do sistema — controlando usuários, avaliando cursos e
acompanhando relatórios de uso e desempenho. As decisões ao longo do processo, como
validação de login, inscrição em cursos ou detecção de irregularidades, definem os
diferentes caminhos de cada ator. Assim, o diagrama resume o fluxo das ações dentro da
plataforma, destacando como cada perfil contribui para o funcionamento integrado do
ambiente de ensino.

Código do [Link]

@startuml
title Diagrama de Atividades
- Plataforma de Ensino Online
(Fluxo Geral)

start

' --- tres ramos em paralelo


--- fork

' ===== Ramo 1: Estudante =====


:Realizar login (estudante); if
(Login valido?) then (Sim)
:Acessar pagina
inicial; :Visualizar cursos
disponiveis;

if (Deseja inscrever-se em
curso?) then (Sim)
:Selecionar curso;
:Confirmar inscricao;
:Acessar trilha de aprendizagem;
:Assistir aula;

if (Deseja realizar
avaliacao?) then
(Sim) :Realizar avaliacao;
if (Avaliacao concluida?) then
(Sim)
:Ver nota e feedback;
else (Nao)
:Revisar conteudo;
:Tentar novamente
depois;
endif
else
(Nao) :Co
ntinuar
estudando sem
avaliacao;
endif

else (Nao) :Explorar


outros cursos;
endif

:Encerrar sessao
(opcional) - estudante; else
(Nao) :Exibir erro de
autenticacao (estudante);
endif

fork again

' ===== Ramo 2: Professor =====


:Realizar login (professor); if
(Login valido?) then
(Sim) :Acessar painel do
professor;
:Visualizar cursos criados;

if (Deseja criar novo


curso?) then (Sim) :Criar
curso;
:Adicionar conteudo
(video/aula/
material); :Publicar
curso; else (Nao) :Editar
curso
existente; :Atualizar
conteudo;
endif

if (Deseja publicar
avaliacao?) then (Sim)
:Criar
avaliacao; :Publicar
avaliacao; else (Nao)
:Pular etapa de
avaliacao; endif

if (Ha submissao de aluno?)


then (Sim) :Corrigir
avaliacao; :Publicar
feedback; else
(Nao) :Acompanhar
progresso dos alunos; endif

if (Recebeu duvidas?) then


(Sim) :Responder
mensagens dos alunos; else
(Nao) :Continuar
monitorando curso; endif

:Encerrar sessao
(opcional) - professor;
else (Nao) :Exibir erro de
autenticacao (professor);
endif

fork again

' ===== Ramo 3:


Administrador =====
:Realizar login
(administrador); if (Login
valido?) then (Sim) :Acessar
painel
administrativo; :Visualizar
estatisticas da
plataforma;

if (Deseja gerenciar
usuarios?) then
(Sim) :Listar
usuarios; :Editar
informacoes de usuario; if
(Usuario em situacao
irregular?) then
(Sim) :Suspender usuario;
else (Nao) :Manter
usuario ativo; endif else
(Nao) :Pular
gerenciamento de usuarios;
endif

if (Deseja gerenciar cursos?)


then (Sim) :Visualizar lista
de cursos; :Aprovar ou
remover curso; else (Nao)
:Pular gerenciamento de
cursos; endif

if (Deseja monitorar
desempenho?) then (Sim)
:Analisar relatorios de
uso; :Gerar relatorios de
desempenho;
else
(Nao) :Finalizar
sessao administrativa;
endif

:Encerrar sessao (opcional)


- administrador; else
(Nao) :Exibir erro de
autenticacao
(administrador); endif

end fork

stop
@enduml
Diagrama de componentes

O diagrama de componentes mostra como é estruturada uma Plataforma de Ensino


Online. Nele, cada módulo tem um papel específico e trabalha em conjunto para oferecer
recursos de aprendizagem, comunicação e administração. A Interface Web (Cliente) é o
ponto de entrada para os usuários. É por meio dela que eles fazem login, ajustam suas
informações de conta, visualizam os cursos, acessam as trilhas de aprendizagem, realizam
avaliações e enviam mensagens. O componente de Autenticação é responsável por validar
as credenciais e controlar o acesso, garantindo a segurança da plataforma. Já o módulo de
Administração cuida do gerenciamento de cursos e usuários. O componente Cursos
concentra todos os conteúdos e informações disponíveis, permitindo que sejam consultados
e atualizados sempre que necessário. As Trilhas de Aprendizagem organizam o caminho de
estudo de forma lógica e progressiva, conectando cursos relacionados. O componente de
Avaliações possibilita a aplicação de testes e o registro dos resultados, enquanto o módulo
de Mensagens oferece um canal de comunicação interna entre os usuários. Todos esses
módulos se conectam ao Banco de Dados, que armazena de forma centralizada e segura
todas as informações do sistema. Assim, o diagrama deixa clara uma arquitetura modular,
organizada e escalável, com funções bem distribuídas e comunicação eficiente entre as
partes que compõem a plataforma.
Diagrama de colaboração

Mensagens Trocadas (Numeradas conforme o diagrama)


1 – Autenticação
Nº Origem → Destino Descrição
1 Interface Web → Autenticação Enviar credenciais do usuário para
autenticar.

1.1 Autenticação → Banco de Dados Consultar credenciais armazenadas.


1.2 Banco de Dados → Autenticação Retornar resultado da verificação.
1.3 Autenticação → Interface Web Enviar token de sessão ao usuário.
2 – Visualização de Cursos
Nº Origem → Destino Descrição
2 Interface Web → Cursos Solicitar lista de cursos disponíveis.
2.1 Cursos → Banco de Dados Consultar cursos cadastrados.
2.2 Banco de Dados → Cursos Retornar lista de cursos.
2.3 Cursos → Interface Web Enviar lista de cursos ao usuário.
3 – Inscrição em Curso
Nº Origem → Destino Descrição
3 Interface Web → Cursos Solicitar inscrição no curso
selecionado.

3.1 Cursos → Banco de Dados Criar registro de matrícula.


3.2 Banco de Dados → Cursos Retornar confirmação da matrícula.
3.3 Cursos → Interface Web Enviar confirmação de inscrição ao
usuário.

4 – Acesso à Avaliação
Nº Origem → Destino Descrição
4 Interface Web → Avaliações Solicitar início da avaliação.
4.1 Avaliações → Banco de Dados Consultar questões da avaliação.
4.2 Banco de Dados → Avaliações Retornar questões da avaliação.
4.3 Avaliações → Interface Web Enviar questões ao usuário.
5 – Envio de Respostas e Feedback
Nº Origem → Destino Descrição
5 Interface Web → Avaliações Enviar respostas da avaliação.

5.1 Avaliações → Banco de Dados Registrar submissão e solicitar


correção.

5.2 Banco de Dados → Avaliações Retornar nota e feedback.


5.3 Avaliações → Interface Web Exibir nota e feedback ao usuário.

6 – Mensagens

Nº Origem → Destino Descrição

6 Interface Web → Mensagens Solicitar mensagens ou enviar nova mensagem

6.1 Mensagens → Banco de Dados Registrar/enviar mensagem

6.2 Banco de Dados → Mensagens Retornar histórico / conversas

6.3 Mensagens → Interface Web Exibir mensagens atualizadas

7 – Trilhas de Aprendizagem
Nº Origem → Destino Descrição

7 Interface Web → Trilhas Solicitar trilhas e progresso

7.1 Trilhas → Banco de Dados Consultar trilhas disponíveis

7.2 Banco de Dados → Trilhas Retornar trilhas e progresso

7.3 Trilhas → Interface Web Exibir trilhas / módulos / progresso

Diagrama de tempo

Código do [Link]

@startuml

' Diagrama de Tempo – Plataforma de Ensino Online (Português)


' Linhas de tempo

robust "Interface Web" as UI

robust "Autenticacao" as AUTH

robust "Cursos" as CURSO

robust "Avaliacoes" as AVAL

robust "Banco de Dados" as DB

' Estados iniciais

@0

UI is Ocioso

AUTH is Ocioso

CURSO is Ocioso

AVAL is Ocioso

DB is Pronto

' 1) Login

@1

UI is EnviandoLogin

AUTH is Validando

DB is Consultando

@2

AUTH is TokenEmitido

UI is SessaoAtiva

DB is Pronto

' 2) Visualizar cursos

@3

UI is SolicitandoCursos

CURSO is BuscandoCursos

DB is Consultando

@4

CURSO is EnviandoCursos

UI is VisualizandoCursos

DB is Pronto
' 3) Inscricao

@5

UI is SolicitandoInscricao

CURSO is CriandoMatricula

DB is Gravando

@6

CURSO is MatriculaConfirmada

UI is Inscrito

DB is Pronto

' 4) Avaliacao

@7

UI is IniciandoAvaliacao

AVAL is CarregandoQuestoes

DB is Consultando

@8

AVAL is QuestoesProntas

UI is Respondendo

DB is Pronto

' 5) Submissao + Correção + Feedback

@9

UI is EnviandoRespostas

AVAL is RegistrandoEEnviandoParaCorrecao

DB is Gravando

@10

DB is RetornandoNotaEFeedback

AVAL is ExibindoFeedback

UI is VisualizandoFeedback

DB is Pronto

@enduml

O diagrama de tempo representa, em ordem cronológica, como cada parte


da plataforma reage às ações do estudante durante o uso do sistema. Ele mostra
os estados assumidos por cada componente e como eles se sincronizam para
viabilizar o fluxo completo do aluno.

O processo começa com todos os componentes ociosos. Quando o


estudante envia suas credenciais, a Interface Web passa a EnviandoLogin, o
módulo de Autenticação entra em Validando e o Banco de Dados consulta as
informações. Assim que as credenciais são confirmadas, a Interface assume o
estado de SessaoAtiva, liberando o progresso para as próximas etapas.

Ao solicitar a lista de cursos, a Interface muda para SolicitandoCursos,


enquanto o módulo de Cursos passa para BuscandoCursos, consultando o Banco
de Dados e devolvendo o conteúdo. Em seguida, a Interface mostra esses
resultados no estado VisualizandoCursos.

Quando o estudante decide se inscrever em um curso, ocorre uma nova


sequência coordenada: a Interface solicita a inscrição, o módulo de Cursos registra
a matrícula no Banco de Dados e, ao final, o estado Inscrito é atingido.

Na etapa de avaliação, o aluno inicia o processo e o módulo de Avaliações


carrega as questões diretamente do Banco de Dados. Quando elas estão prontas,
a Interface passa ao estado respondendo. Após o envio das respostas, o módulo
de Avaliações registra e solicita a correção ao Banco de Dados, que retorna nota e
feedback. A Interface então finaliza o fluxo exibindo o resultado ao estudante.

De forma resumida, o diagrama evidencia que cada ação do usuário


desencadeia mudanças ordenadas de estado nos componentes do sistema. Essas
transições estão alinhadas com os demais diagramas do projeto e demonstram
claramente como a plataforma mantém um fluxo contínuo, estruturado e coerente
do início ao fim.

Diagrama de estado
Código do [Link]

@startuml

title Diagramas de Estados - Estudante, Professor e Administrador

hide empty description

left to right direction

skinparam state {

BackgroundColor #222

BorderColor white

FontColor white

RoundCorner 15

' ===========================

' CICLO DO ESTUDANTE

' ===========================

state "CicloDoEstudante" as CicloEstudante {

[*] --> Desconectado

Desconectado --> Autenticado : EnviarCredenciais/TokenOK

Desconectado --> Desconectado : EnviarCredenciais/FalhaLogin

Autenticado --> ExplorandoCursos : SolicitarCursos/ExibirLista

ExplorandoCursos --> Inscrito : SolicitarInscricao/MatriculaOK

ExplorandoCursos --> Autenticado : EncerrarSessao/VoltarLogin

Inscrito --> EmAvaliacao : IniciarAvaliacao/QuestoesOK

Inscrito --> ExplorandoCursos : VoltarCursos/ListaCursos


state EmAvaliacao {

[*] --> Respondendo

Respondendo --> AguardandoCorrecao : EnviarRespostas/SubmissaoOK

AguardandoCorrecao --> Respondendo : ReabrirTentativa/Opcional

AguardandoCorrecao --> [*] : NotaGerada/Finalizar

EmAvaliacao --> Submetido : NotaGerada/FinalizarCorrecao

Submetido --> FeedbackVisualizado : ReceberFeedback/ExibirFeedback

FeedbackVisualizado --> Autenticado : ContinuarEstudos/MenuPrincipal

Autenticado --> [*] : Logout/Sair

' ===========================

' CICLO DO PROFESSOR

' ===========================

state "CicloDoProfessor" as CicloProfessor {

[*] --> ProfDesconectado

ProfDesconectado --> ProfAutenticado : EnviarCredenciais/TokenOK

ProfDesconectado --> ProfDesconectado : EnviarCredenciais/FalhaLogin

ProfAutenticado --> ProfPreparandoConteudo : AcessarPainel/SelecionarCurso

ProfPreparandoConteudo --> ProfPublicandoMaterial : CriarOuEditarConteudo/SalvarMaterial

ProfPublicandoMaterial --> ProfAutenticado : MaterialPublicado/VoltarDashboard

ProfAutenticado --> ProfGerenciandoAvaliacoes : AcessarAvaliacoes/AbrirLista

ProfGerenciandoAvaliacoes --> ProfCorrigindoAvaliacoes : ReceberSubmissoes/AbrirCorrecao


ProfCorrigindoAvaliacoes --> ProfGerenciandoAvaliacoes : FinalizarCorrecao/AtualizarNotas

ProfAutenticado --> ProfRespondendoMensagens : AcessarMensagens/AbrirConversas

ProfRespondendoMensagens --> ProfAutenticado : FinalizarMensagens/VoltarDashboard

ProfAutenticado --> [*] : Logout/Sair

' ===========================

' CICLO DO ADMINISTRADOR

' ===========================

state "CicloDoAdministrador" as CicloAdministrador {

[*] --> AdmDesconectado

AdmDesconectado --> AdmAutenticado : EnviarCredenciais/TokenOK

AdmDesconectado --> AdmDesconectado : EnviarCredenciais/FalhaLogin

AdmAutenticado --> AdmGerenciandoUsuarios : AcessarUsuarios/AbrirLista

AdmGerenciandoUsuarios --> AdmAutenticado : SalvarAlteracoes/VoltarDashboard

AdmAutenticado --> AdmGerenciandoCursos : AcessarCursos/AbrirLista

AdmGerenciandoCursos --> AdmAutenticado : SalvarCursos/VoltarDashboard

AdmAutenticado --> AdmGerenciandoSistema : AcessarConfiguracoes/AbrirPainel

AdmGerenciandoSistema --> AdmAutenticado : SalvarConfiguracoes/VoltarDashboard

AdmAutenticado --> AdmGerandoRelatorios : AcessarRelatorios/FiltrarDados

AdmGerandoRelatorios --> AdmAutenticado : ExportarRelatorio/VoltarDashboard

AdmAutenticado --> [*] : Logout/Sair


}

@enduml

Os três diagramas de estado representam como cada ator da plataforma —


Estudante, Professor e Administrador — interage com o sistema ao longo do seu
ciclo de uso. Cada um possui responsabilidades diferentes, mas todos seguem
uma lógica similar: começam desconectados, realizam o login, executam suas
tarefas específicas e retornam ao estado autenticado até encerrarem a sessão.

No ciclo do Estudante, o diagrama mostra desde o acesso inicial até a


navegação pelos cursos, a inscrição e o processo completo de avaliação. Os
subestados de avaliação evidenciam claramente as etapas de responder, aguardar
correção e visualizar feedback, refletindo com fidelidade a jornada de
aprendizagem dentro da plataforma.

O ciclo do Professor destaca tarefas relacionadas à atuação pedagógica,


como preparar e publicar materiais, corrigir avaliações e responder mensagens.
Cada ação leva o professor a estados específicos, representando a rotina contínua
de acompanhamento dos alunos e gerenciamento de conteúdos.

Já o ciclo do Administrador apresenta as funções de gestão do sistema,


como administrar usuários, cursos, configurações e relatórios. As transições
mostram um fluxo organizado de acesso, edição e confirmação, reforçando o papel
de manutenção e controle da plataforma.

Em conjunto, os diagramas deixam claro como cada ator possui seu próprio
percurso, mas todos seguem uma estrutura de uso consistente e bem definida,
tornando o comportamento do sistema fácil de entender e justificar.

Você também pode gostar