A New Role-Based Paradigm for specifying collaborating objects The essence of object orientation is that networks of collaborating objects work together to achieve a common goal. The common sense of object oriented programming should reflect this essence with code that specifies how the objects collaborate. Our industry has, unfortunately, chosen differently and code is commonly written in terms o