Metodologia watch

26
Instituto Universitario Politécnico " Santiago Mariño" Extensión Valencia Línea de productos de software y Modelo WATCH José Luis Pereira Reyes CI: 19.991.687

Transcript of Metodologia watch

Page 1: Metodologia watch

Instituto Universitario

Politécnico " Santiago Mariño"

Extensión Valencia

Línea de productos de software y

Modelo WATCH

José Luis Pereira Reyes CI: 19.991.687

Valencia, 8 de agosto del 2016

Page 2: Metodologia watch

Línea de productos de software

Técnicas de ingeniería para crear un portafolio de sistemas de software similares, a partir de un conjunto compartido de activos de software, usando un medio común de producción. (Krueger, 2006)

Definiciones Conjunto de sistemas de software que comparten características y que son desarrollados a partir de un conjunto común de bienes núcleo. (Core Assets)

Enfoque de reutilización sistemático dentro de una organización de desarrollo.

Conjunto de sistemas de software que comparten un conjunto común y gestionado de aspectos que satisfacen las necesidades específicas de un segmento de mercado o misión y que son desarrollados a partir de un conjunto común de activos fundamentales de software de una manera prescrita.(Clements and Northrop, 2002)

Consiste de una familia de sistemas de software que tienen una funcionalidad común y alguna funcionalidad variable.(Gomma, 2004)

Page 3: Metodologia watch

Definiciones

Reutilización de software

Proceso de implementar o actualizar sistemas de software usando activos de software existentes.(Sodhi & Sodhi, 1999)

Proceso de crear sistemas de software a partir de software existente, en lugar de desarrollarlo desde el comienzo.(Sametinger, 1997)

Producto de software diseñado expresamente para ser utilizado múltiples veces en el desarrollo de diferentes sistemas o aplicaciones.

Activo de software reutilizable

Una pieza de software funcional que es liberada independientemente de otras y que proporciona acceso a sus servicios a través de sus interfaces.(Brown, 2000)

Componente de software reutilizable

Page 4: Metodologia watch

Definiciones

Dominio y Familia

Área de aplicación de productos de software que están centradas en torno a un cuerpo de conocimientos, tienen una economía de alcance asociada, ocurre cuando construir un activo y usarlo en múltiples productos ocasiona más beneficios que crear el activo para cada producto y Pueden dividirse en subdominios.

Dominio

Conjunto de productos de software asociados a un dominio determinado. Dichos miembros de la familia comparten un diseño arquitectónico común, un conjunto de componentes reutilizables, capacidades , servicios y tecnologías comunes.

Familia

Page 5: Metodologia watch

Colección de partes de software (requisitos, diseños, componentes, casos de prueba, etc.) que se configuran y componen de una manera prescrita para producir los productos de la línea.

Entrada

Establece los mecanismos o pasos para componer y configurar productos a partir de los activos de entrada. Las decisiones del producto se usan para determinar que activos de entrada utilizar y como configurar los puntos de variación de esos activos.

Los Modelos de Decisiones describen los aspectos variables y opcionales de los productos de la línea.

Cada producto de la línea es definido por un conjunto de decisiones (decisiones del producto).

Conjunto de todos los productos que pueden o son producidos por la línea de productos.

Control

Salida

Proceso

Page 6: Metodologia watch

Aspectos fundamentales de LPS

Cómo gestionar los proyectos de desarrollo de activos y productos.

Conceptos en los que las líneas de producto se fundamentan.

Aspectos conceptuales

Aspectos tecnológicos Qué tecnologías son fundamentales para desarrollar y mantener activos y productos de software.

Aspectos metodológicosCómo desarrollar y mantener los activos y productos de software.

Aspectos organizativosCómo debe la empresa organizarse internamente.

Aspectos gerenciales

Page 7: Metodologia watch

Pieza de software que describe y/o libera un conjunto de servicios que son usados sólo a través de interfaces bienDefinidas.

Características esenciales de un CSR• Identificable.• Auto contenido.• Rastreable a través de su ciclo de

desarrollo.• Reemplazable por otro componente.• Accesible solamente a través de su

interfaz.• Inmutabilidad de sus servicios.• Documentación de sus servicios.• Mantenido sistemáticamente.

Aspecto conceptual de LPS

Tipos de CSRComponentes de software reutilizable (CSR)

Según su modificabilidad• Caja negra• Caja blanca• Según su granularidad• Componentes de uso

Según la tecnología usada• Componentes imperativos• Módulos, funciones• Componentes OO• Clases

Según su fabricante• Componentes hechos en casa• COTS – Component Off

The Shelf

Componentes distribuidos• Componentes CORBA• Componentes .NET• Componentes J2EE• Servicios web

Según su granularidad• Componentes de uso específico• Componentes de negocio• Marcos (frameworks)• Componentes de aplicación

Page 8: Metodologia watch

Aspectos tecnológicos de LPS

Es una base de datos especializada que almacena activos de software y facilita la recuperación y el mantenimiento de los activos de software.

Repositorios LPS

Las líneas de productos de software requieren almacenar sus activos de software en repositorios.

Cuyo objetivo es asegurar la disponibilidad de activos para apoyar el desarrollo de productos de la LPS

El repositorio mantiene información relevante de cada activo usado en la LPS• Especificación técnica del

activo• Historia o registro de uso• Clasificación del activo• Documentación del activo

Tipos de repositorios LPS

Según su alcance• Locales: Son desarrollados y

reusados internamente por una organización o empresa

• Globales : Disponibles a terceros bajo adquisición o subscripción

• COTS, Servicios WebSegún su aplicabilidad• De dominio específico• De dominio general

Según su propósito• De reúso : Permiten el almacenamiento

y recuperación de activos de software

• De referencia : Facilitan la localización de activos en otros repositorios

• UDDIs

Page 9: Metodologia watch

Aspectos metodológicos de LPS

Captura información y representa el conocimiento sobre un dominio determinado, con el fin de crear activos de software reutilizables en el desarrollo de cualquier nuevo producto de una LPS.

Ingeniería de Dominio (ID)

• Definiciones de dominios (descripciones del contexto)• Modelos del dominio• Modelos de requisitos del dominio• Modelos arquitectônicos (arquitecturas de dominio)• Ontologías del dominio• Lenguajes del dominio• Estándares del dominio

Productos de la ID

Page 10: Metodologia watch

Actividades principales de la Ingeniería de Dominio

Analiza la familia para determinar los requisitos que son comunes, opcionales y diferentes a todos sus miembros.

Análisis de Aspectos

Produce una arquitectura de dominio que tiene

Diseño de la Arquitectura LPS

Componentes comunes a todos los miembros de la familia.

Consiste en la creación y almacenamiento de los activos de software que se emplearán para producir los productos de software.

Implementación del Dominio

Componentes opcionales que son requeridos por algunos miembros.

Componentes variantes de los cuales algunos miembros de la familia emplean distintas versiones.

Tienen puntos de variación que permiten configurarlos.

Page 11: Metodologia watch

Aspectos organizacional de LPS

Los aspectos organizacionales involucran la aplicación de un conjunto de prácticas de gestión relacionados con la organización de la empresa y las actividades que ella debe implantar para asegurar el aprovechamiento eficaz y eficiente del paradigma LPS.

Áreas de práctica de Gestión Organizacional

• Construcción de casos de negocio

• Gestión de relaciones con los clientes • Desarrollo de una estrategia de adquisición

• Análisis de mercados

• Operaciones

• Planificación organizacional

• Gestión de riesgos organizacionales

• Estructuración de la empresa

• Proyección de tecnologías

• Capacitación de personal

Page 12: Metodologia watch

Aspectos gerenciales de LPS

Los aspectos gerenciales de involucran la aplicación de un conjunto de prácticas de gestión técnica que están relacionados con la aplicación de los procesos gerenciales en las actividades de Ingeniería de Dominio e Ingeniería de Aplicación de una LPS.

Técnicas • Planificación de Proyectos• Organización de Grupos de Trabajo• Grupos de Soporte• Administración de Repositorios de Activos de Software• Grupos de Mantenimiento de Aplicaciones• Grupos de Desarrollo• Grupos de desarrollo de componentes• Grupos de desarrollo de aplicaciones• Dirección• Administración de recursos• Control

Page 13: Metodologia watch

Metodología utilizada en una LPS

Marco metodológico que describe los procesos técnicos, gerenciales y de soporte que deben emplear los equipos y grupos que tendrán a su cargo el desarrollo de las aplicaciones informáticas de un SIE (Sistema de Información Empresarial).

Método WATCH

Patrón que debe ser instanciado,es decir adaptado cada vez que se use. Cada equipo de desarrollo de aplicaciones de un SIE deberá usar el método como un patrón o plantilla metodológica, a partir de la cual ellos deben elaborar el proceso específico de desarrollo de la aplicación que dicho equipo deba producir.

Marco metodológico

Asegurar que en el desarrollo de cada aplicación de un SIE se empleen las mejores prácticas, técnicas, herramientas, estándares y lenguajes aceptados internacionalmentepara desarrollar software de alta calidad.

Objetivos

Orientar a los equipos de desarrollo acerca de qué deben hacer y cómo deben desarrollar una aplicación informática de un SIE.

Garantizar la uniformidad, consistencia, facilidad de integración y calidad de las distintas aplicaciones que integrarán un SIE.

Gestionar el desarrollo de las aplicaciones de un SIE como proyectos de ingeniería, siguiendo los estándares de gestión de proyectos establecidos en la empresa.

Page 14: Metodologia watch

Características del

método WATCH

Está sólidamente fundamentado.

Posee una base conceptual y metodológica muy bien sustentada.

Es estructurado y modular.

Posee una clara estructura que facilita su comprensión y utilización.

Es de propósito específico.

Es flexible y adaptable.

Emplea las mejores prácticas del desarrollo de software.

Desarrollo de software iterativo e incremental.

Manejo eficiente de los requisitos. Reutilización de activos

de software.

Modelado visual de la aplicación.

Verificación continua de la calidad de los productos.

Apropiada gestión de cambios.

Emplea las mejores prácticas y procesos de gestión de proyectos.

Integra los procesos de gestión con los procesos técnicos y de soporte.

Page 15: Metodologia watch

Modelo de WATCH

Describe el tipo de producto que el método WATCH ayuda a producir. Establece las características arquitectónicas generales de una aplicación empresarial.

Modelo del producto Plataforma típica de ejecución de una aplicación empresarial

Estilo arquitectónico de una aplicación empresarial

Page 16: Metodologia watch

Modelo de una aplicación empresarial basada en componentes

Relación entre personas productos y procesos

Page 17: Metodologia watch

Modelo de procesos de WATCH

Page 18: Metodologia watch

Fases del Modelo de WATCH

Page 19: Metodologia watch

Fases del Modelo de WATCH

Page 20: Metodologia watch

Fases del Modelo de WATCH

Page 21: Metodologia watch

Fases del Modelo de WATCH

Page 22: Metodologia watch

Fases del Modelo de WATCH

Page 23: Metodologia watch

Fases del Modelo de WATCH

Page 24: Metodologia watch

Fases del Modelo de WATCH

Page 25: Metodologia watch

Fases del Modelo de WATCH

Page 26: Metodologia watch

Gracias por su atención