Software Product Lines
-
Upload
jose-gregorio-hernandez-hoyos -
Category
Software
-
view
281 -
download
1
description
Transcript of Software Product Lines
![Page 1: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/1.jpg)
SOFTWARE PRODUCT LINES
Jose Gregorio Hernández HoyosChristian David Álvarez García
Fáber Danilo Giraldo Velásquez, MSc
![Page 2: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/2.jpg)
SOFTWARE PRODUCT LINES
Jose Gregorio Hernández HoyosChristian David Álvarez García
Fáber Danilo Giraldo Velásquez, MSc
![Page 3: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/3.jpg)
3
Agenda
• Introducción• Conceptos Básicos• Aplicaciones• Beneficios• Conclusiones• Bibliografía• Preguntas
![Page 4: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/4.jpg)
4
El éxito del negocio Requiere Software Sofisticado
Introducción
![Page 5: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/5.jpg)
5
![Page 6: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/6.jpg)
6
Conceptos BásicosLa idea básica:• Ensamblaje de partes de software previamente elaboradas• Inspirada en los procesos de producción de sistemas físicos• Producción de aviones, vehículos, computadores, aparatos
electrónicos, etc.• Fundamentada en la Reutilización de Software• Asume la existencia de una industria de partes
![Page 7: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/7.jpg)
7
Desarrollo de Software Basado en Componentes
Las aplicaciones se crean mediante la integración de componentes nuevos, legados o de terceros (COTS)
![Page 8: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/8.jpg)
8
Modelo Básico de una SPL
Producción
![Page 9: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/9.jpg)
9
![Page 10: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/10.jpg)
10
El desarrollo de SPL consta de dos procesos básicos: • La Ingeniería del Dominio, donde se establece cuáles son las partes
comunes y las variables, se construye un conjunto de activos como partes de los sistemas.• La Ingeniería de la Aplicación, donde los activos son reutilizados
sistemáticamente para derivar productos específicos.
De este modo se reducen costes y tiempo de desarrollo.
Procesos primordiales en SPL
![Page 11: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/11.jpg)
11
El desarrollo de SPL tiene características que lo distinguen del desarrollo de productos individuales. En concreto, la variabilidad, la reusabilidad, la comunalidad, o la composicionabilidad son conceptos específicos de este enfoque para la producción de software. Incluso, el modelo de ciclo de vida de un producto desarrollado mediante SPL es diferente al desarrollo de un producto único. De ahí que no sea posible reutilizar con facilidad los métodos y técnicas de evaluación de la calidad propuesta para productos individuales.
Características principales
![Page 12: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/12.jpg)
12
Líneas de Productos de Software No esoCopiar y Pegar: el desarrollo de un solo sistema con la reutilización omodificar el código según sea necesario sólo para el sistema único oLas bibliotecas de reutilización que contienen algoritmos, módulos, objetos o
componentes oSólo el desarrollo basada en componentes o basada en servicios o la selección de componentes o servicios de una biblioteca en la casa, el
mercado, o la Web sin foco arquitectura oSólo una arquitectura configurable oSólo un conjunto de normas técnicas oRestringir opciones sin una estrategia de reutilización basado en la
arquitectura
![Page 13: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/13.jpg)
13
AplicacionesCelsiustech: Sistema de Buques 2000 Una familia de 55 sistemas de la nave
• Necesidad de desarrolladores bajaron de 210 a aproximadamente 30. • Tiempo para el campo se redujo de aproximadamente 9 años a cerca de 3 años. • Los objetivos de costos y el calendario son previsiblemente cumplido.
![Page 14: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/14.jpg)
14
Cummins Inc.: Sistemas de Control de Diesel Más de 20 grupos de productos, con más de 1000 aplicaciones de motores independientes
• El tiempo de ciclo del producto se redujo de 250 personas-mes a unos pocos meses-persona. • Los objetivos de calidad se superan. • La satisfacción del cliente es alta. • se cumplen los horarios de producto.
![Page 15: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/15.jpg)
15
Nokia Mobile Phones Las líneas de producto con 25 a 30 productos nuevos por año en comparación con 5 por año en un principio. Al otro lado de los productos hay• un número variable de llaves • diferentes tamaños de pantalla • diferentes conjuntos de características • 58 idiomas soportados • 130 países servidos • múltiples protocolos • las necesidades de compatibilidad con versiones anteriores • características configurables • las necesidades de comportamiento del producto • El cambio después de la liberación
![Page 16: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/16.jpg)
16
![Page 17: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/17.jpg)
17
![Page 18: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/18.jpg)
18
BeneficiosLa entrega de productos de software de una manera• Más rápida• Económica • Con una mejor calidadLas SPL producen mejoras en: • Tiempo de entrega del producto (time to market)• Costos de ingeniería• Tamaño del portafolio de productos• Reducción de las tasas de defectos• Calidad de los productos
![Page 19: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/19.jpg)
19
Beneficios tácticos y estratégicos (Krueger, 2006):
Beneficios tácticos de ingeniería:
Reducción en el tiempo promedio de creación y entrega de nuevos productos
Reducción en el número promedio de defectos por productoReducción en el esfuerzo promedio requerido para desarrollar y
mantener los productosReducción en el costo promedio de producción de los productosIncremento en el número total de productos que pueden ser
efectivamente desplegados y mantenidos
![Page 20: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/20.jpg)
20
Beneficios tácticos y estratégicos (Cont): Beneficios estratégicos de negocio:
Reducción en el tiempo de entrega (time-to-market) y el tiempo de retorno
(time-to-revenue) de nuevos productos
Mejoras en el valor competitivo del producto
Márgenes mayores de ganancias
![Page 21: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/21.jpg)
21
Beneficios tácticos y estratégicos (Cont): Beneficios estratégicos de negocio:
Mejor calidad de los productos
Mejoras en la reputación de la empresa
Mayor escalabilidad del modelo de negocios en términos de productos y mercados
![Page 22: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/22.jpg)
22
Beneficios tácticos y estratégicos (Cont): Beneficios estratégicos de negocio:
Mayor agilidad para expandir el negocio a nuevos mercados
Reducción de riesgos en la entrega de productos
![Page 23: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/23.jpg)
23
|
![Page 24: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/24.jpg)
24
Aspectos Fundamentales
El paradigma de desarrollo de software SPL requiere que las empresas que lo adopten consideren:• Aspectos conceptualesConceptos en los que las SPLse fundamentan
• Aspectos tecnológicosQué 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 gerencialesCómo gestionar los proyectos de desarrollo de activos y productos
![Page 25: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/25.jpg)
25
Conclusiones
Las Líneas de Productos de Software representan el estado del arte en Reutilización del Software.
La implantación del paradigma SPL en una empresa es un proceso complejo.
![Page 26: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/26.jpg)
26
ConclusionesPara manejar esta complejidad se requiere considerar
diferentes aspectos:
Conceptuales Tecnológicos Metodológicos Organizacionales Gerenciales
![Page 27: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/27.jpg)
27
Bibliografía• Krueger, Ch. Introduction to Software Product Lines.[on line]
www.softwareproductlines.com• Clements and Northrop 2001] P. Clements and L. Northrop; Software
Product Lines: Practices and Patterns, Addison-Wesley, Reading, Massachusetts, 2001.• Linden, F. J., Schmid, K., & Rommes, E. (2007). SOFTWARE PRODUCT
LINES IN ACTION. New York: Springer.• http://msdn.microsoft.com/es-es/library/ee943825.aspx• https://www.sei.cmu.edu/productlines/tools/framework/
![Page 28: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/28.jpg)
28
¿Preguntas?
![Page 30: Software Product Lines](https://reader033.fdocuments.net/reader033/viewer/2022052600/5577dbd2d8b42a7b7b8b4778/html5/thumbnails/30.jpg)
30