Abstract: Design patterns provide reusable solutions to recurring software design problems. Since their introduction by the Gang of Four in 1994, identifying these patterns in object-oriented programs ...