¿Cómo realiza un seguimiento de las reglas comerciales complejas fuera del código?

9

Estoy interesado en ver cómo otras personas hacen esto. Especialmente en situaciones en las que varios clientes diferentes utilizan la misma base de software con reglas comerciales ligeramente diferentes. ¿Qué tipo de prácticas utilizas para documentar cómo se supone que todo funciona o las reglas comerciales?

Básicamente, cuando llega un nuevo desarrollador, el equipo tiene fácil acceso para ver cómo se supone que funcionan las cosas porque obviamente hay una diferencia entre hacer que algo esté libre de errores y hacer que algo funcione correctamente.

Sería realmente bueno tener un recurso en lugar de tener que traer a un arquitecto o BSA a la conversación cada vez que surge una pregunta sobre cómo se debe procesar algo.

MetaGuru
fuente
66
What kind of practices do you use to document how everything is supposed to work or business rules.Confía en mí, no quieres saber ... <suspiro>
yannis
3
Oye, te llevo las reglas de negocios, así que creé reglas para tus reglas, para que puedas describirlas mientras describes las reglas. SCNR.
Raku

Respuestas:

10

Este es uno de los casos de uso para marcos BDD, como Cucumber, que le permite capturar los requisitos comerciales en código y compararlos con frecuencia. Otros enfoques que he visto incluyen documentos de especificaciones largos y complicados, grandes hojas de papel pegadas a la pared, cubiertas deslizantes, y Joe, el tipo al final de la mesa que lo sabe todo.

filosodad
fuente
ahora ESTO parece resbaladizo, también encontrado para C #: specflow.org
MetaGuru
2

Creo que, como mínimo, estos se documentarían y mantendrían en el documento de requisitos.

Me doy cuenta de que la mayoría de los lugares no tienen requisitos escritos o no se mantienen, pero ese es un problema diferente. :-)

John MacIntyre
fuente
1

Hemos utilizado BPMN para documentar y modelar nuestros flujos de trabajo comerciales si eso es lo que quiere decir.

También hemos tratado de usar un motor de flujo de trabajo en un proyecto para permitir que los usuarios participen en el modelado, pero eso tuvo bastante resistencia porque tenían demasiado miedo de romper cosas, incluso si el modelado se realizó junto con un especialista en flujo de trabajo de nuestro Departamento de TI.

Raku
fuente
2
Tener miedo de romper las cosas parece bastante común - que tenemos una buena cantidad de material configurable por el usuario en nuestra aplicación web, pero que tienden a hacer los cambios cuando los usuarios no están familiarizados con la funcionalidad que están tratando de cambio.
Michael K
1
omg.org/spec/BPMN "OMG", mi pensamiento exactamente. Sin embargo, voy a comenzar a investigar esto, gracias por una respuesta real.
MetaGuru
1
Creo que los motores de flujo de trabajo y BPMN son una idea increíble en general, pero su éxito depende en gran medida de la afinidad tecnológica de los usuarios posteriores. Espero que la próxima generación de usuarios no tenga problemas con ellos. </optimism>
Raku
1
Sí, OMG es la descripción correcta para eso :-).
Raku