Una Metodologia para Desarrollo de Video
Una Metodologia para Desarrollo de Video
Una Metodologia para Desarrollo de Video
2009
Acerenza, Nicolás; Coppes, Ariel; Viera, Alejandro; Fernández, Eduardo; Laurenzo, Tomás; Vallespir, Diego.
Una metodología para desarrollo de videojuegos: versión extendida
ISSN 0797-6410
Reporte Técnico RT 09-13
PEDECIBA
Instituto de Computación – Facultad de Ingeniería
Universidad de la República
1 Introducción
2.1 Scrum
idad, ya que, les permite financiar sus propios proyectos de forma paralela o a
futuro.
Cuando la propia empresa financia el proyecto, se cuenta con mayor flex-
ibilidad a la hora de decidir las caracterı́sticas y los plazos. Esta flexibilidad
tiene como ventaja un mayor tiempo para crear elementos divertidos que hagan
atractivo al juego, pero en contrapartida suponen el riesgo de invertir demasiado
tiempo en busca de la perfección. La verificación funcional externa es menos for-
mal ya que solamente se distribuye el videojuego entre conocidos, además existe
la posibilidad de negociar con más de un distribuidor. Esta modalidad permite
a la empresa obtener mayores ingresos pero supone cargar con los riesgos de la
inversión.
Las metodologı́as utilizadas para el desarrollo de videojuegos siguen prin-
cipios ágiles por ser iterativas e incrementales, tener interacción frecuente con
el cliente y ser flexibles ante los requerimientos cambiantes. Otra caracterı́stica
es que las decisiones se toman en base a la experiencia, sin existir un proceso
definido ni técnicas especı́ficas a seguir. Para ello algunas empresas utilizan varias
de las prácticas de metodologı́as ágiles conocidas como Scrum y XP.
Dado que no existe una metodologı́a ágil formalmente especificada para el de-
sarrollo de videojuegos se realiza una propuesta como aporte a la industria. La
misma sigue los principios de las metodologı́as ágiles y adapta la estructura y
roles de Scrum. Esta adaptación busca contemplar a la realidad relevada en la
industria en Uruguay y resumir la experiencia de los casos que adaptan con éxito
estas metodologı́as para obtener sus beneficios.
La metodologı́a SUM para videojuegos tiene como objetivo desarrollar video-
juegos de calidad en tiempo y costo, ası́ como la mejora continua del proceso para
incrementar su eficacia y eficiencia. Pretende obtener resultados predecibles, ad-
ministrar eficientemente los recursos y riesgos del proyecto, y lograr una alta
productividad del equipo de desarrollo. SUM fue concebida para que se adapte
a equipos multidisciplinarios pequeños (de tres a siete integrantes que trabajan
en un mismo lugar fı́sico o estén distribuidos), y para proyectos cortos (menores
a un año de duración) con alto grado de participación del cliente.
La definición de la metodologı́a se basa en el Software and Systems Process
Engineering Metamodel Specification(SPEM) 2.0 [Gro07], un meta-modelo para
describir procesos y metodologı́a desarrollado por el Object Management Group
(OMG). Una ventaja de utilizar SPEM es que su estructura permite especificar
el proceso de desarrollo de videojuegos sin mencionar prácticas especı́ficas, lo
que lo hace flexible y adaptable a cada realidad. Para especificar la metodologı́a
se utiliza Eclipse Process Framework (EPF) [Fou08] ya que provee un marco de
trabajo extensible basado en los conceptos de SPEM 2.0 para definir y manejar
procesos de desarrollo de software.
SUM adapta para videojuegos la estructura y roles de Scrum descritas por
Ken Schwaber [SB01]. Se utiliza esta metodologı́a ya que brinda flexibilidad para
6
definir el ciclo de vida y puede ser combinado fácilmente con otras metodologı́as
para adaptarse a distintas realidades.
4.1 Roles
La metodologı́a define cuatro roles: equipo de desarrollo, productor interno,
cliente y verificador beta. El productor interno y el cliente se corresponden en
forma directa con los roles de Scrum Master y Product Owner de Scrum respec-
tivamente.
El equipo de desarrollo tiene las caracterı́sticas del Scrum team, pero a difer-
encia de Scrum se definen subroles dentro del equipo. Es necesario esta definición
ya que se requiere una alta especialización para satisfacer las distintas disciplinas
que involucra del desarrollo de videojuegos, aspecto no contemplado en Scrum.
Éstos se corresponden con los que se utilizan habitualmente en la industria local
y son los de programador, artista gráfico, artista sonoro y diseñador de juego.
El programador define la arquitectura, realiza el diseño, implementación y ver-
ificación de los componentes de software e integra el contenido audiovisual del
videojuego. Los subroles de artista gráfico y artista sonoro se encargan de la
creación del contenido audiovisual del videojuego. El artista gráfico realiza el
arte de concepto, el arte 2D, el modelado 3D y la creación de animaciones y
texturas. El artista sonoro se encarga de la creación, grabación, mezcla y edición
de los efectos de sonido y música del juego. Por último el diseñador de juego es
el encargado de diseñar el gameplay, la historia, el ambiente, los personajes y
todos los elementos que hacen a la experiencia del jugador. Además, diseña los
niveles, misiones y los desafı́os que enfrenta el jugador.
El rol de verificador beta no está presente en Scrum pero sı́ se detecta su
existencia en el relevamiento de la realidad local y en la industria del video-
juego en general. Su responsabilidad es la de realizar la verificación funcional del
videojuego y comunicar su resultado. Sin embargo puede no poseer experiencia
ni ser jugador frecuente y participar igualmente de la verificación, por ejemplo,
al formar parte de un focus group del videojuego.
– Beta:
La fase tiene como objetivos evaluar y ajustar distintos aspectos del video-
juego como por ejemplo gameplay, diversión, curva de aprendizaje y curva de
dificultad, además de eliminar la mayor cantidad de errores detectados. Se
trabaja en forma iterativa liberando distintas versiones del videojuego para
verificar. Para ello primero se distribuye la versión beta del videojuego a
verificar y se determinan los aspectos a evaluar y la forma de comunicación.
Mientras la versión se verifica, se envı́an reportes con los errores o evalu-
aciones realizadas. Estos reportes son analizados para ver la necesidad de
realizar ajustes al videojuego. Se puede optar por liberar una nueva versión
del videojuego para verificar una vez que se realizan los ajustes. El ciclo
termina cuando se alcanza el criterio de finalización establecido en el plan
del proyecto.
El productor interno y cliente seleccionan a los verificadores beta, proporcio-
nan la versión a probar y establecen los mecanismos de comunicación. Los
verificadores beta reportan los errores encontrados y sus reacciones sobre los
aspectos mencionados, mientras el equipo de desarrollo es quién corrige el
videojuego.
11
– Cierre: Esta fase tiene como objetivos entregar la versión final del video-
juego al cliente según las formas establecidas y evaluar el desarrollo del
proyecto.
Para la evaluación se estudian los problemas ocurridos, los éxitos consegui-
dos, las soluciones halladas, el cumplimiento de objetivos y la certeza de
las estimaciones. Con las conclusiones extraı́das se registran las lecciones
aprendidas y se plantean mejoras a la metodologı́a. En la evaluación es re-
comendable que participen todas las personas que han estado involucradas
en el proyecto.
– Gestión de riesgos: Esta fase se realiza durante todo el proyecto con el
objetivo de minimizar la ocurrencia y el impacto de problemas. Esto se debe
a que distintos riesgos pueden ocurrir en cualquiera de las fases, por lo cual
siempre debe existir un seguimiento de los mismos. Para cada uno de los
riesgos que se identifican se debe establecer la probabilidad y el impacto
de ocurrencia, mecanismos de monitoreo, estrategia de mitigación y plan de
contingencia.
4.3 Guı́as
Las guı́as son sugerencias, pautas y herramientas para llevar a cabo en forma
efectiva y eficaz las actividades que componen el proceso. A través de ellas,
se incorporan a la metodologı́a prácticas aplicadas con éxito para el desarrollo
de videojuegos, además de las lecciones aprendidas con el desarrollo de cada
proyecto. Actualmente SUM incluye las prácticas y herramientas de Scrum y
XP, y además, artı́culos publicados sobre la aplicación de metodologı́as ágiles en
el desarrollo de videojuegos.
5 Conclusiones
constituyen tres de los integrantes del grupo, mientras que el cuarto interpreta
el rol de productor interno. Las decisiones sobre el videojuego son realizadas
por los integrantes del grupo, contando con la opinión de potenciales usuarios
e interesados en el desarrollo. Este caso de estudio permitirá mejorar y realizar
ajustes a la metodologı́a propuesta.
Referencias
[ASR02] Pekka Abrahamsson, Outi Salo, and Jussi Ronkainen. Agile Software Devel-
opment Methods. VTT Publications, 2002.
[BA04] Kent Beck and Cynthia Andres. Extreme Programming Explained: Embrace
Change (2nd Edition). Addison-Wesley Professional, 2004.
[Bat03] Bob Bates. Game Developer´s Market Guide, chapter 1. Premier Press, 2003.
[Bat08] Batovi Games Studio. Online, Mayo 2008. http://www.batovi.com.
[Bec04] Kent Beck. User Stories Applied. Addison-Wesley Professional, 2004.
[Cry08] Crytek. Transition to scrum midway through a aaa development
cycle: Lessons learned. In Game Developer Conference, Marzo 2008.
[Dem08] Thomas Demachy. Extreme game development. Online, Mayo 2008.
http://www.gamasutra.com/resource guide/20030714/demachy 01.shtml.
[Fou08] Eclipse Foundation. Eclipse process framework project homepage. online,
Noviembre 2008. www.eclipse.org/epf/.
[Gam08] Gamasutra. Interview: Nokia’s scott foe - a member of the reset generation.
Online, Mayo 2008.
http://www.gamasutra.com/php-bin/news index.php?story=19210.
[Gro07] Object Managment Group. Software and systems process engineering meta-
model specification, version 2.0, 2007.
[Kef08] Kef Sensei. Online, Mayo 2008. http://www.kefsensei.com/.
[Kei07] Clinton Keith. Scrum rising. Game Developer Magazine, pages 22–26, Febrero
2007.
[Kei08] Clinton Keith. An agile restrospective. In Game Developer Conference,
Febrero 2008.
[Kei09] Clinton Keith. Advanced scrum and agile development. In Game Developer
Conference, Marzo 2009.
[Mys08] Mystery Studio. Computer Games and Games Download. Online, Mayo 2008.
http://www.mysterystudio.com/index.php.
[Nut08] Christian Nutt. Living on the edge: Dice’s owen o’brien speaks. Online, Mayo
2008. http://www.gamasutra.com/view/feature/3684/living.
[Pow08] Powerful Robot Games. Online, Mayo 2008. http://www.powerfulrobot.com.
[Rel08] Relic. About relic. Online, Mayo 2008. http://www.relic.com/about/.
[SB01] Ken Schwaber and Mike Beedle. Agile Software Development with Scrum.
Prentice Hall PTR, 2001.
[SUM09] SUM. Online, 2009. http://www.gemserk.com/sum.
[Tob08] Bliksem Tobey. Introducing scrum at large animal games:
a look back at the first year of agile development. Online, Mayo 2008.
http://www.gamasutra.com/view/feature/3677/introducing.