Agile Principles in the Embedded System Development

  • Matti Kaisti
  • Tapio Mujunen
  • Tuomas Mäkilä
  • Ville Rantala
  • Teijo Lehtonen
Part of the Lecture Notes in Business Information Processing book series (LNBIP, volume 179)

Abstract

Agile manifesto with its four values and 12 principles provides widely accepted definition of agile. Agile methods have been actively used in software engineering and other fields are starting to utilize agile development methods as well. Embedded system development combines software, hardware and mechanical engineering activities and thus has some characteristics and constrains which are not found in pure software engineering. These constraints have earlier been described to be leading to some reinterpretation of agile practices. However, understanding how these constraints affect the applicability of agile philosophy in embedded domain has not yet been systematically analyzed. Here we will discuss about agile methods and its applicability in embedded system development through the 12 principles of agile manifesto. We aim to capture the philosophy of agile rather than only individual practices, by presenting redefined principles for embedded system development.

Keywords

agile development embedded system embedded software 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Beck, K., Beedle, M., van Bennekum, A., Cockburn, A., Cunningham, W., Fowler, M., Grenning, J., Highsmith, J., Hunt, A., Jeffries, R., Kern, J., Marick, B., Martin, R., Mellor, S., Schwaber, K., Sutherland, J., Thomas, D.: Agile manifesto (2001), http://agilemanifesto.org/
  2. 2.
    Beck, K.: Extreme Programming Explained: Embrace Change. Addison-Wesley (1999)Google Scholar
  3. 3.
    Schwaber, K.: Scrum development process. In: 10th Annual ACM Conference on Object Oriented Programming Systems, Languages, and Applications (OOPSLA), pp. 117–134 (1995)Google Scholar
  4. 4.
    Larman, C.: Agile and Iterative Develpoment: A Manager’s Guide. Addison-Wesley, Boston (2003)Google Scholar
  5. 5.
    Royce, W.W.: Managing the development of large software systems. In: Proc. IEEE WESTCON, Los Angeles (1970)Google Scholar
  6. 6.
    Kaisti, M., Rantala, V., Mujunen, T., Hyrynsalmi, S., Könnölä, K., Mäkilä, T., Lehtonen, T.: Agile methods for embedded systems development - a literature review and a mapping study. EURASIP Journal on Embedded Systems 15 (2013)Google Scholar
  7. 7.
    Laanti, M., Similä, J., Abrahamsson, P.: Definitions of agile software development and agility. In: McCaffery, F., O’Connor, R.V., Messnarz, R. (eds.) EuroSPI 2013. CCIS, vol. 364, pp. 247–258. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  8. 8.
    Ronkainen, J., Abrahamsson, P.: Software development under stringent hardware constraints: Do agile methods have a chance? In: Marchesi, M., Succi, G. (eds.) XP 2003. LNCS, vol. 2675, pp. 73–79. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  9. 9.
    Drobka, J., Noftz, D., Raghu, R.: Piloting xp on four mission-critical projects. IEEE Software 21(6), 70–75 (2004)CrossRefGoogle Scholar
  10. 10.
    Gul, E., Taylan, S., Yuceturk, A.C., Yildirim, U.: Using xp in telecommunication software development. In: The Third International Conference on Software Engineering Advances, ICSEA 2008, pp. 258–263 (2008)Google Scholar
  11. 11.
    Luqi, Zhang, L., Berzins, V., Qiao, Y.: Documentation driven development for complex real-time systems. IEEE Transactions on Software Engineering 30(12), 936–952 (2004)CrossRefGoogle Scholar
  12. 12.
    Theunissen, W.M., Kourie, D.G., Watson, B.W.: Standards and agile software development. In: Proceedings of the 2003 Annual Research Conference of the South African Institute of Computer Scientists and Information Technologists on Enablement Through Technology, SAICSIT 2003, pp. 178–188 (2003)Google Scholar
  13. 13.
    Sidky, A., Arthur, J.: Determining the applicability of agile practices to mission and life-critical systems. In: Proceedings of the 31st IEEE Software Engineering Workshop, SEW 2007, pp. 3–12. IEEE Computer Society, Washington, DC (2007)Google Scholar
  14. 14.
    Douglass, B.P.: Real-Time Agility: The Harmony/ESW Method for Real-Time and Embedded Systems Development, 1st edn. Addison-Wesley Professional (2009)Google Scholar
  15. 15.
    Smith, M., Miller, J., Daeninck, S.: A test-oriented embedded system production methodology. Journal of Signal Processing Systems 56(1), 69–89 (2009)CrossRefGoogle Scholar
  16. 16.
    Grenning, J.W.: Test Driven Development for Embedded C. Pragmatic Bookshelf (2011)Google Scholar
  17. 17.
    Punkka, T.: Agile hardware and co-design. In: Embedded Systems Conference 2012, Boston, ESC–3008 (2012)Google Scholar
  18. 18.
    Cordeiro, L., Barreto, R., Oliveira, M.: Towards a semiformal development methodology for embedded systems. In: 3rd International Conference on Evaluation of Novel Approaches to Software Engineering, pp. 5–12 (May 2008)Google Scholar
  19. 19.
    Poppendieck, M., Poppendieck, T.: Implementing Lean Software Development: From Concept to Cash. Addison Wesley Professional (2007)Google Scholar
  20. 20.
    Womack, J.P., Jones, D.T., Roos, D.: The Machine That Changed the World. Simon & Schuster, London (2007)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Matti Kaisti
    • 1
  • Tapio Mujunen
    • 1
    • 2
  • Tuomas Mäkilä
    • 1
  • Ville Rantala
    • 1
  • Teijo Lehtonen
    • 1
  1. 1.Technology Research CenterUniversity of TurkuTurun YliopistoFinland
  2. 2.Oy LM Ericsson AbJorvasFinland

Personalised recommendations