Models of designing: understanding software engineering education from the bottom up | IEEE Conference Publication | IEEE Xplore