UNIDAD Nº 4. Construcción de un Modelo Conceptual



Documentos relacionados
MODELADO DEL DOMINIO (MODELO CONCEPTUAL)

Ingeniería del Software I

2.4 Modelado conceptual

El Modelo Conceptual

Unidad II. Metodología para resolver problemas aplicando la POO. Parte 3 Análisis del Problema Modelo del Dominio


UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos

CLASE 6: MODELO CONCEPTUAL/ MODELO DE DOMINIO. Universidad Simón Bolívar. Ing. de Software. Prof. Ivette Carolina Martínez

Diseño orientado a los objetos

Diagrama de Clases. Diagrama de Clases

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso

Patrones de software y refactorización de código

Introducción. Ciclo de vida de los Sistemas de Información. Diseño Conceptual

PATRONES. Experto. Solución:

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.1 UML: Introducción

Capítulo VI. Diagramas de Entidad Relación

TABLA DE DECISION. Consideremos la siguiente tabla, expresada en forma genérica, como ejemplo y establezcamos la manera en que debe leerse.

6.8 La Arquitectura del Sistema. [Proceso]

Tema 5. Diseño detallado.

e-commerce vs. e-business

INGENIERÍA DEL SOFTWARE I Práctica 4 Interacciones

ARQUITECTURA DE DISTRIBUCIÓN DE DATOS

Metodología Orientada a Objetos Clave Maestría en Sistemas Computacionales

Por dónde empiezo a documentar? Ing. Fedra E. González

ADMINISTRACIÓN DE PROYECTOS

Proceso Unificado de Rational PROCESO UNIFICADO DE RATIONAL (RUP) El proceso de desarrollo de software tiene cuatro roles importantes:

Administración de proyectos. Organizar, planificar y programar los proyectos de software

PRUEBAS DE SOFTWARE TECNICAS DE PRUEBA DE SOFTWARE

Capítulo 2. Metodologías de selección de personal

Capítulos 2 y 5: Modelación con UML y Modelo Objeto

Elementos requeridos para crearlos (ejemplo: el compilador)

Unidad 1. Fundamentos en Gestión de Riesgos

Es de aplicación a todas aquellas situaciones en las que se necesita desplegar un objetivo para obtener una visión clara de cómo debe ser alcanzado.

BASE DE DATOS RELACIONALES

CURSO COORDINADOR INNOVADOR

TEMA 8: DIAGRAMA DE CLASE EN UML

CAPÍTULO 3. HERRAMIENTA DE SOFTWARE DE PLANEACIÓN DE

PROYECTOS DE CONSTRUCCIÓN ESTUDIOS DE MERCADO

ANÁLISIS Y DISEÑO DE SISTEMAS DEPARTAMENTO DE CIENCIAS E INGENIERÍA DE LA COMPUTACIÓN

Creación y administración de grupos de dominio

SISTEMAS DE INFORMACIÓN I TEORÍA

Introducción. Metadatos

Universidad acional Experimental Del Táchira Decanato de Docencia Departamento de Ingeniería en Informática

2.2 Política y objetivos de prevención de riesgos laborales de una organización

proceso que consiste en aplicar una serie de reglas a las relaciones obtenidas tras el paso del modelo entidad-relación al modelo relacional.

CERTAMEN 2 90 minutos 20 puntos

M III ABSTRACCIÓN Y CLASIFICACIÓN

DE VIDA PARA EL DESARROLLO DE SISTEMAS

Project Ing. Christian Ovalle

LECTURA 1: CARACTERISTICAS, OBJETIVOS Y FUNCIONES DE LOS ORGANISMOS NO LUCRATIVOS

Base de datos en Excel

Introducción a la plataforma Moodle Aníbal de la Torre Plataforma Moodle. Accediendo a los contenidos

Este documento proporciona la secuencia de pasos necesarios para la construcción de un Diagrama de Flujo.

CAPÍTULO 3 Servidor de Modelo de Usuario

Estas visiones de la información, denominadas vistas, se pueden identificar de varias formas.

INGENIERÍA DEL SOFTWARE I. Univ. Cantabria Fac. de Ciencias. Especificación de Requisitos. Práctica 2

Ciclo de vida y Metodologías para el desarrollo de SW Definición de la metodología

Unidad 5. Modelo de objetos del dominio del problema. Trimestre 10-I. Universidad Autonomía Metropolitana. Unidad 5

Servicio de administración de pautas publicitarias en Internet

Modelo Entidad-Relación

Planificación, Gestión y Desarrollo de Proyectos

Programación Avanzada. Análisis Modelado del Dominio

La explicación la haré con un ejemplo de cobro por $ más el I.V.A. $16.00

MODELO DEL DOMINIO. 1. Introducción

CAPÍTULO 1 INTRODUCCIÓN

Capitulo III. Diseño del Sistema.

Administración por Procesos contra Funciones

1.1. Introducción y conceptos básicos

Diseño de bases de datos Diapositiva 1

Diseño orientado al flujo de datos

Análisis de Sistemas. M.Sc. Lic. Aidee Vargas C. C. octubre 2007

PERFIL DEL PUESTO POR COMPETENCIAS Sepa cómo construirlo y evitar bajos desempeños posteriores

PRU. Fundamento Institucional. Objetivos. Alcance

DISEÑO DE FUNCIONES (TRATAMIENTOS)

La calidad de los datos ha mejorado, se ha avanzado en la construcción de reglas de integridad.

L3 ORGANIZACIÓN DE ARCHIVOS ELECTRÓNICOS

3.1 INGENIERIA DE SOFTWARE ORIENTADO A OBJETOS OOSE (IVAR JACOBSON)

Maxpho Commerce 11. Gestión CSV. Fecha: 20 Septiembre 2011 Versión : 1.1 Autor: Maxpho Ltd

APLICACIÓN PRÁCTICA EN ESPAÑA DE LA NORMATIVA "SEPA" EN PROGRAMAS MDG

MANUAL DE USUARIO APLICACIÓN SYSACTIVOS

UNIVERSIDAD DE ORIENTE UNIVO FACULTAD DE CIENCIAS ECONÓMICAS

PLAN DE MEJORAS. Herramienta de trabajo. Agencia Nacional de Evaluación de la Calidad y Acreditación

NORMALIZACIÓN DE BASES DE DATOS RELACIONALES

Trabajo lean (1): A que podemos llamar trabajo lean?

CAPITULO V. Conclusiones y recomendaciones. Este capítulo tiene como objetivo mostrar las conclusiones más significativas que se

3º Grado Educación Infantil Bilingüe Números. Método Singapur y F. Bravo E R

Ingeniería del Software. La última lección. Resumen del curso. Buenas prácticas. Conclusión

Interpretación CINIIF 12 Acuerdos de Concesión de Servicios

Técnicas para identificar la causa-raíz de los problemas

Enterprise Analyst: Taller de Bautizo

Usos de los Mapas Conceptuales en Educación

Algunas Herramientas de Apoyo al Análisis y Diseño de Software. Agustín J. González ELO329: Diseño y programación orientados a objetos

Anexo 4 Prueba de Cleaver La técnica y su fundamento teórico Cleaver encontró 13 factores críticos de puestos, que determinan la evaluación de una

La Necesidad de Modelar. Diseño de Software Avanzado Departamento de Informática

Las Relaciones Públicas en el Marketing social

Tratamiento del Riesgo

Estándares para planes de calidad de software. Escuela de Ingeniería de Sistemas y Computación Desarrollo de Software II Agosto Diciembre 2008

LiLa Portal Guía para profesores

Ingeniería de Software. Ihr Logo

Ministerio de Planificación Nacional y Política Económica

Transcripción:

UNIDAD Nº 4 Construcción de un Modelo Conceptual 1. Introducción Un Modelo Conceptual explica (a sus creadores) los conceptos significativos en un dominio del problema, es el artefacto más importante a crear durante en análisis orientado a objetos. Identificar muchos objetos o conceptos constituye la esencia del análisis orientado a objetos, y el esfuerzo se compensa con los resultados conseguidos durante la fase de diseño e implementación. La identificación de conceptos forma parte de una investigación del dominio del problema. El lenguaje UML contiene la notación en Diagramas de Estructura Estática que explican gráficamente los modelos conceptuales. Una cualidad esencial que debe ofrecer un modelo conceptual es que representa cosas 2. Actividades y dependencias Una de las primeras actividades centrales de un ciclo de desarrollo consiste en crear un modelo conceptual para los casos de uso del ciclo actual. Esto no puede hacerse si no se cuentan con los casos y con otros documentos que permitan identificar los conceptos (objetos). La creación no siempre es lineal; por ejemplo, el modelo conceptual puede formularse en paralelo con el desarrollo de los casos. 3. Modelos Conceptuales El paso esencial de un análisis orientado a objetos es descomponer el problema en conceptos u objetos individuales: las cosas que sabemos. Un modelo conceptual es una representación de conceptos en un dominio del problema. En UML lo ilustramos con un grupo de diagramas de estructura estática donde no se define ninguna operación. La designación de modelo conceptual ofrece la ventaja de subrayar fuertemente una concentración en los conceptos del dominio, no en las entidades del software. Puede mostrarnos: Conceptos Asociaciones entre conceptos Atributos de conceptos. Por ejemplo el concepto de pago y venta son importantes en un sistema de ventas, es decir en ese dominio del problema, por lo que se puede expresar gráficamente la relación entre ambos conceptos. LIC. CONTRERAS, PAMELA 1

Modelo conceptual parcial 3.1 Conocimiento de la nomenclatura del dominio Además de descomponer el espacio del problema en unidades comprensibles (conceptos), la creación de un modelo conceptual contribuye a esclarecer la terminología o nomenclatura del dominio. Podemos verlo como un modelo que comunica (a los interesados como pueden serlo los desarrolladores) cuáles son los términos importantes y cómo se relacionan entre sí. 3.2 Los modelos conceptuales no son modelos de diseño de software. Un modelo conceptual es una descripción del dominio de un problema real, no es una descripción del diseño del software. Por ello los siguientes elementos no son adecuados en él: Los artefactos del software, como una ventana o una base de datos, salvo que el dominio a modelar se refiera a conceptos de software; por ejemplo, un modelo de interfaces gráficas para el usuario. Las responsabilidades o métodos. Hay que evitar LIC. CONTRERAS, PAMELA 2

3.3 Conceptos En términos informales el concepto es una idea, cosa u objeto. En un lenguaje más formal, podemos considerarlo a partir de su símbolo, intensión y extensión. Símbolo: palabras o imágenes que representan un concepto. Intensión: la definición del concepto. Extensión: el conjunto de ejemplos a que se aplica el concepto. Cuando se crea un modelo conceptual, por lo regular la vista del símbolo y de la intensión se un concepto es el aspecto de mayor interés práctico. 3.4. Los modelos conceptuales y la descomposición Los problemas de software a veces son complejos; la descomposición - divide y vencerás- es una estrategia que suele utilizarse para resolver la complejidad dividiendo el espacio del problema en unidades comprensibles. En el análisis estructurado la dimensión de la descomposición se realiza mediante procesos o funciones, en cambio en el análisis orientado a LIC. CONTRERAS, PAMELA 3

objetos, se lleva a cabo fundamentalmente con conceptos (objetos). Por lo tanto, una tarea primordial de la fase de análisis consiste en identificar varios conceptos en el dominio del problema y documentar los resultados en un modelo conceptual. 4. Estrategias para identificar los conceptos 4.1 Obtención de conceptos a partir de una lista de categorías de conceptos La creación de un modelo conceptual se comienza preparando una lista de conceptos idóneos a partir de la siguiente lista. Contiene muchas categorías comunes que vale la pena tener en cuenta, sin que importe el orden de importancia. Los ejemplos se tomaron los dominios de la tienda y de las reservaciones de líneas aéreas Categoría de concepto Objetos físicos o tangibles Ejemplos Puesto de venta Avión Especificaciones, diseño o descripciones de cosas EspecificaciondeProducto Descripcionde Vuelo Lugares Tienda Aeropuerto Transacciones Venta, Pago Reservación Línea o renglón de elemento de transacciones VentasLineadeProducto Papel de personas Cajero Piloto Contenedores de cosas Tienda, Cesto Avión Cosas dentro de un contenedor Producto Pasajero Otro sistemas de cómputos Electromecánicos SistemadeAutorizaciondeTarjetadeCredito externos al sistema ControldeTraficoAereo Conceptos de nombres abstractos Hambre Acrofobia Organizaciones Departamentode Ventas Obj etolineaaerea Procesos (a menudo no están repre sentados como VentaUnProducto conceptos, pero pueden estarlo) ReservaAsiento Reglas y Políticas PoliticadeReembolso PoliticadeCancelaciones Catálogos CatalogodeProducto Catalogodepartes Registro de finanzas, de trabajo, de contratos de Recibo, Mayor, ContratodeEmpleo asuntos legales BitácoradeMantenimiento Instrumentos y servicios financieros LineadeCredito Existencia LIC. CONTRERAS, PAMELA 4

Manuales, libros ManualdePersonal ManualdeReparaciones 4.2 Obtención de conceptos a partir de la identificación de frases nominales Otra técnica muy útil (por su simplicidad) consiste en identificar las frases nominales en las descripciones textuales del dominio de un problema y considerarlas conceptos o atributos idóneos. Este método hay que utilizarlo con mucha prudencia; no es posible encontrar mecánicamente correspondencias entre sustantivo y concepto, y además las palabras del lenguaje natural son ambiguas. Pese a ello, esta técnica es fuente de inspiración. Los casos expandidos de uso a través de los escenarios son una excelente descripción que puede conseguirse con este análisis. 4.2.1 Escenario principal 1. El cliente llega a un puesto de venta con mercaderías y/o servicios que comprar.. 2..El cajero comienza una nueva venta. 3. El cajero introduce el identificador del artículo. 4. El sistema registra la línea de venta y presenta la descripción del artículo, precio y suma parcial. El cajero repite los pasos 3 y 4 hasta que se indique. 5. El sistema presenta el total con los impuestos calculados. 6. El cajero le dice al cliente el total y solicita el pago. 4.2.2 Clases conceptuales candidatas para el dominio de ventas Registro, artículo, tienda, venta, pago, catálogo de productos, especificación del producto, línea de venta, cajero, cliente, encargado. 5. Directrices para construir modelos conceptuales 5.1 Cómo construir un Modelo Conceptual Aplique los siguientes pasos para crear un Modelo Conceptual: 1. Liste los conceptos idóneos usando la lista de categoría de conceptos y la identificación de la frase nominal relacionada con los requerimientos en cuestión. 2. Dibújelos en un Modelo Conceptual. 3. Incorpore las asociaciones necesarias para registrar las relaciones 4. Agregue los atributos necesarios para cumplir con las necesidades de información 5.2 Asignación de nombres y modelado de cosas LIC. CONTRERAS, PAMELA 5

El Modelo Conceptual es una especie de mapa de conceptos o cosas de un dominio: Utilice nombres existentes en el territorio: es decir que utilice el vocabulario del dominio al nombrar los nombres de las clases conceptuales y los atributos. Ej: sistema de vuelos: pasajeros - piloto. Excluya las características irrelevantes: aquellos que no son pertinentes para los requisitos Ej: bolso de papel. No agregue cosas que no existan: aquellas que no se encuentren en el dominio del problema que se está estudiando. 5.3 Errores que se cometen frecuentemente al identificar conceptos Representar algo como atributo, cuando debió ser un concepto. Una regla práctica para no caer en él es: Si en el mundo real no consideramos algún concepto X como número o texto, probablemente X sea un concepto y no un atributo. Por ejemplo: en el mundo real un aeropuerto de destino no se considera número ni texto: es una cosa masiva que ocupa espacio, por lo tanto aeropuerto debería ser un concepto. En caso de duda, convierta el atributo en un concepto independiente. Analizar aquellos conceptos semejantes con distinto nombre Modelado de un mundo irreal: cuando algunos sistemas de software son para los dominios que encuentran muy poca analogía con los dominios naturales o de negocio. Ej: software para telecomunicaciones. Requiere de un alto grado de abstracción como por ejemplo: mensaje, conexión, puerto, diálogo, ruta, protocolo. 5.4 Especificación o descripción de conceptos Este análisis se debe realizar sobre la necesidad de incorporar o no, clases conceptuales de especificación. Veamos el siguiente ejemplo. Asuma lo siguiente: Una instancia de un artículo representa un objeto físico de una tienda. Un artículo tiene una descripción, precio e identificador de artículo. Todo el mundo que trabaja en la tienda tiene amnesia. Cada vez que se vende un artículo físico real, se elimina una instancia de artículo. Con estas suposiciones: qué ocurre en el siguiente escenario?: Cuando se venden todos los artículos del objeto, por ejemplo: hamburguesa. Si se pregunta: cuánto cuesta el objeto-hamburguesa nadie puede contestar porque el precio se encontraba en las instancias inventariadas. Además, si no se tuviera una clase de especificación se duplicaría información Frente a esta situación tenemos estas opciones: LIC. CONTRERAS, PAMELA 6

Incorpore una especificación o descripción de conceptos cuando: Se necesita la descripción de un artículo o servicio independiente de las existencias. La eliminación de las instancias de las cosas que describen da por resultado una pérdida de información que ha de conservarse, debido a la asociación incorrecta de la información con lo eliminado. Reduce información redundante o duplicada LIC. CONTRERAS, PAMELA 7