Contract-First Design: Difference between revisions

From Open Source Ecology
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
=About=
http://www.scrum-breakfast.com/2013/06/xm-principle-4-contract-first-design.html
http://www.scrum-breakfast.com/2013/06/xm-principle-4-contract-first-design.html


Line 9: Line 11:
*Leave room to grow, i.e. over engineer these interfaces, because changing these fundamental contracts may be expensive.
*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.
=Links=
=Links=
*[[Contract-First Manufacturing]]
*[[Contract-First Manufacturing]]

Revision as of 15:02, 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.

Links