con:cern is a workflow engine based on an extended case handling approach. A process is described as a set of activities with pre- and postconditions. An activity is executed when its preconditions are met. It manipulates the process item, thereby creating postconditions. The process flow is determined at run-time. This approach is superior to the conventional process flow approach, if at least one of the following statements applies: * complex process with exceptions and special cases * execution sequence is dependent on multiple factors * possibility of manual intervention of process flow * content-based dependence amongst activities * strong requirements to modularity * strong requirements to flexibility * loose process coupling Interestingly, processes often turn out to be more complex than initially anticipated. con:cern’s flexibility allows to restrict yourself to implementing the normal process flow. Special cases and exceptions can be manually dealt with at run-time, or can be gradually retrofitted. when you can break systems down to pre conditions, post conditions, transfer functions, and the algorithms that implement them you can go a long way towards reliable systems and specs.