2. 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
LÍNEAS DE PRODUCTO SOFTWARE
3. La ingeniería de LPS cuenta con la distinción fundamental del
desarrollo para la reutilización y el desarrollo con reutilización
como se muestra en la Figura
4. Ciclo de vida de las líneas de
productos software
El ciclo de vida de desarrollo de las líneas de productos software difiere del
ciclo de vida de desarrollo tradicional del software. Básicamente, el ciclo de
vida de las LPS se divide en dos fases generales: la Ingeniería del dominio y la
Ingeniería de la Aplicación. En la Ingeniería del dominio se construye la LPS
completa, es decir, la arquitectura base, los activos reutilizables, etc. En la
Ingeniería de la aplicación, básicamente se toman los activos de la fase de la
Ingeniería del dominio y se combinan para dar lugar a un producto final. Cada
una de estas fases es dividida en 4 actividades: Requisitos, Diseño,
Realización y Pruebas. A continuación se detalla cada una de las actividades
del ciclo de vida.
5. Ingeniera de Dominio
Requisitos de la Ing de Dominio
Diseño la Ing de Dominio
Realización de la Ing de Dominio
Pruebas de Ing de Dominio
Ingeniería de la
Aplicación
Requisitos de la Ing de Aplicación
Diseño la Ing de Aplicación
Realización de la Ing de Aplicación
Pruebas de Ing de Aplicación
Etapas de vida de las líneas de
productos software
6. Modelado de LPS
Los Modelos de Características son reconocidos en la literatura como una de
las más importantes contribuciones a la ingeniería de Líneas de Productos
Software. Una labor primordial en la ingeniería de Líneas de Productos es la
captura de las similitudes y variaciones entre los productos, y los Modelos de
Características son usados para este fin. La Figura muestra la representación
gráfica de un modelo de características clásico
7. Un Modelo de Características representa todos los posibles productos
de una Línea de Productos Software. Es un conjunto de características
jerárquicamente ordenadas compuestas por:
• Relaciones entre una característica padre (o componente) y su hijo (o
subcaracterística).
• Restricciones en forma de árbol que son básicamente la inclusión o
exclusión de sentencias de la forma: si la característica F está
incluida, entonces las características A y B deben estar también
incluidas (o excluidas).
8. BENEFICIOS RELATIVOS A LA PRODUCTIVIDAD Y
AL COSTE
Las LPS pueden incrementar significativamente la productividad de los
ingenieros de software, entendida como una reducción en el esfuerzo y el
coste necesario para desarrollar, poner en marcha y mantener un conjunto de
productos software similares. En los casos de estudio se han observado
mejoras en la productividad que duplican o triplican los enfoques
tradicionales.
9. Es un marco metodológico que describe los procesos
técnicos, gerenciales y de soporte que deben emplear los
grupos de desarrollo de aplicaciones empresariales
Un marco metodológico es un patrón que debe ser
adaptado, al proyecto y al grupo cada vez que se use
EL MÉTODO WATCH
10. Orientar a los equipos de desarrollo acerca dequé
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
OBJETIVOS
11. Está fundamentado en:
CMMI: Capability Maturity Model del Software Engineering
Institute (CMMI, 2005)
RUP: Rational Unified Process de IBM (Krutchen, 2000)
PMBOK: Project Management Body of Knowledge del Project
Management Institute (PMI, 2000)
CARACTERÍSTICAS DEL WATCH
12. CARACTERÍSTICAS DEL WATCH
• Sólidamente fundamentado
• Incremental e iterativo
• De propósito específico
• Flexible y adaptable
• Usa mejores prácticas de:
Ingeniería de Software y
Gestión de Proyectos
• Integra los procesos de gestión con los procesos
técnicos y de soporte
13. PROCESOS DEL DESARROLLO DE SW
Análisis
Soporte
Gestión
Diseño
Construcción
Pruebas
Instalación
Aplicancion ordenamente los bloques de construcción del desarrollo de
software:
14. ESTRUCTURA DEL MÉTODO WATCH
El método WATCH emplea como metáfora un reloj
Los bloques de construcción se organizan en la forma de un reloj:
Análisis
Soporte
Gestión Diseño
ConstrucciónPruebas
Instalación
16. Tipo de productos
Productos de Trabajo
(Productos Intermedios)
Productos Finales
(Productos entregables)
Modelo del
Dominio de Aplicación
Documento de
Requisitos
Documento de
Diseño
Documento de
Implementación
Documento de
Pruebas
Caso de Negocio
Plan del Proyecto
Informes de Gestión
Productos de
Gestión del Proyecto
Productos
Técnicos
Aplicación
Empresarial
Programas
Base(s) de Datos
Manuales
Describe las características generales que tienen las aplicaciones empresariales e identifica
los productos intermedios y finales que se deben producir durante el desarrollo de una
aplicación
MODELO DE PRODUCTO
17. MODELO DE ACTORES
Describe las modalidades de organización de los grupos de trabajo que
desarrollan las aplicaciones; así como, los roles y responsabilidades de
los actores que integran estos equipos
Líder del
Proyecto
Grupo de Diseño
Grupo de
Implementación
Grupo de Análisis
Cliente
Grupo de Pruebas
e Instalación
Equipo de Desarrollo de Aplicaciones Empresariales
18. MODELO DE ACTORES
Un actor es un individuo o una unidad organizacional que está involucrada en el
proyecto
Interesado
(Stakeholder)
Personal
Ejecutivo
Usuario Externo Desarrollador Personal de apoyoUsuario Interno
Personal
Administrativo
Personal
Técnico
Presidente
Junta
Directiva
Gerente
Jefe de
Departamento
Jefe de
Sección
Presidente
Director
Lider de
Proyecto
Analista de
Negocios
Ingeniero de
Requisitos
Arquitecto de
Software
Diseñador de
Software
Ingeniero de
Componentes
Programador
Especialista
en Pruebas
Administrador
de Bases
de Datos (ABD)
Especialista
en Calidad
(SQA)
Especialista en
Configuración
(SCM)
Facilitador
Consultor
Administrador
de Sistemas
ActoresRoles
19. MODELO DE PROCESOS
Describe los procesos técnicos, gerenciales y de soporte que los grupos
de trabajo deben emplear para desarrollar las aplicaciones empresariales
Modelo de Procesos
Procesos
de Soporte
Procesos
de Gestión
Procesos
Técnicos
21. E L M É T O D O W A T C H
RELACIONES ENTRE PROCESOS
Modelado
del Dominio de
la Aplicación
Ingeniería
de Requisitos
Diseño
Arquitectónico
Diseño
Detallado
Pruebas de la
Aplicación
Entrega de la
Aplicación
Procesos
Gerenciales y
de Soporte
Operación
y
Mantenimiento
Construcción
& Integración
23. 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.
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
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
COMPONENTES
El método WATCH está compuesto por tres modelos fundamentales:
24. El desarrollo de software es un proceso complejo
Requiere la aplicación de principios, métodos, prácticas,
modelos y técnicas de:
Ingeniería y
Gerencia de proyectos
La Ingeniería de Software provee los medios necesarios
para desarrollar software con
Alta calidad
Bajo costo
Entregado a tiempo
WATCH es un marco metodológico fácil de usar, completo
y basado en la mejores prácticas de Ingeniería de
Software
Resumen