Nuevos avances
Desarrollo de Software Basado en Líneas de Productos de Software
Jonás A. Montilva C., Ph.D.
IEEE Member Universidad de Los Andes Facultad de Ingeniería Departamento de Computación Mérida – Venezuela
Contenidos
Desarrollo de Software basado en Líneas de Productos
2
Desarrollo de Software Basado en Línea de ProductosDesarrollo de Software basado en Líneas de Productos
3
Qué es una Línea de Productos de Software (LPS)
La 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 deuna industria de partes
Desarrollo de Software basado en Líneas de Productos
4
Antecedentes
Reutilización de software
“La reutilización de software es el proceso de implementar o actualizar sistemas de software usando activos de software existentes” (Sodhi & Sodhi, 1999)
"Reutilización de software es el proceso de crear sistemas de software a partir de software existente, en lugar dedesarrollarlo desde el comienzo"
(Sametinger, 1997)
Desarrollo de Software basado en Líneas de Productos
5
Antecedentes
Existen varias modalidades de reutilización utilizadas en empresas de software:
Individual Oportunista Gestionada:
Institucionalizada, sistemática, planificada, mejorada
Tradicionalmente, la reutilización ha estado basada en oportunidad
Los componentes sealmacenan en un repositorio a la espera de una oportunidad de reutilización
Desarrollo de Software basado en Líneas de Productos
6
Antecedentes
Desarrollo de Software Basado en Componentes
Las aplicaciones se crean mediante la integración de componentes nuevos, legados o de terceros (COTS)
Cliente
Sistema de Ventas
Producto
Cuenta
Desarrollo de Software basado en Líneas deProductos
7
Definiciones de Líneas de Productos de Software
"...se refieren a 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) "... es un conjunto de sistemas de software que comparten un conjunto común y gestionado de aspectos que satisfacen lasnecesidades 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 preescrita" (Clements and Northrop, 2002) "...consiste de una familia de sistemas de software que tienen una funcionalidad común y alguna funcionalidad variable" (Gomma, 2004)
La funcionalidad común descansa en el uso recurrente deun conjunto común de activos reutilizables (requisitos, diseños, componentes, servicios web, etc.) Los activos son reutilizados por todos los miembros de la familia
Desarrollo de Software basado en Líneas de Productos 8
Líneas de Productos de Software (LPS)
Modelo Básico de una Línea de Productos de Software (LPS)
www.softwareproductlines.com
Decisiones de Producto
Producción
Activosde Software
Productos de Software
Desarrollo de Software basado en Líneas de Productos
9
Modelo Básico de una Línea de Productos de Software
La entrada: Activos de Software
Una 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
Control: Modelos deDecisiones y Decisiones de Producto
El control: Modelos de Decisión y Decisiones de Productos
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)
Desarrollo de Software basado en Líneas de Productos
Producción Entrada: Activos de Software
Productos...
Regístrate para leer el documento completo.