SigA Sistema Gestor de Alunos Aline Timóteo Denise Narciso Flávia Falcão Nara Falcão...
-
Upload
luis-rico-alves -
Category
Documents
-
view
212 -
download
0
Transcript of SigA Sistema Gestor de Alunos Aline Timóteo Denise Narciso Flávia Falcão Nara Falcão...
SigASistema Gestor de Alunos
Aline TimóteoDenise Narciso
Flávia FalcãoNara FalcãoUniversidade Federal de Pernambuco
Centro de Informática 01/03/2005
Índice
• Descrição do Sistema• Consultar Inadimplentes
– Projeção das CápsulasDiagramas de estadosEstrutura das Cápsulas
• Consultar Alunos por Disciplina– Projeção do Caso de uso
• Subsistema Visão– Projeção do Subsistema
Descrição do Sistema (1)
• O SigA tem como objetivo principal fornecer informações sobre o rendimento escolar dos alunos da Universidade.
• A instituição de ensino poderá oferecer um acompanhamento mais direcionado aos alunos.
• Gestor de Alunos
Descrição do Sistema (2)
Consultar InadimplentesProjeção das Cápsulas
Consultar Inadimplentes
• Este caso de uso permite que o usuário pesquise os inadimplentes nas diversas filiais da instituição de ensino que utilizam o sistema SIGA.
Diagrama de CápsulasTelaInform acao
consultarInadim plentes()
+ / portaFachada : ProtocoloInform acao~+ / portaU suario : ProtocoloU suario
<<Capsule>>
Fachada
detalharAlunos()fazerInferencia()pesquisarAlunos()
+ / portaTelaInform acao : ProtocoloInform acao+ / portaControladorInform acao : ProtocoloInform acao~
<<Capsule>>
ControladorInform acao
consultarInadim plentes()construirVisao()
+ / portaCom unicacaoFilial : ProtocoloInform acao~+ / portaFachada : ProtocoloInform acao
<<Capsule>>
Com unicacaoFilial
listaInadim plentes : String
+ / portaControladorInform acao : ProtocoloInform acao+ / portaCom unicacaoFilialA : ProtocoloInform acao~+ / portaCom unicacaoFilialB : ProtocoloInform acao~
<<Capsule>>
ProtocoloInform acao
solicitacaoInform acao ()
<<Protocol>>
Com unicacaoFilialA
+ / portaCom unicacaoFilial : ProtocoloInform acao+ / relogio : Tim ing
<<Capsule>>
Com unicacaoFilialB
+ / portaCom unicacaoFilial : ProtocoloInform acao+ / relogio : Tim ing
<<Capsule>>
M ain<<Capsule>>
U suario
+ / portaTela : ProtocoloU suario~+ / relogio : Tim ing
<<Capsule>>ProtocoloU suario
solicitarInadim plente ()
<<Protocol>>
+ / portaTela~
<<Port>>
+ / portaTela~
<<Port>>
+ / portaU suario
<<Port>>
+ / portaU suario
<<Port>>
+ / portaTelaInform acao
<<Port>>
+ / portaTelaInform acao
<<Port>>
+ / portaFachada~ <<Port>>+ / portaFachada~ <<Port>>
+ / portaCom unicacaoFilial~
<<Port>>
+ / portaCom unicacaoFilial~
<<Port>>
+ / portaControladorInform acao
<<Port>>
+ / portaControladorInform acao
<<Port>>
+ / portaControladorInform acao~<<Port>>
+ / portaControladorInform acao~<<Port>>
+ / portaCom unicacaoFilial
<<Port>>
+ / portaCom unicacaoFilial
<<Port>>
+ / portaCom unicacaoFilial<<Port>>
+ / portaCom unicacaoFilial<<Port>>
+ / portaCom unicacaoFilialA~
<<Port>>
+ / portaCom unicacaoFilialA~
<<Port>>
+ / portaCom unicacaoFilialB~
<<Port>>
+ / portaCom unicacaoFilialB~
<<Port>>
+ / portaFachada<<Port>>
+ / portaFachada<<Port>>
Diagrama de Estados das Cápsulas (1)
• Usuário
EsperandoSolicitacao
Initial
acaoU suario
Initial
acaoU suario
U suario
+ / portaTela : ProtocoloU suario~+ / relogio : Tim ing
<<Capsule>>
Diagrama de Estados das Cápsulas (2)
• TelaInformacao
EsperandoSolicitacao
EsperandoD ados
Initial
recebeuSolicitacaorecebeuD ados
Initial
recebeuSolicitacaorecebeuD ados
Diagrama de Estados das Cápsulas (3)
• Fachada
EsperandoSolicitacao
EsperandoD ados
Initial
recebeuSolicitacaorecebeuD ados
Initial
recebeuSolicitacaorecebeuD ados
Fachada
detalharAlunos()fazerInferencia()pesquisarAlunos()
+ / portaTelaInform acao : ProtocoloInform acao+ / portaControladorInform acao : ProtocoloInform acao~
<<Capsule>>
Diagrama de Estados das Cápsulas (4)
• ControladorInformacao
EsperandoSolicitacao
EsperandoD ados
Initial
recebeuSolicitacaorecebeuD ados
Initial
recebeuSolicitacaorecebeuD ados
Diagrama de Estados das Cápsulas (5)
• ComunicacaoFilial
esperandoSolcitacao
esperandoD adosFiliais
esperandoB esperandoA
Initial
recebeuSolicitacao
recebeuD adosBrecebeuD adosA
recebeuD adosA
recebeuD adosB
Initial
recebeuSolicitacao
recebeuD adosBrecebeuD adosA
recebeuD adosA
recebeuD adosB
Diagrama de Estados das Cápsulas (6)
• ComunicacaoFilialA
EsperandoCom unicacao
EsperandoD ados
Initial
fecharCom unicacao
aguardarD ados
abrirCom unicacao
Initial
fecharCom unicacao
aguardarD ados
abrirCom unicacao
Diagrama de Estados das Cápsulas (7)
• ComunicacaoFilialB
EsperandoCom unicacao
EsperandoD ados
encerrarCom unicacao
aguardandoD ados
abrirCom unicacao
Initial
encerrarCom unicacao
aguardandoD ados
abrirCom unicacao
Initial
Estrutura das Cápsulas
/ com unicacaoFilialAR 1 : Com unicacaoFilialA
/ com unicacaoFilialBR 1 : Com unicacaoFilialB
/ com unicacaoFilialR 1 : Com unicacaoFilial
/ controladorInform acaoR 1 : ControladorInform acao / fachadaR 1 : Fachada
/ telaInform acaoR 1 : TelaInform acao
/ usuarioR 1 : U suario
+ / portaCom unicacaoFilial : ProtocoloInform acao
+ / relogio : Tim ing
+ / portaCom unicacaoFilial : ProtocoloInform acao
+ / relogio : Tim ing
+ / portaControladorInform acao : ProtocoloInform acao
+ / portaCom unicacaoFilialA : ProtocoloInform acao~
+ / portaCom unicacaoFilialB : ProtocoloInform acao~
+ / portaCom unicacaoFilial : ProtocoloInform acao~
+ / portaFachada : ProtocoloInform acao
+ / portaTelaInform acao : ProtocoloInform acao
+ / portaControladorInform acao : ProtocoloInform acao~
+ / portaFachada : ProtocoloInform acao~
+ / portaU suario : ProtocoloU suario
+ / portaTela : ProtocoloU suario~
+ / relogio : Tim ing
/ com unicacaoFilialAR 1 : Com unicacaoFilialA
+ / portaCom unicacaoFilial : ProtocoloInform acao
+ / relogio : Tim ing
/ com unicacaoFilialBR 1 : Com unicacaoFilialB
+ / portaCom unicacaoFilial : ProtocoloInform acao
+ / relogio : Tim ing
/ com unicacaoFilialR 1 : Com unicacaoFilial
+ / portaControladorInform acao : ProtocoloInform acao
+ / portaCom unicacaoFilialA : ProtocoloInform acao~
+ / portaCom unicacaoFilialB : ProtocoloInform acao~
/ controladorInform acaoR 1 : ControladorInform acao
+ / portaCom unicacaoFilial : ProtocoloInform acao~
+ / portaFachada : ProtocoloInform acao
/ fachadaR 1 : Fachada
+ / portaTelaInform acao : ProtocoloInform acao
+ / portaControladorInform acao : ProtocoloInform acao~
/ telaInform acaoR 1 : TelaInform acao+ / portaFachada
: ProtocoloInform acao~
+ / portaU suario : ProtocoloU suario / usuarioR 1 : U suario
+ / portaTela : ProtocoloU suario~
+ / relogio : Tim ing
Consultar Alunos por Disciplina
Projeção do Caso de Uso
Consultar Alunos por Disciplina (1)
• Este caso de uso permite listar os alunos que estão cursando ou cursaram uma disciplina
• Permite exibir detalhe dos alunos listados
Consultar Alunos por Disciplina (2)
Usuario : usuario TelaPesquisa Fachada ControladorGeral CadastroDisciplina
IRepositorioDisciplina RepositorioDisciplina CadastroHistorico IRepositorioHistorico RepositorioHistorico
ISubsistemaVisãoPeriodo
1: PesquisarAluno(IdDisciplina, situacaoAluno, criterio)
2: PesquisarAluno(IdDisciplina, situacaoAluno, criterio) 3: efetuarPesquisa(IdDisciplina, situacaoAluno, criterio)4: existe=procurarDisciplina(IdDisciplina)
5: procurarDisciplina(IdDisciplina) 6: existe=procurarDisciplina(IdDisciplina)
7: dados=[existe=true]procurarAluno(existe=procurarDisciplina(IdDisciplina), situacaoAluno, criterio)8: pesquisarAlunoDisciplina(idDisciplina, siatuacaoAluno, criterio)
9: dados=pesquisarAlunoDisciplina(idDisciplina, siatuacaoAluno, criterio)
11: criarVisao(dados)
10: detalharAluno(CodigoAluno)
12: detalharAluno(CodigoAluno) 13: detalharAluno(CodigoAluno)14: dados=historicoAluno(codigoAluno) 15: historicoAluno(codigoAluno)
16: dados=historicoAluno(codigoAluno)
18: criarVisao(dados)
17: dados=historicoAluno(codigoAluno)
Consultar Alunos por Disciplina (3)
RepositorioHistorico
pesquisarAlunoDisciplina(idDisciplina, situacaoAluno, criterio)()historicoAluno(codigoAluno)()
RepositorioDisciplina
procurarDisciplina(codigoDisciplina)()
IRepositorioDisciplina
procurarDisciplina(codigoDisciplina)()Aluno
codigoAlunocpfnomematricula
DisciplinacodigoDisciplinacargaHorariacreditosdificuldadedescricao
Periodonotasperiodo
Historico
IRepositorioHistorico
pesquisarAlunoDisciplina(idDisciplina, situacaoAluno, criterio)()historicoAluno(codigoAluno)()
TelaPesquisa
pesquisaAluno(idDisciplina, situacaoAluno, criterio)()detalharAluno(codigoAluno)()
CadastroHistorico
pesquisarAlunoDisciplina(idDisciplina, situacaoAluno, criterio)()historicoAluno(codigoAluno)()
cadastroDisciplina
procurarDisciplina(codigoDisciplina)()
ISubsistemaVisao
ControladroGeral
procurarDisciplina(codigoDisciplina)()procurarAlunoDisciplina(idDisciplina, situacaoAluno, criterio)()historicoAluno(codigoAluno)()criarVisão()()
Fachada
efetuarPesquisa(idDisciplina, situacaoAluno, criterio)()detalharAluno(codigoAluno)()
Subsistema VisãoProjeção do Subsistema
Subsistema Visão (1)
• Subsistema Interno• Coloca os dados que devem ser
exibidos ao usuário nos formatos disponíveis– Relatório– Gráfico– Tabela
Subsistema Visão (2)
• Diagrama de seqüência para o fluxo principal.
siga : user
FachadaVisao ControladorVisao
Relatorio
visao = criarVisao(Object)
visao = criarVisao(Object)
montaRelatorio(Object)
Subsistema Visão (3)
• Diagrama de seqüência para o fluxo secundário.
siga : user
FachadaVisao ControladorVisao
Grafico Tabela ISubsistemaAuxiliar : ISubsistema
mudarVisao(tipo, Object)visao = mudarVisao(tipo, Object)
[tipo=1]visao = montarGrafico(Object)
[tipo=2]visao = montarTabela(Object)
visao=montaGrafico(Object)
visao=montaTabela(Object)
Subsistema Visão (4)• Diagrama de Classes
Grafico
montaGrafico(object)()
Tabela
montaTabela(object)()
Relatorio
montaRelatorio(object)()
ISubsistemaAuxiliar
ISubsistemaVisao
Fachada Visao
criarVisao(object)()mudarVisao(object, tipo)()
Visao
montaVisao(object, tipo)()
ControladorVisao
criarVisao(object)()mudarVisao(object, tipo)()
SubsistemaAuxiliar<<subsystem>>
Subsistema Visão (5)• Dependência de Pacotes
SubsistemaVisao
SubsistemaAuxiliarControladores
Referências• Tutorial sobre UML -
http://www.umlnapratica.com.br/• Software Engineering – Ian
Sommerville• Disciplina de Analise e Projeto de
Sistema www.cin.ufpe.br/~if718