In AceProject 4.7, we introduce non-mandatory dependencies. Those are dependencies that don’t require the predecessor task to be completed before the successor can start. For example, you don’t need to be done buying presents before you can start wrapping the ones you’ve got already.

Graphically speaking, we needed an icon that people would click to switch the dependency from mandatory to non-mandatory.

And that’s where things get interesting

How do you symbolize mandatory? Our graphic designer, Michel,  and I looked up on Google images and in icon banks, we could not find a consensus, a standard symbol that would mean mandatory. We didn’t want to invent something. If you need to explain your icon, you’ve defeated the purpose of using an icon.

This is when Michel had a great idea: why not use the line that illustrated the dependency between tasks so show whether it’s mandatory? A dotted line () would mean non-mandatory, and a solid line () would mean mandatory.

The solution was simple, but the road to reach it was not.

This is the joy of graphic design.