The CORAS Language – why it is designed the way it is

CORAS1 [6] is an approach to risk analysis based on the ISO 31000 international standard on risk management [4]. The approach is model-driven in the sense that graphical models are actively used throughout the whole risk analysis process to support the various analysis tasks and activities, and to document the results. It is defensive, which means that the risk analysis is concerned with protecting existing assets, rather than balancing potential gain against risk of investment loss (as, for example, within gambling or stock trading). It is asset-driven in the sense that the assets to be defended and protected are identified during the very initial phases of the process; all subsequent tasks, such as risk identification and risk treatment, are driven by these assets to ensure that the analysis focuses on what the risk analysis should help to defend. CORAS is a self-contained approach to risk analysis in the sense that it comes with all guidelines, techniques and tool-support that are needed throughout the whole process. In particular, CORAS consists of the three tightly interwoven artifacts of a language, a tool and a method. The tool supports the CORAS language, and hence all steps of the method. The method is divided into eight steps with clearly defined objectives. Each step is decomposed into specific analysis tasks supported by practical guidelines for how to conduct the tasks in practice using the tool and the language. Clearly, when developing any such approach to risk analysis, it is necessary to make a number of design choices. The choices are obviously determined by the kind of approach we aim for, and what we wish the users of the approach should be able to accomplish. At the same time, different objectives may pull in different directions and therefore need to be balanced. In this paper we present the most important features of the CORAS language and motivate some of the major design choices we did. More precisely, in Section 2 we give an overview of the language and the different kinds of diagrams that are supported. In Section 3 we