Separation of Distributed Real-Time Embedded Concerns with Theme/UML
|
|
- Estella Barton
- 5 years ago
- Views:
Transcription
1 Separation of Distributed Real-Time Embedded Concerns with Theme/UML Cormac Driver, Vinny Cahill and Siobhán Clarke Distributed Systems Group School of Computer Science and Statistics Trinity College Dublin Ireland Abstract Model-driven engineering (MDE) addresses platform complexity by abstracting platform-independent models for subsequent transformation to platformspecific models. This facilitates the design of a single system model and the subsequent generation of multiple model transformations targeted towards specific platforms. However, the increasing complexity of distributed real-time embedded (DRE) systems complicates the development of adequate system models by requiring multiple concerns, some of which may be crosscutting, to be modelled. Separation of concerns, a software engineering technique that decomposes systems into distinct features with minimal overlap, can be used to manage complexity. Aspect-oriented software development (AOSD) is an emerging technique to separate crosscutting concerns in software and has been demonstrated to improve modularity and thereby reduce the complexity of software. In this paper 1 we show how Theme/UML, an aspect-oriented design approach, can be used to bet- 1 c 2008 IEEE. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution to servers or lists, or to reuse any copyrighted component of this work in other works must be obtained from the IEEE. This material is presented to ensure timely dissemination of scholarly and technical work. Copyright and all rights therein are retained by authors or by other copyright holders. All persons copying this information are expected to adhere to the terms and constraints invoked by each author s copyright. In most cases, these works may not be reposted without the explicit permission of the copyright holder. Presented at The Fifth International Workshop on Model-Based Methodologies for Pervasive and Embedded Software (MOMPES). c IEEE 2008, Proceedings available at http: //doi.ieeecomputersociety.org/ /mompes ter modularise DRE concerns at the model level. 1 Introduction Model-driven engineering addresses complexity arising from the need to port systems to multiple platforms by abstracting platform-independent models from which platform-specific models and code can be generated. The MDE focus on high-level abstractions and subsequent concrete transformations affords developers a number of benefits including time savings, code quality improvements and enhanced platform migration [6]. Most importantly, MDE enables the development of systems that are correct-by-construction [10]. While MDE can enhance the software development process, the increasing complexity of distributed, realtime embedded systems impacts on the ease with which adequate system models can be created using standard object-oriented modelling techniques. DRE system models are typically required to represent nonfunctional quality of service (QoS) concerns relating to, for example, time and performance, that have systemwide impact [9, 4, 12]. Such concerns are considered crosscutting because they affect the structure and behaviour of functional concerns and cannot be cleanly decomposed. The presence of crosscutting concerns in a system results in the tangling of behaviours that represent distinct concerns and therefore impacts negatively on system complexity. Separation of concerns has long been recognised as a useful way to manage system complexity [5]. However, it has been established that total separation of concerns is not possible with the object-oriented soft- 1
2 ware development paradigm [8]. Aspect-oriented software development (AOSD) extends the modularisation capabilities of the object-oriented paradigm and has demonstrated effectiveness at modularising crosscutting concerns in DRE systems [7, 12, 1]. AOSD works by decomposing systems into modules that each represent a distinct concern and then binding or weaving the modularised concerns together to form a complete system. Theme/UML [3] is an aspect-oriented design approach that extends standard UML. In this paper we introduce Theme/UML and show by means of example how it can modularise concerns at the modelling level, thereby reducing complexity in DRE systems. The remainder of the paper is as follows. Section 2 presents an overview of Theme/UML. Section 3 illustrates how Theme/UML can be used to modularise a timing concern in an in-car driver information system and a memory management concern (discussed outside of any particular application scenario). Finally, Section 4 discusses current work. 2 Theme/UML Theme/UML is part of the broader Theme approach. Theme is an integrated methodology for AOSD that covers the requirements analysis, design and implementation phases of the software development lifecycle [3]. Theme/UML extends standard UML to explicitly support the modularisation and composition of concerns in design. The associated methodology extends existing object-oriented design methods and provides guidance on how to use these extensions. The extensions to the UML include a new type of classifier called a theme and a new type of relationship called a composition relationship. A theme is a package-like structure that encapsulates UML diagrams, e.g., class diagrams and sequence diagrams, that describe the structure and the behaviour of a concern. Themes representing crosscutting concerns are called aspect themes, while those that do not are called base themes. Theme/UML provides means to compose (e.g., merge or override) concepts and behaviours between themes. Of particular relevance to this paper is the merging of behaviour from DRE aspect themes with that in base themes. The behavioural flow in an aspect theme is crosscutting, i.e., it is meant to be inserted in the behavioural flow of other themes. The composition of two flows belonging to different themes is achieved by identifying a trigger method in one theme that defines the actual place, known as the join point, where the other flow should be inserted. Join points from base themes are specified as part of the composition process. This behaviour allows crosscutting non-functional DRE concerns to be modularised and subsequently composed with specific points in the base behaviour of a system. The following section illustrates how Theme/UML can be used to modularise two DRE concerns - timing of system behaviour and memory management. 3 Separating DRE Concerns with Theme/UML This section shows how, using Theme/UML, it is possible to separate non-functional crosscutting concerns from core DRE system behaviour at the modelling level. 3.1 Timing Concern A driver information system (DIS) is an automotive vehicle s display and information centre. A DIS is responsible for providing an interface to various aspects of a vehicle s current operating environment e.g., navigation instructions, collision avoidance warnings, climate control information and stereo and telephone data. Such systems can often be controlled via multiple user interfaces e.g., voice, touch and gesture. DISs are composed of multiple services. Depending on a vehicle s operating context e.g., location and speed, it is desirable to constrain the execution times of certain services in order to favour more important services. For example, in the case that a vehicle is travelling at high speed in the presence of other vehicles, the collision avoidance service should be favoured over services such as the driver s mobile phone or the vehicle s stereo system. An object-oriented design of the execution time monitoring behaviour in this scenario involves scattering and tangling execution monitoring code throughout the system so that the behaviour of each DIS service can be subjected to timing constraints. The execution timing concern is orthogonal to the core behaviour offered by each DIS service and therefore they should be modelled separately. Figure 1 illustrates the design of the DIS using Theme/UML. The design consists of two themes. DriverSystem (on the right-hand side of the figure) is a base theme that represents the core behaviour of the DIS. The base theme contains a number of classes that represent a subset of common DIS services. Each class in the DriverSystem theme contains a method called processevent() that is responsible for coordinating the behaviour of the service represented by the class. 2
3 bind[<{navigation,voicerecognition}.processevent(), 4>, <CollisionAvoidance.processEvent(), 20>] <<theme>> TimedBehaviour Timed t invoketimer(num) canceltimer() Timer run() cancel() <Timed., t> sd op Timed alt [op returns before timer] invoketimer(t) canceltimer() Timer run() cancel() <<theme>> DriverSystem CollisionAvoidance processevent() Navigation processevent() VoiceRecognition processevent() [timer ends before op] x interrupt Figure 1. Separation of the timing concern in the driver information system using Theme/UML 3
4 TimedBehaviour is an aspect theme that is applied to DriverSystem. The aspect theme describes the structure and behaviour of the timing constraints to which the services in the base theme are subjected. The structure is described by two classes, Timed and Timer. Timed contains a trigger method called and timing behaviour to execute before and after the trigger method. Timed uses the services of a timer object which is modelled by the Timer class. Template parameters to a theme (including trigger methods) are illustrated in the top right-hand corner of the theme. The behaviour of the aspect theme is modelled by a sequence diagram. Later in the development process, during composition, templates are replaced by base elements specified in a bind statement in the composition relationship between themes. The actual execution of this real behaviour is captured by prepending do before the template trigger name. In this example, the TimedBehaviour sequence diagram illustrates two alternate behaviours. When the trigger method is invoked the timer is initiated for some period of time. The amount of time can be specified through a further template parameter called t. If the timed method (represented by do ) returns within the specified time period then the timer is cancelled. Alternatively, if the trigger method fails to return within its allotted time then the timer will expire and interrupt the service that is currently executing i.e., the operation that triggered this timing behaviour. The aspect and base themes are associated with each other through the bind tag of the composition relationship, located at the top of Figure 1. The bind tag identifies which methods in the base theme cause the behaviour in the aspect theme to be triggered i.e., which methods replace. The bind relationship specifies that the processevent() method in each class in the base theme triggers the timing concern. Specifically, it specifies that all services apart from collision avoidance are restricted to 4 units of execution time e.g., milliseconds, while the collision avoidance service is favoured with an execution restriction of 20 units of time. 3.2 Memory Management Concern Real-time, embedded systems typically cannot tolerate the unpredictable delays associated with garbage collection. Consequently, programming languages targeting real-time embedded platforms provide techniques for accessing memory that avoid the use of automatic garbage collection. The use of these memory management constructs generally involves manually allocating and deallocating memory as necessary, before and after core system functionality. This results in a situation where non-functional memory management behaviour is tangled with the system s functional behaviour. Memory management can therefore be considered a crosscutting concern and has been previously identified as such [11, 12, 8]. Figure 2 illustrates the Theme/UML design of a memory management concern that can be applied to any system behaviour that requires access to memory. BaseSystem is a base theme that represents a collection of core system behaviours. The theme contains a single module that has one method responsible for executing core system functionality involving manipulation of variables. This method requires the application of memory management behaviour to allocate and deallocate physical memory for its variables. MemoryManagement (on the left-hand side of the figure) is an aspect theme that is bound to the base theme. The aspect theme describes the structure and behaviour of the separated memory management functionality. The theme s structure is defined by the MemMan class which contains methods responsible for the allocation and deallocation of memory. This class also contains a trigger method,, that performs the same function as the trigger method in the timing aspect discussed in Section 3.1 i.e., it is bound to a method in the base theme and triggers the execution of the behaviour in the aspect theme. The template parameters to the aspect theme are shown in the top right-hand corner of the theme and specify that methods in the base theme can map to in the aspect theme. Beneath the MemMan class in the aspect theme is a sequence diagram that models the behaviour of the memory management concern. When the template method is invoked, the alloc() method is executed to allocate memory. When the actual behaviour from the base theme, represented by the do method, has terminated, the dealloc() method is invoked to deallocate the memory. The aspect theme s behaviour terminates when the memory has been deallocated. The base and aspect themes are composed through the composition relationship specified by the bind tag, which is positioned above the base theme in Figure 2. The bind tag illustrates that the sole method in the base theme is composed with the memory management behaviour i.e., method() replaces. In cases where the base theme consists of more than one module with one method i.e., the vast majority of cases, the bind tag could be extended in the same manner as is shown in Figure 1 to specify that the memory management behaviour should also be applied to other methods in the base theme. 4
5 <<theme>> MemoryManagement MemMan alloc() dealloc() <MemMan.> bind[<module.method()>] sd op MemMan alloc() <<theme>> BaseSystem Module method() dealloc() Figure 2. Separation of the memory management concern with Theme/UML 5
6 3.3 Summary The design of the timing and memory management concerns using Theme/UML illustrates that aspectoriented design can better modularise core behaviour by extracting non-functional requirements and encapsulating them in aspect themes. The crosscutting behaviour can then be merged with the core behaviour in base themes as necessary. The parameterisation of the bind relationship illustrates how it is possible to alter the crosscutting behaviour that is applied to the base as appropriate. 4 Current Work Figure 3 depicts an overview of the application development process that the will be facilitated by the new tools we are developing. Theme/UML, along with an accompanying composition model, is used to design well modularised platform-independent models. These models are used to automatically generate platformspecific models (PSM) e.g., C, C++ or Real-Time Java models, by transforming the Theme/UML platformindependent meta-model to a platform-specific metamodel. The PSMs are then automatically transformed to platform-specific code. Our previous work used the Java Emitter Templates (JET), an Eclipse Modelling Framework-based technology, to transform PSMs to executable source code. We are currently investigating alternative approaches to code generation that meet our requirements in terms of transforming models to code for deployment on embedded platforms. The platforms our Theme/UML MDE tool will target include C and C++. 5 Acknowledgements We would like to acknowledge the support of Lero: The Irish Software Engineering Research Centre, funded by Science Foundation Ireland. References Figure 3. Model-driven engineering with Theme/UML We have recently developed tool support for Theme/UML model transformations targeting pervasive computing environments, specifically the J2ME and.net CF platforms [2]. The tool produces platform-specific transformations using the Eclipse Modelling Framework and has been shown to aid separation of concerns during the model-driven development of mobile, context-aware systems. We are currently investigating revisions to this approach with a focus on supporting both the modularisation of DRE concerns at the model level and transformations to embedded platforms. [1] F. Afonso, C. Silva, S. Montenegro, and A. Tavares. Applying aspects to a real-time embedded operating system. In ACP4IS 07: Proceedings of the 6th workshop on Aspects, components, and patterns for infrastructure software, New York, NY, USA, ACM Press. [2] A. Carton, S. Clarke, A. Senart, and V. Cahill. Aspect-Oriented Model-Driven Development for Mobile Context-Aware Computing. In SEPCASE 07: Proceedings of the 1st International Workshop on Software Engineering for Pervasive Computing Applications, Systems, and Environments, Washington, DC, USA, IEEE Computer Society. [3] S. Clarke and E. Baniassad. Aspect-Oriented Analysis and Design: The Theme Approach. Addison-Wesley, 1st edition, March [4] G. Deng, D. C. Schmidt, and A. Gokhale. Addressing crosscutting deployment and configuration concerns of distributed real-time and embedded systems via aspect-oriented & model-driven software development. In ICSE 06: Proceeding of the 28th international conference on Software engineering, pages , New York, NY, USA, ACM Press. [5] E. W. Dijkstra. A Discipline of Programming. Prentice Hall,
7 [6] A. Hovsepyan, S. V. Baelen, B. Vanhooff, W. Joosen, and Y. Berbers. Key Research Challenges for Successfully Applying MDD Within Real-Time Embedded Software Development. In SAMOS 2006: 6th International Workshop on Embedded Computer Systems: Architectures, Modeling, and Simulation, pages 49 58, [7] A. Iqbal and T. Elrad. Modeling Timing Constraints of Real-Time Systems as Crosscutting Concerns. In Proceedings of the 9th International Workshop on Aspect-Oriented Modeling (AOM), [8] G. Kiczales, J. Lamping, A. Menhdhekar, C. Maeda, C. Lopes, J.-M. Loingtier, and J. Irwin. Aspect- Oriented Programming. In M. Akşit and S. Matsuoka, editors, Proceedings European Conference on Object- Oriented Programming, volume 1241, pages , Berlin, Heidelberg, and New York, Springer- Verlag. [9] M. Panahi, T. Harmon, and R. Klefstad. Adaptive Techniques for Minimizing Middleware Memory Footprint for Distributed, Real-Time, Embedded Systems. In Proceedings of the IEEE 18th Annual Workshop on Computer Communications, pages , [10] D. C. Schmidt. Model-Driven Engineering. IEEE Computer, 39(2):25 31, February [11] S. L. Tsang, S. Clarke, and E. Baniassad. An Evaluation of Aspect-Oriented Programming for Java-Based Real-Time Systems Development. In ISORC 2004: 7th IEEE International Symposium on Object-oriented Real-time distributed Computing, pages , Los Alamitos, CA, USA, IEEE Computer Society. [12] M. A. Wehrmeister, E. P. Freitas, C. E. Pereira, and F. R. Wagner. An Aspect-Oriented Approach for Dealing with Non-Functional Requirements in a Model- Driven Development of Distributed Embedded Real- Time Systems. In ISORC 07: Proceedings of the 10th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing, pages , Washington, DC, USA, IEEE Computer Society. 7
Information Hiding and Aspect-Oriented Modeling
Information Hiding and Aspect-Oriented Modeling Wisam Al Abed and Jörg Kienzle School of Computer Science, McGill University Montreal, QC H3A2A7, Canada Wisam.Alabed@mail.mcgill.ca, Joerg.Kienzle@mcgill.ca
More informationImproving Software Modularity using AOP
B Vasundhara 1 & KV Chalapati Rao 2 1 Dept. of Computer Science, AMS School of Informatics, Hyderabad, India 2 CVR College of Engineering, Ibrahimpatnam, India E-mail : vasu_venki@yahoo.com 1, chalapatiraokv@gmail.com
More informationSort-based Refactoring of Crosscutting Concerns to Aspects
Sort-based Refactoring of Crosscutting Concerns to Aspects Robin van der Rijst Delft University of Technology rvdrijst@gmail.com Marius Marin Accenture Marius.Marin@accenture.com Arie van Deursen Delft
More informationAOSD Explained: ASPECT-ORIENTED SYSTEM DEVELOPMENT
Explained: ASPECT-ORIENTED SYSTEM DEVELOPMENT Background & Implications Professor Emeritus Birkbeck College 1 AOSD - Background AOSD - Aspect-Oriented Software Development, AOSD - Aspect-Oriented System
More informationOn the Impact of Aspect-Oriented Programming on Object-Oriented Metrics
On the Impact of Aspect-Oriented Programming on Object-Oriented Metrics Jean-Yves Guyomarc h and Yann-Gaël Guéhéneuc GEODES - Group of Open and Distributed Systems, Experimental Software Engineering Department
More informationAspect-Orientation from Design to Code
Aspect-Orientation from Design to Code Iris Groher Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81739 Munich, Germany groher@informatik.tu-darmstadt.de Thomas Baumgarth Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81739
More informationSERG. Sort-based Refactoring of Crosscutting Concerns to Aspects
Delft University of Technology Software Engineering Research Group Technical Report Series Sort-based Refactoring of Crosscutting Concerns to Aspects Robin van der Rijst, Marius Marin, and Arie van Deursen
More informationUsing Aspects to Make Adaptive Object-Models Adaptable
Using Aspects to Make Adaptive Object-Models Adaptable Ayla Dantas 1, Joseph Yoder 2, Paulo Borba 1, Ralph Johnson 2 1 Software Productivity Group Informatics Center Federal University of Pernambuco Recife,
More informationA Domain-Specific Language for Ubiquitous Healthcare
A Domain-Specific Language for Ubiquitous Healthcare Jennifer Munnelly Siobhán Clarke Trinity College Dublin munnelj, sclarke @cs.tcd.ie Abstract The development of ubiquitous healthcare applications has
More informationImplementing Producers/Consumers Problem Using Aspect-Oriented Framework
Implementing Producers/Consumers Problem Using Aspect-Oriented Framework 1 Computer Science Department School of Science Bangkok University Bangkok, Thailand netipan@iit.edu Paniti Netinant 1, 2 and Tzilla
More informationUsing Aspects to Make Adaptive Object-Models Adaptable
Using Aspects to Make Adaptive Object-Models Adaptable Ayla Dantas 1, Joseph Yoder 2, Paulo Borba, and Ralph Johnson 1 Software Productivity Group Informatics Center Federal University of Pernambuco Recife,
More informationAOSA - Betriebssystemkomponenten und der Aspektmoderatoransatz
AOSA - Betriebssystemkomponenten und der Aspektmoderatoransatz Results obtained by researchers in the aspect-oriented programming are promoting the aim to export these ideas to whole software development
More informationAn Aspect-Based Approach to Modeling Security Concerns
An Aspect-Based Approach to Modeling Security Concerns Geri Georg Agilent Laboratories, Agilent Technologies, Fort Collins, USA geri_georg@agilent.com Robert France, Indrakshi Ray Department of Computer
More informationModel-Driven Theme/UML
Model-Driven Theme/UML Andrew Carton, Cormac Driver, Andrew Jackson, and Siobhán Clarke Distributed Systems Group, Department of Computer Science and Statistics, Trinity College Dublin, Ireland {firstname.lastname}@cs.tcd.ie
More informationModel Driven Development of Context Aware Software Systems
Model Driven Development of Context Aware Software Systems Andrea Sindico University of Rome Tor Vergata Elettronica S.p.A. andrea.sindico@gmail.com Vincenzo Grassi University of Rome Tor Vergata vgrassi@info.uniroma2.it
More informationModularizing Web Services Management with AOP
Modularizing Web Services Management with AOP María Agustina Cibrán, Bart Verheecke { Maria.Cibran, Bart.Verheecke@vub.ac.be System and Software Engineering Lab Vrije Universiteit Brussel 1. Introduction
More informationCormac Driver Lero, Distributed Systems Group Trinity College Dublin, Ireland
Modelling Hardware Verification Concerns Specified in the e Language: An Experience Report Darren Galpin Infineon Technologies Hunts Ground Road, Stoke Gifford, Bristol, England, BS34 8HP +44 (0)117 9528741
More informationAspect Design Pattern for Non Functional Requirements
Aspect Design Pattern for Non Functional Requirements FAZAL-E-AMIN¹, ANSAR SIDDIQ², HAFIZ FAROOQ AHMAD³ ¹ ²International Islamic University Islamabad, Pakistan ³NUST Institute of Information Technology,
More informationUSING ASPECT-ORIENTED CONCEPTS IN THE REQUIREMENTS ANALYSIS OF DISTRIBUTED REAL-TIME EMBEDDED SYSTEMS
USING ASPECT-ORIENTED CONCEPTS IN THE REQUIREMENTS ANALYSIS OF DISTRIBUTED REAL-TIME EMBEDDED SYSTEMS Edison P. Freitas 1, Marco A. Wehrmeister 1,3, Carlos E. Pereira 1,2, Flavio R. Wagner 1, Elias T.
More informationDesigning Aspect-Oriented Crosscutting in UML
Designing Aspect-Oriented Crosscutting in UML Dominik Stein, Stefan Hanenberg, and Rainer Unland Institute for Computer Science University of Essen, Germany {dstein shanenbe unlandr}@cs.uni-essen.de ABSTRACT
More informationXWeave: Models and Aspects in Concert
XWeave: Models and Aspects in Concert Iris Groher Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81730 Munich, Germany +49 89 636 49477 iris.groher.ext@siemens.com Markus Voelter Independent Consultant Ziegelaecker
More informationExpressing Feature-Based Variability in Structural Models
Expressing Feature-Based Variability in Structural Models Iris Groher 1, Markus Voelter 2 1 Siemens AG, CT SE 2, Munich, Germany 2 Independent Consultant, Goeppingen, Germany iris.groher.ext@siemens.com,
More informationImplementing Software Connectors through First-Class Methods
Implementing Software Connectors through First-Class Methods Cheoljoo Jeong and Sangduck Lee Computer & Software Technology Laboratory Electronics and Telecommunications Research Institute Taejon, 305-350,
More informationSTRUCTURING CRITERIA FOR THE DESIGN OF COMPONENT-BASED REAL-TIME SYSTEMS
STRUCTURING CRITERIA FOR THE DESIGN OF COMPONENT-BASED REAL-TIME SYSTEMS Aleksandra Tešanović and Jörgen Hansson Department of Computer Science, Linköping University, Sweden {alete,jorha}@ida.liu.se ABSTRACT
More informationPattern Transformation for Two-Dimensional Separation of Concerns
Transformation for Two-Dimensional Separation of Concerns Xiaoqing Wu, Barrett R. Bryant and Jeff Gray Department of Computer and Information Sciences The University of Alabama at Birmingham Birmingham,
More informationMartin P. Robillard and Gail C. Murphy. University of British Columbia. November, 1999
Migrating a Static Analysis Tool to AspectJ TM Martin P. Robillard and Gail C. Murphy Department of Computer Science University of British Columbia 201-2366 Main Mall Vancouver BC Canada V6T 1Z4 fmrobilla,murphyg@cs.ubc.ca
More informationSynthesizing Communication Middleware from Explicit Connectors in Component Based Distributed Architectures
Synthesizing Communication Middleware from Explicit Connectors in Component Based Distributed Architectures Dietmar Schreiner 1,2 and Karl M. Göschka 1 1 Vienna University of Technology Institute of Information
More informationSeparating out Platform-independent Particles of User Interfaces
Separating out Platform-independent Particles of User Interfaces Tomas Cerny 1 and Michael J. Donahoo 2 1 Computer Science, FEE, Czech Technical University, Charles Square 13, 12135 Prague 2, Czech Rep.,
More informationSupporting Mobility using Context-Based Reasoning
Supporting Mobility using Context-Based Reasoning Aline Senart, Mélanie Bouroche, Neil O Connor, Barbara Hughes, Kulpreet Singh and Vinny Cahill Distributed Systems Group, Department of Computer Science,
More informationModeling Aspects using Software Stability and UML
Modeling Aspects using Software Stability and UML M.E. Fayad Computer Engineering Department San Jose State University One Washington Square San Jose, CA 9592-080 Ph: 408-924-7364 Fax: 408-924-453 Email:
More informationDomain-Driven Development with Ontologies and Aspects
Domain-Driven Development with Ontologies and Aspects Submitted for Domain-Specific Modeling workshop at OOPSLA 2005 Latest version of this paper can be downloaded from http://phruby.com Pavel Hruby Microsoft
More informationTowards a formal model of object-oriented hyperslices
Towards a formal model of object-oriented hyperslices Torsten Nelson, Donald Cowan, Paulo Alencar Computer Systems Group, University of Waterloo {torsten,dcowan,alencar}@csg.uwaterloo.ca Abstract This
More informationAn Aspect-Oriented Modeling Framework for Designing Multi-Agent Systems
An Aspect-Oriented Modeling Framework for Designing Multi-Agent Systems Alessandro Garcia 1, Christina Chavez 2, and Ricardo Choren 3 1 Computing Department, Lancaster University - UK garciaa@comp.lancs.ac.uk
More informationMulti-Dimensional Separation of Concerns and IBM Hyper/J
Multi-Dimensional Separation of Concerns and IBM Hyper/J Technical Research Report Barry R. Pekilis Bell Canada Software Reliability Laboratory Electrical and Computer Engineering University of Waterloo
More informationModelling e Verification Language Testbenches
Modelling e Verification Language Testbenches inuml 2.0 with Theme and MARTE Éamonn Linehan Lero The Irish Software Engineering Research Centre Trinity College Dublin, Ireland Siobhán Clarke Lero The Irish
More informationModel Composition Directives
Model Composition Directives Greg Straw, Geri Georg, Eunjee Song, Sudipto Ghosh, Robert France, and James M. Bieman Department of Computer Science Colorado State University, Fort Collins, CO, 80523 {straw,
More informationModeling Crisis Management System With the Restricted Use Case Modeling Approach
Modeling Crisis Management System With the Restricted Use Case Modeling Approach Gong Zhang 1, Tao Yue 2, and Shaukat Ali 3 1 School of Computer Science and Engineering, Beihang University, Beijing, China
More informationAnalysing the navigational aspect
A. M. Reina Dpto. Lenguajes y Sistemas Informáticos Universidad de Sevilla. e-mail: reinaqu@lsi.us.es Analysing the navigational aspect J. Torres Dpto. Lenguajes y Sistemas Informáticos Universidad de
More informationProgramming AspectJ with Eclipse and AJDT, By Example. Chien-Tsun Chen Sep. 21, 2003
Programming AspectJ with Eclipse and AJDT, By Example Chien-Tsun Chen Sep. 21, 2003 ctchen@ctchen.idv.tw References R. Laddad, I want my AOP!, Part 1-Part3, JavaWorld, 2002. R. Laddad, AspectJ in Action,
More informationUML Aspect Specification Using Role Models
UML Aspect Specification Using Role Models Geri Georg Agilent Laboratories, Agilent Technologies, Fort Collins, USA geri_georg@agilent.com Robert France Department of Computer Science, Colorado State University
More informationA UML SIMULATOR BASED ON A GENERIC MODEL EXECUTION ENGINE
A UML SIMULATOR BASED ON A GENERIC MODEL EXECUTION ENGINE Andrei Kirshin, Dany Moshkovich, Alan Hartman IBM Haifa Research Lab Mount Carmel, Haifa 31905, Israel E-mail: {kirshin, mdany, hartman}@il.ibm.com
More informationCQML: Aspect-oriented Modeling for Modularizing and Weaving QoS Concerns in Component-based Systems
CQML: Aspect-oriented Modeling for Modularizing and Weaving QoS Concerns in Component-based Systems Sumant Tambe, Akshay Dabholkar, Aniruddha Gokhale Department of EECS, Vanderbilt University, Nashville,
More informationDynamic Instantiation-Checking Components
Dynamic Instantiation-Checking Components Nigamanth Sridhar Electrical and Computer Engineering Cleveland State University 318 Stilwell Hall, 2121 Euclid Ave Cleveland OH 44113 n.sridhar1@csuohio.edu ABSTRACT
More informationTowards the integration of security patterns in UML Component-based Applications
Towards the integration of security patterns in UML Component-based Applications Anas Motii 1, Brahim Hamid 2, Agnès Lanusse 1, Jean-Michel Bruel 2 1 CEA, LIST, Laboratory of Model Driven Engineering for
More informationUML4COP: UML-based DSML for Context-Aware Systems
UML4COP: UML-based DSML for Context-Aware Systems Naoyasu Ubayashi Kyushu University ubayashi@acm.org Yasutaka Kamei Kyushu University kamei@ait.kyushu-u.ac.jp Abstract Context-awareness plays an important
More informationApplying the Component Paradigm to AUTOSAR Basic Software
Applying the Component Paradigm to AUTOSAR Basic Software Dietmar Schreiner Vienna University of Technology Institute of Computer Languages, Compilers and Languages Group Argentinierstrasse 8/185-1, A-1040
More informationTowards a Goal-Oriented Requirements Methodology Based on the Separation of Concerns Principle
Towards a Goal-Oriented Requirements Methodology Based on the Separation of Concerns Principle Geórgia Maria C. de Sousa and Jaelson Brelaz de Castro Centro de Informática Universidade Federal de Pernambuco
More informationCScheme in Traditional Concurrency Problems
CScheme in Traditional Concurrency Problems Nathar Shah and Visham Cheerkoot Abstract CScheme, a concurrent programming paradigm based on scheme concept enables concurrency schemes to be constructed from
More informationImpact of User Interface Generation on Maintenance
Impact of User Interface Generation on Maintenance Tomas Cerny dept. Computer Science and Engineering Czech Technical University, Charles Square 13, Prague, Czech Republic Email: tomas.cerny@fel.cvut.cz
More informationextrinsic members RoleB RoleA
ASPECT- ORIENTED PROGRAMMING FOR ROLE MODELS Elizabeth A. Kendall Department of Computer Science, Royal Melbourne Institute of Technology GPO Box 2476V, Melbourne, VIC 3001, AUSTRALIA email: kendall@rmit.edu.au
More informationProduct Line Evolution Using Source Packages
Product Line Evolution Using Source Packages Arie van Deursen Merijn de Jonge CWI P.O. Box 94079, 1090 GB Amsterdam, The Netherlands http://www.cwi.nl/ {arie,mdejonge} Abstract We present a language-independent
More informationUML-AOF: A Profile for Modeling Aspect-Oriented Frameworks
UML-AOF: A Profile for Modeling Aspect-Oriented Frameworks José Uetanabara Júnior¹ Centro Universitário Eurípedes de Marília - Univem Marília, São Paulo, Brasil CEP 17.525-901 miklotovx@gmail.com Valter
More informationA Framework for Generation of Inter-node Communication in Component-based Distributed Embedded Systems
A Framework for Generation of Inter-node Communication in Component-based Distributed Embedded Systems Luka Lednicki, Jan Carlson Mälardalen Real-time Research Centre Mälardalen University Västerås, Sweden
More informationModeling the Evolution of Aspect Configurations using Model Transformations
Modeling the Evolution of Aspect Configurations using Model Transformations Uwe Zdun, Mark Strembeck Institute of Information Systems, New Media Lab Vienna University of Economics, Austria {uwe.zdun mark.strembeck}@wu-wien.ac.at
More informationA Framework for Evaluating Model-Driven Self-adaptive Software Systems
1 A Framework for Evaluating Model-Driven Self-adaptive Software Systems Basel Magableh School of Computer Science, Dublin Institute of Technology, Technological University Dublin, Ireland basel.magableh@dit.ie
More informationToward Low Cost Workload Distribution for Integrated Green Data Centers
Toward Low Cost Workload Distribution for Integrated Green Data Centers 215 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or
More informationApplying Aspect Oriented Programming on Security
Original Article Applying Aspect Oriented Programming on Security Mohammad Khalid Pandit* 1, Azra Nazir 1 and Arutselvan M 2 1 Department of computer Science and engineering, National institute of technology
More informationUsing Domain-Specific Modeling to Generate User Interfaces for Wizards
Using Domain-Specific Modeling to Generate User Interfaces for Wizards Enis Afgan, Jeff Gray, Purushotham Bangalore University of Alabama at Birmingham Department of omputer and Information Sciences 1300
More informationConfiguration Management for Component-based Systems
Configuration Management for Component-based Systems Magnus Larsson Ivica Crnkovic Development and Research Department of Computer Science ABB Automation Products AB Mälardalen University 721 59 Västerås,
More informationWEAVING DEPLOYMENT ASPECTS INTO DOMAIN-SPECIFIC MODELS
International Journal of Software Engineering and Knowledge Engineering World Scientific Publishing Company WEAVING DEPLOYMENT ASPECTS INTO DOMAIN-SPECIFIC MODELS KRISHNAKUMAR BALASUBRAMANIAN and ANIRUDDHA
More informationVARIABILITY MODELING FOR CUSTOMIZABLE SAAS APPLICATIONS
VARIABILITY MODELING FOR CUSTOMIZABLE SAAS APPLICATIONS ABSTRACT Ashraf A. Shahin 1, 2 1 College of Computer and Information Sciences, Al Imam Mohammad Ibn Saud Islamic University (IMSIU) Riyadh, Kingdom
More informationAspect Refactoring Verifier
Aspect Refactoring Verifier Charles Zhang and Julie Waterhouse Hans-Arno Jacobsen Centers for Advanced Studies Department of Electrical and IBM Toronto Lab Computer Engineering juliew@ca.ibm.com and Department
More informationTowards a Transformation Chain Modeling Language
Towards a Transformation Chain Modeling Language Bert Vanhooff, Stefan Van Baelen, Aram Hovsepyan, Wouter Joosen, and Yolande Berbers Department of Computer Science, K.U. Leuven, Celestijnenlaan 200A,
More informationDirect deployment of component-based automation systems
Loughborough University Institutional Repository Direct deployment of component-based automation systems This item was submitted to Loughborough University's Institutional Repository by the/an author.
More informationA Theory of Aspects for Aspect-Oriented Software Development
A Theory of Aspects for Aspect-Oriented Software Development Christina von Flach G. Chavez 1,2 Carlos J. P. de Lucena 2 1 UFBA, Computer Science Department Av. Adhemar de Barros, s/n 40170-110, Salvador,
More informationAPPLYING OBJECT-ORIENTATION AND ASPECT-ORIENTATION IN TEACHING DOMAIN-SPECIFIC LANGUAGE IMPLEMENTATION *
APPLYING OBJECT-ORIENTATION AND ASPECT-ORIENTATION IN TEACHING DOMAIN-SPECIFIC LANGUAGE IMPLEMENTATION * Xiaoqing Wu, Barrett Bryant and Jeff Gray Department of Computer and Information Sciences The University
More informationBugdel: An Aspect-Oriented Debugging System
Bugdel: An Aspect-Oriented Debugging System Yoshiyuki Usui and Shigeru Chiba Dept. of Mathematical and Computing Sciences Tokyo Institute of Technology 2-12-1-W8-50 Ohkayama, Meguro-ku Tokyo 152-8552,
More informationDeveloping Software Applications Using Middleware Infrastructure: Role Based and Coordination Component Framework Approach
Developing Software Applications Using Middleware Infrastructure: Role Based and Coordination Component Framework Approach Ninat Wanapan and Somnuk Keretho Department of Computer Engineering, Kasetsart
More informationDriving component composition from early stages using aspect-oriented techniques
Driving component composition from early stages using aspect-oriented techniques Pedro J. Clemente, Juan Hernández and Fernando Sánchez University of Extremadura. Spain Quercus Software Engineering Group.
More informationASPECT GENERATOR. Audit Trail WEAVER. Aspect Editor. Weaving Strategies Editor. Model Editor. Mapping. Instructions. Original Model (XMI)
Tool Support for Aspect-Oriented Design Francois Mekerke 1, Geri Georg 2, Robert France 3, and Roger Alexander 3 1 Ecole Nationale Superieure des Etudes et Techniques d'armement, Brest, France mekerkfr@ensieta.fr
More informationWinery A Modeling Tool for TOSCA-Based Cloud Applications
Winery A Modeling Tool for TOSCA-Based Cloud Applications Oliver Kopp 1,2, Tobias Binz 2,UweBreitenbücher 2, and Frank Leymann 2 1 IPVS, University of Stuttgart, Germany 2 IAAS, University of Stuttgart,
More informationIntroduction to Aspect-Oriented Programming
Introduction to Aspect-Oriented Programming LÁSZLÓ LENGYEL, TIHAMÉR LEVENDOVSZKY {lengyel, tihamer}@aut.bme.hu Reviewed Key words: aspect-oriented programming (AOP), crosscutting concerns Aspect-oriented
More informationSupporting Documentation and Evolution of Crosscutting Concerns in Business Processes
Supporting Documentation and Evolution of Crosscutting Concerns in Business Processes Chiara Di Francescomarino supervised by Paolo Tonella dfmchiara@fbk.eu - Fondazione Bruno Kessler, Trento, Italy Abstract.
More informationFrom Objects to Aspects: Assessing Modularity Evolution
From Objects to Aspects: Assessing Modularity Evolution Sérgio Bryton, Fernando Brito e Abreu February 2008 Unlimited distribution subject to the copyright. Technical Report FCT/QUASAR-2008-TR-108 This
More informationObject-Oriented Theories for Model Driven Architecture
Object-Oriented Theories for Model Driven Architecture Tony Clark 1, Andy Evans 2, Robert France 3 1 King s College London, UK, anclark@dcs.kcl.ac.uk, 2 University of York, UK, andye@cs.york.ac.uk, 3 University
More informationASPECTIX: A QUALITY-AWARE, OBJECT-BASED MIDDLEWARE ARCHITECTURE
ASPECTIX: A QUALITY-AWARE, OBJECT-BASED MIDDLEWARE ARCHITECTURE Franz J. Hauck, Ulrich Becker, Martin Geier, Erich Meier, Uwe Rastofer, Martin Steckermeier Informatik 4, University of Erlangen-Nürnberg,
More informationUsing Component-oriented Process Models for Multi-Metamodel Applications
Using Component-oriented Process Models for Multi-Metamodel Applications Fahad R. Golra Université Européenne de Bretagne Institut Télécom / Télécom Bretagne Brest, France Email: fahad.golra@telecom-bretagne.eu
More informationUniAspect: A Language-Independent Aspect-Oriented Programming Framework
UniAspect: A Language-Independent Aspect-Oriented Programming Framework Akira Ohashi Kazunori Sakamoto Tomoyuki Kamiya Reisha Humaira Satoshi Arai Hironori Washizaki Yoshiaki Fukazawa Waseda University
More informationExtending the UML metamodel to grant prop up for crosscutting concerns
Extending the UML metamodel to grant prop up for crosscutting concerns Veluru Gowri, Assistant Professor, Department of Computer Science and Engineering, Sri Venkatesa Perumal College of Engineering and
More informationEmploying Query Technologies for Crosscutting Concern Comprehension
Employing Query Technologies for Crosscutting Concern Comprehension Marius Marin Accenture The Netherlands Marius.Marin@accenture.com Abstract Common techniques for improving comprehensibility of software
More informationGeneration Rules in POMA Architecture
J. Software Engineering & Applications, 2010, 3, 1040-1046 doi:10.4236/jsea.2010.311122 Published Online November 2010 (http://www.scirp.org/journal/jsea) Mohamed Taleb 1, Ahmed Seffah 2, Alain Abran 1
More informationQoS-aware model-driven SOA using SoaML
QoS-aware model-driven SOA using SoaML Niels Schot A thesis submitted for the degree of MSc Computer Science University of Twente EEMCS - TRESE: Software Engineering Group Examination committee: Luís Ferreira
More informationModel-Driven QoS Provisioning Techniques for CCM DRE Systems
Model-Driven QoS Provisioning Techniques for CCM DRE Systems Stoyan Paunov, Gan Deng, Douglas C. Schmidt, and Anirudha Gokhale ISIS, Vanderbilt University Motivation for QoS-enabled Middleware Trends!
More informationImplementing a Real-Time Architecting Method in a Commercial CASE Tool
Implementing a Real-Time Architecting Method in a Commercial CASE Tool José L. Fernández-Sánchez Escuela Técnica Superior de Ingenieros Industriales C/ José Gutiérrez Abascal 2 28006 Madrid - Spain Phone:
More informationA Meta-Model for Composition Techniques in Object-Oriented Software Development
A Meta-Model for Composition Techniques in Object-Oriented Software Development Bedir Tekinerdogan Department of Computer Science University of Twente P.O. Box 217, 7500 AE Enschede, The Netherlands E-Mail:
More informationbahmanzamani.com Computer Engineering i Dept. University of Isfahan
(MDSE) Bh Bahman Zamani, iphd Ph.D. bahmanzamani.com Computer Engineering i Dept. University of Isfahan Presented at Sheikhbahaee University Baharestan - Isfahan Feb. 4 th, 2010 (1388/11/15) Model What
More informationStatic analysis and testing of executable DSL specification
Static analysis and testing of executable DSL specification Qinan Lai 1, Andy Carpenter 1 1 School of Computer Science, the University of Manchester, Manchester, UK {laiq,afc}@cs.man.ac.uk Keywords: Abstract:
More informationTowards a symbiosis between Aspect-Oriented and Component-Based Software Development
Towards a symbiosis between Aspect-Oriented and Component-Based Software Development Davy Suvée Vrije Universiteit Brussel Pleinlaan 2 1050 Brussel, Belgium +32 2 629 29 65 dsuvee@vub.ac.be Wim Vanderperren
More informationA SYSTEMATIC APPROACH FOR COMPONENT-BASED SOFTWARE DEVELOPMENT
A SYSTEMATIC APPROACH FOR COMPONENT-BASED SOFTWARE DEVELOPMENT Cléver Ricardo Guareis de Farias, Marten van Sinderen and Luís Ferreira Pires Centre for Telematics and Information Technology (CTIT) PO Box
More informationAn MDE-based approach for reconfigurable DRE systems
2012 IEEE 21st International WETICE An MDE-based approach for reconfigurable DRE systems Fatma Krichen 1,2, Amal Ghorbel 2, Brahim Hamid 1, and Bechir Zalila 2 1 IRIT, University of Toulouse, France Email:
More informationTransformational Design with
Fakultät Informatik, Institut für Software- und Multimediatechnik, Lehrstuhl für Softwaretechnologie Transformational Design with Model-Driven Architecture () Prof. Dr. U. Aßmann Technische Universität
More informationRoles From an Aspect-Oriented Perspective
Roles From an Aspect-Oriented Perspective Stefan Hanenberg Dominik Stein Rainer Unland University of Duisburg-Essen Essen, Germany {shanenbe, dstein, unlandr}@cs.uni-essen.de Abstract. Roles and aspects
More informationAn Introduction to Model Driven Engineering (MDE) Bahman Zamani, Ph.D. bahmanzamani.com
An Introduction to Model Driven Engineering (MDE) Bahman Zamani, Ph.D. bahmanzamani.com Department of Software Systems Engineering University of Isfahan Fall 2013 Overview Model & Modeling UML & UML Profile
More informationGenerating Configurable Containers for Component-Based Software
Generating Configurable Containers for Component-Based Software Nigamanth Sridhar Computer and Information Science The Ohio State University 2015 Neil Ave Columbus OH 43210, USA nsridhar@cis.ohio-state.edu
More informationAn Evaluation of Aspect-Oriented Programming for Java-based Real-time Systems Development
An Evaluation of Aspect-Oriented Programming for Java-based Real-time Systems Development Shiu Lun Tsang, Siobhán Clarke, Elisa Baniassad Distributed Systems Group, Department of Computer Science, Trinity
More informationManaging quality of service during evolution using component contracts
Managing quality of service during evolution using component contracts J. Gorinsek, S. Van Baelen, Y. Berbers, K. De Vlaminck K.U.Leuven, Department of Computer Science, Celestijnenlaan 200A, 3001 Leuven,
More informationMiddleware Support for Embedded Software with Multiple QoS Properties for Ubiquitous Computing Environments
Middleware Support for Embedded Software with Multiple QoS Properties for Ubiquitous Computing Environments Stephen S. Yau, Yu Wang and Dazhi Huang Department of Computer Science and Engineering Arizona
More informationIntroduction to Software Engineering 10. Software Architecture
Introduction to Software Engineering 10. Software Architecture Roadmap > What is Software Architecture? > Coupling and Cohesion > Architectural styles: Layered Client-Server Blackboard, Dataflow,... >
More informationUsing Product Lines to Manage Variability in Mobile Context-Aware Applications
Using Product Lines to Manage Variability in Mobile Context-Aware Applications Dean Kramer School of Computing and Technology Thames Valley University, London, UK, W5 5RF dean.kramer@tvu.ac.uk 1 Introduction
More informationApplying Experiences with Declarative Codifications of Software Architectures on COD
Applying Experiences with Declarative Codifications of Software Architectures on COD Position Paper Roel Wuyts Stéphane Ducasse Gabriela Arévalo roel.wuyts@iam.unibe.ch ducasse@iam.unibe.ch arevalo@iam.unibe.ch
More information