Computer science is, of course, the science of studying computers. It is the study of computation and information processing, involving hardware, software, and even mathematics. More specifically, it is the systematic study of computing systems and the computations that go behind making the computer function. Computer scientists need to know computing systems and methods; how to design computer programs, including the use of algorithms, programming languages, and other tools; and how software and hardware work together. They also need to understand the analysis and verification of the input and output.