La arquitectura de software es el resultado de un esfuerzo importante y su desarrollo puede representar una parte considerable del trabajo que se realiza en un proyecto de desarrollo. De lo anterior surge la pregunta, ¿habrá manera de aprovechar el esfuerzo que se hace respecto al desarrollo de la arquitectura de un sistema en el desarrollo de otros sistemas similares? Las líneas de productos de software buscan justamente lograr promover la reutilización sistemática de artefactos de los cuales la arquitectura es uno de los más importantes. Este enfoque busca tener distintos beneficios asociados a la reutilización como pueden ser la reducción del tiempo de desarrollo (pues ya no se tienen que desarrollar ciertas partes del sistema), y la mejora de la calidad (pues se incorporan partes que ya han sido verificadas previamente).
2. Esta Idea se basa en el ensamblaje de partes de software
previamente elaboradas, Las líneas de productos de software
buscan justamente lograr promover la reutilización sistemática de
artefactos de los cuales la arquitectura es uno de los más
importantes. Este enfoque busca tener distintos beneficios
asociados a la reutilización como pueden ser la reducción del
tiempo de desarrollo, y la mejora de la calidad.
3. En el desarrollo de software, la reutilización se refiere a tomar uno o más
artefactos realizados como parte de un desarrollo y utilizarlos nuevamente
en el desarrollo de otro sistema. La reutilización no es un concepto nuevo y
a lo largo de la historia del desarrollo de sistemas, han aparecido distintas
técnicas que han facilitado de alguna manera la reutilización de artefactos
de desarrollo de granularidad cada vez mayor.
4. El concepto de líneas de productos busca justamente lograr un enfoque
de reutilización sistemático dentro de una organización de desarrollo. Éste
es un concepto que se originó, y que se usa frecuentemente, en industrias
distintas al software. En la industria automotriz, por ejemplo, es común
que un fabricante produzca distintas variantes de un vehículo a partir de
una base común que se reutiliza en todas estas variantes.
5. 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,
como se muestra en la siguiente figura.
6. ASPECTOS
CONCEPTUALES
•Reutilización de
software
•Activos de Software
•Componentes de
Software Reutilizable
•Dominios Y Familias
•Líneas de Productos de
software
ASPECTOS
TECNOLOGICOS
•Arquitectura de la línea
de Productos de
Software
•Aéreas de Practicas y
Patrones para LPS
ASPECTOS
METODOLOGICOS
•Aéreas de practica de
ingeniería de software
•Los procesos básicos de
una LPS
•Modelos de procesos
basados en la reutilización
ASPECTOS
ORGANIZACIONALES
•Aéreas de practica de
gestión organizacional
ASPECTOS GERENCIALES
•Área de practica de gestión
de técnica
L P
S
7. El método WATCH, es un marco metodológico que 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 de un SIE (Sistema de Información
Empresarial).
Se ubica dentro de los métodos disciplinados ya que se centra en los
procesos, hace énfasis en los productos y la organización, involucra
procesos bien definidos y documentados, requiere de alta formalidad
en el proceso de desarrollo, son procesos repetibles, los resultados
son predecibles.
8. 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.
9. Esta Sólidamente Fundamentado.
Es Estructurado y Modular.
Es de Propósito Especifico.
Es Flexible y Adaptable.
Emplea las Mejores Practicas del Desarrollo de Software.
Emplea las Mejores Practicas y Procesos de Gestión de Proyectos.
Integra los Procesos de Gestión con los Procesos Técnicos y de
Soporte.
10. 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.
11. El proceso mostrado en la figura comienza en el centro del modelo, con los
procesos gerenciales, las primeras actividades que deben hacerse al
comenzar un proyecto son la planeación del mismo y la organización de
los grupos de trabajo.
Luego continua con las fases de desarrollo, las cuales son secuenciales en
dirección a las manecillas del reloj, pero con habilidad de iterar, esto es
retornar para corregir o ampliar un producto.
El proceso gerenciales controla dichas fases mediante la validación y
verificación con la que se determinara si se avanza a la próxima fase o si
es necesario retroceder a una anterior para mejorar o revisar un producto.
En las próximas secciones se detallan las actividades y productos de
ambos procesos.