4 research outputs found
Requirements Engineering of Context-Aware Applications
Context-aware computing envisions a new generation of smart applications that have the ability to perpetually sense the userâs context and use these data to make adaptation decision in response to changes in the userâs context so as to provide timely and personalized services anytime and anywhere. Unlike the traditional distribution systems where the network topology is fixed and wired, context-aware computing systems are mostly based on wireless communication due to the mobility of the network nodes; hence the network topology is not fixed but changes dynamically in an unpredictable manner as nodes join and the leave network, in addition to the fact that wireless communication is unstable. These factors make the design and development of context-aware computing systems much more challenging, as the system requirements change depending on the context of use. The Unified Modelling Language (UML) is a graphical language commonly used to specify, visualize, construct, and document the artefacts of software-intensive systems. However, UML is an all-purpose modelling language and does not have notations to distinguish context-awareness requirements from other system requirements. This is critical for the specification, visualization, construction and documentation of context-aware computing systems because context-awareness requirements are highly important in these systems. This thesis proposes an extension of UML diagrams to cater for the specification, visualization, construction and documentation of context-aware computing systems where new notations are introduced to model context-awareness requirements distinctively from other system requirements. The contributions of this work can be summarized as follows: (i) A context-aware use case diagram is a new notion which merges into a single diagram the traditional use case diagram (that describes the functions of an application) and the use context diagram, which specifies the context information upon which the behaviours of these functions depend. (ii) A Novel notion known as a context-aware activity diagram is presented, which extends the traditional UML activity diagrams to enable the representation of context objects, context constraints and adaptation activities. Context constraints express conditions upon context object attributes that trigger adaptation activities; adaptation activities are activities that must be performed in response to specific changes in the systemâs context. (iii) A novel notion known as the context-aware class diagram is presented, which extends the traditional UML class diagrams to enable the representation of context information that affect the behaviours of a class. A new relationship, called utilisation, between a UML class and a context class is used to model context objects; meaning that the
behaviours of the UML class depend upon the context information represented by the context class. Hence a context-aware class diagram is a rich and expressive language that distinctively depicts both the structure of classes and that of the contexts upon which they depend. The pragmatics of the proposed approach are demonstrated using two real-world case studies
Enhancement of Use Case Diagram to Capture Authorization Requirements
Security requirements needs to be integrated into the earliest stages of the software development life cycle, and propagated throughout its various phases. Therefore, it is beneficial to have secure development integrated with industry standard methodologies and notations. One of the tool often used in capturing software requirements is use case. Although use case diagrams visually represent the behavioral requirements of a proposed software system, they are not sufficient to represent existing access control policies. At best, use case diagram shows some access control by stating the roles that actors are permitted to invoke. This paper enhanced previous attempts by several scientists to enrich the use case diagram in order to capture more access control polices. This introduction fell in the effort to provide more tools and notations to think and embed security requirements in the early stage of the life cycle
Architectural Alignment of Access Control Requirements Extracted from Business Processes
GeschĂ€ftsprozesse und IT-Systeme sind einer stĂ€ndigen Evolution unterworfen und beeinflussen sich in hohem MaĂe gegenseitig. Dies fĂŒhrt zu der Herausforderung, Sicherheitsaspekte innerhalb von GeschĂ€ftsprozessen und Enterprise Application Architectures (EAAs) in Einklang zu bringen. Im Besonderen gilt dies fĂŒr Zugriffskontrollanforderungen, welche sowohl in der IT-Sicherheit als auch im Datenschutz einen hohen Stellenwert haben. Die folgenden drei Ziele der GeschĂ€ftsebene verdeutlichen die Bedeutung von Zugriffskontrollanforderungen:
Identifikation und Schutz von kritischen und schĂŒtzenswerten Daten und Assets.
EinfĂŒhrung einer organisationsweiten IT-Sicherheit zum Schutz vor cyberkriminellen Attacken.
Einhaltung der zunehmenden Flut an Gesetzen, welche die IT-Sicherheit und den Datenschutz betreffen.
Alle drei Ziele sind in einem hohen MaĂ mit Zugriffskontrollanforderungen auf Seiten der GeschĂ€ftsebene verbunden. Aufgrund der FĂŒlle und KomplexitĂ€t stellt die vollstĂ€ndige und korrekte Umsetzung dieser Zugriffskontrollanforderungen eine Herausforderung fĂŒr die IT dar. HierfĂŒr muss das Wissen von der GeschĂ€ftsebene hin zur IT ĂŒbertragen werden. Die unterschiedlichen Terminologien innerhalb der FachdomĂ€nen erschweren diesen Prozess. ZusĂ€tzlich beeinflussen die GröĂe von Unternehmen, die KomplexitĂ€t von EAAs sowie die Verflechtung zwischen EAAs und GeschĂ€ftsprozessen die FehleranfĂ€lligkeit im Entwurfsprozess von Zugriffsberechtigungen und EAAs. Dieser Zusammenhang fĂŒhrt zu einer Diskrepanz zwischen ihnen und den GeschĂ€ftsprozessen und wird durch den Umstand der immer wiederkehrenden Anpassungen aufgrund von Evolutionen der GeschĂ€ftsprozesse und IT-Systeme verstĂ€rkt.
Bisherige Arbeiten, die auf Erweiterungen von Modellierungssprachen setzen, fordern einen hohen Aufwand von Unternehmen, um vorhandene Modelle zu erweitern und die Erweiterungen zu pflegen. Andere Arbeiten setzen auf manuelle Prozesse. Diese erfordern viel Aufwand, skalieren nicht und sind bei komplexen Systemen fehleranfÀllig.
Ziel meiner Arbeit ist es, zu untersuchen, wie Zugriffskontrollanforderungen zwischen der GeschĂ€ftsebene und der IT mit möglichst geringem Mehraufwand fĂŒr Unternehmen angeglichen werden können. Im Speziellen erforsche ich, wie Zugriffskontrollanforderungen der GeschĂ€ftsebene, extrahiert aus GeschĂ€ftsprozessen, automatisiert in Zugriffsberechtigungen fĂŒr Systeme der rollenbasierten Zugriffskontrolle (RBAC) ĂŒberfĂŒhrt werden können und wie die EAA zur Entwurfszeit auf die Einhaltung der extrahierten Zugriffskontrollanforderungen ĂŒberprĂŒft werden kann. Hierdurch werden Sicherheitsexperten beim Entwerfen von Zugriffsberechtigungen fĂŒr RBAC Systeme unterstĂŒtzt und die KomplexitĂ€t verringert. Weiterhin werden Enterprise-Architekten in die Lage versetzt, die EAA zur Entwurfszeit auf DatenflĂŒsse von Services zu untersuchen, welche gegen die geschĂ€ftsseitige Zugriffskontrollanforderungen verstoĂen und diese Fehler zu beheben.
Die KernbeitrÀge meiner Arbeit lassen sich wie folgt zusammenfassen:
Ein Ansatz zur automatisierten Extraktion von geschĂ€ftsseitigen Zugriffskontrollanforderungen aus GeschĂ€ftsprozessen mit anschlieĂender Generierung eines initialen Rollenmodells fĂŒr RBAC.
Ein Ansatz zum automatisierten Erstellen von architekturellen Datenfluss-Bedingungen aus Zugriffskontrollanforderungen zur Identifikation von verbotenen DatenflĂŒssen in Services von IT-Systemen der EAA.
Eine Prozessmodell fĂŒr Unternehmen ĂŒber die Einsatzmöglichkeiten der AnsĂ€tze innerhalb verschiedener Evolutionsszenarien.
Ein Modell zur VerknĂŒpfung relevanter Elemente aus GeschĂ€ftsprozessen, RBAC und EAAs im Hinblick auf die Zugriffskontrolle. Dieses wird automatisiert durch die AnsĂ€tze erstellt und dient unter anderem zur Dokumentation von Entwurfsentscheidungen, zur Verbesserung des VerstĂ€ndnisses von Modellen aus anderen DomĂ€nen und zur UnterstĂŒtzung des Enterprise-Architekten bei der Auflösung von Fehlern innerhalb der EAA.
Die Anwendbarkeit der AnsĂ€tze wurden in zwei Fallstudien untersucht. Die erste Studie ist eine Real-Welt-Studie, entstanden durch eine Kooperation mit einer staatlichen Kunsthalle, welche ihre IT-Systeme ĂŒberarbeitet. Eine weitere Fallstudie wurde auf Basis von Common Component Modeling Example (CoCoME) durchgefĂŒhrt. CoCoME ist eine durch die Wissenschaftsgemeinde entwickelte Fallstudie einer realistischen GroĂmarkt-Handelskette, welche speziell fĂŒr die Erforschung von Software-Modellierung entwickelt wurde und um Evolutinsszenarien ergĂ€nzt wurde. Aufgrund verschiedener gesetzlicher Regularien an die IT-Sicherheit und den Datenschutz sowie dem Fluss von sensiblen Daten eignen sich beide Fallstudien fĂŒr die Untersuchung von Zugriffskontrollanforderungen. Beide Fallstudien wurden anhand der Goal Question Metric-Methode durchgefĂŒhrt. Es wurden Validierungsziele definiert. Aus diesen wurden systematisch wissenschaftliche Fragen abgleitet, fĂŒr welche anschlieĂend Metriken aufgestellt wurden, um sie zu untersuchen. Die folgenden Aspekte wurden untersucht:
QualitÀt der generierten Zugriffsberechtigungen.
QualitĂ€t der Identifikation von fehlerhaften DatenflĂŒssen in Services der EAA.
VollstĂ€ndigkeit und Korrektheit des generierten Modells zur Nachverfolgbarkeit von Zugriffskontrollanforderungen ĂŒber Modelle hinweg.
Eignung der AnsÀtze in Evolutionsszenarien von GeschÀftsprozessen und EAAs.
Am Ende dieser Arbeit wird ein Ausblick gegeben, wie sich die vorgestellten AnsĂ€tze dieser Arbeit erweitern lassen. Dabei wird unter anderem darauf eingegangen, wie das Modell zur VerknĂŒpfung relevanter Elemente aus GeschĂ€ftsprozessen, RBAC und EAAs im Hinblick auf die Zugriffskontrolle, um Elemente aus weiteren Modellen der IT und der GeschĂ€ftsebene, erweitert werden kann. Weiterhin wird erörtert wie die AnsĂ€tze der Arbeit mit zusĂ€tzlichen Eingabeinformationen angereichert werden können und wie die extrahierten Zugriffskontrollanforderungen in weiteren DomĂ€nenmodellen der IT und der GeschĂ€ftsebene eingesetzt werden können