[BD 2011 12]Apuntes ModeladoConceptual

  • Published on
    12-Oct-2015

  • View
    12

  • Download
    0

Embed Size (px)

Transcript

<ul><li><p>ESCUELA TCNICA SUPERIOR DE INGENIERA INFORMTICA</p><p>Modelado Conceptual</p><p>Esperanza Marcos</p></li><li><p>Modelo Conceptual</p><p>2</p><p>Contenido</p><p>GUA DE ESTUDIO......................................................................................................................................... 3</p><p>1. EL MODELADO CONCEPTUAL DE DATOS EN EL PROCESO DE DESARROLLO SOFTWARE .................. 4</p><p>2. CONCEPTO DE MODELO DE DATOS .................................................................................................... 5</p><p>3. EL MODELO ENTIDAD/INTERRELACIN EXTENDIDO (E/R) ................................................................ 8</p><p>3.1. ENTIDAD .............................................................................................................................................. 83.2. INTERRELACIN...................................................................................................................................... 9</p><p>3.2.1. Elementos de una Interrelacin............................................................................................... 103.2.2. Cardinalidad de una Entidad en una Interrelacin .................................................................. 11</p><p>3.3. DOMINIO Y VALOR................................................................................................................................ 123.4. ATRIBUTO........................................................................................................................................... 133.5. GENERALIZACIN/ESPECIALIZACIN......................................................................................................... 153.6. EJEMPLO ............................................................................................................................................ 18</p><p>4. ETAPAS DEL MODELADO CONCEPTUAL ............................................................................................ 19</p><p>4.1. ANLISIS DE REQUISITOS ........................................................................................................................ 194.2. ETAPA DE CONCEPTUALIZACIN............................................................................................................... 194.3. PASO DEL ESQUEMA PERCIBIDO AL ESQUEMA CONCEPTUAL ......................................................................... 21</p><p>5. EJERCICIOS DE AUTOCOMPROBACIN ............................................................................................. 24</p><p>5.1. ENUNCIADOS....................................................................................................................................... 24</p><p>6. BIBLIOGRAFA .................................................................................................................................... 27</p><p>6.1. BIBLIOGRAFA BSICA ........................................................................................................................... 276.2. BIBLIOGRAFA RECOMENDADA ................................................................................................................ 27</p></li><li><p>Modelo Conceptual</p><p>3</p><p>Gua de Estudio</p><p>Podemos decir que el ncleo de todo Sistema de Informacin (en adelante SI)orientado a la gestin est constituido por los datos del sistema, por lo que stos son unelemento clave en el proceso de desarrollo software. Si adems estamos hablando dedesarrollo estructurado de software nos encontramos con que los datos forman el eje apartir del cual se construye el sistema.</p><p>En esta unidad se abordar el problema del modelado conceptual de datos, dentro dela fase de anlisis del proceso de desarrollo software. El objetivo que nos planteamos esque, al finalizar dicha asignatura, el alumno sea capaz de realizar el modelado conceptualde datos de un SI.</p><p>Para ello, en primer lugar, situaremos las actividad del modelado conceptual de datosen el lugar que les corresponde dentro del proceso de desarrollo, estableciendo lasrelaciones existentes entre sta y otras actividades. Posteriormente, revisaremos elconcepto de modelo de datos, pasando a continuacin a exponer el modeloEntidad/inteRrelacin (en adelante E/R) como la tcnica ms aceptada de modelado dedatos en el desarrollo estructurado. Al final de la unidad se incluyen una serie de ejerciciosde autocomprobacin con las soluciones propuestas. Es importante que el alumno tengaen cuenta que las soluciones propuestas, en general, no sern nicas, especialmente enlos ejercicios de modelado conceptual. Por tanto, el alumno puede llegar a otrassoluciones alternativas que no sern necesariamente iguales a las que nosotrosproponemos. Finalmente se detalla la bibliografa que se ha divido en dos apartados:bibliografa bsica en la que nos hemos basado para desarrollar esta unidad y que, engeneral, el alumno debera conocer; y bibliografa recomendada, constituida por librosque tambin hemos consultado y que se recomienda a aquellos alumnos que deseenprofundizar o completar algn aspecto concreto de sta unidad. La unidad contienetambin un control que permitir evaluar los conocimientos adquiridos por el alumno alfinal de la misma.</p><p>A modo de recomendacin, y siempre que sea posible, el alumno debera contrastarsus soluciones con las de otros alumnos. Esto permitir discutir las distintas alternativasanalizando las ventajas e inconvenientes de cada una de ellas. Si esto no fuera posible, elalumno dispone de una direccin de correo electrnico (cuca@escet.urjc.es) a la quepodr enviar sus comentarios, dudas o sugerencias.</p></li><li><p>Modelo Conceptual</p><p>4</p><p>1. El Modelado Conceptual de Datos en el Proceso de Desarrollo Software</p><p>El modelado conceptual permite describir, de un modo totalmente independiente de laimplementacin, los datos que el usuario quiere recoger en el sistema. Dependiendo de lacantidad de informacin que se desee representar, tendremos aplicaciones ms o menosorientadas a los datos. As, por ejemplo, la gestin de una biblioteca es una aplicacinpura de Bases de Datos (en adelante BD) ya que prcticamente toda la funcionalidad delsistema se centra en el mantenimiento de los datos (introducir un libro, prestar un libro,etc.). Existen, sin embargo, otras aplicaciones, como por ejemplo un sistema de control denavegacin area, en las que los datos son algo secundario. Podemos decir que, engeneral, los datos son el ncleo de todo SI orientado a la gestin.</p><p>El desarrollo estructurado de software, a diferencia de lo que ocurre en el desarrolloorientado a objetos, mantiene una clara separacin entre los datos y las funciones delsistema. Por ello, es necesario disponer, en cada una de las etapas del proceso dedesarrollo, de tcnicas especficas para la especificacin de los datos, que sern diferentesde las tcnicas orientadas a la especificacin de las funciones o procesos.</p><p>El modelado conceptual es una actividad que se realiza en la etapa de anlisis,paralelamente al modelado de procesos o funciones. Su objetivo, como ya hemos dicho,es captar toda la informacin del mundo real que se desea representar en el mundoinformtico. En este proceso es importante abstraer los detalles sin importancia yrepresentar tan slo aquella informacin que sea relevante.</p><p>En este punto no nos interesa el cmo ni donde se va a implementar el sistema. Dehecho, dependiendo del tipo de sistema (ms o menos orientado a los datos), del volumende informacin, de los requisitos de eficiencia, etc. se podrn utilizar distintosmecanismos de persistencia de los datos: Sistemas de Bases de Datos, Sistemas deFicheros, etc. De estos aspectos nos ocuparemos en la etapa de diseo (ver la unidaddedicada a diseo estructurado de datos). En esta etapa interesa recoger la mximacantidad de informacin posible, por lo necesitamos una tcnica que cumpla los siguientesrequisitos:</p><p> Ser independiente de los modelos o lenguajes de implementacin</p><p> Tener una capacidad semntica alta</p><p> Ser lo mas cercana posible al usuario</p><p>Aunque existen diversas tcnicas, utilizaremos el modelo E/R porque adems decumplir los requisitos anteriores es la tcnica de modelado conceptual universalmenteaceptada para el desarrollo estructurado.</p></li><li><p>Modelo Conceptual</p><p>5</p><p>En la figura 1.1 se muestra la situacin del modelado conceptual en el proceso dedesarrollo, as como la relacin existente entre esta y otras actividades. La etapa deanlisis comprende, tanto el anlisis de datos, modelado conceptual de datos, como el defunciones. La tcnica ms habitual para el modelado conceptual de datos es el modelo E/Ry para el modelado conceptual de procesos son los Diagramas de Flujo de Datos (enadelante DFD). Existen algunas tcnicas, como el Diagrama de Historia de Vida de lasEntidades o la Matriz Entidad-Evento, que permiten integrar la visin de los datos y la delos procesos. Como se puede apreciar, la etapa de diseo tambin se compone del diseode datos y del diseo de procesos.</p><p>Figura 1.1. Comparacin entre el proceso de diseo de datos y el de procesos</p><p>2. Concepto de Modelo de Datos</p><p>Un modelo puede definirse como la construccin mental a partir de la realidad en laque se reproducen los principales componentes y relaciones del segmento de la realidadanalizada. ste es, efectivamente, el significado de modelo en las ciencias empricas en lasque, a fin de estudiar el comportamiento de una determinada parcela de la realidad, secrea un modelo de sta. Dicho modelo habr de ser isomrfico respecto a la realidad querepresenta y ms simple que sta, destacando sus principales caractersticas, o aquellasque son relevantes para un determinado inters de estudio. Sin embargo, sta no es lanica acepcin del trmino modelo, al que podemos asignar dos significados:</p><p>DATOS</p><p>ANALISIS REQUISITOS DE INFORMACIN</p><p>FUNCIONES</p><p>DISEO REQUISITOS DE LOS PROCESOS</p><p>Modelado Conceptual de Datos: E/RModelado Conceptual de Procesos: DFD</p><p>Diseo de Datos: Relacional Diseo de Procesos: DEC</p></li><li><p>Modelo Conceptual</p><p>6</p><p> Por un lado, el modelo entendido como una reproduccin simplificada de larealidad; este es el caso, ya expuesto, de las ciencias empricas, en las que sedefinen modelos de comportamiento simplificados de la parcela del mundo realque es objeto de estudio;</p><p> Y, por otro lado, el modelo entendido como la realidad propiamente dicha;pinsese, por ejemplo, en un pintor, quien reproduce en lienzo a sus modelos;en este segundo caso, el modelo no es la representacin del mundo real, sinoque constituye el mundo real en s mismo: es un modelo a copiar o a simular.</p><p>Esta segunda acepcin de modelo es la que corresponde a la lgica matemtica, dondela representacin recibe el nombre de teora y lo representado el de modelo, mientrasque la primera corresponde, como ya hemos visto, al concepto de modelo en las cienciasempricas.</p><p>En algunos casos, como en el caso de los modelos de datos, el concepto de modeloresponde simultaneamente a estas dos acepciones. Quiz resulte esclarecedor el ejemplodel arquitecto, para quien una maqueta es un modelo a copiar para la construccin de unnuevo edificio. La maqueta sera, en un primer momento, la realidad puesto que el edificioan no existe. El arquitecto obtiene un nuevo edifio tomando dicha maqueta comomodelo. A partir de este momento, el edificio constituye la realidad, mientras que lamaqueta puede considerarse una copia del mismo.</p><p>En el mbito de la bases de datos es muy comn la utilizacin del trmino modelo dedatos, y existen diferentes definiciones del mismo en la literatura. As, por ejemplo,Dittrich define modelo de datos como "un conjunto de herramientas conceptuales paradescribir la representacin de la informacin en trminos de datos. Los modelos de datoscomprenden aspectos relacionados con: estructuras y tipos de datos, operaciones yrestricciones".</p><p>Un modelo de datos permite representar una parcela de informacin del mundo realde especial inters, lo que habitualmente se denomina universo del discurso o, entrminos, de Dittrich mini-mundo. La representacin del universo del discurso se concibeen dos niveles: el de la informacin en s misma y el de las estructuras que hacen posiblela representacin de tal informacin. Estos dos niveles dan lugar, en el mbito de las basesde datos, a la distincin entre esquema y base de datos, conceptos que Dittrich definecomo sigue: "La descripcin especfica de de un determinado mini-mundo en trminos deun modelo de datos se denomina esquema (o esquema de datos) del mini-mundo. Lacoleccin de datos que represntan la informacin a cerca del mini-mundo constituya labase de datos".</p></li><li><p>Modelo Conceptual</p><p>7</p><p>Sin embargo, el trmino modelo, debido a las diferentes acepciones del mismo, puededar lugar a ambigedad y es importante tener en cuenta que en otros mbitos diferentesal de las bases de datos esta terminologa puede variar. As, por ejemplo, algunos autoreshablan de formalismos, en lugar de modelos, como marcos en los que definir esquemas, alos que ellos se refieren como modelos. De este modo, en muchas ocasiones se habla demodelos (modelos conceptuales, modelos de conocimiento, modelos lgicos, etc.) parareferirse indistintamente, tanto al modelo del universo del discurso (esquema) como alformalismo en el que ste es definido (modelo de datos).</p><p>El problema deriva, de la doble acepcin del trmino modelo. Podemos decir que unesquema es un modelo (entendido como una copia simplificada de la realidad), y unmodelo (entendido como un original que se toma como referencia) si ese esquema seimplementa en un sistema informtico. Por este motivo, podemos encontrar autores quehablan de modelos para referirse a lo que nosotros denominaremos esquemas, o que serefieran a los modelos como formalismos o tcnicas. Por ejemplo, un DFD no es en smismo un modelo, sino que suelen ser denominados tcnicas, mientras que se denominamodelo funcional, a la representacin de la parte dinmica de un universo del discursoutlizando la tcnica de los DFDs.</p><p>Teniendo presente que esta terminologa puede variar y que empleamos sta por ser lams extendida en el mundo de los datos en el que se centra la presente unidad,definimos modelo de datos como un:</p><p>Y esquema se datos como la:</p><p>Conjunto de conceptos, reglas y convencionesque permiten describir y manipular los datosde la parcela del mundo real que constituyenuestro universo del discurso.</p><p>Representacin de un determinado universodel discurso en trminos de un modelo de</p></li><li><p>Modelo Conceptual</p><p>8</p><p>3. El modelo Entidad/inteRrelacin extendido (E/R)</p><p>El modelo E/R fue propuesto por Peter P. Chen en dos artculos ya histricos publicadosen 1976 y 1977. Permite al diseador concebir los datos del sistema a un nivel superior deabstraccin, aislndolo de consideraciones relativas a la mquina y a los usuarios enparticular. El modelo, como su nombre indica, se apoya en dos conceptos: entidad einterrelacin1. Para Chen, una entidad es una cosa que se puede identificar claramentey una interrelacin una vinculacin entre entidades.</p><p>Posteriormente otros muchos autores (ver a modo de ejemplo Elsmari et al. (1997)),han investigado y escrito sobre el modelo, proponiendo importantes extensiones.Realmente no se puede considerar que exista un nico modelo E/R, sino ms bien lo quepodramos llamar una familia de modelos, por lo que hay importantes diferencia...</p></li></ul>