Software development refers to a set of computer science activities dedicated to creating, designing, deploying, and supporting software. The software itself is the set of instructions or programs that tell a computer what to do. It is independent of hardware and makes computers programmable.
There are three basic types: System software provides core functions such as operating systems, disk management, utilities, hardware management, and other operational necessities. Programming software gives programmers tools such as text editors, compilers, linkers, debuggers and other tools to create code.