Data Structures for a Generic Software System Using the Composite Design Pattern | AMiner