Has object oriented design delivered on
its promises? Are applications that are designed using object
oriented techniques really more robust, more maintainable, more
reusable? Does the use of the object oriented techniques really
increase the overall productivity of engineers? Is C++ a valid
language for implementing an object oriented design?