La Arquitectura Libertya Components esta llamada a cumplir los siguientes objetivos:
Desarrollar componentes independientes del núcleo funcional de la aplicación, los cuales a su vez pueden ser:
- Componentes específicos para una puesta en producción, definiendo reglas de negocio acordes a cada requerimiento, invocaciones a procesos, emisión de reportes, etc.
- Componentes genéricos (plugins) que brinden soluciones encapsuladas a requerimientos generales comunes en la tecnología de la información.
Desarrollar módulos para brindar soluciones orientadas a cumplimentar con las normas y legislación vigentes de un país (localizaciones).
- Implementar interfaces especiales con otras aplicaciones, a fin de lograr una integración vertical con las mismas.
- Actualizar el núcleo funcional de la aplicación de manera independiente y transparente respecto de los componentes que ya se encuentren instalados.
- Realizar replicaciones del diccionario de datos de manera sencilla, garantizando unicidad en todos los casos para todas las tablas y registros, a lo largo de todos los componentes instalados.
- Exportar e instalar componentes de manera sencilla, tanto para los desarrolladores como para los usuarios de la aplicación.
El ciclo virtuoso: construir en base a lo ya construido
La arquitectura Libertya Components contempla la posibilidad de desarrollar un componente basado en otro componente, para aprovechar de esa forma funcionalidad genérica ya desarrollada: Por ejemplo, es posible crear un stack de componentes en el cual se tiene una customización específica para un cliente, que se apoya en otro componente de interfaz con otros sistemas, y que a su vez este último depende de una localización ( adecuación a la legislación de un País ) ya instalada.
Cada una de estas capas utilizan la funcionalidad que brinda la Artquitectura Libertya Components para su correcta implementación e interacción:

Mecanismo técnico de desarrollo de Componentes
Para lograr lo previamente expuesto, se definió una API específica para su uso, en conjunto con una serie de convenciones y reglas a respetar, a fin de garantizar el correcto desarrollo de los componentes.
El proceso de desarrollo de un componente (plugin, localización, etc.) puede resumirse en los siguientes pasos:
- Tomar el release mas actualizado de Libertya desde www.libertya.org (fuentes y base de datos).
- Definir un nuevo componente y version, para luego dar inicio al desarrollo. A partir de este momento, toda modificación al diccionario de datos sera registrada en la bitácora.
- Desarrollar el plugin (clases java, datos y metadatos) respetando las especificaciones correspondientes de la API.
- Una vez finalizado el desarrollo del plugin, detener el mismo para finalizar el registro de la bitácora.
- Exportar el plugin, especificando la version a exportar.
- Crear el archivo JAR con las clases Java compiladas y los archivos de metadatos correspondientes.