Title: Reusable software components through parameterized modules and data abstraction