The four Ps in an undergraduate software engineering course | IEEE Conference Publication | IEEE Xplore