HLD VS. LOW-LEVEL ARCHITECTURE : UNDERSTANDING THE MAIN CONTRASTS