By Gabrielle Button at November 09 2018 11:12:45
In mathematics, method of solving a problem by repeatedly using a simpler computational method. A basic example is the process of long division in arithmetic. The term algorithm is now applied to many kinds of problem solving that employ a mechanical sequence of steps, as in setting up a computer program. The sequence may be displayed in the form of a flowchart in order to make it easier to follow. As with algorithms used in arithmetic, algorithms for computers can range from simple to highly complex.
In the last few years a lot has been written about Business Process Management, and about technologies supporting it such as BPMS, SOAP and Web Services. Most of these theories, tools and techniques refer to processes of a highly structured nature. Typically, BPM theorists and practitioners have focused on highly structured processes, like back-office processes of industrial or administrative nature. These processes are highly standardized and repeatable, produce a consistent output and are likely to be automated in part or end-to-end (STP).
All process instances are executed in a very similar way and it is easy to draw a flowchart detailing the sequence in which tasks are executed. It is also possible to formalize the business rules that guide decisions, normally based on the evaluation of some process variables. But recently other kinds of processes have caught the attention of process management specialists. They are known as knowledge processes, or knowledge-based processes. Knowledge processes can be defined as "high added value processes in which the achievement of goals is highly dependent on the skills, knowledge and experience of the people carrying them out". Some examples could be management, R&D, or new product development processes.
In all cases, however, the task that the algorithm is to accomplish must be definable. That is, the definition may involve mathematical or logic terms or a compilation of data or written instructions, but the task itself must be one that can be stated in some way. In terms of ordinary computer usage, this means that algorithms must be programmable, even if the tasks themselves turn out to have no solution. In computational devices with a built-in microcomputer logic, this logic is a form of algorithm. As computers increase in complexity, more and more software-program algorithms are taking the form of what is called hard software.