Complex application systems based on very high-speed networking are found in control systems, telecommunication management and transportation management. Such systems interact with a large and distributed environment that must be monitored, and have to process vast amounts of data within deadlines. The overall development of these applications must minimize costs and integrate different problem-solving techniques to deal with environmental changes. Our framework is based on a library of components that participate in the development of such applications. A distributed architecture is defined, with three agent categories: environment agents that represent the environment behavior, complex agents that process environment events, and supervisor agents that delegate the processing between the complex agents. The library of architecture components contains a family of scheduling techniques from which the best is selected according to the environment's behavior. Our approach is based on experiments at the design phase to generate a rule base that associates suitable scheduling techniques with environment behaviors. During the complex system's run-time, each significant environment behavioral change triggers the generated rule base in order to select and plug in the most suitable scheduling technique. The complex agent architecture components and behavior are reusable for complex applications development. Abstract classes of actions that compose the main architectural components are common to these applications and can be instantiated differently by application-dependent actions.
['Ilham Benyahia', 'Mohammed Hilali']
An adaptive framework for distributed complex applications development