Foundations for Architecting Data Solutions