Ingeniería de Sistemas y Computación
Computación e interfaces - 1383
Universidad Tecnológica de Bolívar
Estudiantes
Jonathan Javier Robayo Bossio - T00062005
Jesús Antonio Martinez Velandia - T00061258
Víctor Andrés Romero Velásquez - T00061568
Michael Andres Casadiegos Berrio - T00061889
Capítulo 3 – Métodos de descubrimiento para HCI
Las partes interesadas en el proyecto
- Principal: Jugadores experimentados, nostálgicos o casuales, que les
guste este tipo de juegos.
- Secundaria: Estudiantes del curso de computación e interfaces que se
encuentran diseñando y desarrollando el juego.
- Facilitador: El profesor que proporciona las herramientas necesarias
para la documentación y los conceptos para la elaboración del proyecto.
- Indirecto: Estudiantes atentos a la exposición que están dispuestos ha
hablar con otras personas sobre el video juego.
Análisis de marketing y competencia existente
- Identificación de competidores:
o Competidores directos: Algunos competidores directos del
juego “Snake” incluyen “Snake Rewind”, “Snake '97” y
“[Link]”. Estos juegos ofrecen una experiencia similar de
controlar una serpiente y recolectar objetos.
o Competidores indirectos: Los competidores indirectos podrían
ser otros juegos casuales o retro que atraen al mismo público
objetivo. Por ejemplo, juegos de rompecabezas o juegos de
arcade.
- Evaluación de estrategias y tácticas:
Los competidores promocionan sus juegos a través de redes sociales,
campañas publicitarias y colaboraciones con influencers.
Ingeniería de Sistemas y Computación
Computación e interfaces - 1383
La monetización puede incluir anuncios dentro del juego o compras
dentro de la aplicación.
- Estudio de productos o servicios:
Los juegos de “Snake” existentes tienen características como gráficos
(2D o 3D), controles (deslizamiento, botones) y diferentes niveles de
dificultad.
Algunos ofrecen modos de juego adicionales además del clásico.
- Análisis del Mercado y Clientes:
Para realizar este tipo de análisis se necesita realizar encuestas para
realizar un estudio de mercado objetivo, este tipo de estudio se puede
hacer con la ayuda de google forms.
a. Los métodos de recogida de datos que se utilizaran para descubrir
los requisitos.
a. Investigación por los sitios web de competidores.
Realizaremos una investigación exhaustiva en los sitios web de
competidores que ofrecen juegos similares al Snake en Java.
Analizaremos sus características, gráficos, jugabilidad y
estrategias de marketing.
b. Cuestionarios demográficos:
i. Diseñaremos cuestionarios para recopilar información
demográfica de los futuros usuarios:
1. Género, ubicación, ingresos e intereses.
2. Accesibilidad a Internet en el hogar.
3. Tipo de pantalla y navegador utilizados.
4. Comodidad al navegar por la web.
5. Tamaño de la familia y ubicación del equipo.
6. Acceso a impresora (importante para estudiantes con
familias grandes).
c. Grupo de enfoque:
Organizaremos grupos de enfoque con representantes de todos los
grupos de interés:
i. Estudiantes.
ii. Profesores.
d. Entrevistas:
Teniendo en cuenta las personas involucradas se realizarán unas
Ingeniería de Sistemas y Computación
Computación e interfaces - 1383
series de entrevistas para ver cómo se puede adaptar un juego
clásico a un enfoque moderno sin perder el toque tan
característico de este.
e. Observación directa:
preferiblemente se observará a las personas que juegan la beta del
juego, estas personas se seleccionaran la azar para tener un grupo
de selecto que diga cuales son las mejoras a implementar para
que este juego sea de total interés.
b. Documentos necesarios:
Diseñaremos formularios para recopilar retroalimentación:
a. Formularios en línea para el feedback del personal existente.
b. Formularios colaborativos para recopilar opiniones sobre la
jugabilidad, gráficos y características del juego.
Documentos relativos a las actividades de interpretación
• Tareas
o Diseño de la Cuadrícula del Juego:
▪ Crear una cuadrícula (tablero) en la que se moverá la
serpiente.
▪ Definir el tamaño de la cuadrícula (por ejemplo, 10x10 o
20x20).
o Implementación de la Serpiente:
▪ Crear una serpiente que se moverá por la cuadrícula.
▪ La serpiente debe crecer cuando coma la comida.
o Generación Aleatoria de Comida:
▪ Diseñar un mecanismo para generar comida (por ejemplo,
manzanas) en posiciones aleatorias dentro de la cuadrícula.
▪ La comida debe aparecer en lugares diferentes cada vez
que se inicie el juego.
o Control de Movimiento de la Serpiente:
▪ Permitir al jugador controlar la dirección de la serpiente
utilizando las teclas de flecha (arriba, abajo, izquierda,
derecha).
▪ La serpiente debe moverse en la dirección seleccionada por
el jugador.
o Colisión con los Bordes y Consigo Misma:
Ingeniería de Sistemas y Computación
Computación e interfaces - 1383
▪ Detectar colisiones cuando la serpiente toque los bordes de
la cuadrícula o se cruce a sí misma.
▪ Finalizar el juego si ocurre una colisión.
o Puntuación y Niveles:
▪ Implementar un sistema de puntuación para rastrear
cuántos alimentos ha comido la serpiente.
o Preparación de tipos de juegos:
▪ Se presentarán 2 tipos de juegos para darle más diversidad
al videojuego.
▪ Creación de una interfaz de usuario para la selección y
configuración de la partida
o Creación de interfaces informativas y de selecciones:
▪ Se crearán ventanas sonde expliquen como usar el juego y
como usar el programa.
▪ Se realizarán interfaces intermedias para la selección de
distintos parámetros.
▪ Realización de una ventana para visualización de
resultados por los jugadores.
• Casos de uso
o Jugar al Juego Snake:
▪ El principal caso de uso es permitir a los usuarios jugar al
juego Snake en una cuadrícula controlada por Java.
▪ Los usuarios pueden mover la serpiente utilizando las
teclas de flecha y tratar de comer la comida para aumentar
su puntuación.
o Finalizar el Juego:
▪ Detectar las condiciones de finalización del juego (colisión
con bordes o consigo misma).
▪ Mostrar un mensaje de fin de juego y la puntuación
obtenida.
o Reiniciar el Juego:
▪ Después de finalizar el juego, permitir al usuario reiniciar y
volver a jugar.
Lista provisional de requisitos
• Funciones y Servicios del Sistema:
o Debe incluirse obligatoriamente:
Ingeniería de Sistemas y Computación
Computación e interfaces - 1383
▪ Proporcionar una interfaz de usuario para jugar al juego
Snake.
▪ Controlar el movimiento de la serpiente utilizando las
teclas de flecha.
▪ Generar comida aleatoriamente en la cuadrícula.
▪ Detectar colisiones con los bordes y con el propio cuerpo
de la serpiente.
▪ Registrar la puntuación del jugador.
o Debería incluirse:
▪ Diferentes modos de juego (por ejemplo, clásico,
contrarreloj, multijugador).
▪ Opción para pausar o reiniciar el juego.
o Podría incluirse:
▪ Personalización de la apariencia de la serpiente y el fondo.
• Requisitos No Funcionales:
o Debe incluirse obligatoriamente:
▪ Interfaz de usuario intuitiva y fácil de usar.
▪ Gráficos simples y rápidos de cargar.
o Debería incluirse:
▪ Retroalimentación visual y sonora para acciones
importantes (comer comida, colisiones).
▪ Compatibilidad con diferentes sistemas operativos
(Windows, macOS, Linux).
o Podría incluirse:
▪ Optimización para dispositivos móviles (teléfonos y
tabletas).
• Restricciones del Sistema:
o Debe incluirse obligatoriamente:
▪ Limitar el uso de recursos (memoria, CPU) para garantizar
un rendimiento óptimo.
▪ Cumplir con los estándares de seguridad y privacidad.
o Debería incluirse:
▪ Tiempos de carga rápidos para mantener la atención del
jugador.
▪ Diseño adaptable para diferentes resoluciones de pantalla.
• Interacción con Otros Sistemas:
o Debe incluirse obligatoriamente:
Ingeniería de Sistemas y Computación
Computación e interfaces - 1383
o Integrar el juego Snake en la plataforma de desarrollo (Java).
o Enlazar con sistemas existentes (por ejemplo, intranet, sistemas
de gestión de campus).