620 likes | 757 Views
¿ Cómo gestionar el desarrollo de un videojuego y no morir en el intento ?. Ing. Luis Calabria Universidad ORT Uruguay. Mi poca experiencia en juegos. Arez: The Adventure Show (2003). Arez: The Adventure Show (2003). Arez: The Adventure Show (2003). Arez: The Adventure Show (2003).
E N D
¿Cómo gestionar el desarrollo de un videojuego y no morir en el intento? Ing. Luis Calabria Universidad ORT Uruguay
¿Qué implica gestionar un proyecto? • ¿Qué implica NO gestionar bien un proyecto? • No saber si voy atrasado o no en el proyecto • No se si estoy ganando plata o no • No tener información histórica de nuestros proyectos anteriores • Un mes antes de la entrega todos trabajan los fines de semana como locos • Nos comprometemos a cosas imposibles con nuestros clientes
¿Qué implica gestionar un proyecto? • Es la aplicación del conocimiento, habilidades, herramientas y técnicas a las actividades de gestión para lograr los requerimientos del proyecto.[PMBOK:2004] • Intenta asegurar que el proyecto logre cumplir con las restricciones de: • Alcance • Tiempo • Costo • Calidad
La Iniciación • Definir la Idea Fuerza del juego • Establecer cual es la idea principal del juego. • Establecer en una oración o un párrafo la idea que resume el juego. • Ej: El regreso de Lara a sus orígenes
La Iniciación • Idea Fuerza: War of Wills • La idea es construir un juego de naves espaciales que batallen en el espacio. El juego esta orientado hacia la estrategia por sobre la acción.
La Iniciación • Definir la funcionalidad principal del juego: War of Wills • Visor-Radar de Situación y Panel de Control actualizados y respondiendo en tiempo real. • Funcionalidad abierta para el jugador • Dos o más jugadores conectados en red
La Iniciación • Definir aspectos de jugabilidad • Análisis de la competencia (juegos similares) y mercado objetivo • Análisis de factibilidad (realmente lo puedo hacer??) • Lista de herramientas o engines a utilizar • Lista de posibles riesgos del proyecto
La planificación • Definir y estimar las tareas necesarias para llevar adelante el proyecto
La planificación • Ciclo de vida para el desarrollo de videojuegos Preproducción Producción Liberación
La planificación • Definir la funcionalidad del juego (GDD) • Definir los requerimientos técnicos (TDD)
La planificación • Definir las grandes fases del proyectos y los objetivos asociados • Planificar las tareas • Estimar duración y ESFUERZO • Asignar responsables • Realizar prototipos para mitigar riesgos
La planificación • Ejemplo: Arez: The Adventure Show
Análisis de Riesgos • Analizar los posibles problemas que puede tener el juego • Riesgos técnicos (nueva tecnologías) • Riesgos relacionados con los RRHH (posibles viajes, etc.) • Disponibilidad del cliente • Analizar formas de mitigación y contingencias.
Análisis de Riesgos • Ej: Arez y el Renderware
Análisis de Riesgos • Ej: NetDealer Framework • Grupo reducido, capacitación y recorte de alcance
Análisis de Riesgos • Ej: War of Wills • Problemas de conectividad y evaluación de alternativas a la arquitectura
La planificación • Recomendaciones • Estimación por esfuerzo • Aplicar un colchón al final del proyecto • Iteraciones cortas (2 o tres semanas) • Contemplar actividades de investigación y capacitación • De la lista de riesgos se desprenden tareas para mitigarlos
La ejecución y el control • Registrar el % de avance (funcionalidad realizada) • ¿Cuánta funcionalidad teníamos estimada para esta iteración? • ¿Cuánta funcionalidad hicimos realmente? • NO ESPERAR HASTA EL ÚLTIMO MES PARA SABER QUE ESTAMOS ATRASADOS
La ejecución y el control • Ejemplo:
La ejecución y el control • Ejemplo: Iteración 1 • Voy un 50% de los requerimientos y gasté un 61% de las horas estimadas
La ejecución y el control • Ejemplo: Planilla de reporte de horas
La ejecución y el control • Reuniones periódicas con el grupo de proyecto • No enterarse de los problemas por Radio Pasillo • Realizar reuniones para evaluar el avance del proyecto, que problemas ocurrieron, que soluciones proponer y que decisiones tomar. • Fijar objetivos para las reuniones y no hacerlas de más de una 1hr
La ejecución y el control • Realizar mucho testing • Testing funcional (testing unitario, de integración, de regresión, de sistema) • Testing al First Playable • Game Testing (Jugabilidad) • Alpha y Beta test
La ejecución y el control • Validaciones con los clientes • ¿Es lo que el cliente realmente quiere? • ¿Es lo que los usuarios realmente quieren? ¿La jugabilidad es realmente buena? • Evaluar tempranamente estas preguntas • Realizar reuniones o pruebas de aceptación al final de cada iteración si es posible. • Poner al tanto al cliente sobre el avance del proyecto • Evitamos sorpresas a futuro
El cierre del proyecto • Análisis y registro de los datos obtenidos • ¿Cuánto esfuerzo estimamos? • ¿Cuánto esfuerzo dedicamos? • ¿Qué problemas surgieron? • ¿Cómo los resolvimos? • ¿Qué podemos mejorar para la próxima? ¿Qué se convierte en regla? • ¿Dónde queda respaldado la información?
El cierre del proyecto • Si se trabaja con un cliente/publisher, proveerle feedback sobre los resultados del proyecto • Relevar su conformidad con el proyecto y analizar que cosas se pueden mejorar a futuro
El cierre del proyecto • Reconocer el esfuerzo de TODOS • Y Festejar !!!!!!!!!!