A process is a naturally occurring or designed sequence of operations or events, possibly taking up time, space, expertise or other resource, which produces some outcome. A process may be identified by the changes it creates in the properties of one or more objects under its influence. Compare: project. See also: process management, process theory, and Category:Nature.
A process may be categorized as singular, recurrent, or periodic. A singular process would be one which occurs only once. Few processes in nature can be considered singular. Most processes found in nature are recurrent, or repeat more than once. Recurring processes which repeat at a constant rate are considered periodic. The more periodic a process is the more useful it is as the basis of a clock. Below are a few specific examples of processes. *The Bessemer process is a way of producing steel. *The process of mining extracts ore. *Evolution is a natural process which explains the origin of species. (generally assumed to be an example of a recurrent process) *The creation of the universe by God would be an example of a divine process. (generally assumed to be a singular process) *Process music *Civic governance and conflict resolution *Error correction in the information processing of a stream of data. *Protein biosynthesis
In philosophy and systems theory, basic processes, or logical homologies as they were termed by Ludwig von Bertalanffy, are unifying principles which operate in many different systemic contexts. For example, feedback, the principle which figures prominently in the science of cybernetics. Natural and industrial processes utilize basic processes such as feedback.
Computing has many concepts of process.
In computing, a computer process is a running instance of a program, including all variables and other states. A multitasking operating system switches between processes to give the appearance of simultaneous execution, though in fact, in general, only one process can be executing per CPU core. Some new processors, such as Intel's Pentium 4 with Hyperthreading capability, can actually execute more than one process at a time.
A software development process is a sequence of steps that practitioners and managers take to create software. The steps usually include requirements analysis, programming, testing, and other steps. Different processes mix the steps together in different ways, and assign responsibility to people in different ways. The CMM is a meta-process that defines rigid goals up front, and emphasizes scientific management. Some dislike its emphasis on paperwork. Agile processes take the opposite approach, making things flexible.