Advertisement

The Future

  • Frank J. FurrerEmail author
Chapter

Abstract

The coming years will change the way we engineer and operate software-systems. On the one hand, the dependency of the society on software is rising fast. On the other hand, the systems become more and more complicated, autonomous, and artificially intelligent, thus generating increased risks. The methods, processes, and technologies of systems engineering will have to cope with these challenges in order to build sustainable, dependable software. This chapter describes some of the likely influences on the software of the future.

References

  1. [Abrial10]
    Abrial JR (2010) Modeling in event-B: system and software engineering (Englisch) Gebundene Ausgabe—13. Mai 2010. Cambridge University Press, Cambridge. ISBN 978–0-521-89556-9Google Scholar
  2. [Alpaydin16]
    Alpaydin E (2016) Machine learning—the new AI. The MIT Press, Cambridge. ISBN 978-0-262-52951-8Google Scholar
  3. [Alur15]
    Alur R (2015) Principles of cyber-physical systems. The MIT Press, Cambridge. ISBN 978–0-262-02911-7Google Scholar
  4. [Assmann03]
    Assmann U (2003) Invasive software composition. Springer, Berlin. ISBN 978-3-540-44385-8CrossRefGoogle Scholar
  5. [Bedau08]
    Bedau MA, Humphreys P (eds) (2008) Emergence—contemporary readings in philosophy and science. The MIT Press, Cambridge. ISBN 978–0-262-02621-5Google Scholar
  6. [Benveniste12]
    Benveniste A, Caillaud B, Nickovic D, Passerone R, Raclet JB, Reinkemeier P, Sangiovanni-Vincentelli A, Damm W, Henzinger T, Larsen K (2012) Contracts for systems design, INRIA RESEARCH REPORT, No. 8147, November 2012, ISSN 0249-6399. http://hal.inria.fr/docs/00/75/85/14/PDF/RR-8147.pdf. Accessed 23 Sep 2017
  7. [Bergman15]
    Bergman N (2015) Surviving the techstorm—strategies in times of technological uncertainty. LID Publishing Ltd. 204 The Record Hall, Baldwins Gardens, London EC1N 7RJ. ISBN 978–1-9106-4919-0Google Scholar
  8. [Bondavalli16]
    Bondavalli A, Bouchenak S, Kopetz H (eds) (2016) Cyber-physical systems of systems: foundations—a conceptual model and some derivations: the AMADEOS legacy. Springer Lecture Notes in Computer Science, Heidelberg. ISBN 978–3-319-47589-9Google Scholar
  9. [Boulanger12]
    Boulanger JL (ed) (2012) Formal methods—industrial use from model to the code. Wiley, London, 2012. ISBN 978–1-848-21362-3Google Scholar
  10. [Cambell16]
    Cambell E (2016) Microservices architecture—make the architecture of a software as simple as possible. CreateSpace Independent Publishing Platform. ISBN 978–1-5300-0053-1Google Scholar
  11. [Charbonneau17]
    Charbonneau P (2017) Natural complexity—a modeling handbook. Princeton University Press, Princeton. ISBN 978–0-691-17035-0Google Scholar
  12. [Cheesman00]
    Cheesman J (2000) UML components—a simple process for specifying component-based software. Addison-Wesley Longman (Component Software Series), Amsterdam. ISBN 978–0-201-70851-6Google Scholar
  13. [Chisholm03]
    Chisholm M (2003) How to build a business rules engine—extending application functionality through metadata engineering. Morgan Kaufmann, Heidelberg. ISBN 978–1-558-60918-1Google Scholar
  14. [Clements10]
    Clements P, Bachmann F, Bass L, Garlan D et al (2010) Documenting software architectures—views and beyond, 2nd edn. Addison-Wesley (SEI Series in Software Engineering), New York. ISBN 978–0-321-55268-6Google Scholar
  15. [COMPASS12a]
    COMPASS (Comprehensive Modelling for Advanced Systems of Systems, EU-Project, FP7-287829) (2012) Initial report on SoS architectural models Document Number D22.1, March 2012. http://www.compass-research.eu. Accessed 23 Sep 2017
  16. [COMPASS12b]
    COMPASS (Comprehensive Modelling for Advanced Systems of Systems, EU-Project, FP7-287829) (2013) Initial report on guidelines for architectural level SoS modelling Document Number D21.2, March 2013. http://www.compass-research.eu. Accessed 23 Sep 2017
  17. [Corera17]
    Corera G (2017) Cyberspies—the secret history of surveillance, hacking, and digital espionage. Pegasus Books, New York. ISBN 978–1-6817-7459-6Google Scholar
  18. [DeSilva15]
    De Silva E (ed) (2015) National security and counterintelligence in the era of cyber espionage. Information Science Reference (Advances in Digital Crime, Forensics, and Cyber Terrorism). ISBN 978–1-4666-9661-7Google Scholar
  19. [Diller94]
    Diller A (1994) Z—an introduction to formal methods (Englisch) Taschenbuch—2nd edition 16. Juni 1994. Wiley, New York. ISBN 978–0-471-93973-3Google Scholar
  20. [Dijkstra76]
    Dijkstra EW (1976) A discipline of programming. Pearson Education & Prentice-Hall, Englewood Cliffs. ISBN 978-0-132-15871-8Google Scholar
  21. [Dissaux05]
    Dissaux P (ed) (2014) Architecture description languages. Springer (IFIP Advances in Information and Communication Technology), New York. ISBN 978–1-461-49895-7Google Scholar
  22. [Dori16]
    Dori D (2016) Model-based systems engineering with OPM and SysML. Springer, New York. ISBN 978-1-493-93294-8CrossRefGoogle Scholar
  23. [Eliot17]
    Eliot LB (2017) Advances in AI and autonomous vehicles: cybernetic self-driving cars: practical advances in Artificial Intelligence (AI) and machine learning. LBE Press Publishing, South Carolina. ISBN 978-0-6929-1517-2Google Scholar
  24. [Evans04]
    Evans E (2006) Domain-driven design—tackling complexity in the heart of software, 7th edn. Pearson Education (Addison-Wesley), Boston. ISBN 978-0-321-12521-5Google Scholar
  25. [Feiler12]
    Feiler PH, Gluch DP (2012) Model-based engineering with AADL. Addison-Wesley Longman (SEI Series in Software Engineering), Amsterdam. ISBN 978-0-321-88894-5Google Scholar
  26. [Fowler10]
    Fowler M, Parsons R (2010) Domain specific languages. Addison-Wesley, New York. ISBN 978-0-321-71294-3Google Scholar
  27. [Garlan10]
    Garlan D (2010) Software engineering in an uncertain world FoSER 2010, November 7–8, Santa Fe, New Mexico, USA. https://www.nitrd.gov/nitrdgroups/images/0/08/Software_Engineering_in_an_Uncertain_World_-_p125.pdf. Accessed 12 June 2017
  28. [Gaševic09]
    Gaševic D, Djuric D, Devedžic V (2009) Model driven engineering and ontology development, 2nd edn. Springer, Heidelberg, Germany. ISBN 978-3-642-00281-6CrossRefGoogle Scholar
  29. [Gertsbakh11]
    Gertsbakh I, Shpungin Y (2011) Network reliability and resilience. Springer, Heidelberg. ISBN 978-3-642-22373-0 (SpringerBriefs in Electrical and Computer Engineering)CrossRefGoogle Scholar
  30. [Goodman15]
    Goodman M (2015) Future crimes—everything is connected, everyone is vulnerable and what we can do about it. Doubleday Publisher, London. ISBN 978-0-385-53900-5Google Scholar
  31. [Griffor16]
    Griffor E (2016) Handbook of system safety and security—cyber risk and risk management, cyber security, threat analysis, functional safety, software systems, and cyber physical systems. Syngress, Boston. ISBN 978-0-1280-3773-7Google Scholar
  32. [Hadji-Janev15]
    Hadji-Janev M, Bogdanoski M (eds) (2015) Handbook of research on civil society and national security in the era of cyber warfare. Information Science Reference (Advances in Digital Crime, Forensics, and Cyber Terrorism), Hershey. ISBN 978-1-4666-8793-6Google Scholar
  33. [Halle01]
    von Halle B (2001) Business rules applied—building better systems using the business rules approach. Wiley, New York. ISBN 978-0-471-41293-9Google Scholar
  34. [Harris12]
    Harris R (2012) The fear index. Arrow, London. ISBN 978-0-099-55327-4Google Scholar
  35. [He95]
    He J, Hoare CAR, Fränzle M, Müller-Olm M, Rüdgier Olderog E, Schenke M, Hansen MR, Ravn AP, Rischel H (1995) Provably correct systems ESPRIT project 7071 „Provably Correct Systems“. https://pdfs.semanticscholar.org/706b/67d2aad1f7d1a45ba15d4c639b9c0d0654e2.pdf. Accessed 24 Sep 2017
  36. [Heineman01]
    Heineman GT, Councill WT (2001) Component-based software engineering—putting the pieces together. Addison-Wesley, Boston. ISBN 978-0-201-70485-3Google Scholar
  37. [Hinchey13]
    Hinchey MG (2013) Requirements to design to code—towards a fully formal approach to automatic code generation. Nasa Technical Reports Server. Hampton, VA, US (NASA Langley Research Center). ISBN 978-1-2892-5458-2Google Scholar
  38. [Hinchey17]
    Hinchey M, Bowen JP, Olderog ER (eds) (2017) Provably correct systems. Springer, Cham, Switzerland (NASA Monographs in Systems and Software Engineering). ISBN 978-3-319-48627-7Google Scholar
  39. [Hobbs15]
    Hobbs C (2015) Embedded software development for safety-critical systems. Taylor & Francis, London. ISBN 978-1-498-72670-2Google Scholar
  40. [Jackson06]
    Jackson D (2006) Software abstractions—logic, language, and analysis. MIT Press, Cambridge. ISBN 978-0-262-10114-1Google Scholar
  41. [Jackson10]
    Jackson S (2010) Architecting resilient systems—accident avoidance and survival and recovery from disruptions. Wiley, Hoboken. ISBN 978-0-470-40503-1Google Scholar
  42. [Jacky97]
    Jacky J (1997) The way of Z—practical programming with formal methods. Cambridge University Press, Cambridge. ISBN 978-0-521-55976-8Google Scholar
  43. [Jamshidi09a]
    Jamshidi M (ed) (2009) Systems of systems engineering—principles and applications. CRC Press & Taylor & Francis Group, Boca Raton. ISBN 978-1-4200-6588-6Google Scholar
  44. [Jamshidi09b]
    Jamshidi M (ed) (2009) Systems of systems engineering—innovations for the 21st century. Wiley, Hoboken. ISBN 978-0-470-19590-1Google Scholar
  45. [Jifeng93]
    Jifeng H, Page I, Bowen J (2005) Towards a provably correct hardware implementation of OCCAM CHARME 1993: correct hardware design and verification methods, S 214–225. https://link.springer.com/chapter/10.1007/BFb0021726. Accesssed 13 June 2005
  46. [Kaplan17]
    Kaplan J (2017) Humans need not apply—a guide to wealth and work in the age of artificial intelligence. Yale University Press, New Haven. ISBN 978–0-3002-2357-6Google Scholar
  47. [Kelly08]
    Kelly S, Tolvanen JP (2008) Domain-specific modeling—enabling full code generation. Wiley, Hoboken. ISBN 978-0-470-03666-2Google Scholar
  48. [Kernighan99]
    Kernighan BW (1999) A tutorial introduction to the language B. Bell Laboratories, Murray Hill. https://web.archive.org/web/20150611114644/https://www.bell-labs.com/usr/dmr/www/btut.pdf. Accessed 9 Oct 2017
  49. [Kleppe09]
    Kleppe A (2009) Software language engineering—creating domain-specific languages using metamodels. Addison-Wesley, Upper Saddle River. ISBN 978-0-321-55345-4Google Scholar
  50. [Knight12]
    Knight J (2012) Fundamentals of dependable computing for software engineers. Chapman and Hall und CRC, Boca Raton. ISBN 978-1-439-86255-1CrossRefGoogle Scholar
  51. [Kochenderfer15]
    Kochenderfer MJ (2015) Decision making under uncertainty—theory and application. MIT Lincoln Laboratory Series, Cambridge. ISBN 978-0-262-02925-4Google Scholar
  52. [Kshetri10]
    Kshetri N (2010) The global cybercrime industry—economic, institutional and strategic perspectives. Springer, Heidelberg. ISBN 978-3-642-11521-9CrossRefGoogle Scholar
  53. [Lano09]
    Lano K (2009) Model-driven software development with UML and java. Cengage Learning, London. ISBN 978-1-844-80952-3Google Scholar
  54. [Lee17]
    Lee EA, Seshia SA (2017) Introduction to embedded systems—a cyber-physical systems approach, 2nd edn. The MIT Press, Cambridge. ISBN 978-0-262-53381-2zbMATHGoogle Scholar
  55. [Li17a]
    Li D, Du Y (2017) Artificial intelligence with uncertainty. Taylor & Francis, Boca Raton. ISBN 978-1-498-77626-4Google Scholar
  56. [Liu16]
    Liu B (2016) Uncertainty theory. Springer, Berlin. ISBN 978–3-662-49988-7 (Softcover reprint of the original 4th edition 2015)Google Scholar
  57. [Luzeaux11]
    Luzeaux D, Ruault JR, Wipplere JL (eds) (2011) Complex systems and systems of systems engineering. iSTE Publishing, London. ISBN 978–1-848-21253-4 (Distributed by John Wiley & Sons Inc., New York)Google Scholar
  58. [Mahajan14]
    Mahajan S (2014) The art of insight in science and engineering—mastering complexity. The MIT Press, Cambridge. ISBN 978-0-262-52654-8Google Scholar
  59. [Marion16]
    Marion N (2016) Introduction to cybercrime—computer crimes, laws, and policing in the 21st century. Praeger Security International, Boston. ISBN 978-1-4408-3533-9Google Scholar
  60. [Marr15]
    Marr B (2015) Big data—using SMART big data, analytics and metrics to make better decisions and improve performance. Wiley, New York. ISBN 978-1-118-96583-2Google Scholar
  61. [Mayr16]
    Karagiannis D, Mayr HC, Mylopoulos J (eds) (2016) Domain-specific conceptual modeling—concepts, methods and tools. Springer, Cham, Switzerland. ISBN 978-3-319-39416-9Google Scholar
  62. [McCormick15]
    McCormick JW, Chapin PC (2015) Building high integrity applications with SPARK. Cambridge University Press, Cambridge. ISBN 978-1-107-65684-0Google Scholar
  63. [Mellor02]
    Mellor SJ, Balcer M (2002) Executable UML—a foundation for model driven architecture. Addison-Wesley Longman, Amsterdam. ISBN 978–0-201-74804-8Google Scholar
  64. [Mitnick17]
    Mitnick K (2017) The art of invisibility—the world’s most famous hacker teaches you how to be safe in the age of big brother and big data. Little, Brown and Company, New York. ISBN 978-0-3165-5454-1Google Scholar
  65. [Mittal18]
    Mittal S, Diallo S, Tolk A (eds) (2018) Emergent behaviour in complex systems—a modeling and simulation approach. Wiley, Hoboken. ISBN 978-1-119-37886-0Google Scholar
  66. [Newcomer02]
    Newcomer E (2002) Understanding web services: XML, WSDL, SOAP, and UDDI. Addison-Wesley Professional (Independent Technology Guides), Boston. ISBN 978-0-201-75081-2Google Scholar
  67. [Nieves17]
    Nieves J (2017) Formal methods industrial use from model to the code. CreateSpace Independent Publishing Platform. ISBN 978–1-9746-1992-4Google Scholar
  68. [O’Neil17]
    O’Neil C (2017) Weapons of math destruction—how big data increases inequality and threatens democracy. Penguin, London. ISBN 978–0-141-98541-1Google Scholar
  69. [Oquendo16]
    Oquendo F, Leite J, Batista T (2016) Software architecture in action—designing and executing architectural models with SysADL grounded on the OMG SysML standard. Springer. ISBN 978–3-319-44337-9Google Scholar
  70. [Paik17]
    Paik HY, Lemos AL, Barukh MC, Benatallah B, Natarajan A (2017) Web service implementation and composition techniques. Springer. ISBN 978–3-319-55540-9Google Scholar
  71. [Palsberg92]
    Palsberg J (1992) A provably correct compiler generator Proceedings ESOP’92. Springer (LNCS 582), pp 418–434. http://web.cs.ucla.edu/~palsberg/paper/esop92.pdf. Accessed 8 Oct 2017CrossRefGoogle Scholar
  72. [Plösch04]
    Plösch R (2004) Contracts, scenarios and prototypes—an integrated approach to high quality software. Springer, Berlin. ISBN 978-3-540-43486-0CrossRefGoogle Scholar
  73. [Pugh06]
    Pugh K (2006) Interface-oriented design. Pragmatic Bookshelf. ISBN 978–0-9766-9405-2Google Scholar
  74. [Raistrick04]
    Raistrick C, Francis P, Wright J, Carter C, Wilkie I (2004) Model driven architecture with executable UML. Cambridge University Press, Cambridge. ISBN 978–0-521-53771-1Google Scholar
  75. [Rausch08]
    Rausch A (ed) (2008) The common component modeling example—comparing software component models. Springer Lecture Notes in Computer Science/Programming and Software, Berlin. ISBN 978-3-540-85288-9Google Scholar
  76. [Rierson13]
    Rierson L (2013) Developing safety-critical software—a practical guide for aviation software and DO-178C compliance. Taylor & Francis, Boca Raton. ISBN 978-1-439-81368-3Google Scholar
  77. [Romanovsky17]
    Romanovsky A, Ishikawa F (eds) (2017) Trustworthy cyber-physical systems engineering. CRC Press, Boca Raton. ISBN 978-1-4978-4245-0Google Scholar
  78. [Ross03]
    Ross RG (2003) Principles of the business rule approach. Pearson Education & Addison-Wesley Information Technology, Boston. ISBN 978-0-201-78893-8Google Scholar
  79. [Ross17]
    Ross A (2017) The industries of the future. Simon + Schuster, London. ISBN 978-1-4711-3526-2Google Scholar
  80. [Rozanski11]
    Rozanski N, Woods E (2011) Software systems architecture—working with stakeholders using viewpoints and perspectives, 2nd edn. Addison-Wesley, Upper Saddle River. ISBN 978-0-321-71833-4Google Scholar
  81. [Schneier16]
    Schneier B (2016) Data and Goliath—the hidden battles to collect your data and control your world. Norton & Company, New York. ISBN 978–0-3933-5217-7Google Scholar
  82. [Schneier18]
    Schneier B (2018) Click Here to Kill Everybody: Security and Survival in a Hyper-connected World. Norton & Company, New York, ISBN 978-0-393-60888-5Google Scholar
  83. [Sessions08]
    Sessions R (2008) Simple architectures for complex enterprises.Microsoft Press, Redmond. ISBN 978-0-7356-2578-5Google Scholar
  84. [Segal16]
    Segal A (2016) The hacked world order—how nations fight, trade, maneuver, and manipulate in the digital age. PublicAffairs, New York. ISBN 978-1-6103-9415-4Google Scholar
  85. [Seidl15]
    Seidl M, Scholz M, Huemer C, Kappel G (2015) UML @ classroom—an introduction to object-oriented modeling. Springer, Cham. ISBN 978–3-319-12741-5Google Scholar
  86. [Sejnowski18]
    Sejnowski TJ (2018) Deep learning revolution. The MIT Press, Cambridge. ISBN 978-0-262-03803-4Google Scholar
  87. [Sethna06]
    Sethna JP (2006) Entropy, order parameters, and complexity. Oxford University Press, Oxford. ISBN 978-0-19-856677-9Google Scholar
  88. [Setola16]
    Setola R, Rosato V, Kyriakides E (eds) (2016) Managing the complexity of critical infrastructures—a modelling and simulation approach. Springer International Publishing, Cham. ISBN 978-3-319-51042-2Google Scholar
  89. [Siegwart11]
    Siegwart R, Nourbakhsh IR, Scaramuzza D (2011) Introduction to autonomous mobile robots. The MIT Press, Cambridge. ISBN 978–0-262-01535-6. (Intelligent Robotics and Autonomous Agents Series)Google Scholar
  90. [Starr17]
    Starr L, Mangogna A, Mellor S (2017) Models to code—with no mysterious gaps. Apress, New York. ISBN 978–1-4842-2216-4CrossRefGoogle Scholar
  91. [Steffen16]
    Steffen B (ed) (2016) Transactions on foundations for mastering change I, vol 1. Springer Lecture Notes in Computer Science, Cham. ISBN 978–3-319-46507-4Google Scholar
  92. [Stevens04]
    Stevens P, Pooley R, Maciaszek L (2004) Using UML—software engineering with objects and components. Addison-Wesley, Munich. ISBN 978–0-582-89596-6Google Scholar
  93. [Szyperski02]
    Szyperski C, Gruntz D, Murer S (2002) Component software—beyond object-oriented programming. Addison-Wesley (Component Software Series), London. ISBN 978–0-201-74572-6Google Scholar
  94. [Taylor14]
    Taylor RW, Fritsch EJ, Liederbach J (2014) Digital crime and digital terrorism. Prentice Hall. Upper Saddle River, New Jersey, USA. ISBN 978-0-133-45890-9Google Scholar
  95. [Tudorache08]
    Tudorache T (2008) Ontologies in engineering—modeling, consistency and use cases. VDM Verlag, Saarbrücken. ISBN 978-3-639-04979-4Google Scholar
  96. [Verma13]
    Verma AK, Ajit S, Kumar M (2013) Dependability of networked computer-based systems. Springer, Heidelberg (Springer Series in Reliability Engineering). ISBN 978-1-447-12693-5Google Scholar
  97. [Voelter13]
    Voelter M (2013) DSL engineering—designing, implementing and using domain-specific languages. CreateSpace Independent Publishing Platform. Upper Saddle River, New Jersey, USA. ISBN 978-1-4812-1858-0Google Scholar
  98. [Volynkin09]
    Volynkin A (2009) Modern malicious software—taxonomy and advanced detection methods. VDM Verlag, Saarbrücken. ISBN 978-3-6391-2295-4Google Scholar
  99. [Weilkiens08]
    Weilkiens T (2008) Systems engineering with SysML/UML—modeling, analysis, design. Morgan Kaufmann (The MK/OMG Press), Heidelberg. ISBN 978-0-123-74274-2zbMATHGoogle Scholar
  100. [Zhu01]
    Zhu MY, Luo L, Xiong GZ (2001) A provably correct operating system: δ-Core ACM SIG operating systems review, Vol. 35, No 1, January 2001. https://www.researchgate.net/publication/234830984_A_Provably_Correct_Operating_System_DeltaCORE. Accessed 8 Oct 2017
  101. [Ziv97]
    Ziv H, Richardson DJ (1997) The uncertainty principle in software engineering ICSE’97. http://jeffsutherland.org/papers/zivchaos.pdf. Accessed 19 Sep 2017

Copyright information

© Springer Fachmedien Wiesbaden GmbH, part of Springer Nature 2019

Authors and Affiliations

  1. 1.Computer Science FacultyTechnical University of DresdenDresdenGermany

Personalised recommendations