3 research outputs found

    Aspect-oriented model-driven code generation approach for improving code reusability and maintainability

    Get PDF
    Software development teams always need methods that can help in producing high-quality software with reduced development effort and delivery time. Model-Driven Engineering (MDE) as well as Aspect-Oriented Software Development (AOSD) techniques help in reducing the delivery time, and also positively contribute to quality of the produced software. Through the use of AOSD techniques in combination with MDE, an integration of excellent abstraction mechanisms of MDE and capabilities of AOSD with regards to modularity and composition of concerns can be perceived, which is expected to enhance the positive effects of both techniques. To this end, different integration approaches have appeared in literature, but aspect-oriented code generation has advantages over the other approaches. Consequently, a number of aspect-oriented code generation approaches have been offered, but all such approaches lack several features mandatory to materialize a workable integration of aspect technologies in the context of MDE. To address these issues, this research was conducted to present an approach for aspect-oriented model-driven code generation, which focuses on elaborating the conceptual relationship between design models and the implementation code, and exploits the same to obtain aspect-oriented code that is more reusable and maintainable. The key outcomes of this research are the elaboration of the conceptual mappings between elements of visual design and constructs of the code, mapping of the visual models to implementation-specific text-based models, and a technique for generation of aspect-oriented code. The applicability of the proposed approach is shown by the use of case studies, whereas the quality of the approach is measured using reusability and maintainability metrics. A comparison of the proposed approach with existing approaches substantiates its efficacy in terms of reusability and maintainability of code, showing an outperformance of other approaches by the proposed approach against 78% of the employed quality metrics

    Engineering security into distributed systems: a survey of methodologies

    Get PDF
    Rapid technological advances in recent years have precipitated a general shift towards software distribution as a central computing paradigm. This has been accompanied by a corresponding increase in the dangers of security breaches, often causing security attributes to become an inhibiting factor for use and adoption. Despite the acknowledged importance of security, especially in the context of open and collaborative environments, there is a growing gap in the survey literature relating to systematic approaches (methodologies) for engineering secure distributed systems. In this paper, we attempt to fill the aforementioned gap by surveying and critically analyzing the state-of-the-art in security methodologies based on some form of abstract modeling (i.e. model-based methodologies) for, or applicable to, distributed systems. Our detailed reviews can be seen as a step towards increasing awareness and appreciation of a range of methodologies, allowing researchers and industry stakeholders to gain a comprehensive view of the field and make informed decisions. Following the comprehensive survey we propose a number of criteria reflecting the characteristics security methodologies should possess to be adopted in real-life industry scenarios, and evaluate each methodology accordingly. Our results highlight a number of areas for improvement, help to qualify adoption risks, and indicate future research directions.Anton V. Uzunov, Eduardo B. Fernandez, Katrina Falkne

    Architectural Alignment of Access Control Requirements Extracted from Business Processes

    Get PDF
    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: 1) 1) Identifikation und Schutz von kritischen und schĂŒtzenswerten Daten und Assets. 2) 2) EinfĂŒhrung einer organisationsweiten IT-Sicherheit zum Schutz vor cyberkriminellen Attacken. 3) 3) 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: I)\textbf{I)} Ein Ansatz zur automatisierten Extraktion von geschĂ€ftsseitigen Zugriffskontrollanforderungen aus GeschĂ€ftsprozessen mit anschließender Generierung eines initialen Rollenmodells fĂŒr RBAC. II)\textbf{II)} Ein Ansatz zum automatisierten Erstellen von architekturellen Datenfluss-Bedingungen aus Zugriffskontrollanforderungen zur Identifikation von verbotenen DatenflĂŒssen in Services von IT-Systemen der EAA. III)\textbf{III)} Eine Prozessmodell fĂŒr Unternehmen ĂŒber die Einsatzmöglichkeiten der AnsĂ€tze innerhalb verschiedener Evolutionsszenarien. IV)\textbf{IV)} 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: ∙\bullet QualitĂ€t der generierten Zugriffsberechtigungen. ∙\bullet QualitĂ€t der Identifikation von fehlerhaften DatenflĂŒssen in Services der EAA. ∙\bullet VollstĂ€ndigkeit und Korrektheit des generierten Modells zur Nachverfolgbarkeit von Zugriffskontrollanforderungen ĂŒber Modelle hinweg. ∙\bullet 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
    corecore