|
Inicio
Generalidades
Ejercicios
Talleres
Proyecto

|
REQUERIMIENTOS
Y MODELOS DE
SISTEMAS
Requerimientos:
Los requerimientos para un sistema de software determinan lo que hará el
sistema y definen las restricciones de su operación e implementación.
Existen requerimientos del usuario y del sistema. Los
documentos de requerimientos de software son la declaración acordada de
los requerimientos del sistema. Se estructuran de tal forma que puedan ser
utilizados tanto por los clientes del sistema como por los desarrolladores
del software.

Roger Pressman escribió un
prólogo sobre las prácticas efectivas en los requisitos:
"Es tu peor pesadilla. Un cliente entra en tu
oficina, se sienta, te mira directo a los ojos, y dice: "Yo sé
que usted piensa que entiende lo que digo, pero lo que usted no entiende
es que lo que digo no es realmente lo que quiero decir".
Esto sucede de manera invariable cuando el proyecto
está avanzado, después de que se han realizado los compromisos relativos
al tiempo de entrega, las reputaciones están en juego y el dinero está en
serio peligro.
Todos los que hemos trabajado en el negocio de los sistemas y el software
por más de unos cuantos años hemos vivido esta pesadilla, y sólo unos
pocos de nosotros hemos aprendido a continuar aún con esta circunstancia.
Nosotros tenemos dificultades al comprender la información que adquirimos.
Con frecuencia registramos los requisitos de una manera desorganizada e
invertimos muy poco tiempo en verificar lo que registramos. Permitimos que
el cambio nos controle en lugar de establecer mecanismos para controlarlo.
En resumen, fallamos al establecer un cimiento sólido para el sistema o
software. Cada uno de estos problemas representan un reto. Cuando estos se
combinan, la imagen es desalentadora, incluso para los gerentes y
profesionales del software más experimentados, pero existen soluciones".
Puede descargar aquí
una presentación sobre Requerimientos.
Los requerimientos del
usuario deberían redactarse en lenguaje natural debido a que tienen que
ser comprendidos por personas que no son técnicos expertos. Sin embargo,
pueden expresarse requerimientos del sistema más detallados de forma más
técnica. Una técnica ampliamente usada es documentar la especificación
del sistema como un conjunto de modelos del sistema. Estos modelos son
representaciones gráficas que describen los procesos del negocio, el
problema a resolver y el sistema que tiene que ser desarrollado. Debido
a las representaciones gráficas usadas, los modelos son a menudo más
comprensibles que las descripciones detalladas en lenguaje natural de
los requerimientos del sistema. Ellos constituyen también un puente
importante entre el proceso de Análisis y Diseño.
Un modelo es una vista abstracta
de un sistema que ignora algunos
detalles de dicho sistema. Se pueden desarrollar modelos de sistemas
complementarios que presentan diferente información de éste.

Los modelos de contexto muestran la manera en que el sistema que se
modela se ubica en un entorno con otros sistemas y procesos. Los modelos
arquitectónicos, de proceso y de flujo de datos se pueden utilizar como
modelos de contexto.
Los diagramas de flujo de datos se utilizan para modelar el procesamiento
de datos llevado a cabo por un sistema. Éste se modela como un conjunto de
transformaciones de datos en el que las funciones actúan sobre éstos.
Los modelos de máquinas de estado se utilizan para modelar un
comportamiento del sistema en respuesta a los eventos internos o externos.
Los modelos semánticos de datos describen la estructura lógica de los
datos que se importan o son exportados por el sistema. Estos modelos
muestran entidades del sistema, sus atributos y la relación en la que
participan. Se complementan con diccionarios de datos que suministran
una descripción más detallada de éstos.
Los modelos de objetos describen las entidades lógicas del sistema y su
clasificación y agregación. Combinan un modelo de datos con uno de
procesos. Los posibles modelos de Objetos que se pueden desarrollar
incluyen modelos de herencia, de agregación y de comportamiento. Los
diagramas de Casos de Uso son utilizados para la captura de requisitos.
Todos los diagramas de CDU de un sistema constituyen el modelo de CDU
del sistema.
Puede descargar aquí
una presentación sobre Casos
de Uso
(Contratos en UML)
http://iie.fing.edu.uy/ense/asign/desasoft/Teorico2/Contratos.pdf
http://www.uvmsf.cl/~lcastillo/media/Clase6MAD.pdf
http://www.elguille.info/colabora/puntoNET/canchala_UML.htm
Los bancos de trabajo CASE ayudan al desarrollo de modelos del sistema
proporcionándoles herramientas de edición, verificación, emisión de
informes y de documentación. Los siguientes son algunos productos
CASE, unos de software propietario y otros de distribución libre:
Poseidon, ArgoUML,
Eclipse, Power-Designer, Rational Rose, NetBeans, Umbrello, Together,
Visual Paradigm, Dia, IBM Rational XDE Modeler, Objecteering,
gModeler, MonoUML, Bulma (UML en Linux)...
Ejercicios "amistosos"
-
Elabore un modelo de contexto para un sistema de
información de pacientes en el Hospital Federico Lleras. Puede hacer
algunas suposiciones adicionales de los otros sistemas existentes del
hospital, pero el modelo debe incluir un sistema de admisión de
pacientes y uno de almacenamiento de imágenes de rayos X.
-
Basándose en la experiencia adquirida con un cajero
automático como el de Conavi o BanColombia, bosqueje un diagrama de
flujo de datos que modele el procesamiento de datos involucrado en el
retiro de efectivo que un cliente hace desde la máquina. Modele
también un diagrama de Casos de Uso.
-
Modele el procesamiento de datos que podría tener
lugar en un sistema de correo electrónico. Modele el procesamiento de
envío y recibo de correos de forma separada.
-
Utilizando un enfoque de Entidad-Relación, describa un
posible modelo de datos para el sistema bibliotecario de catalogación
de Coruniversitaria.
-
Desarrolle un modelo de objetos que incluya un
diagrama jerárquico de clases y uno de agregación que muestre los
principales componentes de un sistema computarizado de personal y el
software del sistema.
 |