Research and Practice
In my career, I have been doing research in both academic and industrial settings, experiencing both positive and…
This short and easy read provides an informal introduction to design-based research and critically explores the importance of research in practice. While it talks about the use of sketching to improve the designing of systems, it seems to lack details.
Here are three excerpts of what I liked in the book (as they apply very well to software engineering discipline).
- The development of theoretical constructs and standards without their grounding in a concrete design often leads to a range of problems, as shown in Henning’s discussion about the reasons for the decline of CORBA. Henning concluded that standards consortia must ensure they standardize only existing best practices and that no standard should be approved without a reference implementation and without having been used to implement a few projects of realistic complexity.
- A domain theory is the generalization of a problem analysis. A domain theory might be about users of interactive systems and how they learn to use and interact with systems, or about the context of system usage and how it influences the user and interaction. A domain theory is a means of understanding the world, not the design solution or procedure.
A design framework is a generalization of the design solution. Design frameworks describe the characteristics that a design solution should have to achieve a particular set of goals in a particular context. In other words, a design framework represents a collection of coherent design guidelines for a particular class of design. Design patterns and software architectures are prominent examples of this class of generalization.
A design methodology is a generalization of a design procedure. In contrast to design frameworks, a design methodology provides guidelines for the design process rather than the product. In general, a design methodology describes a process for producing a class of design solutions, the types of expertise required, and the roles of people with these types of expertise.
- Toyota’s “nemawashi” principle states that decisions should be implemented rapidly but made slowly, by consensus, and after considering all options.
If you are interested in engineering process, then you might find this book interesting and informative.