Lineas
IEEE
Capítulo Argentina
Programa DVP
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íneade Productos
Desarrollo 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 laexistencia de una 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 softwareexistente, en lugar de desarrollarlo
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 oportunidadLos componentes se almacenan 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)
Desarrollo de Software basado en Líneas de ProductosProducto
Sistema de Ventas
Cliente
Cuenta
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
conjuntocomú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 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 de un
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
Activos de
Software
Desarrollo de Software basado en Líneas de Productos
Productos de
Software
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 maneraprescrita para producir los
productos de la línea
Control:
Modelos de
Decisiones 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
Producción
Entrada:
Activos de
Software
Productos de
Software
Cada producto de la línea es
definido por...
Regístrate para leer el documento completo.