Logomarca
Descrição do produto - SoftFail
SoftFail é um jogo que guia o jogador através de uma série de perguntas direcionadas acerca de um projeto que não deu certo e avaliar quais foram os pontos cruciais que tornaram a implementação do projeto um fracasso. A partir das respostas do usuário ao decorrer do jogo, uma análise será feita, de modo que ao final do jogo uma avaliação sobre o projeto possa ser inferida sobre os pontos inferidos.
A proposta é desenvolver um jogo cujo objetivo é identificar a partir de um caso de projeto fracassado que eventos ou falhas impediram seu sucesso. Este jogo a principio terá níveis de dificuldades diferentes, partindo de situações mais triviais para problemas mais complexos. Será composto de cinco fases e entre cada fase o jogador terá de responder um quiz que também impactará na sua pontuação final.
A cada fase será apresentado para o jogador um projeto, descrevendo seus objetivos, estratégias e como este se desenvolveu e terminou, sempre sem sucesso. O jogador partirá de uma encruzilhada(literalmente) e à partir daí terá um número finito de movimentos, podendo escolher ir por exemplo para “planejamento”, onde verá o que deu certo e errado quanto a aquilo que foi planejado, incluindo também informações que podem ter influenciado no resultado final do projeto ou não. O jogador poderia também se mover para “testes”, “comunicação”, “financeiro”, mas o jogador terá sempre um número de movimentos menores do que o de casas para visitar, sendo assim necessário que ele identifique essas casas de maior risco para priorizá-las e encontrar as pistas necessárias para descobrir o que levou o projeto ao fracasso. Quando não tiver mais movimentos será apresentado ao jogador algumas alternativas e ele terá de escolher qual melhor explica o fracasso do projeto.
Engine - Plataforma
O jogo será desenvolvido em HTML, CSS e Javascript, e compilado para a plataforma Android (.apk) através do framework Phonegap (http://phonegap.com/). A engine utilizada para o desenvolvimento do jogo será a Construct 2, que é fácil de utilizar, com interface drag n’ drop, e que gera código HTML5 e Javascript.
Métodos
Para o desenvolvimento do produto sera utilizado as metodologias de desenvolvimento Scrum e Kanban, adaptando ambas para a realidade da equipe de desenvolvimento.
Essas metodologias foram escolhidas em comum acordo entre a equipe, pois para o projeto em questão, que requer uma entrega incremental do produto, elas se adaptam com maior facilidade alem do fato da equipe já obter um certo conhecimento sobre as mesmas.
Foi decidido que o grupo fará reuniões uma vez por semana e que os integrantes do grupo se revezarão na comunicação com o cliente (a cada semana um integrante será responsável por postar no blog do trabalho prático). Foi decidido também que releases serão liberados em intervalos de aproximadamente duas semanas.
Gestão de configurações e controle de versões
Para controle de versão será utilizada a ferramenta Git, por diversas razões as principais são: Facilidade e conhecimento do grupo, suporte para desenvolvimento de tarefas em paralelo, garante a integridade dos arquivos armazenados com o cálculo do checksum dos mesmos. Como repositório utilizaremos o GitHub que é um serviço de Web Hosting para projetos que usam o Git.
Requisitos
Funcionais
- O jogo seguira uma história;
- O jogador respondera a perguntas que o ajudaram a descobrir o problema no software;
- O jogador poderá escolher 4 de 7 cenários para ajudá-lo a encontrar a solução;
- O jogador não poderá exceder os quatro cenários disponibilizados para ele;
- Entre um nível e outro o jogador devera responder algumas perguntas que contribuirá para sua pontuação final;
- Ao final do jogo, quando o jogador completar os movimentos, ele devera escolher entre algumas opções a principal causa da falha do projeto;
- Os níveis do jogo são dependentes, de modo que o jogador não avança para o nível seguinte sem antes completar o anterior.
Não-Funcionais
- O jogo deverá executar na plataforma Android.
- Deverá fazer uso das linguagens de programação HTML5, CSS e Javascript.
- Jogo será simples então não irá consumir muito processamento do dispositivo que o executa.
- Informações pessoais do usuário não são necessárias para o funcionamento do sistema.
- Uma ata de reunião deverá ser fornecida toda semana no blog.
Papeis
A divisão dos papeis foi baseada na metodologia adotada para o desenvolvimento do projeto, o Scrum, que e composto dos seguintes papeis, que serão desempenhados pelos seguintes membros:
PO - Product Owner: Responsável por fazer o intermédio do time de desenvolvimento com o cliente, ele tem que saber muito bem o escopo do produto,
Scrum Master: Responsável por tratar os impedimentos que podem vir a atrapalhar o time de desenvolvimento e fazer com que o time esteja sempre em sintonia.
Time de Desenvolvimento: envolve todos os outros papeis, programadores, testadores, etc
- PO: Diogo Rosa (Inicialmente)
- Scrum Master: Lucas Barsand
- Time de Desenvolvimento:
- Pedro Magalhães Fortini
- Pedro Henrique Moreira Caldeira
- Vítor Carvalho Fonseca
- Diego Henrique de Castro Aniceto
- Jeferson Moura
O que foi aprendido ate o momento
Com esse inicio de projeto o grupo pode compreender melhor alguns aspectos importantes relacionado a Engenharia de Software, por estar lidando diretamente com o planejamento de um projeto. Por exemplo, o levantamento de requisitos, funcionais e não-funcionais, escolha de uma metodologia de trabalho.
Também foi possível entrar mais a fundo na metodologia de desenvolvimento Scrum, conhecendo um pouco mais sobre seus princípios.
Alem do conhecimento relacionado a Engenharia de Software foi possível aprender também sobre as ferramentas que serão utilizadas no decorrer do projeto.
Nenhum comentário:
Postar um comentário