This is a really interesting read, and well worth your time if you're interested in interactive, iterative design processes.
http://worrydream.com/LadderOfAbstraction/
When reading this, it occurred to me that this kind of design process could be really useful for designing automated software solutions for the kinds of problems that we face in FRC every build season.
Here's a challenge problem for the FIRST community then -- how can we make these kind of iterative design techniques easy to do for Robotics problems like that which we deal with every year?
I think the first step is software that contains interactive robot simulators like
PyFRC,
Gazebo,
CCRE, or
frc-java-simulator. But we can do better, perhaps some interactive toolkit or more iterative-friendly simulation capabilities.