In the last years some organizations have emerged with the aim of creating professional communities around specific disciplines such as Software Development (SEI, ESI, etc...), Project Management (PMI), Business Process Management (BPMI), IT Service Management (ITSMF), etc... One of the objectives of these groups is to develop a body of knowledge that compiles the discipline';s best practices in the form of reference frameworks, methodologies and maturity models. These assets should be considered by any organization interested in knowledge process management.
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.