4. Las líneas del producto de software
se base de una manera
preestablecida. define como un
conjunto de sistemas software, que
comparten un conjunto de
características en común, las
cuales satisfacen las necesidades
especificas de un dominio o
segmento particular de mercado y
son desarrollados a partir de un
sistema común de activos
Las LPS o Líneas de Productos de
Software se engloban dentro del
termino REUTLIZACION.
“La reutilización de software es el proceso de implementar o
actualizar sistemas de software usando activos de software
existentes”
(Sodhi & Sodhi, 1999)
• Modelo Básico de una Línea de Productos de
Software (LPS)
5. "...consiste de una familia de sistemas de software que tienen una
funcionalidad común y alguna funcionalidad variable"
(Gomma, 2004)
"...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 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 prescrita“
(Clements and Northrop, 2002)
6. 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
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)
El 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 que
activos de entrada utilizar y como configurar los puntos de
variación de esos activos
La salida:
Productos de
software
Conjunto de
todos los
productos que
pueden o son
producidos por
la línea de
productos
7. Delimitar el ámbito de este dominio, identificar las variaciones
que se van a soportar, y dotarse de la infraestructura que
permita producir el producto a bajo coste pero manteniendo la
calidad del producto alta, es decir, aplicar los principios de la
producción en serie también al software.
Con LPS los productos son desarrollados a partir de un
conjunto común de activos reutilizables. Este termino
engloba la diversidad de elementos, tales como
requisitos, planificaciones, modelos de características,
arquitecturas, componentes, código fuente, descriptores,
etc. Que conforman la base sobre la que se construye el
producto. El reto esta en determinar no solo lo común
sino también lo que se va a permitir variar
8. Estrategias:
El proceso de desarrollo de la LPS depende, entre otros muchos factores,
del ambito de la LPS. Es fundamental saber acotar la familia de proctos
que seran objeto de la linea, en general, existe una tendencia a
generalizar en exceso cuando se esta desarrollando el software re-
usable. Considerando Casos poco probables.
El ámbito inicial de la línea de producto, depende del punto de
partida, d la experiencia acumulada en proyectos anteriores y de la
posición en el mercado que ocupe la empresa en cuestión . El
enfoque a largo plazo recibe el nombre de proactivo ya que intenta
adelántense a las necesidades existentes por ejemplo dentro de
cinco años. Por otro lado el enfoque reactivo va acometiendo los
cambios conforme se van necesitando
•Desarrollo
Reactivo
•Desarrollo
Proactivo
Esfuerzo
Productos1 2 3
4
9. Un aspecto central compartido por las distintas metodologías de
desarrollo de LPS es la división de los procesos de ingeniería en
dos equipos de trabajo
La ingeniería de Dominio: Este es responsable
de desarrollar los elementos comunes al dominio;
estudiar el dominio, es definir su alcance
(requisitos) dentro del mercado objetivo de la LPS,
definir las características, implementar los activos
reutilizables y su mecanismo de variabilidad, y
establecer como es el plan de producción.
ingeniería de Producto: sus cometidos
incluyen desarrollar los productos para
clientes concretos, a partir de los recursos
basados no en los requisitos del dominio
sino en requisitos concretos del cliente.
Para ello este utiliza recursos creados por
la ingeniería mencionada anteriormente
10. Nuevo
Requisitos
Implementaci
ón del
Dominio
Diseño del
Dominio
Requisito
s Cliente
Modelo
del
producto
Configuració
n del
producto
Construcci
ón del
producto
Implementaci
ón especifica
Diseño
del
producto
Diseño
especific
o
Ingeniería de Producto
Conocimien
to del
Dominio
Análisis
del
Dominio
Modelo del
Dominio Arquitectura
del Dominio
Ingeniería de
Dominio
Análisis
del
producto
11. •La entrega de productos de software de una
manera
más rápida,
económica y
con una mejor calidad
• Las LPS 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
12. •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 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
13. • Beneficios tácticos y estratégicos (cont.):
• Beneficios estratégicos de negocios
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
Mayor escalabilidad del modelo de negocios en términos de productos
y mercados
Mayor agilidad para expandir el negocio a nuevos mercados
Reducción de riesgos en la entrega de productos
Algunas empresas han reportado mejoras que van en el rango de
factores de 3 a 50 en los beneficios discutidos anteriormente
14.
15. WATCH es un método de desarrollo de
software elaborado para ser empleado
durante el desarrollo de sistemas de
información empresarial (SIE).
Montilva (2008) define el método WATCH como: Un
marco metodológico que describe los procesos
técnicos, gerenciales de soporte que deben emplear
los equipos y grupos que tendrán a su cargo el
desarrollo de las aplicaciones informáticas de un SIE.
Un marco metodológico es un patrón que bebe ser
instanciado, es decir adaptado cada vez que se use.
Cada equipo de desarrollo de aplicaciones de un SIE
deberá usar el método como un patrón o plantilla
metodológica, a partir de la cual ellos deben elaborar
el proceso especifico de desarrollo de la aplicación
que dicho equipo deba producir
Es un método en el que se
describe el ciclo de vida de un
componente de software
reutilizable. Es un método que
detalla todo el proceso de
especificaciones hasta la
liberación de un componente
de software reutilizable
17. Modelo de procesos para el desarrollo de
componentes de software reutilizables
18. Modelo de procesos para el desarrollo de aplicaciones
empresariales (motilva y Barrios, 2004)
19. Con el modelo del producto, en este caso un
componente de software reutilizable, se logra
establecer las diferentes etapas por las que va a
pasar el producto , y así una relación entre el
modelo de producto y el modelo de procesos
Un componente puede existir en diferentes formas durante su ciclo de
vida.
Especificaciones del Componentes : Establece las características
del componente y las funciones que realiza
Interfaz del Componente: Corresponde a la parte de especificación
de las operaciones y la función de su comportamiento
Implementación del componente: Comprende la realización del
componente
Componente Instalado: La instalación (despliegue) de la
implementación del componente en una plataforma de ejecución
determinada
20. •Orientar a los equipos de desarrollo acerca de qué deben hacer y
cómo deben desarrollar una aplicación informática de un SIE.
•Garantizar la uniformidad, consistencia, facilidad de integración y
calidad de las distintas
•aplicaciones que integrarán Un SIE.
•Gestionar el desarrollo de las aplicaciones de un SIE como proyectos
de ingeniería, siguiendo los estándares de gestión de proyectos
establecidos en LA EMPRESA.
•Asegurar que en el desarrollo de cada aplicación de un SIE se
empleen las mejores prácticas, técnicas, herramientas, estándares y
lenguajes aceptados internacionalmente
•para desarrollar software de alta calidad
21. La metodología Watch esta comprendida por tres
modelos, que la componen estos son el modelo del
producto, el modelos de proceso y el de actores.
•Modelo del Producto: El primer componente del método Watch, este
modelo describe las características generales que tienen las
aplicaciones de un SIE e identifica los productos intermedios y finales
que se deben producir durante su desarrollo.
•Modelo de Procesos: es un conjunto de actividades que tienen un mismo
fin, El método de proceso es el ultimo componente de este método y
corresponde a los procesos que definen la trayectoria del proyecto como se
admiran los recursos del equipo, sean estos materiales o humanos
•Modelo de Actores: Es el segundo de los componentes del método
Watch, su función es discutir todos aquellos aspectos organizativos
relacionados con los actores, equipos de trabajo y demás interesados
vinculados al desarrollo de las aplicaciones