Recently, everybody seems to be talking about “process improvement,” “process design,“ “process maturity, “ and so on. But what IS a process? The term has a similar depth and ambiguity as to the idea of an “object.” The ISO 9000:2000 standard defines a process as “a set of interrelated or interacting activities which transform inputs into outputs.” For an IT specialist, it still appears unclear: what is “interrelation” and how do activities “interact?” Why would one deal with “processes” at all? Does that concern our project?
It sounds like we should handle this issue with caution. Many attempts to standardize software project processes ended up in massive folders in locked cabinets – and many of us surely have bad memories of that. The term “process” alone frequently induces the fear of everybody soon being annoyed with excessive (and useless) formalities, complicated workflow definitions, and generally annoying and wasteful overhead.
A computer scientist may feel tempted to think of processes as if they were UML activity diagrams with object flows. In this context, the world consists of algorithms and data structures; they just need to be modeled: algorithms as activities, results, and inputs as data. However, it doesn’t answer the question about the general purpose of the „process.”
We prefer viewing processes pragmatically. As process consultants, we work with processes in the context of commercial organizations. Thus, processes may be considered to be parts of the value-added chain. It seems only logical since business enterprises have commercial goals.
From this point of view, processes would be just chains of value-adding activities on the way to create a positive cash flow for the organization as a whole. On each stage, the aim is to „improve” the entire value-added chain. Besides, we should be careful when using certain words: the term „chain“ suggests that a process resembles a deterministic-linear sequence. However, from our experience, we can tell that this is not always the case because decisions, parallelisms, and other characteristics lead to bypasses and shortcuts.
Thus, a useful definition seems to be as follows: a process is a directed graph consisting of activities, transitions, and work objects. The activities need to work tools and resources to produce new or more valuable results. A goal of a process is to create a product that can be sold at a profit.