Smart Program Design Through a Common Information Model. (January 2015)