HLD VS. LOW-LEVEL ARCHITECTURE : KNOWING THE CRUCIAL VARIATIONS