arquitecturas de referencia para líneas de productos
-
Upload
kaaroeoeliithaa-chavez-chavez -
Category
Documents
-
view
85 -
download
1
Transcript of arquitecturas de referencia para líneas de productos
IEEE Computer Society Regin 9 Captulo Argentina Programa DVP
Desarrollo de Software Basado en Lneas de Productos de SoftwareJons A. Montilva C., Ph.D.IEEE Member Universidad de Los Andes Facultad de Ingeniera Departamento de Computacin Mrida Venezuela
Contenidos
Desarrollo de Software basado en Lneas de Productos
2
Desarrollo de Software Basado en Lnea de Productos
Desarrollo de Software basado en Lneas de Productos
3
Qu es una Lnea de Productos de Software (LPS)
La idea bsica:Ensamblaje de partes de software previamente elaboradas Inspirada en los procesos de produccin de sistemas fsicosProduccin de aviones, vehculos, computadores, aparatos electrnicos, etc.
Fundamentada en la Reutilizacin de Software Asume la existencia de una industria de partes
Desarrollo de Software basado en Lneas de Productos
4
AntecedentesReutilizacin de softwareLa reutilizacin de software es el proceso de implementar o actualizar sistemas de software usando activos de software existentes (Sodhi & Sodhi, 1999)
"Reutilizacin de software es el proceso de crear sistemas de software a partir de software existente, en lugar de desarrollarlo desde el comienzo"(Sametinger, 1997)
Desarrollo de Software basado en Lneas de Productos
5
AntecedentesExisten varias modalidades de reutilizacin utilizadas en empresas de software:Individual Oportunista Gestionada:Institucionalizada, sistemtica, planificada, mejorada
Tradicionalmente, la reutilizacin ha estado basada en oportunidadLos componentes se almacenan en un repositorio a la espera de una oportunidad de reutilizacin
Desarrollo de Software basado en Lneas de Productos
6
AntecedentesDesarrollo de Software Basado en ComponentesLas aplicaciones se crean mediante la integracin de componentes nuevos, legados o de terceros (COTS) Cliente
Sistema de Ventas
Producto
Cuenta
Desarrollo de Software basado en Lneas de Productos
7
Definiciones de Lneas de Productos de Software"...se refieren a tcnicas de ingeniera para crear un portafolio de sistemas de software similares, a partir de un conjunto compartido de activos de software, usando un medio comn de produccin" (Krueger, 2006) "... es un conjunto de sistemas de software que comparten un conjunto comn y gestionado de aspectos que satisfacen las necesidades especficas de un segmento de mercado o misin y que son desarrollados a partir de un conjunto comn de activos fundamentales [de software] de una manera preescrita" (Clements and Northrop, 2002) "...consiste de una familia de sistemas de software que tienen una funcionalidad comn y alguna funcionalidad variable" (Gomma, 2004)La funcionalidad comn descansa en el uso recurrente de un conjunto comn de activos reutilizables (requisitos, diseos, componentes, servicios web, etc.) Los activos son reutilizados por todos los miembros de la familiaDesarrollo de Software basado en Lneas de Productos 8
Lneas de Productos de Software (LPS)Modelo Bsico de una Lnea de Productos de Software (LPS)www.softwareproductlines.com
Decisiones de Producto
ProduccinActivos de Software
Productos de Software
Desarrollo de Software basado en Lneas de Productos
9
Modelo Bsico de una Lnea de Productos de SoftwareLa entrada: Activos de SoftwareUna coleccin de partes de software (requisitos, diseos, componentes, casos de prueba, etc.) que se configuran y componen de una manera prescrita para producir los productos de la lnea
Control: Modelos de Decisiones y Decisiones de Producto
El control: Modelos de Decisin y Decisiones de ProductosLos Modelos de Decisiones describen los aspectos variables y opcionales de los productos de la lnea Cada producto de la lnea es definido por un conjunto de decisiones (decisiones del producto)Desarrollo de Software basado en Lneas de Productos
Produccin Entrada: Activos de SoftwareProductos de Software
10
Modelo Bsico de una Lnea de Productos de SoftwareEl proceso de produccinEstablece 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 variacin de esos activos
Control: Modelos de Decisiones y Decisiones de Producto
El proceso: ProduccinEntrada: Activos de Software
Salida: Productos de Software
La salida: Productos de softwareConjunto de todos los productos que pueden o son producidos por la lnea de productos
Desarrollo de Software basado en Lneas de Productos
11
BeneficiosLa entrega de productos de software de una manerams rpida, econmica y con una mejor calidad
Las LPS producen mejoras en: Tiempo de entrega del producto (time to market)Costos de ingeniera Tamao del portafolio de productos Reduccin de las tasas de defectos Calidad de los productosDesarrollo de Software basado en Lneas de Productos 12
BeneficiosBeneficios tcticos y estratgicos (Krueger, 2006): Beneficios tcticos de ingeniera:Reduccin en el tiempo promedio de creacin y entrega de nuevos productos Reduccin en el nmero promedio de defectos por producto Reduccin en el esfuerzo promedio requerido para desarrollar y mantener los productos Reduccin en el costo promedio de produccin de los productos Incremento en el nmero total de productos que pueden ser efectivamente desplegados y mantenidos
Desarrollo de Software basado en Lneas de Productos
13
BeneficiosBeneficios tcticos y estratgicos (cont.): Beneficios estratgicos de negociosReduccin 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 Mrgenes mayores de ganancias Mejor calidad de los productos Mejoras en la reputacin de la empresa Mayor escalabilidad del modelo de negocios en trminos de productos y mercados Mayor agilidad para expandir el negocio a nuevos mercados Reduccin 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
Desarrollo de Software basado en Lneas de Productos
14
Aspectos fundamentalesEl paradigma de desarrollo de software LPS requiere que las empresas que lo adopten consideren:Aspectos conceptualesConceptos en los que las LPS se fundamentan
Aspectos tecnolgicosQu tecnologas son fundamentales para desarrollar y mantener activos y productos de software
Aspectos metodolgicosCmo desarrollar y mantener los activos y productos de software
Aspectos organizativosCmo debe la empresa organizarse internamente
Aspectos gerencialesCmo gestionar los proyectos de desarrollo de activos y productos
Desarrollo de Software basado en Lneas de Productos
15
Desarrollo de Software Basado en Lnea de Productos
Desarrollo de Software basado en Lneas de Productos
16
Evolucin de la Reutilizacin de SoftwareReutilizacin de SoftwareDesarrollo de Software Basado en Lneas de Productos Desarrollo de Software Basado en Componentes Ingeniera de Dominio Ingeniera de Aplicaciones Desarrollo de Software con reutilizacin
Desarrollo de Software para reutilizacinDesarrollo de Software basado en Lneas de Productos
17
Reutilizacin de softwareLa reutilizacin de activos de software en LPS tiene varias caractersticas:Es estratgicaConsolida lo comn entre la lnea de productos Maneja estratgicamente la variacin entre los productos de la lnea Elimina la duplicacin de esfuerzos de ingeniera
Es predictivaLa reutilizacin de activos se da en uno o ms productos sobre una lnea bien definida Se reutilizan arquitecturas de software, en lugar de reutilizar componentes de manera oportunista
Es gestionadaEs sistemtica, planificada, institucionalizada y mejorada
Desarrollo de Software basado en Lneas de Productos
18
Activos de software reutilizableUn activo de software reutilizable es un producto de software diseado expresamente para ser utilizado mltiples veces en el desarrollo de diferentes sistemas o aplicaciones Un activo de software puede ser:Un componente de software Una especificacin de requisitos Un modelo de negocios Una especificacin de diseo Un algoritmo Un patrn de diseo Una arquitectura de dominio Un esquema de base de datos Una especificacin de prueba La documentacin de un sistema Un plan
Desarrollo de Software basado en Lneas de Productos
19
Componentes de software reutilizableUn componente de software reutilizable esUna pieza [de software] funcional que es liberada independientemente [de otras] y que proporciona acceso a sus servicios a travs de sus interfaces [Brown, 2000]
Puede ser liberado (desplegado e instanciado) independientemente de otros: Ofrece servicios a travs de sus interfaces Para utilizar su funcionalidad se emplean sus interfaces
Desarrollo de Software basado en Lneas de Productos
20
Componentes de software reutilizable (CSR)Definicin del CBDi Forum [1999]:Un componente es una pieza de software que describe y/o libera un conjunto de servicios que son usados slo a travs de interfaces bien definidas
Caractersticas esenciales de un CSR:Identificable Autocontenido Rastreable a travs de su ciclo de desarrollo Reemplazable por otro componente Accesible solamente a travs de su interfaz Inmutabilidad de sus servicios Documentacin de sus servicios Mantenido sistemticamente
Desarrollo de Software basado en Lneas de Productos
21
Componentes de software reutilizable (CSR)
Tipos de CSRSegn su modificabilidadCaja negra Caja blanca
Segn la tecnologa usadaComponentes imperativosMdulos, funciones
Segn su granularidadComponentes de uso especfico Componentes de negocio Marcos (frameworks) Componentes de aplicacin
Componentes OOClases
Componentes distribuidosComponentes CORBA Componentes .NET Componentes J2EE Servicios web
Segn su fabricanteComponentes hechos en casa COTS Component Off The Shelf
Desarrollo de Software basado en Lneas de Productos
22
Dominios y familiasUn dominio es un rea de aplicacin de productos de software que:estn centradas en torno a un cuerpo de conocimientos tienen una economa de alcance asociadaOcurre cuando construir un activo y usarlo en mltiples productos ocasiona ms beneficios que crear el activo para cada producto
Pueden dividirse en subdominiosRedes de ServiciosRedes elctricas Otras redes
Acueductos
Oloductos
Desarrollo de Software basado en Lneas de Productos
23
Dominios y familiasUna familia de productos de software es un conjunto de productos de software asociados a un dominio determinado Los miembros de la familia comparten aspectos comunes tales como:un diseo arquitectnico comn un conjunto componentes reutilizables capacidades y servicios comunes tecnologas comunes
Desarrollo de Software basado en Lneas de Productos
24
Lneas de productos de software (LPS)Una LPS es una familia de productos de software que: tiene un conjunto de aspectos gestionados que son comunes a todos los miembros de la familialos productos de la lnea son desarrollados a partir de un conjunto de activos de software reutilizables
Una familia de productos de software tiene: Aspectos comunes que son compartidos por todos sus productosAspectos variables que establecen diferencias entre los productosDesarrollo de Software basado en Lneas de Productos 25
Lneas de productos de software (LPS)El objetivo principal de una LPS es:Reducir el tiempo, esfuerzo, costo y complejidad de crear y mantener los productos de la lnea mediante:La capitalizacin de los aspectos comunes de la lnea de productosA travs de la consolidacin y reutilizacin de los activos de entrada a la lnea
El manejo de los aspectos variables de los productos de la lneaA travs de los puntos de variacin de los activos y los modelos de decisin
(Krueger, 2006)Desarrollo de Software basado en Lneas de Productos 26
Desarrollo de Software Basado en Lnea de Productos
Desarrollo de Software basado en Lneas de Productos
27
Arquitecturas de LPS"Una arquitectura de software es la estructura o estructuras de un sistema que comprende los componentes del software, las propiedades visibles externamente de estos componentes, y las relaciones entre ellos" (Bass, 1998)
id Component Model
Componente 1
Componente 2
Las propiedades externas de los componentes son:sus interfaces (APIs) y sus caractersticasrendimiento, manipulacin de errores, uso compartido de recursos, etc.Desarrollo de Software basado en Lneas de Productos
Componente 3
Componente 4
Componente 5
28
Arquitecturas de LPSLa arquitectura de una LPS es una arquitectura de software genricaDescribe la estructura de toda la familia de productos y no solamente la de un producto particular
Captura los aspectos comunes y variables de una familia de productos de softwareLos aspectos comunes de la arquitectura son capturados por los componentes de software que son comunes a toda la familia Los aspectos variables de la arquitectura son capturados por los componentes de software que varan entre los miembros de la familia
Tambin denominada arquitectura de dominio
La arquitectura LPS debe ser instanciada cada vez que se desarrolla un producto de la lnea
Desarrollo de Software basado en Lneas de Productos
29
Arquitecturas de LPSUna arquitectura LPS es instanciada a travs de mecanismos de variabilidad:HerenciaEj. Suplantacin de un mtodo heredado de una clase en un componente
Puntos de extensinEj. Se agrega nueva funcionalidad o comportamiento a un componente
ParametrizacinEl comportamiento de un componente puede ser parametrizado a tiempo de diseo y definido a tiempo de implementacin Ej. macros o templates
ConfiguracinSeleccin y "deseleccin" de los componentes de la arquitectura
Seleccin a tiempo de compilacinLa implementacin de una funcionalidad es seleccionada, entre varias posibles, al momento de la compilacin del componente o de la aplicacin
Desarrollo de Software basado en Lneas de Productos
30
Repositorios LPSLas lneas de productos de software requieren almacenar sus activos de software en repositorios Un repositorio LPS es una base de datos especializada que:almacena activos de software y facilita la recuperacin y el mantenimiento de los activos de software Su objetivo es asegurar la disponibilidad de activos para apoyar el desarrollo de productos de la LPSActivos de SoftwareDesarrollo de Software basado en Lneas de Productos 31
Repositorios LPSEl repositorio mantiene informacin relevante de cada activo usado en la LPS:Especificacin tcnica del activo Historia o registro de uso Clasificacin del activo Documentacin del activo
Activos de Software
Desarrollo de Software basado en Lneas de Productos
32
Repositorios LPSTipos de Repositorios LPS
Segn su alcanceLocalesSon desarrollados y reusados internamente por una organizacin o empresa
Segn su propsitoDe reusoPermiten el almacenamiento y recuperacin de activos de software
Globales o de uso comercialDisponibles a terceros bajo adquisicin o subscripcin Ejemplos: COTS, Servicios Web
De referenciaFacilitan la localizacin de activos en otros repositorios Ejemplo: UDDIs
Segn su aplicabilidadDe dominio especfico De dominio generalDesarrollo de Software basado en Lneas de Productos 33
reas de prcticas y patrones para LPSLa introduccin del paradigma LPS en una empresa de software es un proceso complejo, gradual y lleno de dificultades Para obtener los beneficios que este paradigma ofrece, una empresa debe tomar en consideracin diferentes factores:tecnolgicos, metodolgicos, organizacionales y gerenciales
Clements y Northrop (2002) definen un conjunto de reas de prcticas y patronesSon esenciales considerar para asegurar el xito de la implantacin del paradigma LPS en una empresa
Desarrollo de Software basado en Lneas de Productos
34
reas de Prctica LPSUn rea de prctica es una coleccin de actividades que una empresa debe ejecutar y dominar para implantar exitosamente una LPS Estas reas de prctica describen actividades que son normalmente recomendadas por el SEI para el desarrollo exitoso de software Guardan una correspondencia estrecha con las reas de procesos definidas por el CMMI-SW
Desarrollo de Software basado en Lneas de Productos
35
reas de Prctica LPSTres tipos de reas de prcticas LPS recomendadas por Clements y Northrop (2002):reas de prctica de Ingeniera de Software Ejemplos: Definicin y evaluacin de una arquitectura LPS
reas de prctica de Gestin Tcnica Ejemplo: Planificacin de los proyectos de desarrollo de componentes de productos (aplicaciones)
reas de prctica de Gestin Organizacional Ejemplo: Estructuracin de la empresa
Desarrollo de Software basado en Lneas de Productos
36
Patrones LPSUn patrn es una regla de tres partes, las cuales expresan una relacin entre un contexto, un problema y una solucin (Alexander, 1979) Los patrones LPS plantean soluciones a problemas recurrentes relacionados con las situaciones organizacionales de las LPS Las soluciones son planteadas en trminos de las reas de prcticas y sus relaciones Un ejemplo: El patrn "Que Construir"Desarrollo de Software basado en Lneas de Productos 37
Un ejemplo: El patrn "Que Construir"El Contexto:Una empresa ha decidido crear una lnea de productos de software y conoce bien el dominio de aplicacin de los productos
El Problema:Determinar que productos debern ser incluidos en la lnea de productos
La Solucin:Para determinar que productos producir, se requiere informacin relacionada con:El dominio de aplicacin, la tecnologa y el mercado La justificacin del negocio El proceso para describir el conjunto de productos que sern incluidos en la lnea de productos
Desarrollo de Software basado en Lneas de Productos
38
Un ejemplo: El patrn "Que Construir"Las reas de prctica requeridas por la solucin:Anlisis del Mercado Ayuda a entender el mercado que tendr los productos de la lnea: qu productos tienen mayor demanda, cul es la competencia, cul es el tamao del mercado y cuales las oportunidades Entendimiento de dominios relevantes Proporciona un modelo del dominio, los requisitos del dominio y los aspectos comunes y variables a todos los sistemas (aplicaciones) que forman el dominio Proyeccin tecnolgica Permite predecir que productos que productos pueden llegar a ser factibles en el futuro cercano Construccin de un caso de negocios Proporciona una justificacin de la seleccin de productos y del enfoque se usar para construirlos Definicin del alcance (scoping) Describe cuales productos sern incluidos en la lnea de productos y cuales noDesarrollo de Software basado en Lneas de Productos 39
Desarrollo de Software Basado en Lnea de Productos
Desarrollo de Software basado en Lneas de Productos
40
reas de Prctica de Ingeniera de SoftwareLos aspectos metodolgicos de las LPS involucran la aplicacin de un conjunto de prcticas de ingeniera: Definicin de la arquitectura LPS Evaluacin de la arquitectura LPS Desarrollo de componentes Utilizacin de COTS Minera de activos existentes Ingeniera de Requisitos Integracin de sistemas de software Pruebas Entendimiento de dominios relevantes
Desarrollo de Software basado en Lneas de Productos
41
Los procesos bsicos de una LPSProcesos de negocio de una LPS
Activos de software
od Procesos LPS
Ingeniera de Dominio
Ingeniera de Aplicaciones
Productos de software
Gestin TecnolgicaProcesos de desarrollo
Gestin Organizacional
Organizacin de la empresa
Desarrollo de Software basado en Lneas de Productos
42
Ingeniera de DominioLa Ingeniera de Dominio (ID) captura informacin y representa el conocimiento sobre un dominio determinado, con el fin de:crear activos de software reutilizables en el desarrollo de cualquier nuevo producto de una LPS
Productos de la ID:Definiciones de dominios (descripciones del contexto) Modelos del dominio Modelos de requisitos del dominio Modelos arquitectnicos (arquitecturas de dominio) Ontologas del dominio Lenguajes del dominio Estndares del dominio
Desarrollo de Software basado en Lneas de Productos
43
Ingeniera de DominioActividades principales de la Ingeniera de DominioAnlisis de Aspectos:Analiza la familia para determinar los requisitos que son comunes, opcionales y diferentes a todos sus miembros
Diseo de la Arquitectura LPS:Produce una arquitectura de dominio la cual tiene:Componentes comunes a todos los miembros de la familia Componentes opcionales que son requeridos por algunos miembros Componentes variantes de los cuales algunos miembros de la familia emplean distintas versionesTienen puntos de variacin que permiten configurarlos
Implementacin del DominioConsiste en la creacin y almacenamiento de los activos de software que se emplearn para producir los productos de software
Desarrollo de Software basado en Lneas de Productos
44
Ingeniera de AplicacionesLa Ingeniera de Aplicaciones (IA) se encarga del desarrollo de los productos de la LPS a travs de:la reutilizacin de activos de software planes de produccin
La arquitectura de dominio es empleada como un modelo de referencia para disear los productos de la LPS El repositorio LPS provee los activos requeridos durante el desarrollo de cada nuevo producto de la LPS
Desarrollo de Software basado en Lneas de Productos
45
Modelos de procesos para LPSEl Modelo TWIN El mtodo WATCHModelo WATCH Component Modelo WATCH App
El modelo del Software Engineering Institute (SEI) El modelo ESPLEPEvolutionary Software Product Lines Engineering Process
Desarrollo de Software basado en Lneas de Productos
46
El Modelo TWIN extendidoModelo empleado en el Desarrollo de Software basado en Componentes Ingeniera de DominioAnlisis del DominioAdquisicin de conocimiento del dominio Anlisis de aplicaciones del dominio Definicin de requisitos. del dominio Modelado del dominio
Diseo del DominioDiseo de la arquitectura de dominio Evaluacin de la arquitectura
Ingeniera de ComponentesDesarrollo de componentes Gestin del repositorio de comp.
Sistema de Gestin de ASR
Anlisis y especificacin de requisitos
Diseo de la arquitectura de la aplicacin
Bsqueda de componentes
Desarrollo de nuevos componentes Adaptacin de componentes
Integracin de componentes
Pruebas de la aplicacin
Ingeniera de AplicacionesDesarrollo de Software basado en Lneas de Productos 47
El Mtodo WATCHModelo propuesto en la Universidad de Los Andes (Venezuela) para el desarrollo de aplicaciones empresariales Consta de dos componentes metodolgicos:Entrega de la Aplicacin Liberacin del Componente Especificacin del Componente Modelado de Negocios
Pruebas de la Aplicacin
Ingeniera de Requisitos
Certificacin del Componente
WATCH Component AprovisionamientoEnsamblaje de Componentes Pruebas del Componente
WATCH Application
Diseo Arquitectnico
Aprovisionamiento de Componentes
Especificacin de Componentes
Ingeniera de Dominio: Desarrollo de ComponentesDesarrollo de Software basado en Lneas de Productos
Ingeniera de Aplicaciones: Desarrollo de Aplicaciones Empresariales48
El Mtodo WATCH-ComponentModelo de procesos para el desarrollo de componentes de software reutilizables
Desarrollo de Software basado en Lneas de Productos
49
El mtodo WATCH-ApplicationModelo de procesos para el desarrollo de aplicaciones empresariales (Montilva y Barrios, 2004)Operacin y Mantenimiento Modelado del Negocio Entrega de la Aplicacin Ingeniera de Requisitos
Pruebas de la Aplicacin
Procesos Gerenciales
Diseo Arquitectnico
Ensamblaje de Componentes Aprovisionamiento de Componentes
Diseo de Componentes
Desarrollo de Software basado en Lneas de Productos
50
El modelo del SEIModelo de procesos de LPS desarrollado en el Software Engineering Institute (SEI) Disponible en http://www.sei.cmu.edu/productlines/framework.html
Desarrollo de Software basado en Lneas de Productos
51
El modelo del SEIDesarrollo de Activos Fundamentales (Ingeniera de Dominio)Objetivo:Establecer la capacidad de produccin para los productos mediante el desarrollo de activos de software reutilizables
Salidas:Alcance de la lnea Activos Plan de Produccin
Desarrollo de Software basado en Lneas de Productos
52
El modelo del SEIDesarrollo de Productos (Ingeniera de Aplicaciones)Objetivo:Elaborar los productos de la lnea a partir del ensamblaje de activos fundamentales siguiendo el plan de produccin
Salida:Productos acabados de la lneaDesarrollo de Software basado en Lneas de Productos 53
El modelo del SEIGestin de la Lnea de Productos (Management)Objetivo:Proporcionar los recursos, coordinar y supervisar el desarrollo de activos y productos
Dividida en:Gestin tcnicaOrientada a los grupos que desarrollan activos y productos
Gestin organizacionalOrientada a los aspectos organizacionales (estructura, relaciones, recursos, financiamiento, etc.)Desarrollo de Software basado en Lneas de Productos
Organizational Management
54
El modelo SPLEPSPLEP = Evolutionary Software Product Line Engineering Process (Gooma, 2004)
Desarrollo de Software basado en Lneas de Productos
55
El modelo SPLEPFases de la Ingeniera de Lnea de Productos del mtodo SPLEP (Gooma, 2004)
Desarrollo de Software basado en Lneas de Productos
56
El modelo SPLEPFases de la Ingeniera de Aplicaciones del mtodo SPLEP (Gooma, 2004)
Desarrollo de Software basado en Lneas de Productos
57
Desarrollo de Software Basado en Lnea de Productos
Desarrollo de Software basado en Lneas de Productos
58
Aspectos Organizacionales
Estn relacionados con:la organizacin de la empresa y las actividades que ella debe implantar para asegurar el aprovechamiento eficaz y eficiente del paradigma LPS
Desarrollo de Software basado en Lneas de Productos
59
reas de prctica de Gestin OrganizacionalLos aspectos organizacionales de las LPS involucran la aplicacin de un conjunto de prcticas de gestin: Construccin de casos de negocio Gestin de relaciones con los clientes Desarrollo de una estrategia de adquisicin Anlisis de mercados Operaciones Planificacin organizacional Gestin de riesgos organizacionales Estructuracin de la empresa Proyeccin de tecnologas Capacitacin de personal
Desarrollo de Software basado en Lneas de Productos
60
Desarrollo de Software Basado en Lnea de Productos
Desarrollo de Software basado en Lneas de Productos
61
Aspectos GerencialesEstn relacionados con la aplicacin de los procesos gerenciales en las actividades de Ingeniera de Dominio e Ingeniera de Aplicacin de una LPSPlanificacin de Proyectos Organizacin de Grupos de TrabajoGrupos de SoporteAdministracin de Repositorios de Activos de Software Grupos de Mantenimiento de Aplicaciones
Grupos de DesarrolloGrupos de desarrollo de componentes Grupos de desarrollo de aplicaciones
Direccin Administracin de recursos Control
Desarrollo de Software basado en Lneas de Productos
62
reas de prctica de Gestin TcnicaLos aspectos gerenciales de las LPS involucran la aplicacin de un conjunto de prcticas de gestin tcnica:Gestin de la Configuracin Recoleccin de datos, mtricas y seguimiento Anlisis de hacer/comprar/descubrir/enco mendar (aprovisionamiento de activos) Definicin de procesos Alcance Planificacin tcnica Gestin de riesgos tcnicos Soporte de herramientas
Desarrollo de Software basado en Lneas de Productos
63
Desarrollo de Software Basado en Lnea de Productos
Desarrollo de Software basado en Lneas de Productos
64
Conclusiones
Las Lneas de Productos de Software representan el estado del arte en Reutilizacin del Software La implantacin del paradigma LPS en una empresa es un proceso complejo Para manejar esta complejidad se requiere considerar diferentes aspectos:Conceptuales Tecnolgicos Metodolgicos Organizacionales Gerenciales
Desarrollo de Software basado en Lneas de Productos
65
Desarrollo de Software Basado en Lnea de Productos
Desarrollo de Software basado en Lneas de Productos
66
Desarrollo de Software Basado en Lnea de Productos
[email protected] http://www.webdelprofesor.ula.ve/ingeniera/jonas Jons Montilva, 2006Desarrollo de Software basado en Lneas de Productos 67