Foro temático semana cuatro
Identifica
y explica 3 características primordiales de los casos de uso CRUD y sus
desventajas para ser diagramados. Justifica tu respuesta.
R:
Existen en el mundo de la ingeniería de requerimientos
una amplia gama de patrones de Casos de Uso que pueden ser utilizados, pero la pregunta
que salta a la vista es: ¿Cuál es más conveniente? ¿Cuál se adecua mejor a las
características del producto que se desea construir y a las peculiaridades de
todos los involucrados, cliente incluido?
Un ejemplo bastante común, en el ámbito del desarrollo de
aplicaciones de gestión, es la disyuntiva entre utilizar el patrón CRUD
(Create, Read, Update and Delete, por sus siglas en inglés) o no. Es decir, la
elección entre concebir Casos de Uso que reúnan todas las acciones básicas sobre
una entidad de dominio en uno solo, o concebir un Caso de Uso para cada una de
estas acciones básicas para cada entidad de dominio.
Cualquiera de las variantes es válida, siempre y cuando
exista una métrica que vaya más allá del Caso de Uso como unidad de tamaño, y
nos permita estimar la complejidad del mismo.
De otra forma, la planificación, evaluación y comparación
de proyectos tratada con anterioridad, carece de sentido práctico: un Caso de
Uso concebido bajo el patrón CRUD es equivalente a 4 Casos de Uso concebidos
sin usar el patrón, y no pueden ser considerados como equivalentes de ninguna
forma.
Un caso de uso esencial se caracteriza porque:
·
la funcionalidad CRUD
es una porción del caso de uso,
·
el actor que lo
inicia está bien generalizado,
·
su secuencia básica
completa una interacción mayor con el sistema,
·
no está asociado con
componentes arquitectónicos o del sistema,
·
es completamente
independiente de la implementación de la Interfaz de Usuario,
·
contiene un número
mayor de secuencias alternas (esto podría representar algún tipo de
inconveniente a la hora de cualificar la legibilidad del caso de uso),
·
representa muchos
ejemplos concretos de interacción, es decir, deriva en muchos escenarios,
·
es bastante útil para
pruebas del sistema y de funcionalidad.
Finalmente, un caso de uso esencial forma parte de un
modelo de casos de uso cuyo número de extensiones e inclusiones es menor al 20%
de todo el modelo.
Características
del caso de uso CRUD
Ventajas de la utilización del patrón de Casos de Uso
CRUD
Entre las ventajas de la utilización del patrón CRUD
pueden mencionarse:
·
Se reúnen en un solo
elemento de configuración del software todas las acciones básicas que se
realizan sobre una entidad de dominio.
·
Se facilita la
comprensión por parte del cliente de la funcionalidad del sistema.
·
Se facilita la
especificación de los casos de uso, logrando un alto nivel de detalle sin tener
que invertir esfuerzo en describir aspectos generales de funcionalidad más de
una vez.
·
Se facilita la
reusabilidad del código, a partir de identificar relaciones entre los Casos de
Uso, con un mínimo de esfuerzo.
Desventajas de la utilización del patrón de Casos de Uso
CRUD
La desventaja principal radica en que, si no existe una
métrica completa que permita estimar la complejidad de los Casos de Uso, y la
estimación y planificación de los proyectos permanece al nivel del Caso de Uso
como unidad, casi seguramente el proyecto incurrirá en atrasos y sobrepasará su
presupuesto, en comparación con otros que no usen dicho patrón. Escribir casos
de uso CRUD y similares aumenta innecesariamente el número de casos de uso, el
tiempo de especificación, el tiempo de revisión, el tiempo de aprobación. Sí,
quizás disminuya el tiempo de programación, pero este es cada vez más reducido
a la luz de las poderosas herramientas con las que contamos hoy para escribir
código fuente.
Una mirada desde el ángulo comercial
Una de las ventajas de tener una estimación adecuada del
proyecto es el impacto positivo que se tiene en la administración de contratos.
Es imposible garantizar productividad en la esfera de la producción de software
sin una herramienta que asegure la misma desde la etapa más temprana de un
proyecto: la negociación, especialmente en el caso de las soluciones “llave en
mano” que incluyen generalmente el desarrollo de aplicaciones informáticas “a
la medida”.
El estudio inicial de procesos de negocio y la
determinación, a través de métricas, del tamaño, complejidad y esfuerzo de
desarrollo, pasan a convertirse en esta herramienta.
Volviendo al tema de los Casos de Uso que aplican el
patrón CRUD, es evidente que no puede ser igual el costo de un Caso de Uso CRUD
al de un Caso de Uso que solo contenga la funcionalidad referida a una sola
acción básica sobre una entidad de dominio. Pero esto es parte de la
negociación y de los aspectos que se deben pactar en el marco de un contrato,
para evitar que posteriormente el proyecto se vuelva inmanejable dentro del tiempo
y presupuesto estimado en sus inicios.
No hay comentarios.:
Publicar un comentario