Programacion Orientada A Objetos
Programacion Orientada A Objetos
Programacion Orientada A Objetos
SEMANA 1
Introducción a los modelos
Todos los derechos de autor son de la exclusiva propiedad de IACC o de los otorgantes de sus licencias. No está
permitido copiar, reproducir, reeditar, descargar, publicar, emitir, difundir, poner a disposición del público ni 1
ESTE
utilizarDOCUMENTO
los contenidos paraCONTIENE LAdeSEMANA
fines comerciales 1
ninguna clase.
2
ESTE DOCUMENTO CONTIENE LA SEMANA 1
ÍNDICE
ÍNDICE DE IMÁGENES .......................................................................................................................... 3
INTRODUCCION A LOS MODELOS ....................................................................................................... 4
OBJETIVO ESPECÍFICO ......................................................................................................................... 4
INTRODUCCIÓN ................................................................................................................................... 4
1. MODELO ...................................................................................................................................... 5
1.1. CARACTERÍSTICAS CONCEPTUALES ..................................................................................... 6
1.2. APLICACIÓN DE MODELOS .................................................................................................. 7
1.3. TIPOS ................................................................................................................................... 8
1.3.1. UML: LENGUAJE UNIFICADO DE MODELADO........................................................................... 8
1.3.1.1. CARACTERÍSTICAS............................................................................................................ 8
1.3.2. NOTACIÓN DE PROCESOS DE NEGOCIO (BPMN)..................................................................... 12
1.3.2.1. CARACTERÍSTICAS...................................................................................................... 13
1.3.3. DIAGRAMA DE FLUJOS DE DATOS ........................................................................................ 14
1.3.3.1. CARACTERÍSTICAS.......................................................................................................... 16
1.4. SEMÁNTICA Y PRESENTACIÓN ............................................................................................. 16
1.5. UTILIDAD E IMPORTANCIA DE LOS MODELOS EN LA FASE DE DISEÑO DE SOFTWARE ................... 17
1.6. NIVELES DE UN MODELO .................................................................................................... 17
1.7. IMPORTANCIA DEL MODELAMIENTO ................................................................................... 18
REFERENCIAS ..................................................................................................................................... 20
ÍNDICE DE IMÁGENES
Imagen 1: Base de Datos ..................................................................................................................... 6
Imagen 2: Modelo Entidad Relación ................................................................................................... 7
Imagen 3: Simbología Diagrama de Casos ........................................................................................ 10
Imagen 4: Ejemplo de Diagrama de Caso de Uso.............................................................................. 11
Imagen 5: Ejemplo de Diagrama de Interacción ............................................................................... 12
Imagen 6: Ejemplo de Modelo BPMN ............................................................................................... 13
Imagen 7: Ejemplo de DFD de Contexto (Nivel 0) ............................................................................. 14
Imagen 8: Ejemplo DFD Nivel 2 ......................................................................................................... 15
3
ESTE DOCUMENTO CONTIENE LA SEMANA 1
INTRODUCCION A LOS MODELOS
OBJETIVO ESPECÍFICO
Comprender las características, tipos y forma de aplicación de distintos modelos,
distinguiendo su importancia para la fase de diseño de software.
INTRODUCCIÓN
En esta semana se hará una introducción al modelo de datos, se presentarán las características
conceptuales de los modelos y la aplicación de estos en la realidad, como también se dará a
conocer el lenguaje de modelado unificado (UML) con sus particularidades.
4
ESTE DOCUMENTO CONTIENE LA SEMANA 1
1. MODELO
El proceso de modelado de datos corresponde a la documentación del diseño de un sistema que
hace uso de gran cantidad de datos, especificando de manera formal los componentes y las
funciones de este (Computación, 2012).
Los modelos de datos tienen como objetivo entregar una visión estructurada de una organización.
Estos modelos deben ser detallados y deben permitir crear un sistema abarcando todas las
funciones necesarias para la organización.
Esta representación del sistema muestra las propiedades estáticas (entidades u objetos,
propiedades o atributos de esas entidades, y relaciones entre esas entidades), los aspectos
dinámicos (operaciones sobre entidades, sobre propiedades o relaciones entre operaciones) y
también define las reglas de integridad sobre las entidades y las operaciones que se pueden
ejecutar.
Los modelos de datos se requieren para representar las necesidades relacionadas con los datos de
un proceso de un negocio, pues representan de manera gráfica el flujo de los datos entre las
distintas entidades que incluye el sistema (Computación, 2012).
https://goo.gl/QXLG6k
5
ESTE DOCUMENTO CONTIENE LA SEMANA 1
1.1.CARACTERÍSTICAS CONCEPTUALES
Los datos son el fundamento de la informática y de los componentes de esta área. La palabra dato
viene del latín datum, y se refiere a una representación mediante símbolos numéricos, alfabéticos
o de otra clase que indica la característica de algo (ABC, 2007). Esta definición da a entender que
los datos en su individualidad (p. ej., Juan) no representan nada si no hay un conjunto de datos
que generen información (p. ej. Juan tiene 36 años).
Finalmente, se puede mencionar que la informática sirve para dar un orden y una estructura a los
datos que aparecen en los modelos de datos, los cuales dan los parámetros para la forma en que
serán almacenados y cómo serán tratados a través de las aplicaciones que los utilizan, es decir, a
través de las bases de datos. Una base de datos es el conjunto de datos informativos organizados
en un mismo contexto para su uso y vinculación (ABC, 2007,).
6
ESTE DOCUMENTO CONTIENE LA SEMANA 1
1.2.APLICACIÓN DE MODELOS
Los modelos pueden ser aplicados en cualquier organización, ya que todas estas manejan datos
que sirven para la toma de decisiones, desde una familia hasta una industria puede implementar
algún sistema para la manipulación de la información potenciando una mejor toma de decisiones.
7
ESTE DOCUMENTO CONTIENE LA SEMANA 1
1.3. TIPOS
- Modelo de clases
- Modelo de casos de usos
- Diagrama de interacción
1.3.1.1. CARACTERÍSTICAS
ideal, es aquella que admite diseño desde inicio a fin, diseño inverso (o rediseño) y diseño
vise-versa, con esquemas amplios para documentar detalladamente los procesos (Salinas,
2010).
UML se puede usar para modelar distintos tipos de sistemas: sistemas de software, sistemas de
hardware y organizaciones del mundo real.
UML ofrece nueve diagramas en los cuales modelar sistemas (Salinas, 2010).
8
ESTE DOCUMENTO CONTIENE LA SEMANA 1
Diagramas de actividad para modelar el comportamiento de los casos de uso, objetos
u operaciones.
Diagramas de clases para modelar la estructura estática de las clases en el sistema.
Diagramas de objetos para modelar la estructura estática de los objetos en el sistema.
Diagramas de componentes para modelar componentes.
Diagramas de implementación para modelar la distribución del sistema.
Modelo de clases
Este modelo, llamado también diagrama de clases, sirve para mostrar las relaciones entre las
clases que existen en un sistema. La clase es la unidad básica del modelo donde se encapsula toda
la información relacionada con un objeto y está compuesta por tres partes representadas en un
rectángulo:
Este tipo de diagrama de UML presenta la forma como un cliente, llamado Actor, opera el sistema
representado. Este esquema utiliza las siguientes notaciones:
9
ESTE DOCUMENTO CONTIENE LA SEMANA 1
Imagen 3: Simbología diagrama de casos
Fuente: https://goo.gl/Rqhhhp
- Actor: es un rol (no necesariamente una persona) que un usuario ejecuta en el sistema. Es
la labor lo que se representa con este símbolo.
- Caso de uso: es una operación o tarea específica que se ejecuta por la orden de algún
agente externo, pudiendo ser por la petición de un actor o bien por el requerimiento o
llamado de otro caso de uso.
- Relaciones: son las conexiones entre las clases, diferencias por el tipo de línea que usan de
acuerdo con la función que representan:
10
ESTE DOCUMENTO CONTIENE LA SEMANA 1
Imagen 4. Ejemplo de diagrama de caso de uso
Fuente: https://goo.gl/afpcgT
En el diagrama se aprecia que el Actor (usuario) hace un pedido de los productos obtenidos en el
catálogo, donde el proceso “hacer pedido” es el que se encarga de registrar los datos del cliente,
obtener el producto y validar el medio de pago con el fin de realizar la transacción.
Diagrama de interacción
Este diagrama es el que representa la manera de cómo un Cliente (actor) y Objetos (Clases) se
pueden comunicar entre sí por la acción o petición de un evento. Los diagramas de interacción se
pueden obtener al analizar el diagrama estático de clases o el de casos de uso.
- Mensaje a otro objeto: representa la llamada (método) que hace un objeto a otro
objeto.
11
ESTE DOCUMENTO CONTIENE LA SEMANA 1
Imagen 5. Ejemplo de diagrama de interacción
Fuente: https://goo.gl/FAfJzX
En este diagrama se puede apreciar que el Cliente hace un pedido al Sistema y el Sistema verifica
el pedido en el Restaurante, y cuando el Cliente genera el pago, se verifica el pago en el banco.
Todas las respuestas son enviadas al Cliente con el fin de finalizar el flujo de información.
El BPMN describe gráficamente la lógica de los pasos que sigue un proceso de un negocio
determinado, plasmando el diseño de los procesos y cómo estos se implementan en la práctica.
La importancia de este tipo de modelado BPMN es que es un estándar que se utiliza a nivel
internacional. Es independiente de la metodología que se utilice para el modelado de procesos.
Hace que se disminuya la brecha existente entre los procesos existentes en el negocio y el
modelado que se hace de estos. Como BPMN es un estándar, entonces es comprendido por todos
los stakeholders (inversionistas). Según Bayard (2012) en BPMN existen 3 tipos de niveles:
Nivel descriptivo: este nivel describe la lógica del negocio representado en detalle, por lo
general se ven hasta los subprocesos y no contiene casos de excepción. Se utiliza a nivel
ejecutivo, ya que abstrae la complejidad y permite delimitar el contexto y las
funcionalidades
Nivel operativo: es un nivel más detallado, ya que incluye los casos de excepción,
presentando las reglas del negocio y la interacción que hay con todos los participantes. Es
la base para la implementación, independiente de la tecnología que se use.
Nivel técnico: es el modelo ejecutable en el entorno en que se implementa. Describe los
errores, los roles, los permisos, las estructuras de los datos, los formularios, etc.
12
ESTE DOCUMENTO CONTIENE LA SEMANA 1
1.3.2.1. CARACTERÍSTICAS
Para representar un modelo BPMN, que es una notación gráfica estandarizada que permite el
modelado de procesos de negocio, lo cual fue inicialmente desarrollado por la organización
Business Process Management Initiative (BPMI), y actualmente mantenido por el Object
Management Group (OMG), se necesitan los siguientes componentes (Bayard, 2012):
Actividades: Representa los trabajos que se realizan en una organización. Estas actividades
son las que consumen los recursos de la empresa y pueden ser simples o compuestas.
En este diagrama se aprecia que el Cliente selecciona un artículo y luego lo solicita, lo que genera
una serie de acciones en otros niveles hasta la entrega del artículo. También se representa en el
diagrama el caso en que el Cliente genere un reclamo, lo cual genera otras acciones, hasta llegar al
13
ESTE DOCUMENTO CONTIENE LA SEMANA 1
punto final donde se recibe el pago y se registra. Como su nombre lo indica, los diagramas de
interacciones muestran la interacción entre el usuario y los procesos necesarios para que se
ejecute una acción.
Los DFD también se pueden representar en niveles, de acuerdo con las especificaciones que se van
haciendo en cada nivel. El nivel de contexto o nivel 0 es el nivel más general del sistema. Luego, se
va desglosando el sistema en subsistemas que van representando las funciones que se ejecutan en
aspectos más específicos hasta llegar a representar todo el sistema con sus subsistemas y las
funciones que se ejecutan en ellos.
14
ESTE DOCUMENTO CONTIENE LA SEMANA 1
En este diagrama de contexto o nivel 0 se muestran los aspectos generales de un Sistema de
Ventas donde la información circula en los flujos: Factura, Compra, Productos y Pedido. Las
entidades relacionadas son Clientes y Proveedores.
Los símbolos utilizados para representar los DFD son los siguientes:
Entidad: representa a las personas u otros sistemas que se relacionan con el sistema
diagramado.
Flujos: estas conexiones muestran la información que fluye entre los procesos.
Almacén: es donde se almacenan y extraen los datos que se necesitan en los procesos.
En la imagen 8 se muestra un DFD nivel 2, esto significa que se ha dado una tercera mirada al
sistema, descomponiéndolo en subsistemas o, mejor dicho, representando los procesos y
subprocesos del sistema, tales como: Verificar, Armar, Asignar, verificar; donde hay flujo de
información como el pedido, el detalle de libros, las órdenes de compra y almacenes donde se
registra la información Clientes, Libros, Pedidos Pendiente y Órdenes de Compra.
15
ESTE DOCUMENTO CONTIENE LA SEMANA 1
Si quieres profundizar en la elaboración y uso de los DFD, que
son una de las mejores y más utilizadas herramientas para
esquematizar un sistema, puedes revisar el siguiente enlace.
https://goo.gl/YsqZEs
1.3.3.1. CARACTERÍSTICAS
Una de las principales características de este modelo es su simplicidad, y se debe al hecho que son
solamente cuatro los símbolos utilizados que representan a los elementos (entidades externas,
archivos, procesos y flujos de información); con los cuales se puede producir un esquema, que
alcance el nivel de detalle requerido por el proyectista; y éste pueda ser interpretado por todas las
personas involucradas en el proyecto, sin el requerimiento de un conocimiento previo de
informática.
enfoca en la necesidad de establecer una interacción con el usuario de una manera más
16
ESTE DOCUMENTO CONTIENE LA SEMANA 1
1.5.UTILIDAD E IMPORTANCIA DE LOS MODELOS EN LA FASE DE DISEÑO
DE SOFTWARE
Disponer de un modelo antes de proceder al desarrollo de software y hardware es tan importante
para el ingeniero responsable de cualquier automatización industrial como puede ser, para el
arquitecto, tener un anteproyecto antes de construir un gran edificio.
El modelado adquiere mayor importancia cuanto mayor es la complejidad del sistema. Algunos
sistemas (por ejemplo, biológicos) son tan complicados que hasta hace poco no se sabía muy bien
cómo funcionaban pero que, tras el modelado de sus partes elementales y la posterior conexión
de las mismas, empiezan ya a ser estudiados y entendidos, al menos en alguno de sus aspectos.
Sin ir tan lejos, tener un buen modelo resulta de una ayuda inestimable para cualquier diseño de
automatización industrial.
Sería estupendo que el lenguaje de modelización fuera universal pues ello puede facilitar la
comunicación entre los equipos de desarrollo dentro de la empresa y también, fuera de ella, entre
los miembros de la comunidad científica.
En el nivel interno.
Este esquema se especifica mediante un modelo físico y describe todos los detalles para el
almacenamiento de la base de datos, así como los métodos de acceso.
Es el nivel más cercano al almacenamiento físico de los datos. Permite escribirlos tal y como están
almacenados en el ordenador. En este nivel se diseñan los archivos que contienen la información,
la ubicación de los mismos y su organización, es decir, se crean los archivos de configuración.
En el nivel conceptual.
Este esquema oculta los detalles de las estructuras de almacenamiento y se concentra en describir
entidades, atributos, relaciones, operaciones de los usuarios y restricciones.
17
ESTE DOCUMENTO CONTIENE LA SEMANA 1
En este nivel se representan los datos que se van a utilizar sin tener en cuenta aspectos como lo
que representamos en el nivel interno.
En el nivel externo.
Se describen varios esquemas externos o vistas de usuario. Cada esquema externo describe la
parte de la base de datos que interesa a un grupo de usuarios determinados y oculta a ese grupo
el resto de la base de datos.
Es el más cercano al usuario. En este nivel se describen los datos o parte de los datos que más
interesan a los usuarios.
En esta imagen se muestran los niveles de un modelo de acuerdo a la cercanía con el usuario o la
máquina que fueron explicados anteriormente.
Al igual que en el desarrollo de un sistema, toda modificación al esquema de base de datos debe
realizarse primero en el modelo conceptual, no en el lógico ni en el físico.
La habilidad de crear buenos modelos es una cualidad que se adquiere con la experiencia
18
ESTE DOCUMENTO CONTIENE LA SEMANA 1
COMENTARIO FINAL
Todos los modelos presentados en los contenidos de la semana permiten entender los niveles de
abstracción que se deben tener al modelar un sistema. En los inicios del modelamiento se
utilizaron los diagramas de flujos, luego los diagramas de flujos de datos y posteriormente aparece
el modelamiento basado en objetos.
El modelamiento basado en objetos tiene la ventaja de que los objetos se pueden reutilizar, lo cual
agiliza la labor del analista y del desarrollador. Existen varios lenguajes basados en este tipo de
modelamiento, tales como Java, .NET que son unos de los más conocidos.
La mayoría de las aplicaciones web actuales utilizan el modelamiento de datos como base para su
análisis, diseño y posterior implementación. Incluso este tipo de modelamiento optimiza la
mantención y reestructuración de los sistemas.
19
ESTE DOCUMENTO CONTIENE LA SEMANA 1
REFERENCIAS
bayard.blogspot.cl/2012/03/831-pools.html
http://elvex.ugr.es/idbis/db/docs/intro/C%20Modelado%20de%20datos.pdf
http://escritura.proyectolatin.org/diseno-e-implementacion-de-bases-de-datos-desde-
una-perspectiva-practica/13-tipos-de-modelos-de-datos/
http://datateca.unad.edu.co/contenidos/2150514/Modulo_exe/index.html
http://ict.udlap.mx/people/carlos/is341/bases02.html
http://users.dcc.uchile.cl/~psalinas/uml/introduccion.html
https://vargasdavid.wordpress.com/13/
20
ESTE DOCUMENTO CONTIENE LA SEMANA 1
White, S. y Miers, D. (2007). BPMN, Guía de Referencia y Modelado. Recuperado de:
http://goo.gl/G4XU9L
21
ESTE DOCUMENTO CONTIENE LA SEMANA 1
22
ESTE DOCUMENTO CONTIENE LA SEMANA 1