overview of additional design patterns 2631909