2. Contenido
Pág. 2/36 Aplicación del Lenguaje Unificado de Modelado (UML) al diseño de controles .NET para dispositivos con tecnología 1-Wire®
ANTECEDENTES UML
PROGRAMACION ORIENTADA A OBJETOS
DEFINICION DE OBJETOS Y CLASES
RELACIONES DE LAS CLASES DE USO
AGRUPAMIENTO
SUGERENCIAS Y CONCLUSIONES
UTILIDAD
PASOS A SEGUIR
3. Pág. 7/36 Aplicación del Lenguaje Unificado de Modelado (UML) al diseño de controles .NET para dispositivos con tecnología 1-Wire®
UML es la creación de tres personas: Grady Booch, James
Rumbaugh e Ivar Jacobson durante la década de los 80 y principio
de los 90.
En 1994 Rumbaugh, entra a trabajar en Rational Software
Corporation, donde ya trabajaba Booch y un año después ingresó
Jacobson y unieron sus ideas para crear el UML.
En el año 1997 se crea un consorcio del UML y entre sus miembros
se encuentran:
Ese mismo año se crea la versión 1.0 del UML y se puso a
consideración del OMG (Object Management Group), el cual se
encargó de conservar el UML y de generar nuevas versiones hasta la
fecha.
ANTECEDENTES UML
Rational Software
Corporation
Marco teórico – UMLMarco teórico – UML
4. Pág. 8/34 Aplicación del Lenguaje Unificado de Modelado (UML) al diseño de controles .NET para dispositivos con tecnología 1-Wire®
Unified (Unificado): consiste en brindar sistemas de información y
las mejores prácticas de ingeniería, para el desarrollo de sistemas
más exitosos. Independientes de implementaciones, plataformas y
lenguajes.
Modeling (Modelado): es la representación de un sujeto, capturando
un conjunto de ideas conocidas como abstracciones acerca de este
sujeto.
Language (Lenguaje): se requiere de un lenguaje común que sea
entendido por todas las personas que participan en la construcción de
un sistema.
Marco teórico – UMLMarco teórico – UML
5. Pág. 9/36 Aplicación del Lenguaje Unificado de Modelado (UML) al diseño de controles .NET para dispositivos con tecnología 1-Wire®
UML es una herramienta de lenguaje visual para modelación de
sistemas (comprendiendo hardware y software) que permite generar
diagramas organizados que capten todas las ideas de un proceso,
siendo su principal finalidad que sea fácil de comprender por todas las
personas involucradas en el desarrollo del sistema. El UML se basa en
la programación orientada a objetos.
VENTAJAS DEL UML:
Fácil de usar y entender.
Simple.
Preciso.
Fácil de modificar.
Sus diagramas pueden ser entendidos incluso por aquellas personas
que no tienen conocimientos de programación.
Independiente de la implementación.
Independiente del proceso.
Marco teórico – UMLMarco teórico – UML
6. Pág. 10/36 Aplicación del Lenguaje Unificado de Modelado (UML) al diseño de controles .NET para dispositivos con tecnología 1-Wire®
PROGRAMACIÓN ORIENTADA A OBJETOS
ABSTRACCIÓN
El proceso de abstracción permite seleccionar las
características relevantes dentro de un conjunto e
identificar comportamientos comunes para definir nuevos
tipos de entidades en el mundo real.
La esencia del encapsulamiento es que cuando un objeto
trae consigo su funcionalidad, esta última se oculta de otros
objetos y del mundo exterior.
El propósito principal de la herencia es el de organizar
mejor las clases que componen una determinada realidad,
y poder agruparlas en función de atributos y
comportamientos comunes.
Mediante las relaciones los objetos colaboran entre si unos
con otros, ya que en un sistema los objetos trabajan en
conjunto.
HERENCIA
RELACIONES
ENCAPSULAMIENTO
El paradigma de “Orientación a Objetos” comenzó en la década de los 80, y este
proponía una forma novedosa de modelar el mundo que nos rodea, siendo su
propósito desarrollar software que modele un esquema del mundo real. Los programas
son organizados como grupos cooperativos de objetos, los cuales son instancias de
alguna clase. Sus pilares fundamentales son:
7. Pág. 11/36 Aplicación del Lenguaje Unificado de Modelado (UML) al diseño de controles .NET para dispositivos con tecnología 1-Wire®
DEFINICIÓN DE OBJETOS Y CLASES
OBJETOS CLASES
Un objeto es una instancia de
una clase, cada objeto tiene un
conjunto de características y
un comportamiento definido
(propiedades, métodos y
eventos) que lo diferencian de
otros tipos de objeto.
Una clase es una categoría
o grupo de cosas que tienen
atributos y acciones
similares, dicho de otra
forma una clase es una
plantilla para crear objetos, y
además es el bloque de
construcción primario en el
ambiente de orientación a
objetos.
Unified Modeling Language – UMLUnified Modeling Language – UML
8. Pág. 12/36 Aplicación del Lenguaje Unificado de Modelado (UML) al diseño de controles .NET para dispositivos con tecnología 1-Wire®
REPRESENTACIÓN DE UN DIAGRAMA DE CLASES
TransportesAcuáticos TransportesTerrestres TransportesAéreos
Carro
MediosdeTransporte
REPRESENTACIÓN DE UNA CLASE
Nombre
Atributos
Métodos
Responsabilidades
9. Pág. 12/36 Aplicación del Lenguaje Unificado de Modelado (UML) al diseño de controles .NET para dispositivos con tecnología 1-Wire®
REPRESENTACIÓN DE UN DIAGRAMA DE CLASES
TransportesAcuáticos TransportesTerrestres TransportesAéreos
Carro
MediosdeTransporte
EJEMPLO
Coche
marca:String
modelo:String
matricula:String
color:String
kilómetros:int
velocidad:int
acelerar(cantidad:int)
frenar(cantidad:int)
arrancar()
obtenerVelocidad():int
Transporta gente
Consume gasolina
10. Pág. 13/36 Aplicación del Lenguaje Unificado de Modelado (UML) al diseño de controles .NET para dispositivos con tecnología 1-Wire®
CASO DE USOActor:
Rol que juega un usuario con respecto al sistema.
Caso de Uso:
Operación o tarea específica que se realiza tras una orden de algún agente
externo, originada por una petición de un actor o bien desde la invocación
desde otro caso de uso.
Un caso de uso es una estructura para describir la forma en que un sistema
lucirá para los usuarios.
Es importante destacar que el proceso unificado se maneja
mediante casos de uso.
11. Pág. 13/36 Aplicación del Lenguaje Unificado de Modelado (UML) al diseño de controles .NET para dispositivos con tecnología 1-Wire®
CASO DE USO
Son: Inclusión, Extensión, Generalización y Agrupamiento.
Asociaciones: Es el tipo de relación más básica que indica la invocación
desde un actor o caso de uso a otra operación (caso de uso).
Dependencia o Instanciación: Es una forma muy particular de relación entre
clases, en la cual una clase depende de otra, es decir, se instancia (se crea).
RELACIONES DE LOS CASOS DE USO
12. CASO DE USO
Inclusión <<include>>: Volver a utilizar los pasos de un Caso de Uso dentro
de otro. Permite factorizar un comportamiento en un caso de uso aparte y
evitar repetir un mismo flujo en diferentes casos de uso. Incluye la
funcionalidad de un Caso de Uso en otro.
Un caso de uso base incorpora explícitamente el comportamiento de otro en
algún lugar de su secuencia.
RELACIONES DE LOS CASOS DE USO
Dependencia
Cliente
Buscar en
la BD
peliculas
<<include>>
<<include>>
Encontrar
por Titulo
Encontrar
por Actor
13. Pág. 13/36 Aplicación del Lenguaje Unificado de Modelado (UML) al diseño de controles .NET para dispositivos con tecnología 1-Wire®
CASO DE USO
Extensión <<extend>>: Un caso de uso base incorpora implícitamente el
comportamiento de otro caso de uso en el lugar especificado indirectamente
por este otro caso de uso.
Extiende la funcionalidad de un Caso de Uso a otro bajo unas condiciones
o en algún lugar de su secuencia.
RELACIONES DE LOS CASOS DE USO
Apuntar
Película
Contabilizar
Ingresos
Estereotipo
<<extend>>
Cajero
14. Pág. 13/36 Aplicación del Lenguaje Unificado de Modelado (UML) al diseño de controles .NET para dispositivos con tecnología 1-Wire®
CASO DE USO
Generalización: Las Clase se pueden heredar entre si, de igual forma sucede
con los Casos de Uso. El Caso de Uso secundario hereda las acciones y
significados del Primario, y además agrega sus propias acciones.
RELACIONES DE LOS CASOS DE USO
Comprar
Gaseosa
Reabastecedor
Comprar
un Vaso de
Gaseosa
Recolector
Agente proveedor
15. Pág. 13/36 Aplicación del Lenguaje Unificado de Modelado (UML) al diseño de controles .NET para dispositivos con tecnología 1-Wire®
CASO DE USO
Se diferencian por el estereotipo <<uses>> (uso) o
(<<extends>>) (herencia) .
extends: Se recomienda utilizar cuando un caso de
uso es similar a otro
( en sus características).
uses: Se recomienda utilizar cuando se tiene un
conjunto de características que son similares en más
de un caso de uso y no se desea mantener copiada
la descripción de la característica.
RELACIONES DE LOS CASOS DE USO
16. Pág. 13/36 Aplicación del Lenguaje Unificado de Modelado (UML) al diseño de controles .NET para dispositivos con tecnología 1-Wire®
CASO DE USO
RELACIONES DE LOS CASOS DE USO
17. Pág. 13/36 Aplicación del Lenguaje Unificado de Modelado (UML) al diseño de controles .NET para dispositivos con tecnología 1-Wire®
CASO DE USO
Cuando un Sistema consta de varios Sub-
Sistemas, o cuando se realiza toma de
requerimientos a varios usuarios, necesitamos
organizar los Casos de uso por Categorías o
Tipos de Sistemas, la mejor forma de organizarlo
son con los Paquetes.
AGRUPAMIENTO
18. Pág. 13/36 Aplicación del Lenguaje Unificado de Modelado (UML) al diseño de controles .NET para dispositivos con tecnología 1-Wire®
CASO DE USOModelar el comportamiento de un elemento (sistema, subsistema, clase):
Centrarse en qué hace el elemento, NO en cómo lo hace.
1º) Sirven para intercambiar opiniones los expertos del dominio, los
usuarios finales y los desarrolladores.
Los expertos del dominio especifican su vista externa para que los
desarrolladores construyan su vista interna.
Los expertos del dominio especifican su vista externa para que los
desarrolladores construyan su vista interna.
2º) El creador del elemento comunica cómo se debería usar.
El elemento puede ser complejo y tener muchas operaciones.
3º) Sirven de base para probar el sistema una vez implementado.
UTILIDAD
19. Pág. 13/36 Aplicación del Lenguaje Unificado de Modelado (UML) al diseño de controles .NET para dispositivos con tecnología 1-Wire®
CASO DE USO
Identificar los actores que interactúan con el elemento.
Organizar los actores (roles generales, roles
especializados).
Considerar las formas más importantes que tiene cada
actor de interactuar con el elemento.
Considerar las formas excepcionales que tiene cada actor
de interactuar con el elemento.
Organizar estos comportamientos utilizando las relaciones
entre casos de uso vistas.
Especificar cada caso de uso con texto y trazas de
eventos.
PASOS A SEGUIR
20. Pág. 13/36 Aplicación del Lenguaje Unificado de Modelado (UML) al diseño de controles .NET para dispositivos con tecnología 1-Wire®
CASO DE USO
Cada caso de uso debe representar un comportamiento
distinto e identificable del sistema (razonablemente
atómico).
Factorizar el comportamiento común: include.
Factorizar las variantes de comportamiento: extends.
Describir el flujo de eventos de manera suficientemente
clara para que alguien externo lo entienda.
Mostrar sólo los importantes para comprender el
comportamiento del sistema.
Mostrar sólo los actores implicados.
SUGERENCIAS
21. Pág. 33/36
ConclusionesConclusiones
Aplicación del Lenguaje Unificado de Modelado (UML) al diseño de controles .NET para dispositivos con tecnología 1-Wire®
El UML constituye una herramienta de ayuda ideal en el
desarrollo de sistemas y especialmente de programas con
filosofía orientada a objetos.
Los diagramas de especificaciones UML capturan los
requisitos del cliente, para desarrollar un sistema,
presentando el funcionamiento del mismo en una forma fácil
de entender por las personas relacionadas con el sistema e
incluso por aquellas que no tienen conocimientos de
programación.
El UML permite crear nuevas clases a partir de otras ya
existentes, haciendo uso de la herencia, lo que significa un
ahorro sustancial de tiempo al momento de realizar la
programación, en vista de que no es necesario escribir
instrucciones de código para ejecutar acciones que ya se
encuentren disponibles en otras clases.