¿Qué es el "dominio del problema"?

12

Tengo que documentar mi programa para un proyecto escolar y tenemos una sección llamada "dominio del problema", pero no tengo idea de qué discutir en esta sección.

Entonces la pregunta es: ¿Qué debería discutirse en el dominio del problema?

Samantha Catania
fuente
2
Dominio del problema = Tema / tema / tema del programa
Ivan Crojach Karačić
Dada la forma en que ha formulado su pregunta, la respuesta proporcionada por @qes prácticamente la cierra. Si desea algún consejo más específico, necesitará dar algunos detalles sobre de qué trata su programa.
Mike Nakis
Porque si no puede decirnos de qué trata su programa, no conoce el dominio del problema.
JeffO

Respuestas:

24

Escribo software embebido para equipos de telecomunicaciones. El dominio de mi problema son los protocolos de ethernet, voz y video. En otras palabras, todo lo que no tiene nada que ver con el lenguaje en el que estoy programando, pero que aún debo entender para poder escribir el software. Si está creando un sitio web para vender servicios de fotografía, el dominio del problema es la fotografía y el comercio electrónico. Si escribe firmware para aviones militares, el dominio del problema son las armas, los sensores y los sistemas de control. ¿Obtener la imagen?

Karl Bielefeldt
fuente
66
Absolutamente correcto. Y en el negocio del software comercial, a las personas que conocen el dominio del problema se les conoce con frecuencia como Expertos en la materia (PYME), en lugar de programadores, porque su valor y función en la organización es diferente de (y a menudo mayor que) los programadores.
Ross Patterson
@Karl Bielefeldt gracias. Eres mi protector de día de hoy.
William Francis Gomes
10

Del artículo de Wikipedia sobre el dominio del problema :

Un dominio problemático es el área de experiencia o aplicación que necesita ser examinada para resolver un problema. Un dominio problemático es simplemente mirar solo los temas que le interesan y excluir todo lo demás.

Es el área donde pertenecen los problemas que su aplicación pretende resolver.

quentin-starin
fuente
@Murph, las ediciones durante los primeros 5 minutos de una publicación no se registran explícitamente.
Péter Török
¿Puedes proporcionar un ejemplo por favor?
Samantha Catania
@ PéterTörök nunca es un día (totalmente) malo cuando aprendes algo nuevo (-:
Murph
1
@SamanthaCatania, en el caso del proyecto en el que estoy trabajando actualmente, el dominio del problema es el alquiler de automóviles . Una zona central en esto es vehículo de la caja y el check-in en sí, pero aparte de esto, hay muchos otros subdominios, como: gestión de flotas , gestión de ingresos , tasas , etc.
Péter Török
Tenga en cuenta que un dominio problemático puede ser muy específico, por ejemplo, gestión de inventario, como lo hace la región del estado de Nueva York de nuestra empresa . Pero probablemente no sea más específico que esto; Los "dominios" más pequeños generalmente se consideran problemas únicos.
Paul Brinkley
4

No todos escriben compiladores, rastreadores de errores, marcos u otros paquetes de software informáticos.

Algunas personas escriben software para la industria de arena y grava. Algunas personas escriben software para monitorear torres de refracción de refinería. Algunas personas escriben software para controlar la fabricación de bolsas de plástico. Algunas personas escriben software para llenar paquetes de ketchup.

Esos son todos dominios problemáticos, donde para escribir un buen software, necesita saber un poco sobre el dominio, por ejemplo, concreto premezclado.

whatsisname
fuente
1
Un escritor compilador también tiene un dominio problemático, entre otras cosas; Arquitectura de la CPU.
contrato del Prof. Falken incumplió el
1

Ian K. Bray en su libro Una Introducción a la Ingeniería de Requisitos (p9) define el dominio del problema de la siguiente manera:

Esa parte del universo dentro de la cual existe el problema .

Por ejemplo, en el caso de un sistema de control de ascensores, incluiría cualquier hardware existente (ascensores, motores, botones, indicadores, sensores, etc.), las características del edificio (número de pisos y ejes de ascensores), el patrón anticipado de uso, las características de los usuarios, la política de uso del ascensor del cliente (por ejemplo, ¿se debe desalentar a los usuarios de usar un ascensor para viajes cortos?), etc.

Dentro del dominio del problema de control de ascensores, el problema, como se indicó anteriormente, es "se necesita un sistema de control que haga un uso más eficiente de los ascensores en este edificio". En la práctica, generalmente refinamos el problema en un conjunto completo de subproblemas pero, por ahora, solo tenga en cuenta que para resolver el (los) problema (s), es claramente necesario que el sistema de solución produzca algunos efectos dentro del dominio del problema . Son estos efectos deseados los que constituyen los requisitos.

Por lo tanto, el dominio del problema también puede considerarse como la parte del mundo en la que operará el nuevo sistema de solución (a veces abreviado como SS) y producirá los efectos requeridos. Dado que los sistemas de solución basados ​​en software a menudo se denominan aplicaciones, el dominio del problema puede llamarse dominio de aplicación.

Jules Randolph
fuente
0

Yo lo veo así:

El dominio del problema: la razón por la cual el software necesita ser construido y el entorno y la industria para la cual el sistema construido necesita ser utilizado.

Andrew S
fuente