¿Es útil el análisis de requisitos en el desarrollo de juegos?

9

Soy un estudiante de ingeniería de software con un enfoque en el desarrollo de juegos. ¿Qué importancia desempeña el análisis de requisitos en el desarrollo de juegos?

Lo pregunto porque estoy tratando de decidir si tomar una clase sobre análisis de requisitos. Aquí hay una descripción:

Un estudio en profundidad de la investigación actual y la práctica en la obtención de requisitos, requisitos, análisis, especificación de requisitos, verificación y validación de requisitos, y gestión de requisitos.

¿Sería útil este tipo de conocimiento para un desarrollador de juegos independiente? (Las alternativas son la inteligencia artificial o la arquitectura de software).

Joey Green
fuente
Para aclarar, ¿cuáles son sus alternativas?
ChrisE
Sí, arroja un poco más de luz sobre tu situación, por favor. ¿Es algo que debe tomar además de su curso principal o está tratando de determinar si RA es parte de su núcleo?
Jason Pineo
¿Qué implica tu clase de arquitectura de software? Si está más orientado al diseño de un sistema, definitivamente sugeriría tomar eso. El análisis de requisitos consiste en "No me importa cómo lo hago, ¿qué quiero que haga mi software?" El diseño de un sistema consiste en "Sé lo que quiero hacer, ¿cómo puedo lograrlo de la manera más eficiente?"
Ray Dey
Cualquier herramienta / técnica aplicada que lo ayudará a evitar la parálisis de análisis será útil.
Patrick Hughes

Respuestas:

7

El análisis de requisitos será increíblemente útil, ya sea que sea un desarrollador independiente o trabaje para una gran empresa. El análisis de requisitos le permite dividir su proyecto en partes manejables. Le permite estimar el tiempo que tomará su proyecto y comparar el valor de una característica con el cronograma de desarrollo deseado y el esfuerzo requerido.

Si estás en una compañía de juegos independientes más grande, te ayudará a trabajar junto con otros desarrolladores y productores de contenido para asegurarte de que todos siempre tengan algo que hacer y que puedas cumplir tus objetivos de desarrollo. Si está trabajando para una gran corporación, el análisis de los requisitos de aprendizaje lo convertirá en uno de los pocos desarrolladores en la reunión que realmente puede dar una estimación realista del tiempo para una función en lugar de simplemente sacar un número de su trasero.

Además de todo eso, la validación de requisitos podría incluir cosas como pruebas unitarias y verificación de características, lo cual es invaluable para un desarrollador sin un gran departamento de control de calidad a sus espaldas.

Gregory Avery-Weir
fuente
+1 Todo lo que se dice aquí es correcto, además de abordar la idea de que podrías terminar haciendo programación corporativa hasta que hayas llegado a la escena independiente.
ChrisE
¿Cómo podría no ser útil? Tienes que analizar todo lo que haces de manera estructurada. El hecho de que algunos términos sean vagos no significa que sea imposible de cuantificar.
Johnny
2

Creo que esta clase tendrá entre cero y muy poca relevancia para el desarrollo del juego. Ciertamente, los métodos semi formales o formales que menciona no se utilizan en mi experiencia.

Los juegos generalmente tienen requisitos increíblemente fluidos, e incluso si fuera posible invertir tiempo y mejores prácticas para reunir los requisitos, gran parte de lo que terminaría siendo son términos vagos y sin sentido que se refieren a diversión, adicción, inmersión, etc. Muy raramente tendrá entregas muy claramente definidas porque, por mucho que pretendamos que la creación de software sea ingeniería, en realidad es más un oficio, dada la variedad de formas diferentes en que los programadores pueden expresarse. Esto va doble para los juegos.

Kylotan
fuente
Espero que los "requisitos de fluidos" no sean un eufemismo para el "arrastre de características". : \ No estoy de acuerdo con que "mucho" de lo que terminaría teniendo son términos vagos y sin sentido, como "diversión", "adicción", etc. Estos representan requisitos no técnicos, que son un subconjunto de requisitos realmente pensados documento.
PatrickB
2
Creo que los requisitos de fluidos ciertamente son un eufemismo para el arrastre de características, pero si desea competir en un entorno minorista y dirigido por el éxito, debe aceptar el arrastre de características desde el primer día. El tipo de cosas que puede aprender reuniendo y analizando los requisitos para un "cliente de software" tradicional es demasiado diferente de cómo debe funcionar el software de entretenimiento. En particular, tiene un problema importante en el sentido de que su cliente no es su usuario final, y otro problema importante en que los requisitos técnicos no se pueden precisar cuando sabe que el deslizamiento de la característica es inevitable.
Kylotan
No creo que haya dicho que está compitiendo o incluso haciendo un producto que vende. Muchos juegos independientes no están diseñados para competir con juegos minoristas, por lo general ni siquiera están en el mismo campo de juego que los títulos AAA. Demonios, Steam mete todos los juegos independientes en su propia pequeña caja de arena, probablemente como una etiqueta de advertencia. Cuando eres un desarrollador independiente, tú, por definición, tienes control sobre lo que quieres hacer. Si no lo hicieras, estarías asociado / invertido, y realmente no serías independiente entonces, ¿verdad? De cualquier manera, parece que no encuentro características en los juegos de hobby en los que trabajo. YMMV.
PatrickB
1
No creo que independiente normalmente signifique 'juegos de pasatiempos', normalmente significa 'pequeña empresa que no depende de la financiación del editor'. Como tal, su situación de cliente / cliente puede ser más simple de lo que sugerí anteriormente, pero podría ser aún más susceptible a las fuerzas del mercado. Pero al final del día, el análisis de requisitos más formal se quedará corto porque es increíblemente difícil calificar lo que es una "necesidad comercial" en términos de un juego. Los juegos difieren significativamente de otro software a este respecto y, por lo tanto, sugeriría humildemente que otras formas de especificar el software son más relevantes.
Kylotan
¿Cuáles son las otras formas?
Johnny
2

El análisis de requisitos está mucho más dirigido al software corporativo, con canales de comunicación formales y ese tipo de cosas, de las cuales existirá poco o nada para un desarrollador independiente. No es muy útil para los juegos porque muchos requisitos no pueden ser probados o verificados formalmente. Si tiene una barra de herramientas y dice: "Al hacer clic en este botón, se debe desplegar un menú con XYZ", puede pagarle a alguien prácticamente nada para que haga clic en el botón y vea qué sucede. ¿Es divertido tu juego? Esa es una caldera de pescado completamente diferente.

RA puede ser útil para determinar si el juego funciona; pero cuando se trata de cosas como el equilibrio, la capacidad de reproducción y otros factores que determinan el factor más divertido del juego, entonces es difícil o imposible probarlos. Por lo tanto, en última instancia, depende de si vas o no a una excelente implementación de una idea existente; o si estás buscando o no el éxito en un juego nuevo.

DeadMG
fuente
0

Saltarlo.

¿En qué área del desarrollo del juego estás interesado? Asumo Programador pero ...

Diseñador: Escriben mucho. Un montón. Por lo general, hay un documento de diseño que comunica la visión de los diseñadores, pero para todos los demás, excepto el productor o el editor, normalmente obtendrá la información del propio diseñador.

Programador: El líder determina los requisitos técnicos que dependerán en gran medida de la plataforma y la cartera de activos. Aprenderá cómo hacer esto mientras trabaja con su líder en el trabajo.

Artista: Nuevamente, es el artista principal junto con el programador principal que generalmente establece los requisitos para los activos artísticos. Aprende en el trabajo.

El análisis de requisitos, como el curso que probablemente impartirán, es útil para las grandes corporaciones que intentan justificar el gasto de dinero y la subcontratación. Y a menudo lo hace alguien que alguna vez codificó y posiblemente lo haya olvidado. puñalada

Si planea ir de forma independiente, tome un tema de negocios / contabilidad / administración. Lo necesitarás para sobrevivir y no ser jodido. Buena suerte.

Bkersten
fuente
También asumiría programador, ya que lo etiquetó programador;)
El pato comunista
1
-1 Entonces, no solo te perdiste que la persona lo etiquetara para los programadores, también te perdiste que era para el desarrollo independiente, lo que implicaría de inmediato que no habría un líder tecnológico del que aprender. El análisis de requisitos es útil, incluso cuando no se realizan las especificaciones completas del sistema, para aprender a tener la mentalidad correcta para analizar problemas. Además, la práctica por escrito siempre será útil si surge la necesidad de hacer un lanzamiento a un editor. Su consejo, francamente, no se dirige al público objetivo ni proporciona ninguna información útil sobre el tema.
ChrisE
-1 De acuerdo. Suficiente software horrible que no hace lo que la gente necesita y suficientes juegos independientes que sufren de diseños terribles que no resuelven los problemas técnicos y se convierten en reescrituras interminables y juegos inéditos. Los métodos formales son una formalidad que los juegos independientes pueden no pasar explícitamente, pero tener el trasfondo sí conduce a una mentalidad de "detenerse y pensar" en lugar de "codificar y arreglar", que es demasiado frecuente. Los codificadores cuestan diez centavos por docena, y sin embargo, el software de calidad es tan raro. Tú haces los cálculos.
PatrickB
1
Jajaja. Todo el desarrollo del juego, especialmente el indie, se trata de ser ágil e iterar sobre una idea central. El análisis de requisitos no tiene nada que ofrecer y es en su mayor parte un proceso frontal pesado. Entonces generalicé mi respuesta. Si planean irse indie con una red de desarrolladores y artistas semi-experimentados, será difícil prescindir de ellos. Entonces, o necesitas ser un genio en todas las áreas de desarrollo de juegos y negocios, o encuentras mentores, líderes tecnológicos, etc. Intenta no ser tan sensible.
bkersten
1
El análisis de requisitos de @PatrickB no afectaría la forma en que se diseña una pieza de software. El análisis de requisitos está lleno de datos inútiles que un desarrollador de juegos casi nunca usaría (especialmente los diagramas de casos de uso). Es un tema que está más o menos orientado a las partes interesadas y, por lo tanto, a los entornos corporativos. Estoy de acuerdo en que el desarrollador debe enumerar los requisitos (características), pero eso debería ser de sentido común. Diseñar una pieza de software es un tema completamente separado que el análisis de requisitos apenas toca (en la universidad de todos modos)
Ray Dey