2. Líneas de
Productos de
software
• La definición más comúnmente aceptada
de una LPS procede de Clements (2001)
donde “se definen las líneas del producto
de software como un conjunto de sistemas
software, que comparten un conjunto
común de características (features), las
cuales satisfacen las necesidades
específicas de un dominio o segmento
particular de mercado, y que se desarrollan
a partir de un sistema común de activos
base (core assets) de una manera
preestablecida”.
3. Actividades del desarrollo de
líneas de producto
El desarrollo de bienes núcleo se
refiere al establecimiento de las
partes que serán reutilizadas. Cada
uno de estos bienes debe ir
acompañado de un proceso que
explique la manera en que cada
parte se usa al momento de
incorporarla en un producto
específico. Por otra parte, se
establecen planes de producción que
describen la manera en que los
productos específicos son generados
a partir de los bienes núcleo.
El desarrollo de productos cubre el
objetivo último de la línea de
producto: producir sistemas
específicos dentro del alcance
definido a partir de los bienes
núcleo. Los insumos para esta
actividad son los bienes núcleo, los
procesos asociados a los bienes, los
planes de producción y los
requerimientos específicos a cada
producto.
La administración juega un papel
fundamental en la implantación de
una línea de productos. La
administración ocurre a un nivel
técnico y organizacional. A nivel
técnico, cubre tanto la supervisión
del desarrollo de bienes núcleo como
de productos específicos. A nivel
organizacional orquesta el esfuerzo
general de la línea de productos.
4. Arquitectura y líneas de
producto
La arquitectura es un elemento clave dentro de la colección de bienes núcleo pues será
compartida por los distintos productos de una línea particular. La arquitectura de una
línea de productos es distinta a una arquitectura ‘típica’ pues para permitir la
construcción de distintos productos por encima de ella, debe definirse una serie de puntos
de variación que son necesarios para poder crear los distintos productos. En este tipo de
arquitecturas, uno de los atributos de calidad más influyentes es entonces el que sea
modificable.
5. Ejemplo
• La plataforma Eclipse que sirve de base al popular entorno de desarrollo (IDE) del
mismo nombre (http://www.eclipse.org/pla- tform/). La plataforma Eclipse está
basada en una arquitectura extensible a base de plug-ins y la plataforma establece
una serie de puntos de extensión en los cuales se conectan dichos plug-ins. Los
puntos de extensión que provee la plataforma representan los puntos de variación
de la arquitectura. Los bienes núcleo son los distintos elementos que conforman a
la plataforma Eclipse y son retomados para construir una gran variedad de
productos específicos. Los productos específicos se construyen a partir de plug-ins
que son conectados a la plataforma. Un aspecto interesante de Eclipse es que los
plug-ins pueden, a su vez, definir puntos de extensión por lo cual un producto
específico, conformado por la plataforma Eclipse y una serie de plug-ins, puede
volverse a su vez un conjunto de bienes núcleo para una línea de productos más
especializada. Un ejemplo de esto se puede observar en un producto como
EclipseUML, una herramienta UML construida por encima de la plataforma
Eclipse (http://www.ejb3.org/).
6. Ventajas
•Disminuye el tiempo de producción
•Aumenta la capacidad de la empresa
•Reduce los errores
•Aumenta la calidad del producto
•Reduce gastos de desarrollo
•Proporciona la identificación y solución de errores
7. Método WATCH
• El modelo de procesos del método WATCH es un marco metodológico que
describe, en términos generales, un conjunto estructurado de actividades
necesarias para producir una aplicación empresarial. Este modelo organiza
estas actividades en dos tipos de procesos diferentes pero complementarios:
procesos gerenciales y procesos de desarrollo. Los procesos gerenciales describen
las actividades que la gerencia del proyecto (ó, en su defecto, el líder del
proyecto) debe realizar para:
• Planificar, organizar, dirigir, manejar el grupo de desarrollo y controlar el
proyecto de desarrollo de un sistema o aplicación empresarial
• Asegurar la calidad del sistema.
• Gestionar la configuración del sistema
• Adiestrar el grupo de desarrollo durante el proceso de ejecución del proyecto.
9. Componentes
El método WATCH está
compuesto por tres
modelos fundamentales:
1) Un modelo de
productos que describe
los productos intermedios
y finales que se generan,
mediante la aplicación
del método, durante el
desarrollo de una
aplicación informática de
un SIE.
2) Un modelo de
actores que identifica a
los actores interesados
(stakeholders) en el
desarrollo de las
aplicaciones de un SIE y
describe cómo deben
estructurarse los equipos
de desarrollo y cuáles
deben ser los roles y
responsabilidades de sus
integrantes
3) Un modelo de
procesos que describe
detalladamente los
procesos técnicos,
gerenciales y de soporte
que los equipos de
desarrollo deberán
emplear para elaborar las
aplicaciones informáticas
de un SIE.