![alt tag](http://www.agile-project-iot.eu/wp-content/uploads/2016/03/logo-png-transparent-02_small.png)
AGILE: The Software Architecture
The purpose of this repository is to present the software architecture for the AGILE gateway components.
![alt tag](http://agile-iot.eu/wp-content/uploads/2016/06/AGILE_logical_architecture.png)
The different Architectural views represented and described are the following:
- Logical View: a representation of logical components aggregating the different functionalities that the AGILE gateway will offer;
- Development View: shows how the software is decomposed for development into software components that are implemented by the development team or an existing external component that is integrated into the whole system. It also includes the mechanisms that AGILE will use to package and deliver software components.
- Microservices View: AGILE is developed according to a microservice architecture where are small set of independent processes communicate with each other and offer offer external applications services via well defined APIs. This view is important to clarify the different mechanisms that AGILE will adopt in order to deploy and execute components at runtime.
- AGILE API Definition: this view describse the specific APIs that AGILE will deliver to developers in order to build IoT Applications on top of AGILE framework, or to extend AGILE framework with additional features/API implementations (e.g. a specific device protocol integration).
- Dynamic View: this view complements the previous views in order to describe dynamic scenarios of interaction among external actors and the different software components in the design of specific logical flows supported by AGILE.
Learn more @ http://agile-iot.eu/
Follow us on Twitter: @agile_iot