Está en la página 1de 6

Universidad Nacional Abierta y a Distancia - UNAD Escuela de Ciencias Bsica Tecnologa e Ingeniera Programa de Ingeniera de Sistemas

Estructura de un objeto Descripcin del Problema La descripcin del problema es una descripcin muy preliminar de necesidades que sirve nicamente como punto de inicio para comprender los requisitos del sistema. Se trata aqu de simular una descripcin preparada por un cliente la cual debe evolucionar por medio del modelo de requisitos para lograr la especificacin final del sistema a desarrollarse. La descripcin del problema debe ser una descripcin de necesidades y no una propuesta para una solucin. La descripcin inicial puede ser incompleta e informal. No hay razn para esperar que la descripcin inicial del problema, preparada sin un anlisis completo, sea correcta. La descripcin del problema debe ser informal y limitada. Modelo del Dominio del Problema El modelo del dominio del problema define un modelo de clases. Este modelo de clases consiste de los objetos del dominio del problema, o sea objetos que tienen una correspondencia directa en el rea de la aplicacin. Como los usuarios y clientes deberan reconocer todos los conceptos, se puede desarrollar una terminologa comn al razonar, y por lo tanto disminuyendo la probabilidad de malos entendimientos entre el analista y el usuario. Al discutirlo, se evolucionar el modelo del dominio del problema. Una tcnica utilizada cuando se trabaja con tal modelo es darle al cliente un papel y un lpiz y pedirle que dibuje su visin del sistema. Histricamente, el modelo del dominio del problema se utilizaba como el modelo de requisitos fundamental en ciertas metodologas, tales como Coad y Yourdon (1991), Booch (1991), y Rumbaugh (1991). Sin embargo, dadas sus limitaciones que impeda obtener los requisitos funcionales de un sistema, el modelo del dominio del problema dej de ser la base nica para el desarrollo completo del sistema y pas a ser un elemento adicional en la especificacin de los sistemas. El propsito principal del dominio del problema es formar una base comn de entendimiento del desarrollo y no para definir el sistema completo. Por lo tanto, se pueden aprovechar algunas de las heursticas para la identificacin de los objetos en el dominio del problema, logrando un glosario o diccionario de clases que sirve como comn denominador a todos los componentes del sistema, incluyendo a las diversas personas involucradas a lo largo del desarrollo. El modelo del dominio del problema no debe ser demasiado extenso, ya que varios grados de refinamiento sern hechos posteriormente. Y aunque es suficiente describir el dominio del problema en trmino de objetos o clases, es posible refinar ms an mediante la inclusin de asociaciones, atributos, herencia y operaciones, siempre y cuando esto ayude a comprender mejor el problema y no se vuelva un esfuerzo demasiado grande durante esta etapa. Se debe tener cuidado con hacer demasiado trabajo temprano ya que esto puede incluso dificultar su modificacin posterior durante el modelo de anlisis. La experiencia muestra que muchos (si no todos) los objetos del dominio podrn aparecer durante el modelo de anlisis. Sin embargo, puede haber cambios durante el modelo de anlisis, incluyendo la eliminacin de clase identificadas durante esta etapa, o incluso la incorporacin de clases adicionales. La idea es identificar las clases del dominio del problema junto con aspectos adicionales, cmo asociaciones y atributos. La herencia y en especial las operaciones de un sistema son los aspectos de mayor complejidad, algo que se debe elaborar de manera muy cuidadosa durante el diseo del sistema. Identificacin de Clases La identificacin de clases del dominio del problema se obtiene principalmente de algn documento textual que describa el sistema. Se comienza este proceso mediante la identificacin de las clases candidatas, explcitas o implcitas, a las que se refiera la descripcin del problema. Para ello se extraen todos los sustantivos de la descripcin del problema o de algn otro documento similar, de acuerdo a las siguientes consideraciones. ?? Los sustantivos en la descripcin del problema son los posibles candidatos a clases de objetos. Por ejemplo en "Un sistema de reservaciones que vende boletos para funciones a varios teatros", las clases candidatas seran, Sistema de Reservaciones, Boletos, Funcin y Teatro. ?? Durante esta etapa, se debe identificar entidades fsicas al igual que entidades conceptuales.

Universidad Nacional Abierta y a Distancia - UNAD Escuela de Ciencias Bsica Tecnologa e Ingeniera Programa de Ingeniera de Sistemas
?? No se debe tratar de diferenciar entre clases y atributos durante sta etapa. ?? Dado que no todas las clases se describen de manera explcita, siendo algunas implcitas en la aplicacin, ser necesario aadir clases que pueden ser identificadas por nuestro conocimiento del rea. ?? Se debe revisar los pronombres en la descripcin del problema para asegurar que no se haya perdido ningn sustantivo descrito de forma implcita. ?? Para facilitar la identificacin de clases, se subrayan todos los sustantivos de la descripcin del problema. A partir de los sustantivos se debe preparar una lista inicial de clases candidatas. Se debe excluir clases repetidas, manteniendo todos los nombres en singular.

Seleccin de Clases A partir de las clases candidatas, se debe seleccionar las clases relevantes tomando en cuenta las siguientes consideraciones: ?? Todas las clases deben tener sentido en el rea de la aplicacin, la relevancia al problema debe ser el nico criterio para la seleccin. ?? Como regla general, se debe escoger los nombres para las clases con cuidado, que no sean ambiguos y que mejor se apliquen al problema. Este es uno de los procesos ms difciles. Los nombres deben ser establecidos con un formato consistente (e.g. nombres en singular). ?? No hay que preocuparse durante esta etapa sobre asociacin, agregacin, o herencia. Primero hay que tener las clases especficas correctas para no suprimir detalles en el intento de ajustarse a estructuras preconcebidas. ?? Ante la duda, se deben conservar las clases, ya que posteriormente siempre habr oportunidad para eliminarlas. ?? Se deben eliminar clases redundantes, si estas expresan la misma informacin. La clase ms descriptiva debe ser guardada. ?? Se deben eliminar clases irrelevantes, que tienen poco o nada que ver con el problema. Esto requiere juicio porque en un contexto una clase puede ser importante mientras que en otro contexto la clase pudiera no serlo. ?? Se deben clarificar las clases imprecisas. Algunas clases pueden tener bordes mal definidos o demasiado Generales. ?? Se deben eliminar las clases que debieran ser atributos ms que clases, cuando los nombres corresponden a propiedades ms que entidades independientes. ?? Se deben eliminar las clases que debieran ser roles ms que clases, cuando los nombres corresponden al papel que juegan las clases ms que entidades independientes. ?? Se deben eliminar las clases que debieran ser operaciones ms que clases, si las entidades representan Operaciones que son aplicadas a los objetos y no entidades manipuladas por si mismas. ?? Se deben eliminar las clases que corresponden a construcciones de implementacin si estn alejadas del mundo real, por lo cual deben ser eliminadas del anlisis. No se necesita una clase para representar una entidad fsica. Por ejemplo: subrutinas, listas, y arreglos, son clases tpicas de implementacin; Internet y World Wide Web son el medio de implementacin del sistema ?? Se debe eliminar clases que correspondan aspectos de interfaces de usuario y no de la aplicacin. ?? Se debe eliminar clases que correspondan a todo un sistema completo. ?? Se debe eliminar clases que correspondan a actores del sistema. ?? Se deben agregar clases implcitas que no aparezcan en la descripcin del problema. En general, se pueden identificar listas similares de clases, aunque siempre con alguna variacin. Diagrama de Clases Despus de haber identificado y seleccionado las clases, se debe construir el diagrama de clases para el dominio del problema. El siguiente ejemplo puede ayudar a identificar clases adicionales, y servir de base para encontrar los atributos y asociaciones entre ellas.

Universidad Nacional Abierta y a Distancia - UNAD Escuela de Ciencias Bsica Tecnologa e Ingeniera Programa de Ingeniera de Sistemas

Aunque se puede parar aqu el proceso de desarrollo del dominio del problema, continuaremos con la identificacin de asociaciones y atributos para el sistema de reservaciones de vuelo. Identificacin de Asociaciones El proceso de identificacin de asociaciones es bastante similar al de identificacin de clases, slo que en lugar de sustantivos buscamos frases que relacionen sustantivos correspondientes a clases ya identificadas. Lamentablemente, hasta all llega la similitud, que se vuelve bastante difcil esta identificacin por lo restringido de la descripcin del problema. Dado que las asociaciones y operaciones del sistema se identifican durante el modelo de diseo, se deben identificar asociaciones con base en nuestro conocimiento del dominio del problema. Diagrama de Clases con Asociaciones Debemos identificar nuestras propias frases correspondientes al dominio del problema. Este proceso de identificacin es sencillo cuando el problema es muy limitado y el dominio es fcil de analizar. De lo contrario se requiere un proceso de identificacin mucho ms extenso como veremos en la etapa de diseo. Despus de haber identificado las asociaciones, se debe construir una versin del diagrama de clases que incluya estas asociaciones, como se muestra en la Figura

Universidad Nacional Abierta y a Distancia - UNAD Escuela de Ciencias Bsica Tecnologa e Ingeniera Programa de Ingeniera de Sistemas

Diagrama de Clases con Roles Despus de haber hecho el diagrama de clases con asociaciones, se puede construir una versin del diagrama de clases incluyendo roles. El nombre del rol describe el papel que juega una clase en la asociacin desde el punto de vista de la otra clase. Si hay una sola asociacin entre un par de clases, y el nombre de la clase describe adecuadamente su rol, se puede omitir los nombres de rol. Se extiende el diagrama de clases con asociaciones para incluir roles, como se muestra en la Figura.

Diagrama de Clases con Multiplicidad

Universidad Nacional Abierta y a Distancia - UNAD Escuela de Ciencias Bsica Tecnologa e Ingeniera Programa de Ingeniera de Sistemas
Despus de haber hecho el diagrama de clases con asociaciones y roles, se puede construir una versin del diagrama de clases incluyendo multiplicidad. Se determina la multiplicidad para cada asociacin. La multiplicidad, al igual que las relaciones entre las clases, es bastante subjetiva pudiendo Variar entre analistas. Dentro de esa subjetividad todas deben transmitir un dominio del problema similar. Se extiende el diagrama de clases con asociaciones y roles, para incluir multiplicidad, como se muestra en la Figura

Identificacin de Atributos De manera similar a asociaciones se puede determinar los atributos del dominio del problema. Este proceso tiene una complejidad similar al de identificacin de las asociaciones. Sin embargo, identificar atributos puede resultar hasta ms difcil de lograrlo a travs de un proceso de bsqueda a partir de la descripcin del problema. En lugar de esto, simplemente identificamos nuestros propios atributos para las distintas clases identificadas para el dominio del problema. Nuevamente, este proceso de identificacin es sencillo cuando el problema es muy limitado y el dominio es fcil de analizar. De lo contrario se requiere un proceso de identificacin mucho ms extenso como se vera en la etapa de diseo. No es necesario listar todos los atributos, solamente los atributos ms relevantes, omitiendo atributos menores. Diagrama de Clases con Atributos Se extiende el diagrama de clases con asociaciones, roles y multiplicidad, para incluir los atributos principales, como se muestra en la Figura

Universidad Nacional Abierta y a Distancia - UNAD Escuela de Ciencias Bsica Tecnologa e Ingeniera Programa de Ingeniera de Sistemas

Diccionario de Clases El diccionario de clases o diccionario de datos describe textualmente las clases identificadas durante el modelo del dominio del problema. Este diccionario sirve como un glosario de trminos.

También podría gustarte