Non-Functional Requirements in the Context of SOADecember 14, 2011
This article presents new concepts to formalize and apply non-functional requirements (NFR) for business processes in the context of Service-Oriented Architectures (SOA). Today, popular languages for modeling business processes do not support the specification of NFRs in a systematic manner. However, there is a strong demand to explicitly address such requirements when designing and deploying software systems.
This articles presents an extension for BPMN (Business Process Model and Notation) towards the modeling of NFRs. A key feature is the tool independent representation of NFRs, which will be achieved by applying the widely used WS-Policy standard. Our approach also covers the mapping of the specified NFRs to the technical level represented by BPEL (Business Process Execution Language). For the monitoring of NFRs we exploit techniques from Complex Event Processing (CEP). A key characteristic of our solution is its coherence: from NFRs modeling at design level to their technical enforcement and dynamic validation during execution. The feasibility of our approach has been demonstrated by a proof of concept implementation based on NetBeans, Glassfish ESB, IEP as CEP implementation, and the BPEL Service Engine.