Contract-First Design: Difference between revisions
No edit summary |
|||
Line 13: | Line 13: | ||
=Challenge= | =Challenge= | ||
'''Challenge: emergence.''' Some interfaces may not be recognized. That is, it may not be recognized that a specific interface exists or is needed. Thus, interface design may be an iterative process within the design process. | '''Challenge: emergence.''' Some interfaces may not be recognized. That is, it may not be recognized that a specific interface exists or is needed. Thus, interface design may be an iterative process within the design process. | ||
Indeed, at the limit of specificity of interface design - the actual design emerges. When an interface is designed in practice, the result is a 'complete design.' If we start with the 'complete design' - then interfaces can be extracted, and documented. | |||
Thus, the interface design and design-proper design processes can be highly iterative. | |||
=Links= | =Links= | ||
*[[Contract-First Manufacturing]] | *[[Contract-First Manufacturing]] |
Revision as of 15:04, 1 June 2022
About
http://www.scrum-breakfast.com/2013/06/xm-principle-4-contract-first-design.html
This means design the interface between modules first - not the modules themselves.
When designing a solution:
- Design the interfaces based on outside parameters, e.g. load factors, or communication and power requirements.
- Only architect the connections up front, not the individual components.
- Leave room to grow, i.e. over engineer these interfaces, because changing these fundamental contracts may be expensive.
Challenge
Challenge: emergence. Some interfaces may not be recognized. That is, it may not be recognized that a specific interface exists or is needed. Thus, interface design may be an iterative process within the design process.
Indeed, at the limit of specificity of interface design - the actual design emerges. When an interface is designed in practice, the result is a 'complete design.' If we start with the 'complete design' - then interfaces can be extracted, and documented.
Thus, the interface design and design-proper design processes can be highly iterative.