Set of rules or commands programmed by humans for a computer to process input data and generate output.