Tópicos Avançados
em Interface
Equipe
Ivanildo José de Sousa Aquino Júnior ([email protected])
Milton Burgos Josué Neto ([email protected])
Roteiro
•
•
•
•
•
•
•
•
Introdução
Casos de uso escolhidos
Fluxos de eventos
Diagramas de Seqüência
Classes de Análise (VOPC)
Arquitetura
Cápsulas
Subsistemas
Introdução
• Sistema de gerenciamento de
aprendizado
• Ferramentas síncronas e assíncronas
• Interface WEB
Caso de uso: Matricular Aluno em
Curso
Sistema Financeiro
Matricular em Curso
Solicitar Nova Senha
<<include>>
Anônimo
Efetuar Login
Cadastrar
Fluxo de Eventos: Matricular Aluno
em Curso
[An] CDU-04
Nome:
Matricular em Curso
Atores:
Anônimo
Prioridade:
Essencial
Requisitos associados:
[An] RF-04
Entradas e pré-condições:
O usuário deve estar cadastrado no sistema.
Saídas e pós-condições:
O usuário é matriculado no curso.
Fluxos de eventos
Fluxo principal:
1. Include (Cadastrar);
2. O usuário informa o curso que deseja se matricular e o valor do curso;
3. O usuário confirma a solicitação de matrícula no curso;
4. O sistema procura o usuário na base de dados através de seu CPF;
5. O sistema procura o curso que o usuário deseja se matricular na base de dados.
6. O sistema gera e retorna o número de matrícula do usuário no curso.
7. O sistema matricula o usuário no curso.
8. O sistema transmite o valor do curso para o sistema financeiro.
Fluxos Alternativos:
1. O usuário pressiona o botão cancelar
Este fluxo ocorre quando o usuário clica no botão cancelar até o passo 2. O caso de
uso termina.
Caso de uso: Alocar Administrador
Inserir Usuário
<<include>>
Atualizar Usuário
<<include>>
<<include>>
Administrador
Remover Usuário
<<include>>
Efetuar Login
(from Anônimo)
<<include>>
Desalocar Administrador
Alocar Administrador
Fluxo de Eventos: Alocar
Administrador
[Ad] CDU-16
Nome:
Alocar Administrador
Atores:
Administrador
Prioridade:
Essencial
Requisitos associados:
[Ad] RF-16
Entradas e pré-condições:
O administrador deve ter efetuado o login no sistema
Saídas e pós-condições:
O usuário é cadastrado como administrador do sistema.
Fluxos de eventos
Fluxo principal:
1. Include (Efetuar Login);
2. O administrador informa o CPF do novo administrador;
3. O administrador confirma a solicitação de alocação de um novo administrador;
3. O sistema procura o usuário na base de dados através de seu CPF;
4. O sistema atribui permissões de administrador ao usuário e informa o sucesso
na realização da atividade.
Fluxos Alternativos:
1. Usuário não cadastrado
No passo 3, caso o sistema não retorne nenhum usuário cadastrado na base de
dados, o administrador preenche os dados de um novo cadastro para o usuário. O
sistema cadastra o usuário na base de dados. O caso de uso retorna ao passo 4.
2. CPF não preenchido
No passo 2, caso o CPF não seja preenchido, uma mensagem de erro é exibida para
o usuário. O caso de uso retorna ao passo 2.
3. CPF inválido
No passo 2, caso o CPF informado pelo usuário não seja válido, o sistema exibe
uma mensagem de erro para o usuário. O caso de uso retorna ao passo 2.
4. O administrador pressiona o botão cancelar
Este fluxo ocorre quando o administrador clica no botão cancelar no passo 2. O
caso de uso termina.
Caso de uso: Procurar
Documentos
Matricular em Turma
<<include>>
Solicitar Trancamento de Matrícula
<<include>>
<<include>>
Entrar em Grupo
<<include>>
Aluno
(f rom Actors)
<<include>>
Efetuar Login
(from Anônimo)
Sair do Grupo
Realizar Avaliação
Procurar Documento
Fluxo de Eventos: Procurar
Documentos
[Al] CDU-12
Nome:
Procurar Documento
Atores:
Aluno
Prioridade:
Desejável
Requisitos associados:
[Al] RF-12
Entradas e pré-condições:
O aluno deve ter efetuado o login no sistema
Saídas e pós-condições:
O documento é baixado da base de dados do servidor.
Fluxos de eventos
Fluxo principal:
1. Include (Efetuar Login);
2. O aluno informa as palavras-chave para a procura dos documentos;
3. O aluno confirma a busca pelos documentos;
4. O sistema procura a lista de servidores onde as bases de dados do sistema está
instalado;
5. O sistema acessa os servidores;
6. O sistema procura os documentos nas bases de dados dos servidores;
7. O sistema lista os documentos encontrados nas bases de dados;
8. O aluno seleciona o documento a ser baixado;
9. O sistema envia o documento da base de dados do servidor para o aluno;
10. O aluno confirma a recepção do documento.
Fluxos Alternativos:
1. O aluno pressiona o botão cancelar
Este fluxo ocorre quando o aluno clica no botão cancelar até o passo 10. O caso de
uso termina.
Diagrama de Seqüência: Matricular
Aluno em Curso
: Aluno
: TelaMatricularAluno
:
ControladorMatricularAluno
: CadastroUsuarios
matricularAluno(cpf, cursoId, valor)
matricular(cpf, curso_id, valor)
usuario = procurar(cpf,)
curso = procurar(cursoId)
matricula = criar(curso, usuario)
inserir(matricula)
gerarContaAReceber(usuario, valor)
: CadastroCursos
: MatriculaCurso
:
CadastroMatriculasCurso
: Sistema Financeiro
Diagrama de Seqüência: Alocar
Administrador
: Administrador
: TelaAlocarAdministrador
alocarAdministrador(cpf)
: CadastroUsuarios
:
ControladorAlocacaoA...
: AlocacaoAdministrador
:
CadastroAlocacaoAdministradores
alocarAdministrador(cpf)
usuario = procurar(cpf)
adm = criar(usuario)
inserir(adm)
existe(usuario)
Diagrama de Sequência: Procurar
Documentos
: Aluno
: TelaProcurarDocumento
procurarDocumento(palavraChave)
:
ControladorProcurar...
: CadastroDocumentos
:
ISubsiste...
:
CadastroServidores
: Servidor
: CadastroDocumentos
procurarDocumento(palavraChave)
documentosLocais = procurar(palavraChave)
servidores = procurarServidores()
servidorAtual = acessarServidor(servidor)
documentos = procurarDocumentos(palavraChave)
procurarDocumentos(palavraChave)
exibirListaDocumentos()
baixarArquivo(documento, servidor)
baixarArquivo(documento, servidor)
baixarArquivo( )
Classes de Análise: Matricular
aluno em curso
Classes de Análise: Alocar
Administrador
Classes de Análise: Procurar
documentos
Padrões de Projeto
• Fachada
• Singleton
• PDC
Mapeamento das classes de
análise em elementos de projeto
Classes de análise
Elementos de projeto
Fachada
CadastroAlocacaoAdministradores
RepositorioAlocacaoAdministradoresBDR
IRepositorioAlocacaoAdministradores
CadastroAlocacaoAdministradores
CadastroCursos
RepositorioCursosBDR
IRepositorioCursos
CadastroCursos
CadastroDocumentos
RepositorioDocumentosBDR
IRepositorioDocumentos
CadastroDocumentos
CadastroMatriculasCurso
RepositorioMatriculasCursoBDR
IRepositorioMatriculasCurso
CadastroMatriculasCurso
CadastroServidores
RepositorioCadastroServidoresBDR
IRepositorioCadastroServidores
CadastroServidores
CadastroUsuarios
RepositorioCadastroUsuariosBDR
IRepositorioCadastroUsuarios
CadastroUsuarios
ISubSistemaFinanceiro
ISubSistemaFinanceiro
FachadaFinanceiro
ISubSistemaComunicacao
ISubSistemaComunicacao
FachadaComunicacao
* As demais classes de análise são mapeadas diretamente em elementos de projeto (mapeamento 1 para 1).
Arquitetura: Matricular Aluno Curso
Arquitetura: Alocar Administrador
Arquitetura: Procurar Documentos
Arquitetura Geral do Sistema
Diagrama de Pacotes
Documento
<<layer>>
GUI
<<subsystem>>
SubSistemaFinanceiro
<<Interface>>
ISubSistemaFinanceiro
Servidor
(f rom SubSistemaFinanceiro)
Controladores
<<Interface>>
ISubsistemaComunicacao
(f rom SubSistemaComunicacao)
Curso
<<subsystem>>
SubSistemaComunicacao
Matricula
Usuario
Alocacao
Identificação das cápsulas
Mapeamento: Cápsulas e
Protocolos
Classes de análise
Elementos de projeto
<<Capsule>> Fachada
<<Capsule>> ControladorServidor
TelaProcurarDocumento
<<Capsule>> TelaProcurarDocumento
<<Protocol>> ProcurarDocumento
TelaMatricularAluno
<<Capsule>> TelaMatricularAluno
<<Protocol>> MatricularAluno
TelaAlocarAdministrador
<<Capsule>> TelaAlocarAdministrador
<<Protocol>> AlocarAdministrador
ControladorProcurarDocumento
<<Capsule>> ControladorProcurarDocumento
<<Protocol>> ControlaDocumento
Identificação de Subsistemas
<<subsystem>>
SubSistemaComunicacao
<<subsystem>>
SubSistemaFinanceiro
<<Interface>>
ISubsistemaComunicacao
<<Interface>>
ISubSistemaFinanceiro
(f rom SubSistemaComunicacao)
(f rom SubSistemaFinanceiro)
Referências
•
•
•
•
•
Documento de Requisitos
Documento de Análise
Documento de Projeto
www.ensinar.org/projeto
www.cin.ufpe.br/~if718
Download

apresentacao