Skip to main content

Some Future Software Engineering Opportunities and Challenges

  • Chapter
  • First Online:
The Future of Software Engineering

Abstract

This paper provides an update and extension of a 2006 paper, “Some Future Trends and Implications for Systems and Software Engineering Processes,” Systems Engineering, Spring 2006. Some of its challenges and opportunities are similar, such as the need to simultaneously achieve high levels of both agility and assurance. Others have emerged as increasingly important, such as the challenges of dealing with ultralarge volumes of data, with multicore chips, and with software as a service. The paper is organized around eight relatively surprise-free trends and two “wild cards” whose trends and implications are harder to foresee. The eight surprise-free trends are:

1. Increasing emphasis on rapid development and adaptability;

2. Increasing software criticality and need for assurance;

3. Increased complexity, global systems of systems, and need for scalability and interoperability;

4. Increased needs to accommodate COTS, software services, and legacy systems;

5. Increasingly large volumes of data and ways to learn from them;

6. Increased emphasis on users and end value;

7. Computational plenty and multicore chips;

8. Increasing integration of software and systems engineering;

The two wild-card trends are:

9. Increasing software autonomy; and

10. Combinations of biology and computing.

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 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 54.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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Adomavicius, G., Tuzhilin, A.: Toward the Next Generation of Recommender Systems: A Survey of the State-of-the-Art and Possible Extensions. IEEE Transactions on Knowledge and Data Engineering 17(6) (June 2005) 734–749

    Article  Google Scholar 

  2. Albert, C., Brownsword, L.: Evolutionary Process for Integrating COTS-Based Systems (EPIC): An Overview. CMU/SEI-2003-TR-009. Pittsburgh, PA: Software Engineering Institute (2002)

    Google Scholar 

  3. Anthes, G.: The Future of IT. Computerworld, (March 7, 2005) 27-36

    Google Scholar 

  4. Arthur, W. B.: Increasing Returns and the New World of Business. Harvard Business Review (July/August, 1996) 100-109

    Google Scholar 

  5. Bass, L., John, B.E.: Linking usability to software architecture patterns through general scenarios. Journal of Systems and Software 66 (3) (2003) 187-197

    Article  Google Scholar 

  6. Beck, K.: Extreme Programming Explained, Addison Wesley (1999)

    Google Scholar 

  7. Biffl, S., Aurum, A., Boehm, B., Erdogmus, H., Gruenbacher, P. (eds.): Value-Based Software Engineering. Springer Verlag (2005)

    Google Scholar 

  8. Boehm, B.: Software Engineering Economics. Prentice Hall (1981)

    Google Scholar 

  9. Boehm, B.: A Spiral Model for Software Development and Enhancement. Computer (May, 1988) 61-72

    Google Scholar 

  10. Boehm, B.: Anchoring the Software Process. Software. (July, 1996) 73-82

    Google Scholar 

  11. Boehm, B.: Some Future Trends and Implications for Systems and Software Engineering Processes, Systems Engineering, Vol. 9, No. 1 (2006) 1-19

    Article  Google Scholar 

  12. Boehm, B.: Applying the Incremental Commitment Model to Brownfield Systems Development, Proceedings, CSER 2009 (April 2009)

    Google Scholar 

  13. Boehm, B., Bhuta, J.: Balancing Opportunities and Risks in Component-Based Software Development, IEEE Software, November-December 2008, Volume 15, Issue 6, pp. 56-63.

    Article  Google Scholar 

  14. Boehm, B., Brown, A.W., Basili, V., Turner, R.: Spiral Acquisition of Software-Intensive Systems of Systems. CrossTalk (May, 2004) 4-9

    Google Scholar 

  15. Boehm, B., Egyed, A., Kwan, J., Port, D., Shah, A., Madachy, R.: Using the WinWin Spiral Model: A Case Study, IEEE Computer (July 1998) 33-44

    Google Scholar 

  16. Boehm. B., Hoare, C.A.R. (eds.): Proceedings, 1975 International Conference on Reliable Software, ACM/IEEE (April, 1975)

    Google Scholar 

  17. Boehm, B., Jain, A.: An Initial Theory of Value-Based Software Engineering. In: Aurum, A., Biffl, S., Boehm, B., Erdogmus, H., Gruenbacher, P. (eds.): Value-Based Software Engineering, Springer Verlag (2005)

    Google Scholar 

  18. Boehm, B., Lane, J.: Using the Incremental Commitment Model to Integrate System Acquisition, Systems Engineering, and Software Engineering. CrossTalk (October 2007) 4-9

    Google Scholar 

  19. Boehm, B., Lane, J., Koolmanojwong, S., Turner, R.: Architected Agile Solutions for Software-Reliant Systems, Proceedings, INCOSE (2010)

    Google Scholar 

  20. Boehm, B., Turner, R.: Balancing Agility and Discipline. Addison Wesley (2004)

    Google Scholar 

  21. Booher, H.(ed.): Handbook of Human Systems Integration, Wiley (2003)

    Google Scholar 

  22. Brooks, F.: The Mythical Man-Month (2nd ed.). Addison Wesley (1995)

    Google Scholar 

  23. Brooks, F., The Design of Design, Addison Wesley, 2010.

    Google Scholar 

  24. Büttcher,S., Clarke, L., Cormack, G.: Information Retrieval: Implementing and Evaluating Search Engines. MIT Press (2010)

    Google Scholar 

  25. Checkland, P.: Systems Thinking, Systems Practice. 2nd ed., Wiley (1999)

    Google Scholar 

  26. Chesbrough, H.: Open Innovation, Harvard Business School Press (2003)

    Google Scholar 

  27. Chrissis, M., B., Konrad, M., Shrum, S.: CMMI. Addison Wesley (2003)

    Google Scholar 

  28. Cockburn, A.: Agile Software Development, Addison Wesley (2002)

    Google Scholar 

  29. Collins, J.: Good to Great, Harper Collins (2001)

    Google Scholar 

  30. Crawford, D.: Editorial Pointers. Comm. ACM (October, 2001) 5

    Google Scholar 

  31. Crichton, M.: Prey, Harper Collins (2002)

    Google Scholar 

  32. CrossTalk: Top Five Quality Software Projects, (January 2002), (July 2003), (July 2004), (September 2005) http://www.stsc.hill.af.mil/crosstalk

  33. Crosson, S., Boehm, B.: Adjusting Software Life-Cycle Anchorpoints: Lessons Learned in a System of Systems Context, Proceedings SSTC 2009 (April 2009). Also TR USC-CSSE-2009-525

    Google Scholar 

  34. Curtis, B., Hefley, B., Miller, S.: The People Capability Maturity Model. Addison Wesley (2002)

    Google Scholar 

  35. Cusumano, M., Selby, R.: Microsoft Secrets. Harper Collins (1996)

    Google Scholar 

  36. Cusumano, M.: The Business of Software. New York: Free Press/Simon & Schuster (2004)

    Google Scholar 

  37. Deck, M., Strom, M., Schwartz, K.: The Emerging Model of Co-Development. Research Technology Management (December, 2001)

    Google Scholar 

  38. Dijkstra, E.: Panel remarks. Software Engineering: As It Should Be. ICSE 4 (September, 1979) – See also EWD 791 at http://www.cs.utexas/users/EWD

  39. Doernhofer, M.: Multicore and Multithreaded Programming, ACM Sofware Engineering Notes (July 2010) 8-16.

    Google Scholar 

  40. Drexler, K.E.: Engines of Creation. Anchor Press (1986)

    Google Scholar 

  41. Drexler, K.E., Peterson, C., Pergamit, G.: Unbounding the Future: The Nanotechnology Revolution. William Morrow & Co. (1991)

    Google Scholar 

  42. Dreyfus, H., Dreyfus, S.: Mind over Machine. Macmillan (1986)

    Google Scholar 

  43. Dyson, G. B.: Darwin Among the Machines: The Evolution of Global Intelligence, Helix Books/Addison Wesley (1997)

    Google Scholar 

  44. Ehn, P. (ed.): Work-Oriented Design of Computer Artifacts, Lawrence Earlbaum Assoc. (1990)

    Google Scholar 

  45. FCIO (Federal CIO Council): A Practical Guide to Federal Enterprise Architecture, Version 1.0. (February, 2001)

    Google Scholar 

  46. Ferguson, J.: Crouching Dragon, Hidden Software: Software in DOD Weapon Systems, IEEE Software, vol. 18, no. 4, (July/August 2001) 105-107

    Google Scholar 

  47. Gerrard, P., Thompson, N.: Risk-Based E-Business Testing. Artech House (2002)

    Google Scholar 

  48. Grady, R.: Successful Software Process Improvement. Prentice Hall (1997)

    Google Scholar 

  49. Gruenbacher, P, Koszegi, S., Biffl, S., Stakeholder Value Proposition Elicitation and Reconciliation, in Aurum, A., Biffl, S., Boehm, B., Erdogmus, H., Gruenbacher, P. (eds.): Value-Based Software Engineering, Springer (2005)

    Google Scholar 

  50. Harned, D., Lundquist, J.: What Transformation Means for the Defense Industry. The McKinsey Quarterly, (November 3, 2003) 57-63

    Google Scholar 

  51. Highsmith, J.: Adaptive Software Development. Dorset House (2000)

    Google Scholar 

  52. Hollnagel, E., Woods, D., Leveson, N. (eds.): Resilience Engineering: Concepts and Precepts. Ashgate Publishing, (2006)

    Google Scholar 

  53. Hopkins, R., Jenkins, K.: Eating the IT Elephant: Moving from Greenfield Development to Brownfield. IBM Press (2008)

    Google Scholar 

  54. Huang, L.: A Value-Based Process Achieving Software Dependability. Proceedings, Software Process Workshop 2005 (May, 2005)

    Google Scholar 

  55. Humphrey, W.: Introduction to the Personal Software Process. Addison Wesley (1997)

    Google Scholar 

  56. Humphrey, W.: Introduction to the Team Software Process. Addison Wesley (2000)

    Google Scholar 

  57. IEEE Computer: Special Issue on Multicore Programming (March 2010)

    Google Scholar 

  58. ISO (International Standards Organization): Standard for Information Technology – Software Life Cycle Processes. ISO/IEC 12207 (1995)

    Google Scholar 

  59. ISO (International Standards Organization): Systems Engineering – System Life Cycle Processes. ISO/IEC 15288 (2002)

    Google Scholar 

  60. ISO (International Standards Organization): Systems and Software Engineering – Systems and Software Assurance – Part 2: Assurance Case (ISO/IEC 15026) (2009)

    Google Scholar 

  61. Jackson, S.: Architecting Resilient Systems. Wiley (2009)

    Google Scholar 

  62. Joy, B.: Why the Future Doesn’t Need Us: Wired (April, 2000)

    Google Scholar 

  63. Koolmanojwong, S. The Incremental Commitment Model process patterns for rapid-fielding projects, Qualifying Exam Report (November 2009). Also TR USC-CSSE-2009-526

    Google Scholar 

  64. Koren, Y., Bell, R., Volinsky, C.: Matrix Factorization Techniques for Recommender Systems, Computer (August 2009) 30-37

    Google Scholar 

  65. Koskela, L., Howell, L.: The Underlying Theory of Project Management is Obsolete, Proceedings, PMI Research Conference (2002) 293-302

    Google Scholar 

  66. Kroll, P., Kruchten, P.: The Rational Unified Process Made Easy: A Practitioner's Guide to the Rational Unified Process. Addison Wesley (2003)

    Google Scholar 

  67. Kruchten, P.: The Rational Unified Process. Addison Wesley (1999)

    Google Scholar 

  68. Kurzweil, R.: The Age of Spiritual Machines. Penguin Books (1999)

    Google Scholar 

  69. Lane, J., Boehm, B., Bolas, M., Madni, A., Turner, R.: Critical Success Factors for Rapid, Innovative Solutions, Proceedings, ICSP 2010 (July 2010)

    Google Scholar 

  70. Lewis, G., Morris, E.J., Smith, D.B., Simanta, S.: SMART: Analyzing the Reuse Potential of Legacy Components on a Service-Oriented Architecture Environment, CMU/SEI-2008-TN-008 (2008)

    Google Scholar 

  71. Maranzano, J.F., Rozsypal, S.A., Zimmerman, G.H., Warnken, G.W., Wirth, P.E., Weiss, D.M.: Architecture reviews: Practice and experience. IEEE Software (March/April 2005) 34-43

    Google Scholar 

  72. Maslow, A.: Motivation and Personality. Harper and Row (1954)

    Google Scholar 

  73. Meyer, B., Mueller, P., Bay, T.: Software Engineering 2008, ETH Zurich Chair of Software Engineering (December 2008)

    Google Scholar 

  74. Meyer, B., Furia, C.: Software Engineering 2009, ETH Zurich Chair of Software Engineering (December 2009)

    Google Scholar 

  75. Musa, J.: Software Reliability Engineering. McGraw Hill (1999)

    Google Scholar 

  76. Nagappan, N., Zimmermann, T., Zeller, A. (eds.): Special Issue on Mining Software Archives, IEEE Software, (January/February 2009)

    Google Scholar 

  77. Ncube, C., Oberndorf, P., Kark, A. (eds.): Special Issue on Opportunistic System Development, IEEE Software (November/December 2008)

    Google Scholar 

  78. OMG (Object Management Group): OMG SysML v.1.2, http://www.sysml.org/specs.htm (June 2010)

  79. Parnas, D.: Designing Software for Ease of Extension and Contraction. Transactions on Software Engineering, IEEE, SE-5, (1979)

    Google Scholar 

  80. Patterson, D.: The Trouble With Multicore, IEEE Spectrum, (July 2010) 28-32, 52-53.

    Google Scholar 

  81. Paulk, M., Weber, C., Curtis, B., Chrissis, M.: The Capability Maturity Model. Addison Wesley (1994)

    Google Scholar 

  82. Pew, R., Mavor, A. (eds.): Human-System Integration in the System development Process: A New Look, National Academies Press (2007)

    Google Scholar 

  83. PITAC (President’s Information Technology Advisory Committee): Report to the President: Information Technology Research: Investing in Our Future (1999)

    Google Scholar 

  84. Price, H., Morley, J., Create, Apply, and Amplify: A Story of Technology Development, SEI Monitor (February 2009) 2

    Google Scholar 

  85. Putman, J.: Architecting with RM-ODP. Prentice Hall (2001)

    Google Scholar 

  86. Pyster, A., et al.: Graduate Software Engineering 2009 (GSwE2009) Curriculum Guidelines, Stevens Institute (September 2009)

    Google Scholar 

  87. Rational, Inc.: Driving Better Business with Better Software Economics, Rational Software Corp. (now part of IBM) (2001)

    Google Scholar 

  88. Rechtin, E.: Systems Architecting. Prentice Hall (1991)

    Google Scholar 

  89. Royce, W. E.: Software Project Management. Addison Wesley (1998)

    Google Scholar 

  90. Schwaber, K., Beedle, M.: Agile Software Development with Scrum, Prentice Hall (2002)

    Google Scholar 

  91. Standish Group: Extreme Chaos. http://www.standishgroup.com (2001)

  92. Toulmin, S.: Cosmopolis. University of Chicago Press (1992)

    Google Scholar 

  93. U.S. Department of Defense, MIL-STD-1521B: Reviews and Audits (1985)

    Google Scholar 

  94. U.S. Department of Defense, DOD-STD-2167A: Defense System Software Development (1988)

    Google Scholar 

  95. Womack, J., Jones, D.: Lean Thinking: Banish Waste and Create Wealth in Your Corporation. Simon & Schuster (1996)

    Google Scholar 

  96. Womack, J. P., Jones, D. T., Roos, D.: The Machine that Changed the World: The Story of Lean production. Harper Perennial (1990)

    Google Scholar 

  97. Yang, Y., Bhuta, J., Port, D., Boehm, B.: Value-Based Processes for COTS-Based Applications. IEEE Software (July/August 2005) 54-62

    Google Scholar 

  98. Yin, X., Knight, J.: Formal Verification of Large Software Systems, Proceedings, NASA Formal Methods Symposium 2 (April 2010)

    Google Scholar 

  99. Zachman, J.: A Framework for Information Systems Architecture. IBM Systems Journal (1987)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Barry Boehm .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Boehm, B. (2011). Some Future Software Engineering Opportunities and Challenges. In: Nanz, S. (eds) The Future of Software Engineering. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-15187-3_1

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-15187-3_1

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-15186-6

  • Online ISBN: 978-3-642-15187-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics