Using Software Engineering Methodologies to Port a Scientific Code to GPUs: Experiences and Lessons Learned | IEEE Conference Publication | IEEE Xplore