A Middleware for Managing Non-Functional Requirements in Cloud PaaS

A key aspect of distributed applications in platform-as-a-service clouds revolves around the definition of requirements for quality of service and the most efficient use of the available resources to achieve them. Matching both the requirements and resources represents a unique challenge: While requirements are generally defined in relatively abstract form and defined as system-wide parameters, the resources are concrete, low-level entities that, by themselves, are only of marginal influence on the requirements. In order to establish a relationship between these two requires both the agglomeration of properties into more abstract ones as well as refining requirements in more detailed, concrete ones, both of which can often only be done to a certain degree. This paper presents a vision how both aspects can be brought to the same level and introduces an approach enhancing component-based cloud applications with non-functional properties in the context of an integrated programming model. This allows developers of such applications to formally declare properties that may influence the application during runtime and document the expectations regarding non-functional aspects of the overall system. This can be used to ensure the health of the application and, in case requirements are violated, actions like the deployment of additional resources can be performed in order to alleviate any degradation of its non-functional state, either by evaluating, choosing and performing pre-defined actions automatically or by manual administrative intervention.

[1]  William S. Levine,et al.  The Control Handbook , 2005 .

[2]  Thomas P. Brisco DNS Support for Load Balancing , 1995, RFC.

[3]  Anne H. H. Ngu,et al.  QoS-aware middleware for Web services composition , 2004, IEEE Transactions on Software Engineering.

[4]  Ivica Crnkovic,et al.  Concerning Predictability in Dependable Component-Based Systems: Classification of Quality Attributes , 2004, WADS.

[5]  Kai Jander,et al.  JadexCloud - An Infrastructure for Enterprise Cloud Applications , 2011, MATES.

[6]  Michael Rowley,et al.  Understanding SCA (Service Component Architecture) , 2009 .

[7]  Michael E. Bratman,et al.  Intention, Plans, and Practical Reason , 1991 .

[8]  Fausto Giunchiglia,et al.  Tropos: An Agent-Oriented Software Development Methodology , 2004, Autonomous Agents and Multi-Agent Systems.

[9]  Brian Walters,et al.  VMware Virtual Platform , 1999 .

[10]  Lars Braubach,et al.  Towards Elastic Component-Based Cloud Applications , 2014, IDC.

[11]  S. Stich Dennett on Intentional Systems , 1981 .

[12]  Axel van Lamsweerde,et al.  Goal-Oriented Requirements Engineering: A Guided Tour , 2001, RE.

[13]  Paul Harmon,et al.  Business Activity Monitoring and Simulation , 2011 .

[14]  Koen V. Hindriks,et al.  Do You Get It? User-Evaluated Explainable BDI Agents , 2010, MATES.

[15]  Lothar Hotz,et al.  Monitoring BPMN-Processes with Rules in a Distributed Environment , 2012, RuleML.

[16]  Lars Braubach,et al.  Active Components: A Software Paradigm for Distributed Systems , 2011, 2011 IEEE/WIC/ACM International Conferences on Web Intelligence and Intelligent Agent Technology.

[17]  Kai Jander,et al.  The Jadex Project: Programming Model , 2013, Multiagent Systems and Applications - Volume 1.

[18]  Arshdeep Bahga,et al.  Rapid Prototyping of Multitier Cloud-Based Services and Systems , 2013, Computer.

[19]  Jeffrey O. Kephart,et al.  An artificial intelligence perspective on autonomic computing policies , 2004, Proceedings. Fifth IEEE International Workshop on Policies for Distributed Systems and Networks, 2004. POLICY 2004..

[20]  Lars Braubach,et al.  The active components approach for distributed systems development , 2013, Int. J. Parallel Emergent Distributed Syst..

[21]  Séverine Sentilles,et al.  Integration of Extra-Functional Properties in Component Models , 2009, CBSE.

[22]  Steffen Becker,et al.  The Palladio component model for model-driven performance prediction , 2009, J. Syst. Softw..

[23]  Heiko Ludwig,et al.  The WSLA Framework: Specifying and Monitoring Service Level Agreements for Web Services , 2003, Journal of Network and Systems Management.

[24]  Julio Cesar Sampaio do Prado Leite,et al.  On Non-Functional Requirements in Software Engineering , 2009, Conceptual Modeling: Foundations and Applications.

[25]  Tobin J. Lehman,et al.  OptimalGrid: middleware for automatic deployment of distributed FEM problems on an Internet-based computing grid , 2003, 2003 Proceedings IEEE International Conference on Cluster Computing.

[26]  Xiaorong Li,et al.  Autonomic Cloud computing: Open challenges and architectural elements , 2012, 2012 Third International Conference on Emerging Applications of Information Technology.

[27]  Eric S. K. Yu,et al.  Towards modelling and reasoning support for early-phase requirements engineering , 1997, Proceedings of ISRE '97: 3rd IEEE International Symposium on Requirements Engineering.

[28]  Bert Wijnen,et al.  An Architecture for Describing Simple Network Management Protocol (SNMP) Management Frameworks , 2002, RFC.

[29]  Lars Braubach,et al.  A Generic Mapping Approach for the Integration of BDI with Object Orientation , 2014, 2014 IEEE/WIC/ACM International Joint Conferences on Web Intelligence (WI) and Intelligent Agent Technologies (IAT).