Labyrinth
Adelmario Douglas (adclj)
Lamberto Augusto (laon)
Millena Andrade
(maag)
Williams Azevedo (wtoa)
Agenda







Labyrinth
 Descrição
 Objetivos
Casos de Uso
 Visão Geral
Análise
 Diagrama de Classes
 Diagrama de Sequência
Arquitetura
Mapeamento Análise em Projeto
Diagrama com Cápsulas
Referências
Labyrinth - Descrição



Um jogo de labirinto onde o jogador deve
descobrir qual o caminho de saída do
labirinto
É dividido em fases. As fases seguintes terão
labirintos mais complexos
Efeitos sonoros para informar que o tempo
para sair do labirinto está acabando
Labyrinth – Objetivos




Antes de sair do labirinto, o jogador deve
pegar uma chave que permitirá sua saída
O jogador deverá chegar ao fim do labirinto
antes de acabar o tempo pré-determinado no
início da fase
Conforme o jogador vai passando de fase, os
labirintos vão ficando maiores e mais difíceis
Quantos mais rápido ele sair do labirinto,
mais pontos ele marcará
Casos de Uso
Casos de Uso – Visão Geral
Pontuação do Jogador
Perder Vida
Finalizar Jogo
Iniciar Jogo
Usuário
Movimentar Jogador
Mostrar Recordes
Adicionar Recorde
Sair do Sistema
Adicionar Recorde ao Ranking
Movimentar Jogador
Checar Movimento
<<include>>
Usuário
Movimentar Jogador
<<include>>
Receber Chamada
Chamada
Iniciar timer
<<include>>
Iniciar Timer
Perder Jogo
Adicionar Recorde
<<extend>>
<<include>>
<<include>>
Decremento de Tempo
Perder Vida
<<include>>
Adicionar Recorde ao Ranking
<<include>>
<<extend>>
Finalizar Jogo
Vencer Jogo
<<include>>
Pontuação do Jogador
Análise
Movimentar Jogador

Diagrama de Classes
1
GameScreen
1
Game
Movimentar Jogador

Diagrama de Sequência
Jogador : usuário
: GameScreen
: Game
keyPressed(int)
move(int, int)
colision(int, int)
boolean
[boolean] setX(int)
[boolean] setY(int)
moveSound(boolean)
[boolean] paint(Graphics)
Iniciar Timer

Diagrama de Classes
1..1
1
GameScreen
1
1..1
GameSettings
1
1
1
1
Counter
Game
Iniciar Timer

Diagrama de Sequência
: GameScreen
: Game
: Counter
: GameSettings
initializeTimer( )
Counter(GameScreen, Game)
run( )
decTimer( )
setTime(int)
paint(Graphics)
o método run()
é executado a
cada 1s.
Decrementar Tempo

Diagrama de Classes
1..1
1
GameScreen
1
1..1
GameSettings
1
1
1
1
Counter
Game
Decrementar Tempo

Diagrama de Seqüência
: Game
: Counter
decTimer( )
:
GameSettings
setTime(int)
setTime(int)
Counter irá
chamar
dectTimer() a
cada 1s até
que timer
chegue a 0
ou acabe a
fase.
paint(Graphics)
: GameScreen
Finalizar Jogo

Diagrama de Classes
1..1
GameScreen
1..1
GameSettings
Finalizar Jogo

Diagrama de Seqüência
Jogador : usuário
: GameScreen
:
GameSettings
commandAction(Command, Displayable)
endGame( )
write(Vector)
save( )
Adicionar Recorde

Diagrama de Classes
1..1
1..n
0..n
GameScreen
1
Game
Record
1
RecordCollection
Adicionar Record
gameScreen :
GameScreen
game : Game
Jogador : usuário
winGame( )
win game: boolean
[win game: boolean] winner()
getScore( )
score : int
getRecord( )
records : RecordRepository
getIniciais()
iniciais
Record(String, int)
addRecord(String, int)
record : Record
:
RecordCollection
Adicionar Recorde ao Ranking

Diagrama de Classes
Diagrama de Pacotes
Diagrama de Pacotes
Arquitetura
J2ME
Interface
MiDLet
Menu
Canvas
Telas
Jogo
Negócio
Lógica
Cadastro
de Recordes
Dados
Controle de
Configuração
Classes
Básicas
Repositório
de Recordes
Interface de Dados
Arquivo
Recordes
File
Configuração
Mapeamento Análise em
Projeto
Classes de Análise
Elementos de Projeto
Game
Counter
GameScreen
Game
Counter
GameScreen
LabyrinthMenu
RecordsScreen
LabyritnthMenu
RecordsScreen
Record
RecordCollection
Record
RecordRegistry
RecordRepository
GameSettings
GameSettings
Labyrinth
Labyrinth
File
FileInterface
SendRecordProtocol
Connection
GameProtocol
CounterProtocol
MenuSelectionProtocol
Diagrama com Cápsula
Referências

Labyrinth


adelmario.googlepages.com
Análise e Projeto de Sistemas

www.cin.ufpe.br/~if718
Dúvidas
Download

Labyrinth-Apresentação