Component-Based Software Engineering Introduction to Java Beans Paul Krause and Sotiris Moschoyiannis.