especificacao requisitos labyrinth

34
MESS Móbile Entertainment and Software Solutions Especificação dos Requisitos do Software Labyrinth Versão <1.0>

Upload: kennety

Post on 01-Feb-2016

235 views

Category:

Documents


0 download

DESCRIPTION

ojhasgçisuebgek fafodafudhlaifu

TRANSCRIPT

Page 1: Especificacao Requisitos Labyrinth

MESSMóbile Entertainment and Software Solutions

Especificação dos Requisitos do Software Labyrinth

Versão <1.0>

Page 2: Especificacao Requisitos Labyrinth

Labyrinth Versão 1.0Especificação de Requisitos Data da Versão: 16/05/2005

Aprovação

Aprovamos a especificação dos Requisitos, versão revisada 1.0, do projeto Labyrinth.

Lambero Augusto 12/05/2005

Millena de Andrade 12/05/2005

Onildo 12/05/2005

Pedro Lages 12/05/2005

Pedro Montenegro 12/05/2005

Williams Thiago 12/05/2005

MESS2

Page 3: Especificacao Requisitos Labyrinth

Labyrinth Versão 1.0Especificação de Requisitos Data da Versão: 16/05/2005

MESS3

Page 4: Especificacao Requisitos Labyrinth

Labyrinth Versão 1.0Especificação de Requisitos Data da Versão: 16/05/2005

Sumário

1 Introdução___________________________________________________________________51.1 Objetivos deste documento___________________________________________________________51.2 Escopo do Produto__________________________________________________________________5

1.2.1 Nome do produto e de seus componentes principais____________________________________51.2.2 Missão do Produto______________________________________________________________51.2.3 Limites do Produto______________________________________________________________51.2.4 Benefícios do Produto___________________________________________________________5

1.3 Referências_______________________________________________________________________51.4 Definições e Siglas_________________________________________________________________6

2 Descrição Geral do Produto_____________________________________________________72.1 Perspectiva do Produto______________________________________________________________7

2.1.1 Restrições de Memória___________________________________________________________72.1.2 Modos de Operação_____________________________________________________________72.1.3 Descrição dos Atores____________________________________________________________7

3 Requisitos Específicos__________________________________________________________83.1 Identificação dos Requisitos__________________________________________________________83.2 Prioridade dos Requisitos____________________________________________________________83.3 Estrutura dos Requisitos_____________________________________________________________83.4 Requisitos Funcionais______________________________________________________________10

3.4.1 Controle de Informações e Configuração____________________________________________103.4.1.1 [RF CIC 01] Jogar__________________________________________________________103.4.1.2 [RF CIC 02] Continuar Jogo__________________________________________________103.4.1.3 [RF CIC 03] Mostar Recordes_________________________________________________103.4.1.4 [RF CIC 04] Mostrar Informações_____________________________________________103.4.1.5 [RF CIC 05] Mostrar Instruções_______________________________________________113.4.1.6 [RF CIC 06] Mostrar Créditos_________________________________________________113.4.1.7 [RF CIC 07] Modificar Nível Inicial____________________________________________113.4.1.8 [RF CIC 08] Configurar Som_________________________________________________113.4.1.9 [RF CIC 09] Sair___________________________________________________________11

3.4.2 Controle do Jogo_______________________________________________________________123.4.2.1 [RF CJ 01] Inicializar Jogo/Fase_______________________________________________123.4.2.2 [RF CJ 02] Movimentar Jogador_______________________________________________123.4.2.3 [RF CJ 03] Som de Movimento_______________________________________________123.4.2.4 [RF CJ 04] Som de Momentos Finais__________________________________________123.4.2.5 [RF CJ 05] Timer__________________________________________________________123.4.2.6 [RF CJ 06] Vibrar__________________________________________________________133.4.2.8 [RF CJ 07] Finalizar Jogo____________________________________________________133.4.2.9 [RF CJ 08] Sair do Jogo_____________________________________________________133.4.2.10 [RF CJ 09] Adicionar Recorde_______________________________________________13

3.4.3 Diagrama de Casos de Uso_______________________________________________________143.4.3.1 Receber Chamada__________________________________________________________143.4.3.2 Diagrama de casos de uso Controle de Informações e Configurações__________________153.4.3.3 Diagrama de casos de uso Controle do Jogo______________________________________15

3.4.3.3.1 Movimentar Jogador_____________________________________________________153.4.3.2.2 Iniciar Timer___________________________________________________________16

3.4.4 Casos de Uso Controle de Informações e Configurações_______________________________163.4.4.1 [UC CIC 01] Carregar Configuração___________________________________________163.4.4.2 [UC CIC 02] Modificar Configuração__________________________________________173.4.4.3 [UC CIC 03] Iniciar Jogo____________________________________________________173.4.4.4 [UC CIC 04] Continuar Jogo_________________________________________________17

MESS4

Page 5: Especificacao Requisitos Labyrinth

Labyrinth Versão 1.0Especificação de Requisitos Data da Versão: 16/05/2005

3.4.4.5 [UC CIC 05] Sair do Sistema_________________________________________________183.4.4.6 [UC CIC 06] Definir Nível Inicial do Jogo______________________________________183.4.4.7 [UC CIC 07] Habilitar/Desabilitar som do Jogo_________________________________193.4.4.8 [UC CIC 08] Mostrar Informações_____________________________________________193.4.4.9 [UC CIC 09] Mostrar Recordes_______________________________________________19

3.4.5 Casos de Uso Controle do Jogo___________________________________________________203.4.5.1 [UC CJ 01] Movimentar Jogador______________________________________________203.4.5.2 [UC CJ 02] Checar Movimento_______________________________________________203.4.5.3 [UC CJ 03] Iniciar Timer____________________________________________________213.4.5.4 [UC CJ 04] Decremento de Tempo____________________________________________213.4.5.5 [UC CJ 05] Pontuação do Jogador_____________________________________________213.4.5.6 [UC CJ 06] Perder Vida_____________________________________________________223.4.5.7 [UC CJ 07] Finalizar Jogo___________________________________________________223.4.5.8 [UC CJ 08] Perder Jogo_____________________________________________________233.4.5.9 [UC CJ 09] Vencer Jogo_____________________________________________________233.4.5.10 [UC CJ 10] Vencer Fase____________________________________________________233.4.5.11 [UC CJ 11] Adicionar Recorde______________________________________________243.4.5.12 [UC CJ 12] Efeito Sonoros Durante Movimento_________________________________243.4.5.13 [UC CJ 13] Efeito Sonoros Nos Últimos 10s____________________________________243.4.5.14 [UC CJ 14] Vibrar Aparelho________________________________________________25

3.4.6 Casos de Uso Exceção__________________________________________________________253.4.6.1 [UC EX 01] Receber Chamada_______________________________________________25

3.5 Requisitos Não-Funcionais__________________________________________________________263.5.1 [RNF 01] Tempo de Resposta____________________________________________________263.5.2 [RNF 02] Interface Intuitiva______________________________________________________263.5.3 [RNF 03] Pouco Processamento___________________________________________________26

MESS5

Page 6: Especificacao Requisitos Labyrinth

Labyrinth Versão 1.0Especificação de Requisitos Data da Versão: 16/05/2005

1 Introdução

1.1 Objetivos deste documentoDescrever as necessidades e características de um jogo voltado para aparelhos

móveis, embasando assim o desenvolvimento do jogo Labyrinth, sendo a principal fonte de informações para as pessoas envolvidas no projeto desse sistema.

1.2 Escopo do Produto

1.2.1 Nome do produto e de seus componentes principais

Labyrinth:- Menu Informativo- Jogo- Records

3228 7154 suely

1.2.2 Missão do Produto

Desenvolver um jogo, para aparelhos móveis que possuam suporte para J2ME, interativo, divertido e emocionante, que exija do jogador habilidade, agilidade e raciocínio rápido, proporcionando ao jogador uma opção de divertimento em qualquer lugar que esteja.

1.2.3 Limites do Produto

- Funcionamento Garantido para aparelhos que possuam MIDP1.0.

1.2.4 Benefícios do Produto

Benefício ValorJogo divertido e emocionante EssencialTempo Limite ImportanteConfiguração de Sons EssencialElevada Resolução Gráfica DesejávelCriação de Ranking na web Desejável

1.3 ReferênciasTipo de Material Referência

Relatório Especificação de Requisitos do Software Automat.Relatório Especificação de Requisitos do Software ACADISRelatório Especificação de Requisitos do Plugin PlatformProject Notas Notas de Aula da disciplina Engenharia de Software e Sistema

MESS6

Page 7: Especificacao Requisitos Labyrinth

Labyrinth Versão 1.0Especificação de Requisitos Data da Versão: 16/05/2005

1.4 Definições e SiglasSigla Definição

Java Linguagem de programação desenvolvida pela Sun MicrosystemsJ2ME Java Micro Edition : Linguagem Java para sistemas de pequeno porte.MIDP Mobile Information Device Profile UML Linguagem de Modelagem Unificada (Unified Modeling Language)CLDC Connected Limited Device Configuration

MESS7

Page 8: Especificacao Requisitos Labyrinth

Labyrinth Versão 1.0Especificação de Requisitos Data da Versão: 16/05/2005

2 Descrição Geral do Produto

2.1 Perspectiva do Produto

O produto Labyrinth será descrito segundo contexto em que está inserido, no caso na tecnologia para aparelhos móveis.

2.1.1 Restrições de MemóriaLimites Aplicáveis

Por ser um aplicativo para celulares Nokia série 40, o jogo deve possuir um tamanho máximo de 64kb.

2.1.2 Modos de OperaçãoTipo de Operação Descrição da Operação Detalhes da Operação

InterativoControle de Informações e

Configurações

Modo de operação do Labyrinth, no qual estão relacionados os casos de uso referentes a informações do(s) jogo e

software, e a configuração de atributos especiais dos jogos.

Interativo Controle de JogoModo de operação do Labyrinth no

qual estão relacionados os casos de uso referentes à funcionalidade do jogo.

Não Interativo ExceçãoModo de operação do Labyrinth ao ser

interrompido por uma chamada.

2.1.3 Descrição dos AtoresAtor DefiniçãoJogador Pessoa que irá utilizar o jogo.Chamada Ligação recebida pelo usuário.

MESS8

Page 9: Especificacao Requisitos Labyrinth

Labyrinth Versão 1.0Especificação de Requisitos Data da Versão: 16/05/2005

3 Requisitos Específicos

3.1 Identificação dos Requisitos

Por convenção, a referência a requisitos é feita através do nome da subseção onde eles estão descritos; do identificador do subsistema e da numeração; de acordo com o esquema abaixo:

[ sigla da subseção | identificador do subsistema | numeração ]

A sigla da subseção pode ser RF (Requisito Funcional) e RNF (Não Funcional). Com relação à identificação do sistema, há três tipos de siglas CIC (Controle de Informações e Configurações), CJ (Controle de Jogo) e EX (Exceção).

A identificação dos casos de uso relacionados aos requisitos serão identificados de acordo com o esquema seguinte:

[ UC | identificador do subsistema | numeração ]

A sigla UC representa “User Case”. Com relação à identificação do sistema, será utilizada a mesma estrutura de siglas utilizadas nos requisitos.

3.2 Prioridade dos Requisitos

Prioridade Descrição

EssencialRequisito indispensável ao funcionamento do sistema. Os requisitos essenciais são requisitos imprescindível, sem o qual o sistema perderá a funcionalidade.

ImportanteRequisito Importante é o requisito sem o qual o sistema funcionará, mas insatisfatoriamente.

Desejável

Requisito desejável é o requisito que não compromete as funcionalidades básicas do sistema, podendo ser implementado em versões posteriores caso não haja tempo hábil para a implementação do mesmo na versão em que foi especificado.

3.3 Estrutura dos Requisitos

Prioridade: prioridade de implementação deste requisito.

Entradas: variáveis que serão passadas ao sistema.

MESS9

Page 10: Especificacao Requisitos Labyrinth

Labyrinth Versão 1.0Especificação de Requisitos Data da Versão: 16/05/2005

Pré-condições: condições que devem ser satisfeitas antes de o requisito ser executado.

Pós-condições: condições que devem ser satisfeitas depois de o requisito ser executado.

Fluxo Principal de Eventos: etapas que o sistema deve executar para a execução do requisito.

Fluxos Secundários de Eventos: etapas que o sistema deve executar caso algo no fluxo principal não ocorra como esperado

Saída Principal: saída que deve ser fornecida pelo sistema quando o requisito for corretamente executado.

MESS10

Page 11: Especificacao Requisitos Labyrinth

Labyrinth Versão 1.0Especificação de Requisitos Data da Versão: 16/05/2005

3.4 Requisitos Funcionais

3.4.1 Controle de Informações e Configuração

3.4.1.1 [RF CIC 01] Jogar

Prioridade: Essencial

O usuário deve estar no Menu Principal do Sistema terá a opção de iniciar um jogo com as configurações realizadas pelo jogador (com som habilitado ou não e nível de dificuldade inicial do jogo.). Ao ter a opção de Jogar (“Play”) selecionada, o sistema carregará a configuração e mostrará ao usuário a tela do jogo com o labirinto inicial, o tempo e a quantidade de vidas que ele possui.

3.4.1.2 [RF CIC 02] Continuar Jogo

Prioridade: Desejável

Ao abandonar o jogo, o usuário terá a opção de continuá-lo a partir do instante que parou. Para isto, o sistema irá armazenar no arquivo de configuração o estado do sistema/jogo no momento em que foi interrompido. Ao ter a opção continuar jogo (“Continue”) selecionado, o sistema irá carregar as configurações do antigo estado, mostrando ao jogador a tela em que o jogo foi interrompido, na mesma fase, com o mesmo tempo, e o avatar na posição.

3.4.1.3 [RF CIC 03] Mostar Recordes

Prioridade: Desejável

O sistema armazenará as cinco melhores pontuações obtidas no jogo em um arquivo de score. Para acessar esse arquivo, o usuário possuirá a opção “Records” no menu principal. Selecionando-a, o sistema irá ler o arquivo de pontuação e imprimirá na tela para que o usuário possa vê-lo.

3.4.1.4 [RF CIC 04] Mostrar Informações

Prioridade: Desejável

O usuário deve estar no menu principal e selecionar a opção “About”. Nela o sistema irá mostrar um texto com as informações do software.

MESS11

Page 12: Especificacao Requisitos Labyrinth

Labyrinth Versão 1.0Especificação de Requisitos Data da Versão: 16/05/2005

3.4.1.5 [RF CIC 05] Mostrar Instruções

Prioridade: Importante

O usuário deve estar no menu principal e selecionar a opção “Help”. Nela o sistema irá mostrar um texto com as instruções de como o usuário deve agir para jogar, como teclas de movimentação, de saída, de pause.

3.4.1.6 [RF CIC 06] Mostrar Créditos

Prioridade: Desejável

O usuário deve estar no menu principal e selecionar a opção “Credits”. Nela o sistema irá o nome da empresa e os desenvolvedores do jogo.

3.4.1.7 [RF CIC 07] Modificar Nível Inicial

Prioridade: Desejável

O usuário deve estar no menu principal e selecionar a opção “Level”. Nela o usuário poderá escolher o nível do jogo, podendo ele ser fácil, médio ou difícil. Selecionada a opção desejada o sistema irá armazená-la no arquivo de configurações, para ser utilizada no início do próximo jogo.

3.4.1.8 [RF CIC 08] Configurar Som

Prioridade: Importante

O usuário deve estar no menu principal e selecionar a opção “Sound”. Nela o usuário poderá habilitar ou desabilitar os efeitos sonoros do jogo. Selecionada a opção o sistema deverá modificar a configuração para atender a opção do usuário.

3.4.1.9 [RF CIC 09] Sair

Prioridade: Essencial

O usuário deve estar no menu principal e selecionar a opção “Exit”. O sistema irá salvar as configurações e finalizará o programa.

MESS12

Page 13: Especificacao Requisitos Labyrinth

Labyrinth Versão 1.0Especificação de Requisitos Data da Versão: 16/05/2005

3.4.2 Controle do Jogo

3.4.2.1 [RF CJ 01] Inicializar Jogo/Fase

Prioridade: Essencial

O sistema carrega a configuração de um novo jogo, configurações estas do arquivo de configuração (som, nível de dificuldade, quantidade de vidas e tempo para completar estágio) e do sistema (labirinto).

3.4.2.2 [RF CJ 02] Movimentar Jogador

Prioridade: Essencial

O usuário deve estar na tela do jogo inicializado. O usuário seleciona a(s) tecla(s) de movimentação. O sistema decodifica o código da(s) tecla(s) e movimenta o avatar na direção especificada pelo usuário, caso seja possível a movimentação (não haja obstáculo a frente ou o tempo ainda não acabou).

3.4.2.3 [RF CJ 03] Som de Movimento

Prioridade: Desejável

O usuário deve estar na tela do jogo inicializado e ter habilitado os efeitos sonoros do jogo. Ao movimentar o avatar na direção especificada pelo usuário, o sistema emite um som indicando movimento do personagem.

3.4.2.4 [RF CJ 04] Som de Momentos Finais

Prioridade: Desejável

O usuário deve estar na tela do jogo inicializado e ter habilitado os efeitos sonoros. Quando o contador de tempo encontra-se com valor menor ou igual a 10 (dez), o sistema emite um som de alerta contínuo, alertando o usuário que o tempo para finalização da etapa encontra-se no fim.

3.4.2.5 [RF CJ 05] Timer

Prioridade: Desejável

MESS13

Page 14: Especificacao Requisitos Labyrinth

Labyrinth Versão 1.0Especificação de Requisitos Data da Versão: 16/05/2005

O usuário deve estar na tela do jogo inicializado. O sistema inicializa o timer do jogo com o valor máximo que o usuário poderá ter para finalizar a etapa (desvendar o labirinto e chegar a sua saída). O temporizador é decrementado a cada segundo até chegar a 0 (zero), indicando que a fase (ou jogo) acabou e que o usuário perdeu (uma vida ou o jogo) ou ser interrompido pela finalização da fase/jogo.

3.4.2.6 [RF CJ 06] Vibrar

Prioridade: Desejável

O usuário deve estar na tela do jogo inicializado e o aparelho do usuário deverá ter uma bateria com vibracall que deve estar ativada. Quando o contador de tempo encontra-se com valor menor ou igual a 10 (dez), o sistema interage com a bateria do aparelho, fazendo-a vibrar, alertando o usuário que o tempo para finalização da etapa encontra-se no fim.

3.4.2.8 [RF CJ 07] Finalizar Jogo

Prioridade: Essencial

O usuário deve estar na tela do jogo inicializado. O jogo é finalizado em duas situações:

Usuário perde o jogo : ao perder suas vidas e não desvendar o labirinto. Usuário vence o jogo: desvenda os labirintos de todas as fases no tempo determinado.O sistema retorna a tela inicial (menu principal).

3.4.2.9 [RF CJ 08] Sair do Jogo

Prioridade: Essencial

O usuário deve estar na tela do jogo inicializado e ter selecionado a opção “exit”, abandonando o jogo. O sistema então, salva as configurações do jogo (fase, efeitos sonoros, labirinto, vidas, tempo, posição do jogador e pontuação do jogador) no arquivo de configuração. O sistema retorna a tela do menu principal.

3.4.2.10 [RF CJ 09] Adicionar Recorde

Prioridade: Desejável

O usuário deve ter finalizado um jogo, vencendo-o. O sistema verifica se a opção obtida é maior do que alguma das pontuações armazenadas no arquivo de recorde. Se isto ocorrer o sistema reescreve o arquivo adicionando a nova pontuação e as iniciais do jogador.

MESS14

Page 15: Especificacao Requisitos Labyrinth

Labyrinth Versão 1.0Especificação de Requisitos Data da Versão: 16/05/2005

3.4.3 Diagrama de Casos de Uso

3.4.3.1 Receber Chamada

Efeito Sonoro nos Ultimos 10s

Decremento de Tempo

Pontuação do Jogador

Vencer Jogo

Perder Vida

Vencer FaseAdicionar Recorde

Chamada

Receber Chamada

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

Movimentar Jogador

<<include>>

3.4.3.2 Diagrama de casos de uso Controle de Informações e Configurações

MESS

Movimentar Jogador

Perder Vida

Vencer Fase

Adicionar Recorde

Habilitar/Desabilitar som do Jogo

Iniciar Jogo

Mostrar Recordes

Definir Nível Inicial do Jogo

Sair do SistemaModificar ConfiguraçãoContinuar Jogo

Mostrar Informações

Pontuação do Jogador

Finalizar Jogo

Usuário

15

Page 16: Especificacao Requisitos Labyrinth

Labyrinth Versão 1.0Especificação de Requisitos Data da Versão: 16/05/2005

Carregar Configuração

Modificar Configuração

Iniciar Timer

Sair do Sistema

Mostrar Recordes

Mostrar Informações

Iniciar Jogo

<<include>>

Continuar Jogo

<<include>>

Habilitar/Desabilitar Som do Jogo<<include>>

Usuário

Definir Nível Inicial do Jogo

<<include>>

3.4.3.3 Diagrama de casos de uso Controle do Jogo3.4.3.3.1 Movimentar Jogador

Efeitos Sonoros Durante Movimento

Checar Movimento

Usuário Movimentar Jogador

<<include>>

<<include>>

ChamadaReceber Chamada

<<include>>

MESS16

Page 17: Especificacao Requisitos Labyrinth

Labyrinth Versão 1.0Especificação de Requisitos Data da Versão: 16/05/2005

3.4.3.2.2 Iniciar Timer

Efeito Sonoro nos Ultimos 10s

Decremento de Tempo

Vibrar Aparelho

Iniciar Timer

Pontuação do JogadorVencer Jogo

Perder VidaVencer Fase

Perder Jogo

Adicionar Recorde

Finalizar Jogo

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<extend>>

<<include>>

<<extend>>

3.4.4 Casos de Uso Controle de Informações e Configurações

3.4.4.1 [UC CIC 01] Carregar Configuração

Atores: Pré-condições: não se aplica.

Fluxo de eventos principal1 O sistema lê o arquivo de configuração.2 O sistema atualiza seu estado atual de acordo com o arquivo.

Fluxos secundários (alternativos e de exceção)Arquivo de Configuração

<int : 0 - sem opção continuar / 1 - com opção continuar>Sound : <on/off>Level : <1/2/3>Map : <"arquivo.png">Stage : <1/2/3>Position : <x> <y>Lives : <0..2>Time : <x>

MESS17

Page 18: Especificacao Requisitos Labyrinth

Labyrinth Versão 1.0Especificação de Requisitos Data da Versão: 16/05/2005

Score : <x>

Pós-condições: estado do sistema atualizado.

3.4.4.2 [UC CIC 02] Modificar Configuração

Atores: UsuárioPré-condições: estar em uma das opções do menu principal ou no jogo.

Fluxo de eventos principal1 O sistema atualiza seu estado atual.2 O sistema atualiza o arquivo com a nova configuração.

Pós-condições: arquivo de configuração atualizado.

3.4.4.3 [UC CIC 03] Iniciar Jogo

Atores: UsuárioPré-condições: o sistema deve se encontrar na tela do menu principal.

Fluxo de eventos principal1 Este caso de uso inicia quando o usuário escolhe a opção “Play” do menu principal do

sistema.2 O sistema carrega as configurações de um novo jogo:

a. Nível de Dificuldade, inicializado com o nível selecionado pelo usuário (caso de uso “Definir Nível Inicial do Jogo” [UC CIC 04] ), que pode ser:

i. Nível 1 : Inicianteii. Nível 2 : Intermediário

iii. Nível 3 : Avançadob. Labirinto

3 O jogo é iniciado.4 <<include>> “Iniciar Timer” [UC CJ 03]

Fluxos secundários (alternativos e de exceção)Saída Instantânea <<include>> Receber Chamada [ UC EX 01].

Pós-condições: tela com jogo iniciado.

3.4.4.4 [UC CIC 04] Continuar Jogo

Atores: Usuário.

MESS18

Page 19: Especificacao Requisitos Labyrinth

Labyrinth Versão 1.0Especificação de Requisitos Data da Versão: 16/05/2005

Pré-condições: o sistema deve se encontrar na tela do menu principal e ter um jogo não finalizado.

Fluxo de eventos principal1 Este caso de uso inicia quando o usuário escolhe a opção “Continue” do menu

principal do sistema.2 <<include>> Carregar Configuração [UC CIC 01].3 O sistema libera para que o usuário possa interagir com o jogo.

Fluxos secundários (alternativos e de exceção)Saída Instantânea <<include>> Receber Chamada [ UC EX 01].

Pós-condições: tela do jogo recomeçado.

3.4.4.5 [UC CIC 05] Sair do Sistema

Atores: Usuário.Pré-condições: o sistema deve se encontrar na tela do menu principal.

Fluxo de eventos principal1 Este caso de uso inicia quando o usuário escolhe a opção “Exit” do menu principal do

sistema.2 O sistema é finalizado.

Pós-condições: não se aplica.

3.4.4.6 [UC CIC 06] Definir Nível Inicial do Jogo

Atores: UsuárioPré-condições: o sistema deve se encontrar na tela do menu principal.

Fluxo de eventos principal1 Este caso de uso inicia quando o usuário escolhe a opção “Level” do menu principal do

sistema.2 O sistema mostra para o usuário os três níveis existentes:

a. Easy : Inicianteb. Normal : Intermediário c. Hard : Avançado

3 O usuário seleciona a opção desejada.4 <<include>> Modificar Configuração [UC CIC 02].

Fluxos secundários (alternativos e de exceção)

MESS19

Page 20: Especificacao Requisitos Labyrinth

Labyrinth Versão 1.0Especificação de Requisitos Data da Versão: 16/05/2005

Saída Instantânea <<include>> Receber Chamada [ UC EX 01].

Pós-condições: tela jogo iniciado.

3.4.4.7 [UC CIC 07] Habilitar/Desabilitar som do Jogo

Atores: Usuário.Pré-condições: o sistema deve se encontrar na tela do menu principal.

Fluxo de eventos principal1 Este caso de uso inicia quando o usuário escolhe a opção “Sound” do menu principal

do sistema.2 O usuário escolhe a opção “on” ou “off” que ativa ou desativa o efeito sonoro. 3 <<include>> Modificar Configuração [UC CIC 02].4 O sistema retorna ao menu principal do sistema.

Fluxos secundários (alternativos e de exceção)Saída Instantânea <<include>> Receber Chamada [ UC EX 01].

Pós-condições: retorna ao menu de acesso ao jogo.

3.4.4.8 [UC CIC 08] Mostrar Informações

Atores: Usuário.Pré-condições: o usuário ter selecionado uma das opções do menu principal: “Credits”, “About” ou “Help”.

Fluxo de eventos principal1 O sistema verifica a opção do menu principal que foi selecionada. 2 O sistema mostra uma tela com informações relacionadas com a opção selecionada.3 Após o usuário selecionar a opção “ok”, o sistema volta ao menu principal.

Fluxos secundários (alternativos e de exceção)Saída Instantânea <<include>> Receber Chamada [ UC EX 01].

Pós-condições: retorna ao menu de acesso ao jogo.

3.4.4.9 [UC CIC 09] Mostrar Recordes

Atores: Usuário.

MESS20

Page 21: Especificacao Requisitos Labyrinth

Labyrinth Versão 1.0Especificação de Requisitos Data da Versão: 16/05/2005

Pré-condições: o usuário ter selecionado a opção “Ranking” do menu principal.

Fluxo de eventos principal1 O sistema lê o arquivo de recordes.2 O sistema exibe na tela os recordes.3 Após o usuário selecionar a opção “ok”, o sistema volta ao menu principal.

Fluxos secundários (alternativos e de exceção)Saída Instantânea <<include>> Receber Chamada [ UC EX 01].

Pós-condições: retorna ao menu de acesso ao jogo.

3.4.5 Casos de Uso Controle do Jogo

3.4.5.1 [UC CJ 01] Movimentar Jogador

Atores: UsuárioPré-condições: O jogo deve se encontrar inicializado.Entradas: Teclas 2, 4, 6 ou 8 do celular.

Fluxo de eventos principal1 O usuário clica em qualquer das teclas 2, 4, 6 ou 8.2 <<include>> Checar Movimento [UC CJ 02] .3 Se o movimento não for válido, o jogador permanece na mesma posição.4 Se o movimento for válido:

<<include>> Efeito Sonoros Durante Movimento [UC CJ 12]a. Se a tecla escolhida for a 2, o jogador se movimentará para cima.b. Se a tecla escolhida for a 4, o jogador se movimentará para esquerda.c. Se a tecla escolhida for a 6, o jogador se movimentará para direita.d. Se a tecla escolhida for a 8, o jogador se movimentará para baixo.

Fluxos secundários (alternativos e de exceção)Saída Instantânea <<include>> Receber Chamada [ UC EX 01].

Pós-condições: jogador na nova posição.

3.4.5.2 [UC CJ 02] Checar Movimento

Entrada : direção do movimento.Pré-condições: o usuário realizou movimento

MESS21

Page 22: Especificacao Requisitos Labyrinth

Labyrinth Versão 1.0Especificação de Requisitos Data da Versão: 16/05/2005

Fluxo de eventos principal1 O sistema verifica se a próxima posição, levando em consideração a direção do

movimento, é válida (não possui obstáculos).2 O sistema retorna a permissão para o movimento.

Pós-condições: não se aplica.

Saída: permissão para o movimento.

3.4.5.3 [UC CJ 03] Iniciar Timer

Pré-condições: o jogo deve estar em andamento.

Fluxo de eventos principal1 O timer do jogo é inicializado com o valor pré-estabelecido pelo usuário (caso de uso

“Definir Nível Inicial do Jogo” [UC CIC 04]).2 <<include>> Decremento de Tempo [UC CJ 03].

Pós-condições: não se aplica.

3.4.5.4 [UC CJ 04] Decremento de Tempo

Pré-condições: o jogo deve estar em andamento.

Fluxo de eventos principal1 <<include>> “Vencer Fase” [UC CJ 10]2 O sistema espera 1s.3 O timer decresce em 1.4 Se o timer for igual a 10, <<include>> “Efeitos Sonoros nos Últimos 10s” [UC CJ 13]

Fluxos secundários (alternativos e de exceção)A partida não terminouSe o timer ainda não chegou a 0, o caso de uso reinicia.O tempo se esgotouO timer chegou a 0. <<include>> “Perder Vida” [UC CJ 06]Saída Instantânea <<include>> Receber Chamada [ UC EX 01].

Pós-condições: não se aplica.

3.4.5.5 [UC CJ 05] Pontuação do Jogador

Atores: Usuário.

MESS22

Page 23: Especificacao Requisitos Labyrinth

Labyrinth Versão 1.0Especificação de Requisitos Data da Versão: 16/05/2005

Pré-condições: o jogador ter passado por pelo menos uma fase do jogo.

Fluxo de eventos principal1 Este caso de uso inicia quando o usuário conclui uma fase do jogo antes de acabar o

tempo limite.2 O tempo restante será multiplicado por um fator que dependerá do nível de dificuldade

em que o usuário se encontra e somado à antiga pontuação do mesmo. 3 O sistema calcula a nova pontuação.4 O sistema atualiza a tela com a nova pontuação do usuário.

Fluxos secundários (alternativos e de exceção)Saída Instantânea <<include>> Receber Chamada [ UC EX 01].

Pós-condições: Inicia-se uma nova fase.

3.4.5.6 [UC CJ 06] Perder Vida

Atores: Usuário.Pré-condições: ter acabado o tempo limite de uma fase.

Fluxo de eventos principal1 É decrementado o número de vidas do jogador.2 O sistema atualiza a tela com o novo número de vidas do usuário.

Fluxos secundários (alternativos e de exceção)Fim de jogo

Quando o jogador perde com 0 vidas. <<include>> “Finalizar Jogo” [UC CJ 07]Saída Instantânea <<include>> Receber Chamada [ UC EX 01].

Pós-condições: Retorna-se ao menu de acesso ao jogo.

3.4.5.7 [UC CJ 07] Finalizar Jogo

Atores: Usuário.Pré-condições: ter um jogo em andamento.

Fluxo de eventos principal1 O usuário seleciona a opção de sair do jogo.2 <<include>> Modificar Configuração [UC CIC 02].3 O sistema retorna a tela do menu principal.

Fluxos secundários (alternativos e de exceção)

MESS23

Page 24: Especificacao Requisitos Labyrinth

Labyrinth Versão 1.0Especificação de Requisitos Data da Versão: 16/05/2005

Pós-condições: ir para o menu principal do jogo.

3.4.5.8 [UC CJ 08] Perder Jogo

Pré-condições: ter um jogo em andamento.

Fluxo de eventos principal1 <<extends>> Finalizar Jogo [UC CJ 07]2 O sistema mostra uma tela que informa que o jogador foi derrotado .3 <<include>> Pontuação do Jogador [UC CJ 05].4 O sistema compara a pontuação obtida com as pontuações do arquivo de recorde.5 Se a pontuação for maior que algum dos recordes,<<include>> Adicionar Recorde

[UC CJ 11].

Fluxos secundários (alternativos e de exceção)Pós-condições: Ir para o menu principal do jogo.

3.4.5.9 [UC CJ 09] Vencer Jogo

Pré-condições: ter um jogo em andamento na última fase.

Fluxo de eventos principal1 <<extends>> Finalizar Jogo [UC CJ 07]2 Uma tela proclamando a vitória do jogador será mostrada .O sistema compara a pontuação

obtida com as pontuações do arquivo de recorde.3 Se a pontuação for maior que algum dos recordes,<<include>> Adicionar Recorde

[UC CJ 11].4 O sistema mostra uma tela com os créditos do jogo.

Fluxos secundários (alternativos e de exceção)Saída Instantânea <<include>> Receber Chamada [ UC EX 01].

Pós-condições: Ir para o menu principal do jogo.

3.4.5.10 [UC CJ 10] Vencer Fase

Atores: Usuário.Pré-condições: ter um jogo em andamento.

Fluxo de eventos principal1 <<include>> Pontuação do Jogador [UC CJ 05].2 Se o labirinto da fase foi desvendado:

MESS24

Page 25: Especificacao Requisitos Labyrinth

Labyrinth Versão 1.0Especificação de Requisitos Data da Versão: 16/05/2005

a. Se a fase for a última <<include>> “Finalizar Jogo” [UC CJ 07]b. Senão, o sistema avança uma fase

Fluxos secundários (alternativos e de exceção)Saída Instantânea <<include>> Receber Chamada [ UC EX 01].

Pós-condições: próxima fase.

3.4.5.11 [UC CJ 11] Adicionar Recorde

Atores: Usuário.Pré-condições: jogo vencido e jogador obteve pontuação necessária.

Fluxo de eventos principal1 O sistema mostra para o usuário uma tela com um campo alfanumérico de três digitos.2 O usuário digita suas inicias.3 O usuário seleciona a opção “ok”4 O sistema atualiza o arquivo de recordes, rearranjando as posições.

Fluxos secundários (alternativos e de exceção)Saída Instantânea <<include>> Receber Chamada [ UC EX 01].

Pós-condições: Ir para o menu principal do jogo.

3.4.5.12 [UC CJ 12] Efeito Sonoros Durante Movimento

Pré-condições: o som deve estar habilitado.

Fluxo de eventos principal1 O sistema emite um apito correspondente ao movimento do avatar.

Pós-condições: não se aplica.

3.4.5.13 [UC CJ 13] Efeito Sonoros Nos Últimos 10s

Pré-condições: o som deve estar habilitado; o timer deve estar nos 10 segundos finais da partida.

Fluxo de eventos principal1 <<include>> Vibrar Aparelho [UC CJ 14].2 O sistema apita por um breve intervalo de tempo.3 O sistema pára de apitar por um breve intervalo de tempo.

Fluxos secundários (alternativos e de exceção)

MESS25

Page 26: Especificacao Requisitos Labyrinth

Labyrinth Versão 1.0Especificação de Requisitos Data da Versão: 16/05/2005

A partida não terminouO caso de uso reinicia.O jogador venceu a fase 1 O sistema pára de apitar.O timer chegou a 0

1 O sistema pára de apitar.Saída Instantânea <<include>> Receber Chamada [ UC EX 01].

Pós-condições: não se aplica.

3.4.5.14 [UC CJ 14] Vibrar Aparelho

Pré-condições: não se aplica.

Fluxo de eventos principal1 O sistema vibra.

Pós-condições: não se aplica.

3.4.6 Casos de Uso Exceção

3.4.6.1 [UC EX 01] Receber Chamada

Atores: Chamada.Pré-condições: não se aplica.

Fluxo de eventos principal1 Este caso de uso inicia quando o sistema é interrompido por uma chamada recebida.2 Se estiver com um jogo em andamento, o sistema entra em estado de espera e após concluída a

chamada, o sistema retorna ao menu principal, onde o usuário terá a opção de continuar o jogo. 3 Estando no menu principal, o sistema entra em estado de espera e após concluída a chamada,

continua no mesmo menu.

Pós-condições: não se aplica.

MESS26

Page 27: Especificacao Requisitos Labyrinth

Labyrinth Versão 1.0Especificação de Requisitos Data da Versão: 16/05/2005

3.5 Requisitos Não-Funcionais

3.5.1 [RNF 01] Tempo de Resposta

Prioridade: Importante

O usuário não deve esperar mais de 2(dois) segundos, em média, para visualizar a nova posição do cursor no menu ou do jogador no labirinto.

3.5.2 [RNF 02] Interface Intuitiva

Prioridade: Importante

A interface deve fornecer ao usuário que não utiliza o software constantemente uma navegação que possa se dar de forma intuitiva, oferecendo ao mesmo a possibilidade de usufruir de suas disponibilidades principais.

3.5.3 [RNF 03] Pouco Processamento

Prioridade: Essencial

O sistema não deve exigir um grande processamento por se tratar de uma aplicação para telefones móveis que não possuem bons processadores nem muito memória, em geral.

MESS27