Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos...
Transcript of Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos...
![Page 1: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/1.jpg)
Copyright Cenfotec S.A. 2000..2006
Integración de los modelos en losprocesos de Ingeniería del software
Club de Investigación TecnológicaModelaje de sistemas10 de febrero del 2006
Ignacio Trejos ZelayaCIT, Cenfotec, ULatina, ITCR
![Page 2: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/2.jpg)
Copyright Cenfotec S.A. 2000..2006
Agradecimientos
• Agradecemos las contribuciones de PriscillaGarbanzo, Antonio Luna, Patricio Letelier, ÉdgarOviedo y Laura Valenzuela
• Se reutilizan aquí materiales de Cenfotec, RationalSoftware, Universidad Politécnica de Valencia,Grady Booch, Ivar Jacobson, James Rumbaugh,Miguel Katrib (y Garrincha), Cook & Daniels
![Page 3: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/3.jpg)
Copyright Cenfotec S.A. 2000..2006
Temas
• Modelos
• Procesos
• Calidad del software
• Integración de modelos en los procesos paramejorar calidad y control de los proyectos
• Modelaje formal
![Page 4: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/4.jpg)
Copyright Cenfotec S.A. 2000..2006
Modelos
![Page 5: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/5.jpg)
Copyright Cenfotec S.A. 2000..2006
Modelos y construcción
• Casa del perrito
• Casa de habitación
• Rascacielos
• aeronáutica, automovilística, electrónica digital, ...
![Page 6: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/6.jpg)
Copyright Cenfotec S.A. 2000..2006
Construcción de una casa para “Fido”
Puede hacerlo una sola personaRequiere:
Modelaje mínimoProceso simpleHerramientas simples
![Page 7: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/7.jpg)
Copyright Cenfotec S.A. 2000..2006
Construcción de una casa
Construida eficientemente y en un tiempo razonable por un equipoRequiere:
ModelajeProceso bien definidoHerramientas más sofisticadas
![Page 8: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/8.jpg)
Copyright Cenfotec S.A. 2000..2006
Construcción de un rascacielos
Construida por un equipo que involucra especialistasRequiere:
Modelaje en distintos niveles y perspectivasProceso muy bien definidoHerramientas sofisticadasEspecialistasAdministración compleja
![Page 9: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/9.jpg)
Copyright Cenfotec S.A. 2000..2006
¿Qué es un modelo?
Un modelo es una abstracción de algo, cuyo objetivo escomprenderlo antes de construirlo; es la simplificaciónde la realidad, una proyección a escala de esta última. Su objetivo es eliminar los detalles irrelevantes ycentrarse en uno o varios aspectos importantes a la vez. Promueve el entendimiento a través de los distintosgrupos involucrados en el desarrollo de sistemas, pormedio de lenguajes gráficos o formales que permitencomunicar conceptos específicos.
![Page 10: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/10.jpg)
Copyright Cenfotec S.A. 2000..2006
El desarrollo de modelos
Modelo inicial
• Descripción abstracta construida para comprenderel problema
Modelos posteriores
• Describir qué hará el software y cómo lo hará,asignando entre los objetos las responsabilidadeshacer realidad el comportamiento del sistema.
![Page 11: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/11.jpg)
Copyright Cenfotec S.A. 2000..2006
Variedades de modelos
Construido para especificar.Interpretado como unadescripción de comportamiento
modelo esencialmodelos de especificación eimplementación
Modelo del mundo
El software
Correspondenciasistemática
Modelo del software
Construido para entender.Interpretado como unamanifestación de hechos
El mundo
Descripción Prescripción
![Page 12: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/12.jpg)
Copyright Cenfotec S.A. 2000..2006
Vistas
• Es imposible captar los detalles de un sistemacomplejo en una sola vista.
• Por ejemplo, en los modelos centrados en objetos,se debe comprender:
– La estructura de clases.
– Los mecanismos de herencia.
– Los comportamientos individuales de los objetos.
– Las interacciones entre los objetos.
– La dinámica del sistema en su conjunto.
![Page 13: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/13.jpg)
Copyright Cenfotec S.A. 2000..2006
Modelos y vistas
Diagramas de Transición
Casos de uso
El mundo
Diagrama de objetos Diagrama de clases
Diagramas de Colaboración
Diagramas de Secuencia
Vista arquitectónica. Dividir un sistema en subsistemas ej. Paquetes
Vista dinámica. (comportamiento) Orden de acciones, interacciones, ej. diagrama de secuencias .
Vista estática. (estructura) Relaciones entre objetos ej. diagrama de clases.
Modelos intermedios El software
![Page 14: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/14.jpg)
Copyright Cenfotec S.A. 2000..2006
Diagrama de interacción Diagrama de clases
Diagrama de transición deestados
![Page 15: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/15.jpg)
Copyright Cenfotec S.A. 2000..2006
Datos de A
Componente A del problema
Objeto A mapeado en el modelo de análisis
Objeto A modificado en estos modelos por aspectos de diseño. Expandido en otros
Problema del mundo real
Fase de análisis Modelo simplificado que capta la semántica del dominio del problema en términos de los objetos relacionados y su representación por medio de diagramas que muestran su estructura y comportamiento.
Fase de diseño Modelos que representan el dominio de la solución. Afectados por aspectos de especificación e implementación.
Diseño arquitectónico
Diseño detallado
Modelo del dominio
Modelos: desarrollo y transición
![Page 16: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/16.jpg)
Copyright Cenfotec S.A. 2000..2006
El modelaje es central
• Comunicar la estructura y el comportamiento deseadospara el sistema
• Visualizar y controlar la arquitectura del sistema• Comprender mejor el sistema en construcción: identificar
oportunidades de simplificación y reutilización• Manejar el riesgo• Establecer correspondencia entre artefactos de diversas
actividades de desarrollo y entre diversos niveles de diseño• Distribuir el trabajo entre los miembros de un equipo• Planificar y asegurar la integración de componentes,
subsistemas, artefactos• Verificar la calidad de los artefactos• Mantener el cumplimiento de objetivos
![Page 17: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/17.jpg)
Copyright Cenfotec S.A. 2000..2006
Sistema computacional
Proceso de negocios
Orden
Item
Envío
“El modelaje capta laspartes esenciales del sistema”
Abstracción - Modelaje visual
![Page 18: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/18.jpg)
Copyright Cenfotec S.A. 2000..2006
Beneficios de una notación visual
Interfaz de Usuario(Visual Basic,
Java, ..)Lógica del Negocio
(C++, Java, ..)
Servidor de BDs(C++ & SQL, ..)
Múltiples Sistemas
Componentes Reutilizados
Manejar la complejidad
Modelar el sistemaindependientementede la tecnología deimplementación
Promover la reutilización
![Page 19: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/19.jpg)
Copyright Cenfotec S.A. 2000..2006
Procesos
• Un proceso de software es un conjunto deactividades, métodos, prácticas y transformacionesque la gente usa para el desarrollo ymantenimiento de software y otros productosasociados.
![Page 20: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/20.jpg)
Copyright Cenfotec S.A. 2000..2006
Necesidades de los usuariosExpresadas por medio de los requerimientos o características de calidad. Existendos tipos:• Funcionales (qué debe hacer el sistema). Funcionalidad del sistema.• No Funcionales (bajo qué condiciones o restricciones). Req. del producto: usabilidad,
eficiencia, fiabilidad, portabilidad, mantenibilidad, reutilizabilidad, interoperabilidad. Req.organizacionales: de entrega, de implementación, de estándares. Req. externos:interoperabilidad, éticos, legislativos.
Desarrollo de software
Requerimientos nuevoso modificados
Sistema nuevoo modificado
Proceso de Desarrollo de Software
Proceso adecuadoNo existe un proceso de software universal. El proceso debe permitir obtener productos de calidad, que optimice los recursos (tiempo, costo).Las características particulares de cada proyecto y organización (equipo de desarrollo, recursos, etc.) exigen que el proceso sea configurable.
Satisfacción de los usuariosEl producto obtenido satisfacelas necesidades del cliente.
![Page 21: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/21.jpg)
Copyright Cenfotec S.A. 2000..2006
ProcesoSoftware
Actividades(cómo, cuando)
Roles(quién)
Artefactos(qué)
Personas
Ciclo de vida Herramienta
NotaciónPrácticas y principios
Paradigma
Define quién debe hacer qué, cuándo y cómo debe hacerlo.
Elementos de un proceso de software
![Page 22: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/22.jpg)
Copyright Cenfotec S.A. 2000..2006
¿Por qué importa el proceso?
Experiencia de proyectos con poca atención en el proceso durante lasetapas tempranas
Porcentaje deesfuerzo
Tiempo
Trabajo productivo
Proceso
Trabajo no productivo
Mc Connell
![Page 23: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/23.jpg)
Copyright Cenfotec S.A. 2000..2006
Atención al proceso
Experiencia de proyectos que ponen atención al proceso en etapas tempranasde desarrollo.
Porcentaje deesfuerzo
Tiempo
Trabajo productivo
Proceso
Trabajo no productivo
Mc Connell
![Page 24: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/24.jpg)
Copyright Cenfotec S.A. 2000..2006
Actividades genéricas
Especificacióncomponentes
Especificacióndiseño
Especificaciónsistema
Necesidadesusuario
Unidadescodificadas
EnsamblesSistema
integradoSistema
entregado
Plan ensayousuario
Expresiónrequerimientos
Análisis de reqs. Especificaciónsistema
Diseñosistema
Diseñocomponentes
Pruebasaceptación
Pruebasintegracióny sistema
Pruebasunitarias
Codificación
componentes
Plan pr.aceptación
Plan pr.integración
Plan pr.unidades
![Page 25: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/25.jpg)
Copyright Cenfotec S.A. 2000..2006
Principios de ingeniería
• Analizar el problema
• Especificar la solución
• Usar modelos
• Descomponer la solución
• Controlar las relaciones (integración y rastreo)
![Page 26: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/26.jpg)
Copyright Cenfotec S.A. 2000..2006
Principios de administración
• Definir estructura, papeles, responsabilidades,líneas de comunicación
• Planificar el trabajo
• Controlar avance contra planes
• Refinar planes progresivamente
![Page 27: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/27.jpg)
Copyright Cenfotec S.A. 2000..2006
Principios de calidad
• Evitar la introducción de defectos (prevención)• Asegurar que los defectos son detectados y
corregidos tan temprano como sea posible• Establecer y eliminar las causas y los síntomas de
los defectos• Auditar independientemente el cumplimiento de
estándares y procedimientos
![Page 28: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/28.jpg)
Copyright Cenfotec S.A. 2000..2006
AdministraciónCalidad
Ingeniería
DocumentaciónProcedimientosEstándaresRevisionesPruebas
Admin. proyectosAdmin. configuraciónModelos de proceso
Métodos de diseñoUML, SSADM, Yourdon
Calidad como parte del desarrollo
![Page 29: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/29.jpg)
Copyright Cenfotec S.A. 2000..2006
Cascada
Requerimientos
Análisis
Diseño
Programación
Pruebas Operación
![Page 30: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/30.jpg)
Copyright Cenfotec S.A. 2000..2006
Espiral de Boehm
![Page 31: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/31.jpg)
Copyright Cenfotec S.A. 2000..2006
Procesos iterativos
D
R
C
I
D
R
C
I
D
R
C
I
D
R
C
I
Iteración
Fuente: Philippe Kruchten, 1998. The Rational Unified Process, Addison-Wesley, pag. 60
R: requerimientos; D: diseño; C: codificación; I: pruebas de integración
![Page 32: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/32.jpg)
Copyright Cenfotec S.A. 2000..2006
Ciclo de vida incremental
Definición Bosquejo de Requisitos
Definición Bosquejo de Requisitos
Asignar Requisitosa los Incrementos
Asignar Requisitosa los Incrementos
Diseñar laArquitectura del Sistema
Diseñar laArquitectura del Sistema
Desarrollar Incrementosdel Sistema
Desarrollar Incrementosdel Sistema
ValidarIncrementos
ValidarIncrementos
IntegrarIncrementos
IntegrarIncrementos Validar SistemaValidar Sistema
Sistema Incompleto
SistemaFinal
Cada incremento es un subproducto terminado
![Page 33: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/33.jpg)
Copyright Cenfotec S.A. 2000..2006
Desarrollo incremental
Davis et al., 1988
![Page 34: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/34.jpg)
Copyright Cenfotec S.A. 2000..2006
El RUP es incremental/iterativo
Imagen propiedad de Rational Corporation
Un productoejecutable
![Page 35: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/35.jpg)
Copyright Cenfotec S.A. 2000..2006
Flujos de trabajo
Workflow Detail:Analyze the ProblemWorkflow: Requirements
Actividades
Workers Artefactos
![Page 36: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/36.jpg)
Copyright Cenfotec S.A. 2000..2006
Trabajadores, actividades, artefactos (RUP)
• System Analyst Worker
![Page 37: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/37.jpg)
Copyright Cenfotec S.A. 2000..2006
Artefactos
• Business Modeling Artifact Set
![Page 38: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/38.jpg)
Copyright Cenfotec S.A. 2000..2006
Caso de Uso Realización de Análisis Realización de Diseño
Caso de Prueba
X
«trace» «trace»
«trace»«trace»
Pruebas Funcionales
PruebasUnitarias
[The Unified Software Development Process. I. Jacobson, G. Booch and J. Rumbaugh. Addison-Wesley, 1999]
Proceso dirigido por los casos de uso
![Page 39: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/39.jpg)
Copyright Cenfotec S.A. 2000..2006
Definición de un Proceso de Software (Fases)
Planeación yConceptualización
Construcción Aplicación
Podemos dividir el proceso de software en las siguientes fases:
1. Planeación y Conceptualización: planear, definir los requerimientos, construir prototiposy demostraciones de concepto, etc.
2. Construcción: la creación del sistema.3. Aplicación: la transición de la implementación del sistema a su uso.
![Page 40: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/40.jpg)
Copyright Cenfotec S.A. 2000..2006
Planeación yConceptualización
1. Definir el Plan Preliminar
2. Especificar requerimientos
5. Perfeccionar el Plan
3. Definir alcance delproyecto
1. Definir el Plan Prelim. Tiempos
2. Definir el Plan Prelim. Calidad
3. Definir el Plan Prelim. Configuración
4. Definir el Plan Prelim.de Riesgos
1. Definir Requerimientos Funcionales
2. Definir Requerimientos No Funcionales
3. Elaborar modelos
1. Estimar costo, tiempo y esfuerzo
2. Definir alcance
2. Refinar el Plan Calidad
3. Refinar el Plan Configuración
4. Refinar el Plan Riesgos
1. Refinar el Plan Tiempos
Productos: Plan General del Proyecto Preliminar(Plan de tiempos,Plan de calidad, Plan deconfiguración, Plan de riesgos)
Productos: Especificación de Requerimientos deSoftware, Modelos
Productos: Contrato de software
Productos: Plan General del Proyecto (Plan detiempos,Plan de calidad, Plan de configuración,Plan de riesgos)
Una definición de proceso
Fases
Actividades
Productos
![Page 41: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/41.jpg)
Copyright Cenfotec S.A. 2000..2006
Construcción
1. Análisis detallado
2. Diseño de software
3. Implementación
Productos: Modelos de análisisy diseño, porción del Software
1. Ciclo de desarrollo 1
2. Ciclo de desarrollo 2
…
n. Ciclo de desarrollo n
4. Pruebas
5. Integración
Productos
Una definición de proceso
![Page 42: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/42.jpg)
Copyright Cenfotec S.A. 2000..2006
Aplicación
1. Configuración de máquinas cliente y servidor
2. Instalación de software
Productos: Software corriendoen entorno real
1. Implantación en el entorno real
3. Capacitación a usuarios
2. Elaboración material de ayuda
3. Pruebas
4. Realizar correcciones
1. Elaborar manual de usuario
2. Elaborar ayuda del software
Productos: Manual de usuario,Ayuda del software
1. Preparar capacitación
2. Realizar capacitación
Productos: Guía de usuarioProductos
Una definición de proceso
![Page 43: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/43.jpg)
Copyright Cenfotec S.A. 2000..2006
¿Qué es calidad del software?
"La totalidad de las características de un producto oservicio, que tienen que ver con su capacidad desatisfacer necesidades enunciadas o implícitas"
ISO 8402
The International Standard Quality Vocabulary
“Grado con el cual el cliente o usuario percibe que elsoftware satisface sus expectativas”
IEEE 729-83
![Page 44: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/44.jpg)
Copyright Cenfotec S.A. 2000..2006
Es multidimensional
Debetrabajar porlargo tiempo
Buenrendimiento
Sin pulgasni defectos
Fácil de usarAdaptado a misnecesidadesespecíficas
Ser capaz de usarlocon UNIX o
Windows
![Page 45: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/45.jpg)
Copyright Cenfotec S.A. 2000..2006
Modelo de calidad – ISO 9126
![Page 46: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/46.jpg)
Copyright Cenfotec S.A. 2000..2006
Usos de atributos de calidad
• Validar la completitud de una definición derequerimientos
• Identificar requerimientos de software
• Identificar objetivos para el diseño de software
• Identificar requerimientos para las pruebas delsoftware
• Identificar requerimientos para el aseguramiento dela calidad
• Identificar criterios de aceptación para un productode software terminado
![Page 47: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/47.jpg)
Copyright Cenfotec S.A. 2000..2006
Fuentes de defectos
Bender & Associates
![Page 48: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/48.jpg)
Copyright Cenfotec S.A. 2000..2006
Costos de reparar defectos (HP)
• Requerimientos $ 45 (< 1 h./p.)
• Diseño $ 450 (6 h./p.)
• Codificación $ 1,500 (20 h./p.)
• Integración $ 1,500 (20 h./p.)
• Pruebas finales $ 45,000 (600 h./p.)
• Entrega $450,000 (6,000 h./p.)
Hewlett-Packard 1991
![Page 49: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/49.jpg)
Copyright Cenfotec S.A. 2000..2006
Costos de reparación (IBM)
![Page 50: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/50.jpg)
Copyright Cenfotec S.A. 2000..2006
Acumulación de defectos
Análisis de Reqs.
Diseño
Construcción
Pruebas
Especif.correcta
PROBLEMA
Especif.incorrecta
Diseñocorrecto
Diseñoerróneo
Diseño deespec. errónea
Construccióncorrecta
Construcciónerrónea
Construyó s/undiseño erróneo
Funcionescorrectas
Errorescorregibles
Erroresincorregibles
Construyó s/ideas erróneas
Problemasocultos
Davis
![Page 51: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/51.jpg)
Copyright Cenfotec S.A. 2000..2006
Trabajo y re-trabajo
requerimientos diseño programación pruebas aceptación
![Page 52: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/52.jpg)
Copyright Cenfotec S.A. 2000..2006
Corrección tardía de defectos es cara
Fase en que se creaun defecto
Costo de
corregir
Requerimientos
Arquitectura
Diseño detallado
Construcción
Requerimientos Arquitectura Diseño detallado Construcción Liberación
50-200X
1X
Fase en que se corrige un defecto
50-200X
1X
McConnell
![Page 53: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/53.jpg)
Copyright Cenfotec S.A. 2000..2006
Detección tradicional
requerimientos diseño programación pruebas aceptación
![Page 54: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/54.jpg)
Copyright Cenfotec S.A. 2000..2006
Hacia la calidad
• Los defectos son evitables
• El mejoramiento continuo de la calidad no resideen aumentar las pruebas, sino en mejorarcontinuamente los procesos de producción
![Page 55: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/55.jpg)
Copyright Cenfotec S.A. 2000..2006
La calidad se construye...
• En la especificación de necesidades
• En el diseño de productos o servicios
• En la construcción del producto
• En la provisión del servicio
• Mediante el soporte ofrecido a lo largo del ciclo devida del producto
... a través de los procesos
![Page 56: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/56.jpg)
Copyright Cenfotec S.A. 2000..2006
Estática y dinámica
Sommerville, 2000
![Page 57: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/57.jpg)
Copyright Cenfotec S.A. 2000..2006
Detección localizada
requerimientos diseño programación pruebas aceptación
![Page 58: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/58.jpg)
Copyright Cenfotec S.A. 2000..2006
Ciclo V (zoom)
Especificación derequerimientos
Especificación derequerimientos
Diseñoarquitectónico
Pruebas deaceptación
Pruebas deintegración
Softwareprobado
Casos de prueba
Casos de prueba
Revisión
Revisión
LEYENDA
Fase o actividad
Productocontrolado
![Page 59: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/59.jpg)
Copyright Cenfotec S.A. 2000..2006
Ciclo V
V-Model Software Development Life Cycle
LEGEND
SDLCPhase
BaselinedPhase products
FeasibilityStudy
Requirementsdefinition
Statement of requirements
Projectinitiation
PlansUpdated
requirements
Requirementsspecification
Requirementsspecification
Architectural design
Designspecification
Detaileddesign
Module designs
Code
Coding
OperationProject
phase out
Operational software
Operationaltest
Projectcompletion
Acceptancetest
Acceptedsoftware
Testedsoftware
Integration test
Integrated software
Integration
Testedmodules
UnitTest
Test dataTest cases
Test dataTest cases
Test dataTest cases
Test data Test cases
Test dataTest cases
Integrationplan
BuildFiles
Test dataTest cases
Review
Review
Walkthrough
Code Reading
![Page 60: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/60.jpg)
Copyright Cenfotec S.A. 2000..2006
Verificación y validación
Necesidades delNegocio
DefineRequerimientos
Diseño delSistema
ConstrucciónDel Sistema
Verifica
Pruebas de Aceptación
Pruebas delSistema
Pruebas deIntegración
PruebasUnitarias
Verifica
Verifica
Verifica
Valida
Valida
Valida
Valida
Valida
Valida
Valida
Valida
RevisionesEstáticas
PruebasDinámicas
![Page 61: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/61.jpg)
Copyright Cenfotec S.A. 2000..2006
Proceso iterativo + V&V
R
D
C PU
PI
PA R
D
C PU
PI
PA R
D
C PU
PI
PA
iteración
![Page 62: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/62.jpg)
Copyright Cenfotec S.A. 2000..2006
Corregir más defectos más temprano
McConnell
Fase en que se creaun defecto
Costo de
corregir
Requerimientos
Arquitectura
Diseño detallado
Construcción
Requerimientos Arquitectura Diseño detallado Construcción Liberación
50-200X
1X
Fase en que se corrige un defecto
50-200X
1X
Arreglar acá
No acá
![Page 63: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/63.jpg)
Copyright Cenfotec S.A. 2000..2006
Filtrado de defectos
Requerimientos del cliente (100%)
Defectos en requerimientos Filtro 1
Filtro 3
Filtro 2
Filtro 4
Defectos en diseño y planificación
Defectos en código
Defectos en pruebas
80% bacteria
60% bacteria
40%
20%
20% puro
40% puro
60%
80%
Producto 99.9% libre de defectos
![Page 64: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/64.jpg)
Copyright Cenfotec S.A. 2000..2006
Prevención y detección temprana
![Page 65: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/65.jpg)
Copyright Cenfotec S.A. 2000..2006
Bajar incremento en costos de defectos
McConnell
Fase en que se creaun defecto
Requerimientos
Arquitectura
Diseño detallado
Construcción
Requerimientos Arquitectura Diseño detallado Construcción Liberación
1X
Fase en que se corrige un defecto
1X
10X?
10X?
Costo decorregir
![Page 66: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/66.jpg)
Copyright Cenfotec S.A. 2000..2006
Métodos formales
raíz :: this:float -> result:float pre :: this >= 0 post :: this == result * result
{∀∃λµθ⇒ΔΞ↔ε∪∩}
![Page 67: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/67.jpg)
Copyright Cenfotec S.A. 2000..2006
Métodos formales
• Utilizan formalismos lógico-matemáticos paradescribir artefactos informáticos
• Permiten hacer precisas nociones que de otramanera serían vagas
• Posibilitan análisis riguroso de especificaciones
• Posibilitan la verificación de diseños y código
• Exigidos por autoridades europeas paraaplicaciones de seguridad crítica
![Page 68: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/68.jpg)
Copyright Cenfotec S.A. 2000..2006
Métodos formales
• Meta: escribir código “correcto por construcción” apartir de especificaciones
• Idea clave: modelos y semántica
• Idea clave: refinamiento
![Page 69: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/69.jpg)
Copyright Cenfotec S.A. 2000..2006
Modelos
• Describir el software (sistema, componente) demanera abstracta
• Describir la interacción con el ambiente de maneraprecisa
• Describir la interacción entre componentes demanera precisa y abstracta
• Posibilitar el análisis de consistencia y completitud
![Page 70: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/70.jpg)
Copyright Cenfotec S.A. 2000..2006
Especificación
• Describir las propiedades estructurales y estáticasdel estado mediante predicados y tipos de datosabstractos: invariantes
• Describir las operaciones mediante precondicionesy postcondiciones
• Describir ciclos de vida, interacciones y reacción aeventos mediante álgebras de procesos o lógicatemporal
![Page 71: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/71.jpg)
Copyright Cenfotec S.A. 2000..2006
Refinamiento - estado
Estado abstracto
Estado concreto
Correspondencia
![Page 72: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/72.jpg)
Copyright Cenfotec S.A. 2000..2006
Refinamiento - operaciones
Op Abs
Op Conc
Pre Post
![Page 73: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/73.jpg)
Copyright Cenfotec S.A. 2000..2006
Refinamiento y contratos
y : [ x ≥ 0 , y2 = x ] ... Método de Newton ...
raíz :: this:float -> result:float pre :: this >= 0 post :: this == result * result
![Page 74: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/74.jpg)
Copyright Cenfotec S.A. 2000..2006
Especificación
raiz_ent (a) : int -> int
para_todo a : int se cumple
raiz_ent(a)*raiz_ent(a)
<= a
< (raiz_ent(a)+1)* (raiz_ent(a)+1)
![Page 75: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/75.jpg)
Copyright Cenfotec S.A. 2000..2006
Especificación - ¡ojo!
raiz_ent (a) : int -> int
para_todo a : int se cumple
raiz_ent(a)*raiz_ent(a)
<= a
< (raiz_ent(a)+1)* (raiz_ent(a)+1)
![Page 76: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/76.jpg)
Copyright Cenfotec S.A. 2000..2006
Especificación - ¡ojo!
raiz_ent (a) : int -> int
para_todo a : int y a >= 0 se cumple
raiz_ent(a)*raiz_ent(a)
<= a
< (raiz_ent(a)+1)* (raiz_ent(a)+1)
![Page 77: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/77.jpg)
Copyright Cenfotec S.A. 2000..2006
Código
int raiz_ent (int a){ int i, term, sum;
term = 1; sum = 1; for (i = 0; sum <= a; i++) { term = term + 2; sum = sum + term; } return i;}
![Page 78: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/78.jpg)
Copyright Cenfotec S.A. 2000..2006
Refinamiento de objetos
=>=>A
B
C
Yabadabadúclass Yabadabadú{ ... Struct ... [] ... * ...
Yabadabadú A ( ... ) { ...} Yabadabadú B ( ... ) {...} void C ( ...) { ... }}
![Page 79: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/79.jpg)
Copyright Cenfotec S.A. 2000..2006
UML y OCL
![Page 80: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/80.jpg)
Copyright Cenfotec S.A. 2000..2006
Una operación en OCL
context Passenger::book(f : Flight)
pre: f.maxNrPassengers > f.passengers->size
post: f.passengers = f.passengers@pre-> including(self)
![Page 81: Integración de los modelos en los procesos de Ingeniería ...€¦ · El desarrollo de modelos Modelo inicial •Descripción abstracta construida para comprender el problema Modelos](https://reader034.fdocuments.net/reader034/viewer/2022042914/5f4f5bd62afa395c6303599f/html5/thumbnails/81.jpg)
Copyright Cenfotec S.A. 2000..2006
¿Dónde usar OCL con UML?
• Dondequiera que UML hable de Expression• Ejemplos:
– Valores iniciales de atributos y asociaciones– Reglas de derivación– Cuerpos de operaciones de consulta– Invariantes de estado– Definición de atributos y operaciones adicionales– Pre-condiciones y post-condiciones– Guardas (condiciones) en diagramas de estado– Expresiones de selección o condición en diagramas de
interacción– Expresiones de selección en diagramas de actividad
Warmer