Component Software: Beyond Object-Oriented Programming - Szyperski (Clemens); Gruntz (Dominik); Murer (Step
23