The Object Constraint Language: Getting Your Models Ready for MDA (2nd Edition)