Componentes y servicios

diciembre 4, 2011 - Publicaciones

Compartir

En ingeniería, es usual diseñar productos y sistemas en términos de componentes. La innovación suele darse en la integración y “orquestación” de los componentes, vía un diseño externo que revela una interfaz de uso. Los componentes físicos son elementos de construcción que presentan diversos niveles de granularidad y se los especifica según sus funciones y por satisfacer ciertas restricciones, que permiten ensamblarlos y operar dentro de ciertos márgenes.

Para diseñar en términos de componentes, es necesario que sus características sean conocidas y confiables. Existen organismos de “tercera parte” que certifican las propiedades de los componentes físicos, posibilitando planteamientos que confían en las funciones que prestará cada componente.

El diseño y construcción de componentes desoftware busca implementar contratos de servicio. Los contratos referentes a funcionalidad pueden ser especificados en términos de precondiciones (supuestos), poscondiciones (efectos garantizados) e invariantes (restricciones de integridad).

Pero hay más características de interés: tolerancia a fallas, rendimiento, seguridad, portabilidad, interoperabilidad y escalabilidad, entre otras.

La especificación es imprescindible para certificar componentes de software. Hay teorías y métodos formales para todo esto, pero su uso es limitado por la dificultad del modelaje matemático, la complejidad de los elementos y sus relaciones, la carencia de herramientas de apoyo y la inversión en tiempo y recursos requeridos.

La tendencia haciasoftware como servicios expuestos en la nube plantea el reto de definir los contratos de servicios de manera que se logre amplia reutilización e interoperabilidad, pero estamos lejos aún de tener una base de confianza comparable a la que es posible en los artefactos y sistemas basados en elementos físicos

Artículo publicado en el periódico El Financiero

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *