Skip to main content

Designing Reconfigurable Systems: Methodology and Guidelines

  • Chapter
  • First Online:
Runtime Reconfiguration in Networked Embedded Systems

Abstract

One of the major challenges when designing software for complex systems relates to a lack of a specific and comprehensive set of rules and methodologies. Even more so, adaptation to field conditions is difficult to model and implement on systems composed of a larger number of devices/components, such as distributed systems or systems of systems. On state-of-the-art technology such as wireless sensor/actuator networks and cyber-physical systems, addressing the lack of a compressive set of rules for their design and realization offers considerable benefits. If successfully realized, it can accelerate and simplify their design and implementation. The main contribution of this chapter is a clear set of rules that are specific for the design of adaptive networked embedded systems. To be more specific, we discuss design-time vs. runtime trade-offs, introduce design patterns for reconfigurable real-time monitoring and control, propose techniques for runtime design space exploration (managing runtime reconfiguration) and a systems engineering process for runtime reconfigurable systems. We provide guidelines for all stages of the architectural process and help system and software designers in choosing wisely specific algorithms and techniques. In conclusion, this chapter introduces a set of rules (methodologies) that are specific for designing adaptive networked embedded systems.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 119.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    Decomposing the design space exploration and the associated search/optimization into distributed configuration, that is a “divide and conquer” approach. Such sub-problems are significantly less complex than the whole, but interaction constraints should also be concerned and they are a challenge by themselves. See more details in the next section.

  2. 2.

    In this chapter, we do not consider learning systems. Learning systems are a subset of adaptive systems, which are capable of improving their knowledge during operation based on experience or user feedback. For example they can introduce new design rules based on frequently occurring cases or modify design rules if their application creates unwanted behavior. In the design scheme introduced the learning would be manifested by changes in the “static knowledge” part, i.e. strictly speaking it could not be considered static anymore. Still, the mechanism, which would introduce changes is outside of the reconfiguration mechanism considered here, i.e. from this viewpoint the knowledge is read-only and conceptually static.

  3. 3.

    Due to the non-learning scenario this knowledge remains constant, i.e. the extra knowledge a human designer may acquire via experience is not stored.

  4. 4.

    Due to its complexity and far fetched consequences the requirement analysis and specification are thoroughly studied processes by themselves and long list of underlying processes, methodologies and tools (both commercial and research) have been proposed. Even a overview of the approaches would go beyond the scope of this book. Interested readers are referred to [45] for overview of frequently used approaches.

  5. 5.

    In this section we focus on design refinement, i.e. when the designer further details the model to capture design and implementation decisions. Automatic code generation related concerns are covered elsewhere (see Sect. 3.2).

  6. 6.

    For more details about model building methodology readers are referred to section refsec:1.6:methodology.

  7. 7.

    In practice this is a very natural process: as the design is progresses so does the requirement specification detailing. The model driven development facilitates this aspect, too: when completing a design iterations the results of the validation and verification can be communicated with the end-user, who can react with providing more detailed requirements or adjusting the existing ones. This is why working on the “complete system level” is important: this is the safest way to involving the end-users in the design cycles.

  8. 8.

    This sensing infrastructure may (and typically does) consists of dedicated physical sensors (e.g. temperature sensor for ambient temperature, current measuring probe for power consumption estimation, etc.) and “virtual sensors”, which are interfaces to internal system properties, which are available but are not considered on the primary data path (e.g. input signal level of the wireless receiver, CPU utilization, etc.).

References

  1. M. Palesi, T. Givargis, in Proceedings of the Tenth International Symposium on Hardware/Software Codesign, 2002. CODES 2002 (IEEE, 2002), pp. 67–72

    Google Scholar 

  2. D.E. Goldberg, (Addison-Wesley Professional, 1989)

    Google Scholar 

  3. Q. Liu, S. Dulman, M. Warnier, Area: an automatic runtime evolutionary adaptation mechanism for creating self-adaptation algorithms in wireless networks (2013). Under submission

    Google Scholar 

  4. J.C. Georgas, A. van der Hoek, R.N. Taylor, Computer 42(10), 52 (2009)

    Article  Google Scholar 

  5. J. Teich, M. Köster, in Proceedings of the Conference on Design, Automation and Test in Europe (IEEE Computer Society, 2002), p. 559

    Google Scholar 

  6. S.Y. Kuo, W.K. Fuchs, in Proceedings of the 25th ACM/IEEE Design Automation Conference (IEEE Computer Society Press, 1988), pp. 609–612

    Google Scholar 

  7. H.W. Kuhn, Nav. Res. Logist. Q. 2(1–2), 83 (1955)

    Article  Google Scholar 

  8. S. Kogekar, S. Neema, B. Eames, X. Koutsoukos, A. Ledeczi, M. Maroti, in Proceedings of the 3rd international symposium on Information processing in sensor networks (ACM, 2004), pp. 379–387

    Google Scholar 

  9. B. Eames, in 2006 IEEE Mountain Workshop on Adaptive and Learning Systems (IEEE, 2006), pp. 127–132

    Google Scholar 

  10. T. Syrjänen, A rule-based formal model for software configuration, Technical Report (Helsinki University of Technology, 1999)

    Google Scholar 

  11. P. Simons, I. Niemelä, T. Soininen, Artif. Intell. 138(1), 181 (2002)

    Article  Google Scholar 

  12. OWL, http://www.w3.org/TR/owl-time/

  13. K.R. Apt, R.N. Bol, J. Log. Program. 19, 9 (1994)

    Article  MathSciNet  Google Scholar 

  14. M. Ben-Ari, First-Order Logic: Logic Programming (Springer, London, 2012), pp. 205–222

    Google Scholar 

  15. R.F. Stärk, A Direct Proof for the Completeness of SLD-resolution (Springer, Berlin, 1990), pp. 382–383

    MATH  Google Scholar 

  16. B. Gutmann, I. Thon, A. Kimmig, M. Bruynooghe, L. De Raedt, Theory Pract. Log. Program. 11(4–5), 663 (2011)

    Article  MathSciNet  Google Scholar 

  17. C. van Leeuwen, Z. Papp, J. Sijs, in 16th International Conference on Information Fusion (2013)

    Google Scholar 

  18. R. Isermann, IEEE Trans. Syst. Man Cybern. Part A Syst. Hum. 28(2), 221 (1998)

    Article  Google Scholar 

  19. C. Aubrun, D. Sauter, H. Noura, M. Robert, Int. J. Syst. Sci. 24(10), 1945 (1993)

    Article  Google Scholar 

  20. F. Bobillo, U. Straccia, in IEEE International Conference on Fuzzy Systems, 2008. FUZZ-IEEE 2008 (IEEE World Congress on Computational Intelligence) (IEEE, 2008), pp. 923–930

    Google Scholar 

  21. F. Bobillo, M. Delgado, J. Gómez-Romero, Expert Syst. Appl. 39(1), 258 (2012)

    Article  Google Scholar 

  22. L.A. Zadeh, Inf. Control 8(3), 338 (1965)

    Article  MathSciNet  Google Scholar 

  23. L. Zadeh, IEEE Comput. 21(4), 83 (1988)

    Article  Google Scholar 

  24. H.J. Zimmermann, Fuzzy Sets theory and its Applications, 3rd edn. (Kluwer, Boston, 1996)

    Book  MATH  Google Scholar 

  25. W.A. Kwong, K.M. Passino, E.G. Laukonen, S. Yurkovch, Proc. IEEE 83(3), 466 (1995)

    Article  Google Scholar 

  26. P.U. Lima, G.N. Saridis, IEEE Trans. Syst. Man Cybern. Part B: Cybern. 29(2), 151 (1999)

    Google Scholar 

  27. J.M. Bernardo, A.F. Smith, Bayesian Theory, vol. 405 (Wiley, 2009)

    Google Scholar 

  28. C. Jung, K. Kwon, Control Cybern. 27, 545 (1998)

    Google Scholar 

  29. R. Tong, The Construction and Evaluation of Fuzzy Models (North-Holland, Amsterdam, 1979)

    Google Scholar 

  30. S. Kim, E. Kim, M. Park, Fuzzy Sets Syst. 81(2), 205 (1996)

    Article  Google Scholar 

  31. F. Matia, A. Jimenez, Int. J. Intell. Control Syst. 1(3), 407 (1996)

    Article  MathSciNet  Google Scholar 

  32. T. Tobi, T. Hanafusa, Int. J. Approx. Reason. 5(3), 331 (1991)

    Article  Google Scholar 

  33. Y.K. Kwok, I. Ahmad, J. Parallel Distrib. Comput. 59(3), 381 (1999)

    Article  Google Scholar 

  34. D. Grosu, A.T. Chronopoulos, M.Y. Leung, in Parallel and Distributed Processing Symposium., Proceedings International, IPDPS 2002, Abstracts and CD-ROM (IEEE, 2002), pp. 52–61

    Google Scholar 

  35. A. Aminifar, S. Samii, P. Eles, Z. Peng, in 2011 IEEE 17th International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA), vol. 1 (IEEE, 2011), pp. 133–142

    Google Scholar 

  36. Y. Yi, W. Han, X. Zhao, A.T. Erdogan, T. Arslan, in Design, Automation & Test in Europe Conference & Exhibition, 2009. DATE’09 (IEEE, 2009), pp. 33–38

    Google Scholar 

  37. J. Sijs, Z. Papp, in 2012 15th International Conference on Information Fusion (FUSION) (IEEE, 2012), pp. 1012–1019

    Google Scholar 

  38. T. Streichert, D. Koch, C. Haubelt, J. Teich, EURASIP J. Embed. Syst. 2006(1), 9 (2006)

    Article  Google Scholar 

  39. G. Cybenko, J. Parallel Distrib. Comput. 7(2), 279 (1989)

    Article  Google Scholar 

  40. P. Neelakantan, Int. J. Comput. Appl. 39(4), 7 (2012)

    Google Scholar 

  41. https://www.ibm.com/developerworks/rational/library/content/03July/1000/1251/1251_bestpractices_TP026B.pdf

  42. ISO/IEC 107463 (1996)

    Google Scholar 

  43. G. Karsai, J. Sztipanovits, Intelligent Systems and their Applications, IEEE 14(3), 46 (1999). doi:10.1109/5254.769884

    Google Scholar 

  44. T. Saxena, A. Dubey, D. Balasubramanian, G. Karsai, in 2010 Seventh IEEE International Conference and Workshops on Engineering of Autonomic and Autonomous Systems (EASe) (2010), pp. 137–144. doi:10.1109/EASe.2010.22

  45. B. Berenbach, D.J. Paulish, J. Kazmeier, A. Rudorfer, Software and Systems Requirements Engineering: In Practice Education (McGraw-Hill, 2009)

    Google Scholar 

  46. J. Whittle, J. Hutchinson, M. Rouncefield, Software, IEEE PP(99), 1 (2013). doi:10.1109/MS.2013.65

    Google Scholar 

  47. A. Bahill, B. Gissing, IEEE Trans. Syst. Man Cybern. Part C: Appl. Rev. 28(4), 516 (1998). doi:10.1109/5326.725338

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Julio de Oliveira Filho .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer Science+Business Media Singapore

About this chapter

Cite this chapter

Papp, Z., del Toro Matamoros, R., van Leeuwen, C., de Oliveira Filho, J., Pruteanu, A., Šůcha, P. (2016). Designing Reconfigurable Systems: Methodology and Guidelines. In: Papp, Z., Exarchakos, G. (eds) Runtime Reconfiguration in Networked Embedded Systems. Internet of Things. Springer, Singapore. https://doi.org/10.1007/978-981-10-0715-6_2

Download citation

  • DOI: https://doi.org/10.1007/978-981-10-0715-6_2

  • Published:

  • Publisher Name: Springer, Singapore

  • Print ISBN: 978-981-10-0714-9

  • Online ISBN: 978-981-10-0715-6

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics