50 years of software: key principles for quality | IEEE Journals & Magazine | IEEE Xplore