A set of computer science activities that are dedicated to the process of creating, designing, deploying, and supporting software.