modular design pitfalls