Certain software systems have to meet the requirements of not to threaten human lives and not to cause financial or environmental damage. Examples for these so-called safety-critical systems can be controller devices of trains, airplanes or nuclear power stations.
Due to their complexity the traditional code-based development of these systems seems to be replaced by a model-driven approach. With this process starting from high-level models and through their refinement the system can be designed to the smallest details. The advantages of this method are for example the automatic generation of souce code, test cases, documentation and also that with model verification errors can be detected in the earlier phases of the development.
These complex systems are designed collaboratively by developer teams of one or more companies. This situation raises the question of security of model elements. They can be confidential or intellectual property of a company and therefore be accessible only by users in certain positions. Moreover, systems can have critical parts which should be modifiable only by developers with specialized knowledge.
A collaboration framework was built within the confines of the international research project of MONDO. It uses rule-based access control where read and write permissions can be defined in fine-grained rules for each user. The model elements which rules refer can be accessed through graph queries.
In my work firstly I defined a textual concrete syntax for writing access control rules. Then I implemented a method that can evaluate such rules over EMF models and calculate the ones which will be enforced. The algorithm was tested on one of MONDO project's case studies of a windturbine model. Finally, the access control language and the evaluation component were integrated into the collaboration framework.