Skip to main content

Reflection-Driven Design

  • Chapter
  • First Online:
  • 232 Accesses

Abstract

This chapter presents a recipe for design-as-a-verb as a reflective conversation. The recipe employs the medium of construction guided by a composite appreciative system of the invested stakeholders. The terms “recipe” and “conversation” steer clear of any appearance of prescription. Both terms connote a sense of “becoming” rather than consummation. In that sense, the focus is on design as a “living cycle” rather than a final product of construction. At its core, the “becoming” conversation manifests the paradigm reminiscent of Agile development process models where refining the goals of the development project depends upon a conversation among designers and stakeholders. For example, in Scrum the product owner, Scrum master, and development team cooperate in artefact emergence by repeatedly assessing and adjusting the product backlog and sprint planning to react to the progressive learning and refinement of the project goals among the stakeholders. This chapter first presents the reflection-driven design recipe as it has evolved. Then a synopsis of its origin in the analysis of code refactoring examines the role of Thriving Systems Theory in emancipating an operative appreciative system.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Hardcover Book
USD   109.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

Learn about institutional subscriptions

Notes

  1. 1.

    Schön , D. A., The Reflective Practitioner: How Professionals Think in Action, Basic Books, New York, NY, 1983.

  2. 2.

    Waguespack, L. J., Babb, J. and Yates, D. J., “‘Refactoring ’ Refactoring,” in 50th Hawaii International Conference on Systems Sciences, Waikoloa Village, HI, 2017.

  3. 3.

    Rubin, K. S., Essential Scrum : A Practical Guide to the Most Popular Agile Process, Addison-Wesley, Reading, MA, 2012.

  4. 4.

    Fowler, M., Beck, K., Brant, J., Opdyke, W. and Roberts, D., Refactoring : Improving the Design of Existing Code. Addison-Wesley, Reading, MA, 1999.

  5. 5.

    Schön , D. A., Educating the Reflective Practitioner: Toward a New Design for Teaching and Learning in the Professions, Jossey-Bass, San Francisco, CA, 1986.

  6. 6.

    Beck, K., Extreme Programming Explained: Embrace Change, 2nd ed. Addison-Wesley, Reading, MA, 2004.

  7. 7.

    Rubin, K. S., Essential Scrum : A Practical Guide to the Most Popular Agile Process, Addison-Wesley, Reading, MA, 2012.

  8. 8.

    I note special thanks to Professor Jeffry Babb for his contributions to this section in reference to Agile and DevOps.

  9. 9.

    Kim, G., Debois, P., Willis, J. and Humble, J., The DevOps Handbook: How to Create World-Class Agility, Reliability , and Security in Technology Organizations, IT Revolution Press, Portland, OR, 2016.

  10. 10.

    Beck, K. et al., Manifesto for Agile Software Development, Agile Alliance, 2001, accessed 2018-10-19.

  11. 11.

    Lee, J. S., Pries-Heje, J. and Baskerville, R., “Theorizing in Design Science Research.” In Service-Oriented Perspectives in Design Science Research, Lecture Notes in Computer Science, 6629, 2011, pp. 1–16.

  12. 12.

    Fowler, M., Beck, K., Brant, J., Opdyke, W. and Roberts, D., Refactoring : Improving the Design of Existing Code. Addison-Wesley, Reading, MA, 1999.

  13. 13.

    Suryanarayana, G., Samarthyam G., Sharma T., Refactoring for Software Design Smells: Managing Technical Debt. Morgan Kaufmann, New York, NY, 2014.

  14. 14.

    Beck, K., Extreme Programming Explained: Embrace Change, 2nd ed. Addison-Wesley, Reading, MA, 2004.

  15. 15.

    Kerievsky, J., Refactoring to Patterns , Addison-Wesley, Reading, MA, 2004.

  16. 16.

    Rubin, K. S., Essential Scrum : A Practical Guide to the Most Popular Agile Process, Addison-Wesley, Reading, MA, 2012.

  17. 17.

    Checkland , P., Systems Thinking, Systems Practice, John Wiley & Sons, New York, NY, 1999.

  18. 18.

    Kim, G., Debois, P., Willis, J., Humble, J., The DevOps Handbook: How to Create World-Class Agility, Reliability, and Security in Technology Organizations, IT Revolution Press, Portland, OR, 2016.

  19. 19.

    Beck, K. et al., Manifesto for Agile Software Development, Agile Alliance, 2001, accessed 2018-10-19.

  20. 20.

    Beck, K., Extreme Programming Explained: Embrace Change, 2nd ed. Addison-Wesley, Reading, MA, 2004.

  21. 21.

    Rubin, K. S., Essential Scrum : A Practical Guide to the Most Popular Agile Process, Addison-Wesley, Reading, MA, 2012.

  22. 22.

    Kim, G., Debois, P., Willis, J. and Humble, J., The DevOps Handbook: How to Create World-Class Agility, Reliability, and Security in Technology Organizations, IT Revolution Press, Portland, OR, 2016.

  23. 23.

    Argyris, C. and Schön , D., Organizational Learning: A Theory of Action Perspective, McGraw-Hill, New York, NY, 1978.

  24. 24.

    Ibid.

  25. 25.

    Ramasubbu, N., Mithas, S., Krishnan, M. S. and Kemerer, C. F., “Work Dispersion, Process-Based Learning, and Offshore Software Development Performance,” MIS Quarterly, 32(2), 2008, pp. 437–458.

  26. 26.

    Argyris, C. and Schön , D., Organizational Learning: A Theory of Action Perspective, McGraw-Hill, New York, NY, 1978.

  27. 27.

    Beck, K., Extreme Programming Explained: Embrace Change, 2nd ed. Addison-Wesley, Reading, MA, 2004.

  28. 28.

    Brown, N., Cai, Y., Guo, Y., Kazman, R. et al., “Managing Technical Debt in Software-Reliant Systems.” In Proc. of the FSE/SDP Workshop on Future of Software Engineering Research, 2010, pp. 47–51.

  29. 29.

    Gilb, T. and Finzi, S. (1988). Principles of Software Engineering Management. Addison-Wesley, Reading, MA.

  30. 30.

    Hevner, A. R., “A Three Cycle View of Design Science Research,” Scandinavian Journal of Information Systems, 19(2), 2007, pp. 87–92.

  31. 31.

    Larman, C. and Basili, V. R., “Iterative and Incremental Development: A Brief History,” Computer, 36(6), 2003, pp. 47–56.

  32. 32.

    Lee, J. S., Pries-Heje, J. and Baskerville, R., “Theorizing in Design Science Research.” In Service-Oriented Perspectives in Design Science Research, Lecture Notes in Computer Science, 6629, 2011, pp. 1–16.

  33. 33.

    Ramasubbu, N., Mithas, S., Krishnan, M. S. and Kemerer, C. F., “Work Dispersion, Process-Based Learning, and Offshore Software Development Performance,” MIS Quarterly, 32(2), 2008, pp. 437–458.

  34. 34.

    Schön , D. A., The Reflective Practitioner: How Professionals Think in Action, Basic Books, New York, NY, 1983.

  35. 35.

    Gilb, T. and Finzi, S. (1988). Principles of Software Engineering Management. Addison-Wesley, Reading, MA.

  36. 36.

    Fowler, M., Beck, K., Brant, J., Opdyke, W. and Roberts, D., Refactoring : Improving the Design of Existing Code. Addison-Wesley, Reading, MA, 1999.

  37. 37.

    Brown, N., Cai, Y., Guo, Y., Kazman, R. et al., “Managing Technical Debt in Software-Reliant Systems.” In Proc. of the FSE/SDP Workshop on Future of Software Engineering Research, 2010, pp. 47–51.

  38. 38.

    Suryanarayana, G., Samarthyam G. and Sharma T., Refactoring for Software Design Smells: Managing Technical Debt. Morgan Kaufmann, New York, NY, 2014.

  39. 39.

    Opdyke, W. F., Refactoring Object-Oriented Frameworks (Doctoral dissertation, University of Illinois at Urbana-Champaign), 1992.

  40. 40.

    Jensen, A. C. and Cheng, Betty H. C., “On the Use of Genetic Programming for Automated Refactoring and the Introduction of Design Patterns ,” In Proc. of the 12th Annual Conference on Genetic and Evolutionary Computation, 2010, pp. 1341–1348.

  41. 41.

    Sunyé, G., Pollet, D., Le Traon, Y. and Jézéquel, J.-M., “Refactoring UML Models.” In Proc. of UML 2001—The Unified Modeling Language. Modeling Languages, Concepts, and Tools, 2001, pp. 134–148.

  42. 42.

    Alves, V., Gheyi, R., Massoni, T., Kulesza, U., Borba, P. and Lucena, C., “Refactoring Product Lines.” In Proc. of the 5th International Conference on Generative Programming and Component Engineering, 2006, pp. 201–210.

  43. 43.

    Waguespack, L. J., Thriving Systems Theory and Metaphor-Driven Modeling, Springer-Verlag, London, U.K., 2010.

  44. 44.

    Checkland , P., Systems Thinking, Systems Practice, John Wiley & Sons, New York, NY, 1999.

  45. 45.

    Schön , D. A., The Reflective Practitioner: How Professionals Think in Action, Basic Books, New York, NY, 1983.

  46. 46.

    Argyris, C. and Schön , D., Organizational Learning: A Theory of Action Perspective, McGraw-Hill, New York, NY, 1978.

  47. 47.

    Beck, K., Extreme Programming Explained: Embrace Change, 2nd ed. Addison-Wesley, Reading, MA, 2004.

  48. 48.

    Verganti, R., Design-Driven Innovation: Changing The Rules of Competition by Radically Innovating What Things Mean. Harvard Business Press, Cambridge, MA, 2009.

  49. 49.

    Beck, K., Extreme Programming Explained: Embrace Change, 2nd ed. Addison-Wesley, Reading, MA, 2004.

  50. 50.

    Beck, K. et al., Manifesto for Agile Software Development, Agile Alliance, 2001, accessed 2018-10-19.

  51. 51.

    Dingsøyr, T., Nerur, S., Balijepally, V. and Moe, N. B., “A Decade of Agile Methodologies: Towards Explaining Agile Software Development,” Journal of Systems and Software, 85(6), 2012, pp. 1213–1221.

  52. 52.

    Rubin, K. S., Essential Scrum : A Practical Guide to the Most Popular Agile Process. Addison-Wesley, Reading, MA, 2012.

  53. 53.

    Kim, G., Debois, P., Willis, J. and Humble, J., The DevOps Handbook: How to Create World-Class Agility, Reliability , and Security in Technology Organizations, IT Revolution Press, Portland, OR, 2016.

  54. 54.

    Larman, C. and Basili, V. R., “Iterative and Incremental Development: A Brief History,” Computer, 36(6), 2003, pp. 47–56.

  55. 55.

    Alexander , C. W., The Nature of Order: An Essay on the Art of Building and the Nature of the Universe: Book I – The Phenomenon of Life, The Center for Environmental Structure, Berkley, CA., 2002, p. 80.

  56. 56.

    Gregor, S. and Jones, D. “The Anatomy of a Design Theory,” Journal of the Association for Information Systems, 8(5), 2007, pp. 312–335.

  57. 57.

    Dennis, A., Wixom, B. H. and Roth, R. M., Systems Analysis and Design, 6th ed. John Wiley & Sons, New York, NY, 2014.

  58. 58.

    Waguespack, L. J., Thriving Systems Theory and Metaphor-Driven Modeling, Springer-Verlag, London, U.K., 2010.

  59. 59.

    Fowler, M., Beck, K., Brant, J., Opdyke, W. and Roberts, D., Refactoring : Improving the Design of Existing Code, Addison-Wesley, Reading, MA, 1999.

  60. 60.

    Kerievsky, J., Refactoring to Patterns , Addison-Wesley, Reading, MA, 2004.

  61. 61.

    Fowler, M., Beck, K., Brant, J., Opdyke, W. and Roberts, D., Refactoring : Improving the Design of Existing Code, Addison-Wesley, Reading, MA, 1999.

  62. 62.

    Kerievsky, J., Refactoring to Patterns , Addison-Wesley, Reading, MA, 2004.

  63. 63.

    Elish, K. O. and Alshayeb, M., “A Classification of Refactoring Methods Based on Software Quality Attributes,” Arab Journal of Science and Engineering, 36, 2011, pp. 1253–1267.

  64. 64.

    Mens, T. and Tourwé, T., “A Survey of Software Refactoring ,” IEEE Transactions on Software Engineering, 30(2), 2004, pp. 126–139.

  65. 65.

    Brown, N., Cai, Y., Guo, Y., Kazman, R. et al., “Managing Technical Debt in Software-Reliant Systems.” In Proc. of the FSE/SDP Workshop on Future of Software Engineering Research, 2010, pp. 47–51.

  66. 66.

    Suryanarayana, G., Samarthyam G. and Sharma T., Refactoring for Software Design Smells: Managing Technical Debt, Morgan Kaufmann, New York, NY, 2014.

  67. 67.

    Ibid.

  68. 68.

    Brown, N., Cai, Y., Guo, Y., Kazman, R. et al., “Managing Technical Debt in Software-Reliant Systems.” In Proc. of the FSE/SDP Workshop on Future of Software Engineering Research, 2010, pp. 47–51., p. 50.

  69. 69.

    Kerievsky, J., Refactoring to Patterns , Addison-Wesley, Reading, MA, 2004, p. 15

  70. 70.

    Fowler, M., Beck, K., Brant, J., Opdyke, W. and Roberts, D., Refactoring : Improving the Design of Existing Code, Addison-Wesley, Reading, MA, 1999.

  71. 71.

    Kerievsky, J., Refactoring to Patterns , Addison-Wesley, Reading, MA, 2004, p. 15

  72. 72.

    Suryanarayana, G., Samarthyam G. and Sharma T., Refactoring for Software Design Smells: Managing Technical Debt, Morgan Kaufmann, New York, NY, 2014.

  73. 73.

    Schön , D. A., The Reflective Practitioner: How Professionals Think in Action, Basic Books, New York, NY, 1983.

  74. 74.

    Ibid, p. 95.

  75. 75.

    Fowler, M., Beck, K., Brant, J., Opdyke, W. and Roberts, D., Refactoring : Improving the Design of Existing Code, Addison-Wesley, Reading, MA, 1999.

  76. 76.

    Ibid.

  77. 77.

    Kerievsky, J., Refactoring to Patterns , Addison-Wesley, Reading, MA, 2004., p. 15

  78. 78.

    Suryanarayana, G., Samarthyam G. and Sharma T., Refactoring for Software Design Smells: Managing Technical Debt, Morgan Kaufmann, New York, NY, 2014.

  79. 79.

    Checkland , P., Systems Thinking, Systems Practice, John Wiley & Sons, New York, NY, 1999, p. A50.

  80. 80.

    Naur, P., “Programming as Theory Building,” Microprocessing and Microprogramming, 15(5), 1985, p. 253.

  81. 81.

    Alexander , C. W., A Timeless Way of Building. Oxford University Press, New York, NY, 1979, p. 19.

  82. 82.

    Alexander , C. W., The Nature of Order: An Essay on the Art of Building and the Nature of the Universe: Book I – The Phenomenon of Life, The Center for Environmental Structure, Berkley, CA., 2002, p. 80.

  83. 83.

    Checkland , P., Systems Thinking, Systems Practice. John Wiley & Sons, New York, NY, 1999, p. A50.

  84. 84.

    Schön , D. A., The Reflective Practitioner: How Professionals Think in Action, Basic Books, New York, NY, 1983.

  85. 85.

    Hevner, A. R., “A Three Cycle View of Design Science Research,” Scandinavian Journal of Information Systems, 19(2), 2007, pp. 87–92.

  86. 86.

    Gregor, S. and Jones, D. “The Anatomy of a Design Theory,” Journal of the Association for Information Systems, 8(5), 2007, pp. 312–335.

  87. 87.

    Lakoff G. and Johnson, M, Metaphors We Live By, University of Chicago Press, Chicago, IL, 1980, p. 193.

  88. 88.

    Ibid.

  89. 89.

    Stamper , R. K., Information in Business and Administrative Systems, John Wiley and Sons, New York, NY, 1973.

  90. 90.

    Stamper , R. K., Althous, K. and Backhouse, J., “MEASUR, Method for Eliciting, Analyzing, and Specifying User Requirements,” In Olle, T. W., Verrijn-Stuart, A. A. and Bhabuts, L., (eds.), Computerized Assistance During the Information Life Cycle, Elsevier, Amsterdam, The Netherlands, 1988.

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Switzerland AG

About this chapter

Check for updates. Verify currency and authenticity via CrossMark

Cite this chapter

Waguespack, L.J. (2019). Reflection-Driven Design. In: Designing Thriving Systems. Springer, Cham. https://doi.org/10.1007/978-3-030-03925-7_4

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-03925-7_4

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-03924-0

  • Online ISBN: 978-3-030-03925-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics