Responsibility-driven design: Difference between revisions

Content deleted Content added
Psvaidya (talk | contribs)
m Building blocks: Minor design and spelling changes
Psvaidya (talk | contribs)
m Objects: Minor structural changes
Line 34:
 
=== Objects===
Objects are described as things that have machinelikemachine-like behaviors that can be plugged together to work in concert. These objects play well-defined roles and encapsulate scripted responses and information.<ref name="ObjectDesign-page3"/>
 
* Object Neighborhoods : Another term for subsystem.<ref name="ObjectDesign-page17">{{harvnb |Wirfs-Brock|McKean|2002| pp=17 }}</ref> It is a logical grouping of collaborators.<ref name="ObjectDesign-page17"/>
* Responsibilities : A responsibility is an obligation to perform a task or know information.<ref name="ObjectDesign-page3">{{harvnb |Wirfs-Brock|McKean|2002| pp=3 }}</ref> These are further categorized according to their usage scenario.
** Public Responsibilities : Public responsibilities are the responsibilities an object offers as services to others and the information it provides to others.<ref name="ObjectDesign-page126">{{harvnb |Wirfs-Brock|McKean|2002| pp=126 }}</ref>
** Private Responsibilities : Private responsibilities are the actions an object takes in support of public responsibilities.<ref name="ObjectDesign-page126"/>
** Subresponsibilities : These responsibilities come into existence wheneverSometimes, a large or complicated responsibility is split up into smaller ones called subresponsibilities.<ref name="ObjectDesign-page168">{{harvnb |Wirfs-Brock|McKean|2002| pp=168 }}</ref> They are further categorized bybased on what they do.
*** Subordinate Responsibilities : These areinclude the major steps ofin theeach subresponsibility.<ref name="ObjectDesign-page168"/>
*** Sequencing Responsibility Responsibilities: This responsibilityThese refersrefer to the sequencing of the execution of subordinate responsibilities.<ref name="ObjectDesign-page168"/>
 
===Roles===