Subscribe to MentalFloss Minutes        RSS Feed

Two Pronged Design

Icon Leave Comment
Sometimes you have a project to complete that has a clear implementation strategy, and requires very little design, but most of the time you have multiple related features of varying difficulty.

In such cases, an approach I've found that works fairly well is to design from both ends at the same time. You pick what you think to be the easiest and hardest features to implement, and then construct a design independent of the two.

Since they relate, they will eventually meet up in the design, but what I've found is that the difficult feature meeting up with the easier feature gives rise to much more robust data structures capable of handling the easier features, but going the other way requires a ton of backtracking and modifications to accommodate the more difficult feature once you reach it from the easy feature.

So, you might ask why even design from the easy feature first. There's nothing to say that by the time you get to the more difficult feature that you can't already handle it, and in such cases, it is probably better to have worked off of the easier feature first because you would have kept the design simple the whole way through.

At any rate, designing from both directions simultaneously gives you perspective on what is necessary vs nice-to-have, and we like pruning out nice-to-haves when we can.

0 Comments On This Entry


May 2022

151617181920 21


    Recent Entries

    Recent Comments

    Search My Blog

    4 user(s) viewing

    4 Guests
    0 member(s)
    0 anonymous member(s)