2. REDUCIRCOSTOS TIEMPO
SOFTWARE DE
CALIDAD
¿Qué son las LPS?
Una línea de productos de software se refiere a un conjunto de
sistemas de software que comparten características y que son
desarrollados a partir de un conjunto común de bienes núcleo.
3. Actividades de
desarrollo
de líneas
de productos
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.
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.
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.
El desarrollo de líneas de productos
involucra tres actividades principales: el
desarrollo de los bienes núcleo, el desarrollo de
los productos y la administración, y estas
actividades están íntimamente ligadas entre
ellas.
4. Elementos de LPS
ENTRADAS: El conjunto de elementos que son de
utilidad para la creación de los diferentes productos
que se producirán mediante la línea de productos:
componentes software, requisitos, diagramas.
CONFIGURACION: el modelo de decisión, el
cual describe los elementos opcionales y
obligatorios dentro de la línea de producto
PRODUCCIÓN: el conjunto de medios y
mecanismos necesarios para, de acuerdo al modelo
de decisión y las decisiones tomadas en base a
dicho modelo, ensamblar los diferentes elementos
de entrada.
SALIDA: la colección de elementos que la línea de
productos puede “fabricar”. El ámbito de la línea de
productos queda determinado por la finalidad que se haya
establecido en la misma de acuerdo a los elementos de
entrada y al modelo de decisión
5. Fases de Producción
Fase 1:
Automatización
Fase 2:
Periodicidad
Fase 3:
Roles
La producción de
Software desde una línea
de productos puede estar
completamente
automatizada,
parcialmente o ser manual,
e incluso, tener partes
automatizadas y otras
manuales.
Los productos software
sufren revisiones para
corregir fallos o errores, o
para añadir funcionalidades
nuevas. La periodicidad de
la producción de Software
también esta ligada a lo
automatizada que este la
línea de productos.
Algunas líneas de
producción pueden
establecer roles, como
por ejemplo, el rol del
ingeniero del dominio,
encargado del diseño de
los elementos de entrada,
o el del ingeniero de la
aplicación, encargado de
la producción.
6. Beneficios
Reducción en el tiempo medio de creación y despliegue de un nuevo producto.
Reducción en el numero medio de errores por producto.
Reducción en el esfuerzo medio que se ha de hacer para el despliegue y mantenimiento del
Producto.
Reducción en el coste medio de cada producto.
Incremento en el numero total de productos que pueden ser desplegados y mantenidos
Entrega de productos de una manera más rápida, económica y de mejor calidad
7. Modelo de LPS
Activos de Software:
Colección de partes de
software (requisitos, diseños,
componentes, casos de
prueba, entre otros) que se
configuran y componen de una
manera prescrita para producir
los productos de la línea.
Decisiones de Productos:
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
del producto.
Proceso de producción:
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 qué
activos de entrada utilizar y
cómo configurar los puntos
de variación de esos activos.
Productos de software:
Conjunto de todos los
productos que pueden o
son producidos por la línea
de productos.
8. Reutilización de software
La reutilización de activos de software en LPS tiene varias características:
Es estratégica:
• Consolida lo común entre la línea de productos.
• Maneja estratégicamente la variación entre los productos de la línea.
• Elimina la duplicación de esfuerzos de ingeniería.
Es predictiva:
• La reutilización de activos se da en uno o más productos sobre una línea
bien definida
• Se reutilizan arquitecturas de software, en lugar de reutilizar componentes
de manera oportunista
Es gestionada:
• Es sistemática, planificada, institucionalizada y mejorada
9. Entre los propósitos de una LPS se encuentran: reducir el tiempo, esfuerzo, costo y complejidad
de crear y mantener los productos de la línea mediante la capitalización de los aspectos comunes de la
línea de productos, así como también la consolidación y reutilización de los activos de entrada a la línea, y
por último, el manejo de los aspectos variables de los productos de la línea a través de los puntos de
variación de los activos y los modelos de decisión.
Los fines anteriormente mencionados permiten alcanzar los siguientes beneficios:
reducción en el tiempo promedio de creación y entrega de nuevos productos.
reducción en el número promedio de defectos por producto.
reducción en el esfuerzo promedio requerido para desarrollar y mantener los productos.
reducción en el costo promedio de producción de los productos.
incremento en el número total de productos que pueden ser efectivamente desplegados y mantenidos.
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.
mejor calidad de los productos.
Mejoras en la reputación de la empresa.
Propósito de una LPS
10.
11. Se ubica dentro de los
métodos disciplinados ya
que se centra en los
procesos, hace énfasis en
los productos y la
organización
El método WATCH está
orientado al desarrollo de
un tipo particular de
software denominado
aplicación empresarial.
El método WATCH está
orientado al desarrollo
de un tipo particular de
software denominado
aplicación empresarial.
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.
¿Qué es el M. Watch?
12. 5. Emplea las mejores prácticas, técnicas y notaciones utilizadas regularmente en la Industria del
Software
La utilidad e importancia que el método WATCH tiene se
resume en los siguientes puntos:
1. Le agrega visibilidad al proyecto; pues, permite que el grupo de desarrollo y los usuarios del
sistema puedan conocer en que estado se encuentra el proyecto en cualquier momento.
2.Le facilita al líder del proyecto las labores de planificación y control del proyecto.
3. Establece un marco metodológico único que estandariza el proceso de desarrollo y unifica la
documentación que se produce a lo largo del proyecto de desarrollo de una aplicación.
4.Está fundamentado en modelos de procesos de la Ingeniería de Software Basada en
Componentes
13. El método consta de 3 componentes:
Modelo del producto.
Describe el tipo de
producto
que el método
WATCH ayuda a
producir.
Modelo del proceso.
Es una descripción
estructurada
del conjunto de
actividades que el
grupo de desarrollo
deberá seguir para
producir una aplicación
empresarial.
Modelo del grupo de
desarrollo.
Este modelo describe como
el grupo de desarrollo debe
estar organizado y cuales son
los roles de cada uno de sus
miembros.
15. El método WATCH emplea el paradigma de desarrollo de software
basado en la reutilización de componentes de software. En base a
este paradigma, una aplicación empresarial tiene una arquitectura de
software de tres o más capas, en la que cada una de las capas está
compuesta de un conjunto de componentes de software
interrelacionados.
La capa de
presentación
implementa la
interfaz U/S de la
aplicación
empresarial.
La capa de lógica de negocios
implementa la funcionalidad de la
aplicación empresarial.
La capa de datos
se encarga de la
administración
de los datos de la
aplicación.
17. Los procesos de desarrollo son los procesos
técnicos que describen que debe hacer el grupo de
desarrollo para producir una aplicación empresarial.
Estos procesos se organizan en una estructura
jerárquica formada por fases, pasos y actividades.
La figura 5 muestra la estructura del marco
metodológico. Esta estructura está inspirada en la
metáfora del reloj de pulsera (watch, en Inglés).
Los procesos gerencia les se ubican en el centro
del reloj para indicar que ellos llevan el control del
desarrollo del proyecto. Los procesos de desarrollo
se ubican, en forma circular, en las posiciones del
dial del reloj.
19. El grupo de desarrollo de una aplicación empresarial puede estar
organizado de diferentes maneras. Una de ellas es según una estructura
jerárquica en la que los actores del proyecto se agrupan en base a las
actividades del proceso de desarrollo de la aplicación. Los roles que
estos miembros realizan en el proyecto están determinados por los
grupos de trabajo que integran la estructura. Estos roles se
corresponden con las fases generales del desarrollo de la aplicación.
Líder de proyecto
Asesor Usuarios
Grupo de
componentes
Grupo de diseño
Grupo de
especificación de
requisitos
Grupo de
modelado de
negocios
Grupo de pruebas