Skip to main content

Designing Reconfigurable Systems: Methodology and Guidelines

  • 755 Accesses

Part of the Internet of Things book series (ITTCC)

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.

Keywords

  • Finite State Machine
  • Situational Awareness
  • Design Time
  • Task Mapping
  • Fuzzy Partition

These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

This is a preview of subscription content, access via your institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • DOI: 10.1007/978-981-10-0715-6_2
  • Chapter length: 40 pages
  • Instant PDF download
  • Readable on all devices
  • Own it forever
  • Exclusive offer for individuals only
  • Tax calculation will be finalised during checkout
eBook
USD   109.00
Price excludes VAT (USA)
  • ISBN: 978-981-10-0715-6
  • Instant PDF download
  • Readable on all devices
  • Own it forever
  • Exclusive offer for individuals only
  • Tax calculation will be finalised during checkout
Softcover Book
USD   139.99
Price excludes VAT (USA)
Hardcover Book
USD   139.99
Price excludes VAT (USA)
Fig. 2.1
Fig. 2.2
Fig. 2.3
Fig. 2.4
Fig. 2.5
Fig. 2.6
Fig. 2.7
Fig. 2.8
Fig. 2.9
Fig. 2.10
Fig. 2.11
Fig. 2.12
Fig. 2.13
Fig. 2.14
Fig. 2.15
Fig. 2.16
Fig. 2.17
Fig. 2.18
Fig. 2.19
Fig. 2.20
Fig. 2.21
Fig. 2.22
Fig. 2.23

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)

    CrossRef  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)

    CrossRef  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)

    CrossRef  Google Scholar 

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

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

    MathSciNet  CrossRef  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)

    MathSciNet  CrossRef  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)

    CrossRef  Google Scholar 

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

    CrossRef  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)

    CrossRef  Google Scholar 

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

    MathSciNet  CrossRef  Google Scholar 

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

    CrossRef  Google Scholar 

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

    CrossRef  MATH  Google Scholar 

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

    CrossRef  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)

    CrossRef  Google Scholar 

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

    MathSciNet  CrossRef  Google Scholar 

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

    CrossRef  Google Scholar 

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

    CrossRef  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)

    CrossRef  Google Scholar 

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

    CrossRef  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)