Higher Order Software—A Methodology for Defining Software | IEEE Journals & Magazine | IEEE Xplore