Projetar e desenvolver um aplicativo de jogo
para ensinar conceitos de Engenharia de Software.
O aplicativo deve ser desenvolvido para os dispositivos móveis
(smartphones e/ou tablets). Cabe ao grupo escolher para qual plataforma:
Android, iOS, Windows Phone, BlackBerry, Symbian, Firefox OS... Ou uma combinação
deles, exemplo: Android + iOS, Android + iOS + Windows Phone, ou para todas as
plataformas disponíveis. Dica Importante:
Escolha
a plataforma que vocês têm familiaridades com as respectivas tecnologias para o
desenvolvimento do aplicativo jogo (Android/Java, iOS/objective-C,
WindowsPhone/C#, tecnologias Web para multiplataforma( HTML5, CSS, JavaScripts)...
Observações:
- Caso o grupo não tenha celulares e/ou tablets para uso poderão fazer um aplicativo web, mas isso deve ser negociado com a monitora.
- Pode usar arcabouço (framework) para o desenvolvimento do aplicativo, mas o grupo deve escolher um em comum acordo com a monitora.
Defina um público alvo para o seu jogo, inclusive para quais
dispositivos poderão ser aplicado (só para smartphones? Só para tablets? Para
ambos? Para quais modelos?).
Propostas equivalentes a esse TP foram aplicadas nos seguintes semestres anteriores:
- 2º semestre de 2013, com o professor Sérgio Crespo - acesse o blog
- 1º semestre de 2014, com a monitora Luciana Lourdes - acesse o blog
Nos blogs estão todos os TPs propostos e desenvolvidos pelos alunos de
cada semestre. Vocês podem consultar os trabalhos anteriores apenas como guia,
tanto a idéia do projeto quanto às atas de reuniões. No entanto, as
propostas de jogos devem ser
diferentes dos trabalhos anteriores, ou no tema ou na tecnologia empregada.
Por exemplo: um grupo de um dos semestres passados escolheu o tema CMMI e
usaram flash/actionscript. Assim, se alguém quiser escolher este tema não pode
usar a mesma tecnologia flash/actionscript.
Temas:
Requisitos, Scrum, XP, Projetos, CMMI, MPS.BR, PMBOK
Importante:
O TP e as aulas teóricas são independentes. Enquanto
as aulas teóricas seguem certa seqüência o grupo deverá trabalhar desde agora
com vários aspectos que não estão presentes nas aulas teóricas ou que serão
tratados apenas no final do semestre.
Objetivo:
Consiste na contratação do grupo como time de
desenvolvimento de um jogo.
O cliente do jogo é a monitora Kattiana Constantino (kattiana@gmail.com). O jogo deve ter como objetivo ensinar conceitos de Engenharia de Software.
O cliente do jogo é a monitora Kattiana Constantino (kattiana@gmail.com). O jogo deve ter como objetivo ensinar conceitos de Engenharia de Software.
O desenvolvimento deverá ser do tipo interativo incremental, entregas freqüentes, controle de versão, dirigido por testes, o grupo deve investir na maturidade do processo.
Avaliação do trabalho
O trabalho será avaliado com base na aderência a um processo
e na justificativa das tomadas de decisões. Esta parte da avaliação equivale a
60% do total.
O jogo
desenvolvido será também avaliado entre os alunos que deverão ordenar os
resultados dos grupos - 40%.
Toda a
evidencia de aderência ao processo deve estar postado no BLOG da turma e
justificada e todos os objetos entregáveis que o processo exige.
O grupo também será avaliado em termos de conseguir se organizar para
trabalhar de maneira contínua e não um esforço de algumas horas ou dia antes de
um ponto de verificação. Uma das maneiras de verificação será em função das
publicações no blog.
Artigos e outras diretrizes
O artigo SBGames 2012, publicado no blog do professor Sérgio, dá a idéia de
uma metodologia para o desenvolvimento de
jogos.
Além disso,
no link contém
uma relação de engine de jogos. Os grupos devem planejar o roteiro do jogo,
selecionar a engine mais adequada e justificar a decisão.
O estilo do
jogo fica a critério do grupo, por exemplo: Jogos de plataforma, corrida, luta,
esporte, simulação, musical, estratégia, aventura, Tabuleiro, ação,
Quebra-cabeça, etc.
Cada grupo
deve ser o usuário do experimento de outro grupo, de forma a testar o
aprendizado dos conceitos.
Os grupos
devem promover seminários de 20 minutos, informando o desenvolvimento do
projeto, as decisões tomadas, as dificuldades encontradas, o cronograma e os avanços
obtidos referente à apresentação anterior. As datas de apresentação estão
postadas na página do professor Rodolfo Resende.