Abstract:
|
La mayoría de sistemas de software actuales se construyen integrando componentes de software de diferente naturaleza y orígenes. La existencia de un enorme y creciente mercado de componentes desarrollados por terceros ha hecho de esta tecnología “la” forma estándar de desarrollo de software. Estos componentes se denominan componentes OTS, de las siglas inglesas “Off-The-
Shelf” (Li et al., 2008), aludiendo a su disponibilidad similar a la de un libro que
está disponible en una estantería. Los componentes OTS pueden ser componentes
comerciales, llamados componentes COTS, por “Commercial OTS” (Carney and Long, 2000); o software de código abierto, abreviados como OSS, por “Open Source Software” (Madanmohan and Rahul, 2004). Los componentes OTS, una
vez personalizados, son integrados utilizando software desarrollado a medida, e
incluyendo eventualmente capacidades de interacción con otros subsistemas ya existentes (p.e., sistemas legados).
Sin embargo, a pesar de sus beneficios potenciales (especialmente reducción de costes y tiempo de desarrollo), el diseño de software basado en componentes OTS también conlleva nuevos riesgos y retos para la Ingeniería de Software. Uno de sus procesos más críticos es el proceso de selección de
componentes a ser integrados: si un componente es seleccionado erróneamente, el
riesgo de fracaso de un proyecto se incrementa dramáticamente (Vitharana et al.,
2003; Bhuta y Boehm, 2007). Los factores que afectan al proceso de selección son cuantiosos y muy variados, pudiendo ser de naturaleza funcional o técnica, pero también política o legal (Reifer et al., 2003).
En este capítulo nos centramos en el estudio de los procesos de selección de componentes OTS. Después de precisar qué entendemos por componente OTS y enumerar las actividades que tienen lugar en su presencia, nos centraremos en el proceso de selección, resumiendo algunas propuestas actuales. A continuación, discutiremos el uso de modelos de calidad del software en la selección de
componentes. Seguidamente, incidiremos en un tipo particular de procesos de selección, los procesos conducidos por pliegues de condiciones. Acabaremos el capítulo con una breve discusión de los puntos más relevantes presentados. |