An inverted computing curriculum: preparing graduates to build quality systems | IEEE Conference Publication | IEEE Xplore