Abstract
Embedded systems are widely used in diverse areas, such as avionics, consumer electronics, and medical equipments, causing a considerable impact on modern society. Since these systems sometimes deal directly with human lives, and require a considerable level of quality, their development should be subject to a rigorous process. In another perspective, agile methods (or agile processes) have been adopted by the software industry as a lightweight, iterative, and collaborative approach for developing software systems. Although agile methods do not seem to be suitable to embedded systems, they have been successfully used for building such systems. However, there exists no detailed and analytical overview of the use of such methods in the embedded systems domain. The main objective of this paper is to present a detailed view of how agile methods have been used in the development of embedded systems, and to describe their benefits, challenges, and limitations. For this, we have applied Systematic Review, a technique for systematically exploring, organizing, summarizing, and assessing potentially all works conducted in a specific research area. As the main result, we have observed that agile methods have brought advantages to embedded systems development; however, more studies should be conducted. Furthermore, this work is also intended to contribute to the identification of important new research lines.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Vahid, F., Givargis, T.D.: Embedded System Design: A Unified Hardware/Software Introduction, 1st edn. Wiley Higher Education (2002)
West, D., Grant, T.: Agile development: Mainstream adoption has changed agility. In: World Wide Web (2011), (On-line) http://www.forrester.com/rb/Research/agile_development_mainstream_adoption_has_changed_agility/q/id/56100/t/2 (accessed October 02, 2011)
Larman, C.: Agile and Iterative Development: A Manager’s Guide. Pearson Education (2003)
Kitchenham, B., Charters, S.: Guidelines for performing systematic literature reviews in software engineering. Technical Report EBSE 2007-001, Keele Univ. and Durham Univ. (2007)
Kamal, R.: Embedded systems: architecture, programming and design. McGraw-Hill (2003)
Wilmshurst, T.: Designing embedded systems with PIC microcontrollers: principles and applications. Elsevier (2007)
Hill, J.H.: Agile Techniques for Developing and Evaluating Large-scale Component-based Distributed Real-time and Embedded Systems. PhD thesis, Graduate School of Vanderbilt University (May 2009)
Vijayasarathy, L., Turk, D.: Drivers of agile software development use. Information and Software Technolology 54(2), 137–148 (2012)
Greene, B.: Agile methods applied to embedded firmware development. In: ADC 2004, Salt Lake City, Utah, pp. 71–77 (2004)
Wilking, D.: Empirical studies for the application of agile methods to embedded systems. Master’s thesis, Aachen University (2008)
Heidenberg, J., Matinlassi, M., Pikkarainen, M., Hirkman, P., Partanen, J.: Systematic Piloting of Agile Methods in the Large: Two Cases in Embedded Systems Development. In: Ali Babar, M., Vierimaa, M., Oivo, M. (eds.) PROFES 2010. LNCS, vol. 6156, pp. 47–61. Springer, Heidelberg (2010)
Dyba, T., Dingsoyr, T., Hanssen, G.K.: Applying systematic reviews to diverse study types. In: ESEM 2007, Los Alamitos, USA, pp. 225–234 (2007)
Mueller, G., Borzuchowski, J.: Extreme embedded a report from the front line. In: Practitioners Reports, OOPSLA 2002, Seattle, USA (2002)
Karlstroem, D., Runeson, P.: Scaling Extreme Programming in a Market Driven Development Context. In: Marchesi, M., Succi, G. (eds.) XP 2003. LNCS, vol. 2675, pp. 363–365. Springer, Heidelberg (2003)
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)
Manhart, P., Schneider, K.: Breaking the ice for agile development of embedded software. In: ICSE 2004, Edinburgh, Scotland, pp. 378–386 (2004)
Kettunen, P., Laanti, M.: How to steer an embedded software project: tactics for selecting the software process model. Inf. Software Technology 47(9), 587–608
Chae, H., Lee, D., Park, J., In, H.P.: The partitioning methodology in hardware/software co-design using extreme programming: Evaluation through the Lego robot project. In: CIT 2006, Washington, DC, USA, p. 187 (2006)
Cordeiro, L., Barreto, R., Barcelos, R., Oliveira, M., Lucena, V., Maciel, P.: Txm: an agile hw/sw development methodology for building medical devices. SIGSOFT Softw. Eng. Notes 32(6) (November 2007)
Fletcher, M., Bereza, W., Karlesky, M., Williams, G.: Evolving into embedded development. In: AGILE 2007, Aalborg, Denmark, pp. 150–155 (2007)
Cordeiro, L., Barreto, R., Barcelos, R., Oliveira, M., Lucena, V., Maciel, P.: Agile development methodology for embedded systems: A platform-based design approach. In: ECBS 2007, Tucson, USA, pp. 195–202 (2007)
Wang, Z.: Fuxi: An agile development environment for embedded systems. In: COMPSAC 2007, Beijing, China, pp. 631–632 (2007)
Cordeiro, L., Mar, C., Valentin, E., Cruz, F., Patrick, D., Barreto, R., Lucena, V.: An agile development methodology applied to embedded control software under stringent hardware constraints. SIGSOFT Softw. Eng. Notes 33(5), 1–10 (2008)
Cordeiro, L., Mar, C., Valentin, E., Cruz, F., Patrick, D., Barreto, R., Lucena, V.: A platform-based software design methodology for embedded control systems: An agile toolkit. In: ECBS 2008, Belfast, Northern Ireland, pp. 408–417 (2008)
Cordeiro, L., Barreto, R., Oliveira, M.: Towards a semiformal development methodology for embedded systems. In: ENASE 2008, Funchal, Portugal, pp. 5–12 (2008)
Salo, O., Abrahamsson, P.: Agile methods in european embedded software development organisations: a survey on the actual use and usefulness of eXtreme programming and Scrum. IET Software 2(1), 58–64 (2008)
Smith, M., Miller, J., Daeninck, S.: A test-oriented embedded system production methodology. Journal of Signal Processing Systems 56(1), 69–89 (2009)
Smith, M., Miller, J., Huang, L., Tran, A.: A more agile approach to embedded system development. IEEE Software 26(3), 50–57 (2009)
Srinivasan, J., Dobrin, R., Lundqvist, K.: State of the Art in using agile methods for embedded systems development. In: COMPSAC, Seattle,USA, pp. 522–527 (2009)
Cawley, O., Wang, X., Richardson, I.: Lean/Agile Software Development Methodologies in Regulated Environments – State of the Art. In: Abrahamsson, P., Oza, N. (eds.) LESS 2010. LNBIP, vol. 65, pp. 31–36. Springer, Heidelberg (2010)
Savolainen, J., Kuusela, J., Vilavaara, A.: Transition to agile development - rediscovery of important requirements engineering practices. In: RE 2010, Sydney, Australia, pp. 289–294 (2010)
Kruchten, P.: The Rational Unified Process: An Introduction, 3rd edn. The Addison-Wesley Object Technology Series. Addison-Wesley (2003)
Palmer, S.R., Felsing, J.M.: A Practical Guide to Feature-Driven Development. Prentice Hall (2002)
Eclipse: OpenUP, World Wide Web (2011) (On-line), http://epf.eclipse.org/wikis/openup/ (accessed December 29, 2011)
International Organization for Standardization: ISO/DIS 26262 Software compliance: Achieving functional safety in the automotive industry (2011)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Albuquerque, C.O., Antonino, P.O., Nakagawa, E.Y. (2012). An Investigation into Agile Methods in Embedded Systems Development. In: Murgante, B., et al. Computational Science and Its Applications – ICCSA 2012. ICCSA 2012. Lecture Notes in Computer Science, vol 7335. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-31137-6_44
Download citation
DOI: https://doi.org/10.1007/978-3-642-31137-6_44
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-31136-9
Online ISBN: 978-3-642-31137-6
eBook Packages: Computer ScienceComputer Science (R0)