Abstract
Convention dictates that an information discipline matures from an informal shared practice to a defined and repeatable process through the externalisation and formal expression of its underlying theory. This progression is sometimes typified by the emergence of disciplined and professional practice from early forms of vernacular or craft-like work—software engineering evidences this kind of progressive definition over three decades. This paper examines the tension between software engineering’s professionalisation of the software design role—exemplified by the software architect—and its antithesis, the software craftsperson, a characterisation that continues to emerge despite attempts to suppress the reliance on individual skills and abilities through software engineering process. In non-software design disciplines, the professionalisation of design marks a distinct progression from ad hoc unrepeatable, unselfconscious craft to a self-conscious, demarcated type of design found in most forms of engineering. Software engineering has partially failed its attempts to make this transition and this failure undermines the validity of the engineering metaphor and engineering-based process models as a theoretical and practical model of software design. Software methods must acknowledge and find ways of incorporating vernacularism.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Alexander, C., 1964, Notes on the Synthesis of Form, New York, Harvard University Press.
Baragry, J. and Reed, K., 2001, Why we need a Different View of Software Architecture, Working IEEE/IFIP Conference on Software Architecture, Amsterdam, The Netherlands
Beck, K., 2000, Embracing Change: Extreme Programming Explained, Cambridge, Cambridge University Press.
Beedle, M., Devos, M., Sharon, Y., Schwaber, K. and Sutherland, J., 2000, SCRUM: A Pattern Language for Hyperproductive Software Development, in: Pattern Languages of Program Design 4, Vol. 4, N. Harrison, B. Foote and H. Rohnert, eds., Reading, Massachusetts, Addison-Wesley.
Berman, M., 1988, The Experience of Modernity, in: Design After Modernism, J. Thackara, ed., London, Thames and Hudson.
Blum, B., 1996, Beyond Programming: To a New Era of Design, Oxford University Press.
Booch, G., 1994, Object-Oriented Analysis and Design with Applications, Redwood City, California, Benjam in Cummings.
Borenstein, N.S., 1991, Programming as if People Mattered: Friendly Programs, Software Engineering and Other Noble Delusions, Princeton, New Jersey, Princeton University Press.
Brand, S., 1994, How Buildings Learn: What Happens to Them after they’re Built, New York, Penguin.
Brooks, F. P., 1987, No silver bullet: Essence and accidents of software engineering, IEEE Computer, 20 (4): 10–19.
Budgen, D., 1994, Software Design,Addison-Wesley.
Coplien, J. O., 1996, Software Patterns, New York, Lucent Technologies, Bell Labs Innovations.
Coplien, J. O., 2000a, Architecture as Metaphor.
Coplien, J. O., 2000b, Patterns and Art, C++ Report, 12 (1): 41–43.
Dormer, P., 1988, The Ideal World of Vermeer’s Little Lacemaker, in: Design After Modernism, J. Thackara, ed., London, Thames and Hudson.
Eco, U., 1997, Function and Sign: the Semiotics of Architecture, in: Rethinking Architecture: A reader in cultural theory, N. Leach, ed., London, Routledge.
Feyerabend, P., 1993, Against Method, London, Verso.
Foote, B. and Opdyke, W. F., 1995, Lifecycle and Refactoring Patterns that Support Evolution and Reuse, in: Pattern Languages of Program Design, J. O. Coplien and D. C. Scmidt, eds., Addison-Wesley.
Foote, B. and Yoder, J., 1999, Big Ball of Mud, in: Pattern Languages of Program Design 4, Vol. 4, N. Harrison, ed., Addison-Wesley.
Gabriel, R. P., 2001, The Feyerabend Project (http://www.dreamsongs.com/FeyerabendW 1.html)
Gem, J. S., 1996, Creativity, emergence and evolution in design: concepts and framework, Knowledge Based Systems, 9(7): 435–448.
Glass, R.L., 1999, On Design, IEEE Software, Mar/Apr: 104–103.
Grabow, S., 1983, Christopher Alexander: The Search for a New Paradigm in Architecture, Chicago, University of Chicago Press.
Hauffe, T., 1998, Design: A Concise History, London, Laurence King Publishing.
Hull, D. L., 1988, Science as a Process: An Evolutionary Account of the Social and Conceptual Development of Science, Chicago, The University of Chicago Press.
Jencks, C. and Silver, N., 1973, Adhocism: The Case for Improvisation, New York, Anchor Books.
Jones, J. C., 1988, Softecnica, in: Design After Modernism,J. Thackara, ed., London, Thames and Hudson. Kaplan, S. M., 2000, Co-Evolution in Socio-Technical Systems, Computer Supported Cooperative Work 2000, Philadelphia, ACM.
Kemerer, C.F. and Slaughter, S., 1999, An Empirical Approach to Studying Software Evolution, IEEE Transactions on Software Engineering, 25 (4): 493–509.
Lieberherr, K.J. and Xiao, C., 1993, Object-Oriented Software Evolution, IEEE Transactions on Software Engineering, 19(4): 313–343.
Louridas, P., 1999, Design as bricolage: anthropology meets design thinking, Design Studies, 20 (6): 517–535.
Lycett, M. and Paul, R.J., 1998, Information Systems Development: The Challenge of Evolutionary Complexity in: Sixth European Conference on Information Systems, W.R.J. Baets, ed., Aix-en-Provence, France, Euro-Arab management School, Granada, Spain.
Mayall, W. H., 1979, Principles in Design, New York, Van Nostrand Rienhold.
Mitchell, T., 1988, The Product as Illusion, in: Design After Modernism, J. Thackara, ed., London, Thames and Hudson.
Myerson, J., 1993, Design renaissance: Selected papers from the International Design Congress in: International Design Congress J. Myerson ed., Glasgow, Scotland, Open Eye Publishing.
Naylor, G., 1990, The Arts and Craft Movement: A Study of its Sources, Ideals and Influence on Design Theory, London, Trefoil Publications.
Rittel, H. J. & Weber, M. M., 1984, Planning problems are wicked problems, in: Developments in Design Methodology, N. Cross, ed., Wiley.
Shaw, M. and Garlan, F., 1996, Software Architecture: Perspectives on an Emerging Discipline
Steadman, P., 1979, The Evolution of Designs: Biological Analogy in Architecture and the Applied Arts, Cambridge, Cambridge University Press.
Stebbins, G. L., 1971, Processes of Organic Evolution, Englewood Cliffs, New Jersey, Prentice-Hall, Inc.
Taylor, P., 2000a, Adhocism in Software Architecture - Perspectives from Design Theory in: International Conference of Software Methods and Tools (2000) J.G.a.P. Croll, ed., Wollongong, IEEE Computer Press.
Taylor, P., 2000b, Evolution of Software Design Knowledge in: Australian Conference on Knowledge Management and Intelligent Decision Support (2000), F. Bumstein ed., Melbourne, Monash University.
Taylor, P. R., 2001, Patterns of Software Craft in: Second Australian Conference of Pattern Languages and Programs (KoalaPLoP 2001) J. Noble and N. Harrison, eds., Melbourne, University of Wellington.
Thackara, J., 1988, Beyond the Object in Design, in: Design After Modernism, J. Thackara, ed., London, Thames and Hudson.
Venturi, R., Scott Brown, D. and Izenour, S., 1977, Learning from Las Vegas, Cambridge, Massachusetts, The MIT Press.
Walker, D. and Cross, N., 1976, Design: The man-made object,The Open University Press.
Weatherall, M., 1979, Scientific Method, London, The English Universities Press Ltd.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2004 Springer Science+Business Media New York
About this paper
Cite this paper
Taylor, P.R. (2004). From Vernacular to Rational Design in Software Engineering. In: Linger, H., et al. Constructing the Infrastructure for the Knowledge Economy. Springer, Boston, MA. https://doi.org/10.1007/978-1-4757-4852-9_17
Download citation
DOI: https://doi.org/10.1007/978-1-4757-4852-9_17
Publisher Name: Springer, Boston, MA
Print ISBN: 978-1-4419-3459-8
Online ISBN: 978-1-4757-4852-9
eBook Packages: Springer Book Archive