Index data structure | Mess around software system design