About: Responsibility-driven design is a research topic. Over the lifetime, 8 publications have been published within this topic receiving 65 citations.
TL;DR: The results clearly indicate that the “good” RD design requires significantly more change effort for the given set of changes than the alternative “bad” MF design, and it is found that structural attributes change less for the RD design than for theMF design, which may be less prone to structural deterioration.
Abstract: An important motivation for the object-oriented paradigm is to improve the changeability of the software, thereby reducing lifetime development costs. This paper describes the results of controlled experiments assessing the changeability of a given responsibility-driven (RD) design versus an alternative control-oriented “mainframe” (MF) design. According to Coad and Yourdon's OO design quality principles, the RD design represents a “good” design. The MF design represents a “bad” design. To investigate which of the designs have better changeability, we conducted two controlled experiments—a pilot experiment and a main experiment. In both experiments, the subjects were divided in two groups in which the individuals designed, coded and tested several identical changes on one of the two design alternatives.
The results clearly indicate that the “good” RD design requires significantly more change effort for the given set of changes than the alternative “bad” MF design. This difference in change effort is primarily due to the difference in effort required to understand how to solve the change tasks. Consequently, reducing class-level coupling and increasing class cohesion may actually increase the cognitive complexity of a design. With regards to correctness and learning curve, we found no significant differences between the twobdesigns. However, we found that structural attributes change less for the RD design than for the MF design. Thus, the RD design may be less prone to structural deterioration. A challenging issue raised in this paper is therefore the tradeoff between change effort and structural stability.
TL;DR: The XDD family of approaches- in particular, test-driven, responsibility driven, and domain-driven design and development set the architect's focus on what to design, identifying usable architecture concepts more naturally.
Abstract: Many software architectures suffer from unnecessary, accidental complexity: arbitrary flexibility for its own sake, unnecessary features, design choices whose complexity is out of proportion for the problems and requirements at hand, or a focus on reusability rather than usability.The XDD family of approaches- in particular, test-driven, responsibility driven, and domain-driven design and development set the architect's focus on what to design, identifying usable architecture concepts more naturally.
TL;DR: It is argued that most books make an implicit choice of perspective with the unfortunate effect that students leave the authors' courses with limited design abilities, and teachers should be aware of the different perspectives.
Abstract: There are an increasing number of books published on the important topics of "object-oriented programming" and "object-oriented design" for use in education However, object-orientation can be viewed from a number of different perspectives---each perspective having its benefits and liabilities A perspective has a strong influence on the kind of designs students can and will produce, the kind of domains that are easy or difficult to analyze, and the kind of frame of reference in which design techniques are understood and applied In this paper we argue that most books make an implicit choice of perspective with the unfortunate effect that our students leave our courses with limited design abilities We present a coarse-grained classification, discuss implications of perspective in a teaching context, and illustrate consequences using a small case study Our main point is that teachers should be aware of the different perspectives, and that all perspectives are important for students to achieve high quality designs
TL;DR: In this paper, the proposed new method called Document Responsibility Collaboration puts the concept of documents at the center, where documents are meta-models of classes in terms of programming, and at the same time, they areMeta- models of relationships in termsof permanence.
Abstract: UML is highly preferred for design in current software development approaches. However, the conceptual gap between entities in business processes and classes in UML designs is not small. To reduce this gap, this paper proposes using documents that are vital to every business. The proposed new method called Document Responsibility Collaboration puts the concept of documents at the center. In the proposed method, documents are meta-models of classes in terms of programming, and at the same time, they are meta-models of relationships in terms of permanence. The proposed Document Responsibility Collaboration method uses the domain concept in which domains are made up of documents, and a document defined in a domain can work with another document in any domain to fulfill its responsibility. Document Responsibility Collaboration method defines a process, which starts at the transition from analysis to design phase and continues to the code generation phase. An example from the order management domain is provided to validate the recommended method.
TL;DR: Trace Modeler is a specialized tool that helps students understand and apply responsibility-driven design and is presented as a guide for teachers to teach responsible design.
Abstract: We present Trace Modeler, a specialized tool that helps students understand and apply responsibility-driven design.