HLD VS. LOW-LEVEL DESIGN : RECOGNIZING THE KEY DIFFERENCES