Discipline integrating computer science and electrical engineering to develop computer hardware and software