An Architecture Framework for Orchestrating Context-Aware IT Ecosystems: A Case Study for Quantitative Evaluation †
Abstract
:1. Introduction
- The first is an extension of the application scope of the MAPE-K architecture. Several typical frameworks [20,21,22] have been previously proposed to implement the MAPE-K loop, each with their own advantages and disadvantages, but their driving goals are limited to dynamic component reconfiguration in a single system. In contrast, the proposed framework includes mechanisms for both local adaption and global adaptation to ensure service sustainability of the system’s individual components while maintaining IT-ecosystem-wide collaborative performance.
- The second is a proposal for an orchestration mechanism that can minimize overheads due to the expansion of the IT ecosystem scale. Generally, the scale of an IT ecosystem that survives to achieve the common goal changes in the open IoT environment. The increase in the population of participating systems in the IT ecosystem can be a factor that can increase the time needed to find the optimal combination of device collaboration. The framework proposed in this paper aims to solve the scalability problem of IT ecosystems by applying a genetic algorithm, which is considered one of the most proven methods to solve the problem that calculates the global optimal solution.
- The third is a quantitative evaluated framework to provide a walk-through of a sample case study. Though we could not build an IT ecosystem in the real world, we have developed a sample IT ecosystem utilizing the proposed conceptual architecture to showcase its operational capabilities in simulated environments. Extending our previous work [23], we continue to explain our dynamic reconfiguration mechanism by providing a sample case study, which is an unmanned forest management system, into an IT ecosystem domain. Our research results are differentiated from the findings reported in previous work in that they apply the proposed mechanisms to an actual working IT ecosystem, thereby grounding our performance results in quantifiable test results and reinforcing the feasibility of our suggested architecture framework.
2. Related Work
3. A Reference Architecture for IT Ecosystems
4. Case Study: An IT Ecosystem for Unmanned Forest Management
5. An Instantiated Architecture for the Unmanned Forest Management IT Ecosystem
5.1. Local Adaptation Mechanism for Achieving the Service Goals of Individual Participants
- Weather Monitor: Periodically reads sensor data from the Local Environment storage, updates gauge values to reflect the current environment in zone[0][2], and sends the data to Weather Analyzer.
- Weather Analyzer: Analyzes the gauge values delivered from Weather Monitor to diagnose whether the present environmental conditions in zone[0][2] violate the HE2 assignment constraints, and requests a reconfiguration plan by sending the diagnostic results to Pull Out Planner as parameters.
- Pull Out Planner: Creates a component reconfiguration plan for HE2 to land safely in a safe region in zone[0][2], and it sends the plan to Adaptation Executor.
- Adaptation Executor: If any component required by the reconfiguration plan does not exist in the given system, this component locates the missing component and identifies requests for it through ITE Bridge Service by passing the required service features as parameters.
- ITE Bridge Service: This component is an OSGi bundle that provides a common interface for accessing the support devices available on the system; it also enables access to external resources. The REST [37] style services provided by ITE Bridge Service enable the entire IT ecosystem to share components, services, or other resources among all participants.
- Configuration Manager: When all the components required to land HE2 have been procured, the component reconfiguration results are sent to ConfigurationManager within HE2, and updates its Local Configuration storage. Then, Effector in HE2’s controller reads the updated configuration and implements the actual component reconfiguration. Function calls between the Android platform and OSGi bundle are unidirectional to prevent AdaptationExecutor from directly passing on a new configuration to Effector.
- ITE Configuration Manager: The changed environmental information in zone[0][2] and the status of HE2 (incapable of service) are updated to ITE Global Knowledge through ITE Configuration Manager.
5.2. Orchestration Mechanism for IT Ecosystem-Wide Dynamic Reconfiguration
- Collaboration Monitor: On every monitoring cycle, Collaboration Monitor acquires the current configuration information from the global configuration storage in Global ITE Knowledge and extracts the information needed to analyze the current collaboration score; it then delivers the information to Collaboration Analyzer.
- Collaboration Analyzer: This component receives monitoring information from Collaboration Monitor and calculates the collaboration score of the current configuration. Details of how the orchestration is measured as a score are provided in Section 5.4. If the score falls below a predefined threshold, Collaboration Analyzer reviews the mismatch between the current configuration and its environment, and it sends the result to Collaboration Planner.
- Collaboration Planner: This component receives information about the current configuration and its problems, and it plans the next optimal configuration. To do so, it calculates the scores for all possible configuration variations to identify the highest next score. When the next optimal configuration is found, Collaboration Planner develops a reconfiguration plan to execute the transition. These options include withdrawing an existing participant, deploying a new participant, or adding previously unavailable capabilities to the participant to activate unused sensors or actuators.
- Adaptation Executor: This component receives the reconfiguration plan developed by Collaboration Planner, and it selectively delivers commands that modify the ChiefGardner system’s local component configuration to Configuration Manager on the Felix layer. The delivered commands are updated to the local configuration. Effector on the Android platform periodically reads the updated commands and executes the component change. At the same time, reconfiguration commands intended for other TeamMember participants are delivered to their destinations through the Collaborative Communication layer. When the entire configuration of the IT ecosystem completes its shift to the next step, the changed configuration information is updated to Global Configuration storage via ITE Configuration Manager.
- Environment model: This data type stores definitions for the environment components that change with time, shown in Figure 7a, and the environment specifications using the defined environmental model, as seen in Figure 7b. The environmental model does change after its initial definition at design, but the environment specifications are updated regularly based on the data collected through various sensors.
- Participants’ profile: This data type stores the profiles of individual participants in the IT ecosystem, including their operational costs and their expected benefits. The cost and benefit information is used as input to calculate the collaboration score when reconfigurations are needed.
- Constraints and rules: Information on the restrictions to be considered when assigning participants to specific zones is also stored in Global ITE Knowledge storage. In the case of the unmanned forest management IT ecosystem, the participants’ attributes determine the parts of the forest the system to which they can be assigned. For example, unmanned helicopters, unmanned aircrafts, or general aircrafts cannot be assigned to zones with a wind velocity higher than 20 m/s. Collaboration Analyzer monitors the list of environment-participant data pairs to detect violations of these constraints and rules. Table 2 shows a sample definition of the constraints for assigning unmanned systems performing the “Draught Monitoring” service goal.
5.3. Application of a Genetic Algorithm to the Participant Reallocation Problem in an IT Ecosystem
5.4. Calculating the Collaboration Score via Cost–Benefit Analysis
6. Evaluation
- Can the proposed framework guarantee that constant services will be provided while adapting to the internal and external environments faced by the overall IT ecosystem? (sustainability issue)
- Is the overhead required for reconfiguration of the IT ecosystem an acceptable level, and does it not show an exponentially increasing pattern as the IT ecosystem expands? (scalability issue)
6.1. Design of Experiment
6.1.1. Evaluation Scope
6.1.2. Metrics for Evaluation
6.1.3. Test Bed Specification
6.2. Experimental Results
7. Conclusions and Future Work
Acknowledgments
Author Contributions
Conflicts of Interest
References
- Shamszaman, Z.; Ara, S.; Chong, I.; Jeong, Y. Web-of-Objects (WoO)-based context aware emergency fire management systems for the Internet of Things. Sensors 2014, 14, 2944–2966. [Google Scholar] [CrossRef] [PubMed]
- Riliskis, L.; Osipov, E. Maestro: An orchestration framework for large-scale WSN simulations. Sensors 2014, 14, 5392–5414. [Google Scholar] [CrossRef] [PubMed]
- Cubo, J.; Nieto, A.; Pimentel, E. A cloud-based Internet of Things platform for ambient assisted living. Sensors 2014, 14, 14070–14105. [Google Scholar] [CrossRef] [PubMed]
- Kotsev, A.; Pantisano, F.; Schade, S.; Jirka, S. Architecture of a service-enabled sensing platform for the environment. Sensors 2015, 15, 4470–4495. [Google Scholar] [CrossRef] [PubMed] [Green Version]
- Lin, Z.; Tao, D.; Wang, Z. Dynamic construction scheme for virtualization security service in software-defined networks. Sensors 2017, 17, 920. [Google Scholar] [CrossRef] [PubMed]
- Nielsen, C.B.; Larsen, P.G.; Fitzgerald, J.; Woodcock, J.; Peleska, J. Systems of Systems Engineering: Basic Concepts, Model-Based Techniques, and Research Directions. ACM Comput. Surv. 2015, 48, 18. [Google Scholar] [CrossRef]
- Maier, M.W. Architecting Principles for Systems-of-Systems. INCOSE Int. Symp. 1996, 6, 565–573. [Google Scholar] [CrossRef]
- Rausch, A.; Muller, J.P.; Niebuhr, D.; Herold, S.; Goltz, U. IT Ecosystems: A New Paradigm for Engineering Complex Adaptive Software Systems. In Proceedings of the 2012 6th IEEE International Conference on Digital Ecosystems and Technologies, Campione d’Italia, Italy, 18–20 June 2012. [Google Scholar]
- Herold, S.; Klus, H.; Niebuhr, D.; Rausch, A. Engineering of IT ecosystems: Design of ultra-large-scale software-intensive systems. Ulssis 2008, 1, 49–52. [Google Scholar] [CrossRef]
- Schneider, K.; Meyer, S.; Peters, M.; Schliephacke, F.; Mörschbach, J.; Aguirre, L. Feedback in context: Supporting the evolution of IT-ecosystems. Lect. Notes Comput. Sci. 2010, 6156, 191–205. [Google Scholar] [CrossRef]
- García-Holgado, A.; García-Peñalvo, F.J. Architectural pattern to improve the definition and implementation of eLearning ecosystems. Sci. Comput. Program. 2016, 129, 20–34. [Google Scholar] [CrossRef]
- Watson, B.J.; Sharma, R.K.; Charles, S.K.; Shah, A.J.; Patel, C.D.; Marwah, M.; Hoover, C.E.; Christian, T.W.; Bash, C.E. Creating a sustainable IT ecosystem: Enabling next-generation urban infrastructures. In Proceedings of the 2009 IEEE International Symposium on Sustainable Systems and Technology, in Cooperation with the 2009 IEEE International Symposium on Technology and Society, Tempe, AZ, USA, 18–20 May 2009. [Google Scholar]
- Mensing, B.; Goltz, U.; Aniculǎesei, A.; Herold, S.; Rausch, A.; Gärtner, S.; Schneider, K. Towards integrated rule-driven software development for IT ecosystems. In Proceedings of the 2012 6th IEEE International Conference on Digital Ecosystems and Technologies, Campione d’Italia, Italy, 18–20 June 2012. [Google Scholar]
- Hadzic, M.; Chang, E. Application of digital ecosystem design methodology within the health domain. IEEE Trans. Syst. Man Cybern. Syst. Hum. 2010, 40, 779–788. [Google Scholar] [CrossRef]
- Lin, T.; Rivano, H.; Le Mouel, F. A Survey of Smart Parking Solutions. IEEE Trans. Intell. Transp. Syst. 2017, 18, 3229–3253. [Google Scholar] [CrossRef]
- Vromant, P.; Weyns, D.; Malek, S.; Andersson, J. On Interacting Control Loops in Self-Adaptive Systems. In Proceedings of the 10th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, Waikiki, HI, USA, 23–24 May 2011. [Google Scholar]
- Silva Souza, V.E.; Lapouchnian, A.; Robinson, W.N.; Mylopoulos, J. Awareness Requirements for Adaptive Systems. In Proceedings of the 10th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, Waikiki, HI, USA, 23–24 May 2011. [Google Scholar]
- Sabatucci, L.; Cossentino, M. From Means-End Analysis to Proactive Means-End Reasoning. In Proceedings of the 10th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, Florence, Italy, 18–19 May 2015. [Google Scholar]
- Kephart, J.O.; Chess, D.M. The vision of autonomic computing. Computer 2003, 36, 41–50. [Google Scholar] [CrossRef]
- Garlan, D.; Cheng, S.-W.; Huang, A.-C.; Schmerl, B.; Steenkiste, P. Rainbow: Architecture-based self-adaptation with reusable infrastructure. IEEE Comput. 2004, 37, 46–54. [Google Scholar] [CrossRef]
- Hallsteinsen, S.; Geihs, K.; Paspallis, N.; Eliassen, F.; Horn, G.; Lorenzo, J.; Mamelli, A.; Papadopoulos, G.A. A development framework and methodology for self-adapting applications in ubiquitous computing environments. J. Syst. Softw. 2012, 85, 2840–2859. [Google Scholar] [CrossRef]
- Al-Zinati, M.; Araujo, F.; Kuiper, D.; Valente, J.; Wenkstern, R.Z. DIVAs 4.0: A Multi-Agent Based Simulation Framework. In Proceedings of the 2013 IEEE/ACM 17th International Symposium on Distributed Simulation and Real Time Applications, Delft, The Netherlands, 30 October–1 November 2013. [Google Scholar]
- Park, S.; Park, Y.B. ITE arbitrator: A Reference Architecture Framework for Sustainable IT Ecosystems. In Proceedings of the 4th International Workshop on Software Engineering for Systems-of-Systems, Austin, TX, USA, 14–22 May 2016. [Google Scholar]
- Gerasimou, S.; Calinescu, R.; Shevtsov, S.; Weyns, D. UNDERSEA: An Exemplar for Engineering Self-Adaptive Unmanned Underwater Vehicles. In Proceedings of the 2017 IEEE/ACM 12th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, Buenos Aires, Argentina, 22–23 May 2017. [Google Scholar]
- Sabatucci, L.; Lopes, S.; Cossentino, M. Self-configuring cloud application mashup with goals and capabilities. Clust. Comput. 2017, 20, 2047–2063. [Google Scholar] [CrossRef]
- Barna, C.; Ghanbari, H.; Litoiu, M.; Shtern, M. Hogna: A Platform for Self-Adaptive Applications in Cloud Environments. In Proceedings of the 2015 10th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, Florence, Italy, 18–19 May 2015. [Google Scholar]
- Cugola, G.; Ghezzi, C.; Pinto, L.S. DSOL: A declarative approach to self-adaptive service orchestrations. Computing 2012, 94, 579–617. [Google Scholar] [CrossRef] [Green Version]
- Park, S.; Seungmin, L.; Park, Y.B. A reference architecture framework for orchestration of participants systems in IT ecosystems. Lect. Notes Electr. Eng. 2015, 373, 883–889. [Google Scholar] [CrossRef]
- DeLoach, S.A.; Garcia-Ojeda, J.C. O-MaSE: A customisable approach to designing and building complex, adaptive multi-agent systems. Int. J. Agent-Oriented Softw. Eng. 2010, 4, 244–280. [Google Scholar] [CrossRef]
- Weyns, D.; Schmerl, B.; Grassi, V.; Malek, S.; Mirandola, R.; Prehofer, C.; Wuttke, J.; Andersson, J.; Giese, H.; Göschka, K.M. On patterns for decentralized control in self-adaptive systems. Lect. Notes Comput. Sci. 2013, 7475, 76–107. [Google Scholar] [CrossRef]
- 12 Top Lidar Sensors for UAVs and So Many Great Uses. Available online: https://www.dronezon.com/learn-about-drones-quadcopters/best-lidar-sensors-for-drones-great-uses-for-lidar-sensors/ (accessed on 8 February 2018).
- UAV Sensor Sensibility. Available online: http://www.uasmagazine.com/articles/1457/uav-sensor-sensibility (accessed on 8 February 2018).
- Rich, C. Unmanned Aerial Vehicles and the Future of Asset Management. Master’s Thesis, Simon Fraser University, Burnaby, BC, Canada, 15 April 2015. [Google Scholar]
- NRC & Committee. Review of current UGV efforts. In Technology Development for Army Unmanned Ground Vehicles; National Research Council; The National Academies Press: Washington, DC, USA, 2002; pp. 30–41. ISBN 978-0-309-08620-2. [Google Scholar]
- Felix. Available online: http://felix.apache.org (accessed on 6 November 2017).
- OSGi Specifications. Available online: http://www.osgi.org/Specifications/HomePage (accessed on 6 November 2017).
- Representational State Transfer. Available online: https://en.wikipedia.org/wiki/Representational_sta (accessed on 6 November 2017).
- Holland, J.H. Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control and Artificial Intelligence; MIT Press: Cambridge, MA, USA, 1992; ISBN 0262082136. [Google Scholar]
- Ramirez, A.J.; Knoester, D.B.; Cheng, B.H.C.; McKinley, P.K. Applying Genetic Algorithms to Decision Making in Autonomic Computing Systems. In Proceedings of the 2009 ACM/IEEE 6th International Conference on Autonomic Computing and Communications, Barcelona, Spain, 15–19 June 2009. [Google Scholar]
- Ferreira, C. Gene expression programming: A new adaptive algorithm for solving problems. Complex Syst. 2001, 13, 87–129. [Google Scholar]
ID | Type | Cost | Benefit | O | P | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
A | B | D | E | F | G | H | I | J | K | L | M | N | ||||
JE1 | Jeep | 40 | 40 | 14 | 60 | 32 | 19 | 0.7 | 0.6 | 0.64 | 100 | 87 | 74 | 46 | 30 | 80 |
JE2 | Jeep | 40 | 40 | 15 | 35 | 37 | 22 | 0.59 | 0.35 | 0.73 | 100 | 78 | 54 | 54 | 25 | 69 |
JE3 | Jeep | 40 | 40 | 12 | 64 | 39 | 23 | 0.98 | 0.64 | 0.78 | 100 | 96 | 57 | 47 | 27 | 63 |
JE4 | Jeep | 40 | 40 | 13 | 76 | 35 | 21 | 1 | 0.76 | 0.7 | 100 | 86 | 58 | 46 | 37 | 79 |
JE5 | Jeep | 40 | 40 | 16 | 45 | 38 | 23 | 0.8 | 0.45 | 0.75 | 100 | 78 | 68 | 38 | 25 | 74 |
JE6 | Jeep | 40 | 40 | 16 | 85 | 47 | 28 | 0.93 | 0.85 | 0.93 | 100 | 84 | 72 | 51 | 31 | 84 |
UAV1 | UAV | 0 | 100 | 70 | 86 | 50 | 30 | 0.9 | 0.86 | 1 | 100 | 100 | 100 | 100 | 102 | 72 |
UAV2 | UAV | 0 | 100 | 75 | 100 | 50 | 30 | 0.95 | 1 | 1 | 100 | 100 | 100 | 100 | 86 | 68 |
HE1 | Hlct | 80 | 70 | 67 | 75 | 34 | 20 | 0.67 | 0.75 | 0.68 | 100 | 87 | 100 | 74 | 120 | 62 |
HE2 | Hlct | 80 | 70 | 56 | 60 | 43 | 26 | 0.87 | 0.6 | 0.85 | 100 | 87 | 100 | 78 | 116 | 83 |
AP1 | AP | 100 | 80 | 80 | 63 | 37 | 22 | 0.62 | 0.63 | 0.74 | 100 | 87 | 100 | 86 | 170 | 73 |
AP2 | AP | 100 | 80 | 83 | 73 | 47 | 28 | 0.84 | 0.73 | 0.93 | 100 | 83 | 100 | 87 | 150 | 86 |
No. | Constraint for Assignment of Participant Systems |
---|---|
1 | IF (Zone[ ][ ].Weather.Visibility < 5 (km)) THEN Helicopter CANNOT PLAY AS Surveillant AT Zone[ ][ ] |
2 | IF (Zone[ ][ ].Wind.Velocity > 20 (m/s)) THEN (UAV & Helicopter & AirPlane) CANNOT PLAY AS Surveillant AT Zone[ ][ ] |
3 | IF (Zone[ ][ ].Weather.Condition = Snowy) THEN Jeep CANNOT PLAY AS Surveillant AT Zone[ ][ ] |
4 | IF (Zone[ ][ ].Type = HasLake) OR (Zone[ ][ ].Type = HasRiver) THEN Jeep CANNOT PLAY AS Surveillant AT Zone[ ][ ] |
5 | IF (Zone[ ][ ].ForestDensity = High) AND (Zone[ ][ ]. Participant)= Jeep) THEN Jeep should be operated by a human driver |
6 | IF (Partcipant.RemainedFuelQuantity < Required Quantity for Running One Period) THEN Participant CANNOT PLAY any role AT every zone |
Cost Factors | |
A | Cost of human labor for emergency operations ($/h) |
B | Cost of system asset deprecation ($/h) |
C | Cost of fuel ($/h) |
D~F | Cost of sensor asset deprecation ($/h): vision (D), infrared (E), and GPS (F) |
Benefit Factors | |
G~I | Sensor asset sensitivity and accuracy (0~1): vision (G), infrared (H), and GPS (I) |
J~M | Monitoring coverage (/h): may vary depending on zone types or weather conditions J: Monitoring scope when there are no mountains and no snow (rain) in the region (/h) K: Monitoring scope when there are no mountains and there is snow (rain) in the region (/h) L: Monitoring scope when there are mountains and there is no snow (rain) in the region (/h) M: Monitoring scope when there are mountains and snow (rain) in the region (/h) |
© 2018 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).
Share and Cite
Park, S.; Park, S.; Park, Y.B. An Architecture Framework for Orchestrating Context-Aware IT Ecosystems: A Case Study for Quantitative Evaluation. Sensors 2018, 18, 562. https://doi.org/10.3390/s18020562
Park S, Park S, Park YB. An Architecture Framework for Orchestrating Context-Aware IT Ecosystems: A Case Study for Quantitative Evaluation. Sensors. 2018; 18(2):562. https://doi.org/10.3390/s18020562
Chicago/Turabian StylePark, Soojin, Sungyong Park, and Young B. Park. 2018. "An Architecture Framework for Orchestrating Context-Aware IT Ecosystems: A Case Study for Quantitative Evaluation" Sensors 18, no. 2: 562. https://doi.org/10.3390/s18020562
APA StylePark, S., Park, S., & Park, Y. B. (2018). An Architecture Framework for Orchestrating Context-Aware IT Ecosystems: A Case Study for Quantitative Evaluation. Sensors, 18(2), 562. https://doi.org/10.3390/s18020562