That problem is
the complexity of redesigning software.
When thinking
about design, programmers prefer diagrams that abstract from the details in
source code.
However, current
tools provide diagrams like the one on the left that quickly become as
complicated as the program they’re trying to depict.
The programmer
can try to filter out what she doesn’t want to see, but usually it’s easier
for her pick up a pen and paper and redesign by drawing only the parts she
wants to see (like the diagram on the right).
Unfortunately,
the computer can’t help the programmer when she redesigns with pen and paper
– and I believe that it should.