Set-based development
Lean software development
LSD의 원칙 중 하나인 Amplify learning의 도구.
Set-based vs Point-based:
Point-based scheduling:
- A: We need to meet.
- B: My best time is 10. Can you make it?
- A: No, I can’t. How about 14?
- B: Uh, already booked. Can we meet at 15?
- A: No, 15 is bad. 21? …
Set-based scheduling:
- A: I can meet 10-13 or 15-17.
- B: Let’s meet 12-13. …
In Set-based development, communication is about constraints, not choices. This turns out to be a very powerful form of communication. requiring significantly less data to convey far more information. In addition, talking about constraints instead of choices defers making choices until they have to be made, that is, until the Last responsible moment, which we discuss in Chapter 3 - Decide as late as possible. —p38,39
Set-based software development:
Set-based technology selection:
A friend from a company that does enterprise applications told us how he made a critical decision:
We had to choose a technical platform for a system. However, it was not clear which of the three available options was going to be the winner, let alone meet our needs. So we started developing on all three. This required the underlying development to be a bit mroe general than otherwise, but it turned out to be quite robust because of that. It was really not necessary to decide on a platform until quite near to the end of the project, and by that time, the correct choice was pretty obvious, but it was not the one we would have made in the eginning. —p43