SPEAKER: Anastasios Zafeiropoulos, UBITECH
The ARCADIA project is targeting the alignment of software development paradigms with the opportunities offered by programmable infrastructure, in order to enable applications and services to dynamically adapt to the current execution environment. The main goal is a tight integration between the development and operations processes, enabling automatic deployment and life-cycle management through integrated annotations into the applications.
The ARCADIA development paradigm aims at building reactive systems by including more context-awareness in applications and services; the approach is based on the modularization, the organization in micro-services and the delegation of the control and management logic to an external entity, namely the orchestrator. The main driver underpinning the project approach is the availability of programmable infrastructures, including both cloud installations and communication systems; in this respect, ARCADIA is explicitly taking into considerations emerging technologies like SDN and NFV.
The ARCADIA framework is an overarching systems encompassing both software development, deployment, and runtime management. Software development is based on two main elements: the micro-services architecture (which allows flexible composition of applications and services) and a Context Model (which allows the specification of relationships, policies, requirements, constraints, performance metrics, etc). The deployment and runtime management system is based on a smart orchestrator which deploys applications over multiple IaaS, by interpreting the Context Model and by adapting applications/services to the current execution environment.
ARCADIA is currently developing several artefacts to build its framework: a web IDE for inserting annotations into applications and building service graphs, a software repository for ARCADIA-compliant components and service graphs, a policy specification and enforcement framework, an optimization algorithm for distributing software components over multiple IaaS, resource management and overlay networking.
ARCADIA is particularly interested in SDN/NFV. On the one side, SDN enables the programmatic network control necessary to deploy highly-distributed applications; on the other side, Virtual Network Functions are useful to be integrated into complex applications and services (e.g., load balancers, firewalls, etc.).