7 steps I usually do before I involve in a complex feature implementat