Separation of Distributed Real-Time Embedded Concerns with Theme/UML

Size: px
Start display at page:

Download "Separation of Distributed Real-Time Embedded Concerns with Theme/UML"

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 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 information

Improving Software Modularity using AOP

Improving 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 information

Sort-based Refactoring of Crosscutting Concerns to Aspects

Sort-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 information

AOSD Explained: ASPECT-ORIENTED SYSTEM DEVELOPMENT

AOSD 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 information

On the Impact of Aspect-Oriented Programming on Object-Oriented Metrics

On 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 information

Aspect-Orientation from Design to Code

Aspect-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 information

SERG. Sort-based Refactoring of Crosscutting Concerns to Aspects

SERG. 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 information

Using Aspects to Make Adaptive Object-Models Adaptable

Using 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 information

A Domain-Specific Language for Ubiquitous Healthcare

A 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 information

Implementing Producers/Consumers Problem Using Aspect-Oriented Framework

Implementing 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 information

Using Aspects to Make Adaptive Object-Models Adaptable

Using 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 information

AOSA - Betriebssystemkomponenten und der Aspektmoderatoransatz

AOSA - 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 information

An Aspect-Based Approach to Modeling Security Concerns

An 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 information

Model-Driven Theme/UML

Model-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 information

Model Driven Development of Context Aware Software Systems

Model 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 information

Modularizing Web Services Management with AOP

Modularizing 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 information

Cormac Driver Lero, Distributed Systems Group Trinity College Dublin, Ireland

Cormac 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 information

Aspect Design Pattern for Non Functional Requirements

Aspect 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 information

USING 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 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 information

Designing Aspect-Oriented Crosscutting in UML

Designing 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 information

XWeave: Models and Aspects in Concert

XWeave: 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 information

Expressing Feature-Based Variability in Structural Models

Expressing 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 information

Implementing Software Connectors through First-Class Methods

Implementing 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 information

STRUCTURING CRITERIA FOR THE DESIGN OF COMPONENT-BASED REAL-TIME SYSTEMS

STRUCTURING 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 information

Pattern Transformation for Two-Dimensional Separation of Concerns

Pattern 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 information

Martin P. Robillard and Gail C. Murphy. University of British Columbia. November, 1999

Martin 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 information

Synthesizing Communication Middleware from Explicit Connectors in Component Based Distributed Architectures

Synthesizing 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 information

Separating out Platform-independent Particles of User Interfaces

Separating 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 information

Supporting Mobility using Context-Based Reasoning

Supporting 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 information

Modeling Aspects using Software Stability and UML

Modeling 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 information

Domain-Driven Development with Ontologies and Aspects

Domain-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 information

Towards a formal model of object-oriented hyperslices

Towards 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 information

An Aspect-Oriented Modeling Framework for Designing Multi-Agent Systems

An 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 information

Multi-Dimensional Separation of Concerns and IBM Hyper/J

Multi-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 information

Modelling e Verification Language Testbenches

Modelling 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 information

Model Composition Directives

Model 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 information

Modeling Crisis Management System With the Restricted Use Case Modeling Approach

Modeling 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 information

Analysing the navigational aspect

Analysing 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 information

Programming 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 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 information

UML Aspect Specification Using Role Models

UML 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 information

A UML SIMULATOR BASED ON A GENERIC MODEL EXECUTION ENGINE

A 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 information

CQML: 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 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 information

Dynamic Instantiation-Checking Components

Dynamic 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 information

Towards the integration of security patterns in UML Component-based Applications

Towards 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 information

UML4COP: UML-based DSML for Context-Aware Systems

UML4COP: 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 information

Applying the Component Paradigm to AUTOSAR Basic Software

Applying 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 information

Towards 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 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 information

CScheme in Traditional Concurrency Problems

CScheme 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 information

Impact of User Interface Generation on Maintenance

Impact 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 information

extrinsic members RoleB RoleA

extrinsic 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 information

Product Line Evolution Using Source Packages

Product 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 information

UML-AOF: A Profile for Modeling Aspect-Oriented Frameworks

UML-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 information

A 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 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 information

Modeling the Evolution of Aspect Configurations using Model Transformations

Modeling 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 information

A Framework for Evaluating Model-Driven Self-adaptive Software Systems

A 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 information

Toward Low Cost Workload Distribution for Integrated Green Data Centers

Toward 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 information

Applying Aspect Oriented Programming on Security

Applying 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 information

Using Domain-Specific Modeling to Generate User Interfaces for Wizards

Using 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 information

Configuration Management for Component-based Systems

Configuration 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 information

WEAVING DEPLOYMENT ASPECTS INTO DOMAIN-SPECIFIC MODELS

WEAVING 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 information

VARIABILITY MODELING FOR CUSTOMIZABLE SAAS APPLICATIONS

VARIABILITY 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 information

Aspect Refactoring Verifier

Aspect 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 information

Towards a Transformation Chain Modeling Language

Towards 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 information

Direct deployment of component-based automation systems

Direct 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 information

A Theory of Aspects for Aspect-Oriented Software Development

A 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 information

APPLYING OBJECT-ORIENTATION AND ASPECT-ORIENTATION IN TEACHING DOMAIN-SPECIFIC LANGUAGE IMPLEMENTATION *

APPLYING 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 information

Bugdel: An Aspect-Oriented Debugging System

Bugdel: 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 information

Developing 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 Developing Software Applications Using Middleware Infrastructure: Role Based and Coordination Component Framework Approach Ninat Wanapan and Somnuk Keretho Department of Computer Engineering, Kasetsart

More information

Driving component composition from early stages using aspect-oriented techniques

Driving 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 information

ASPECT GENERATOR. Audit Trail WEAVER. Aspect Editor. Weaving Strategies Editor. Model Editor. Mapping. Instructions. Original Model (XMI)

ASPECT 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 information

Winery A Modeling Tool for TOSCA-Based Cloud Applications

Winery 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 information

Introduction to Aspect-Oriented Programming

Introduction 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 information

Supporting Documentation and Evolution of Crosscutting Concerns in Business Processes

Supporting 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 information

From Objects to Aspects: Assessing Modularity Evolution

From 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 information

Object-Oriented Theories for Model Driven Architecture

Object-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 information

ASPECTIX: A QUALITY-AWARE, OBJECT-BASED MIDDLEWARE ARCHITECTURE

ASPECTIX: 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 information

Using Component-oriented Process Models for Multi-Metamodel Applications

Using 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 information

UniAspect: A Language-Independent Aspect-Oriented Programming Framework

UniAspect: 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 information

Extending the UML metamodel to grant prop up for crosscutting concerns

Extending 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 information

Employing Query Technologies for Crosscutting Concern Comprehension

Employing 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 information

Generation Rules in POMA Architecture

Generation 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 information

QoS-aware model-driven SOA using SoaML

QoS-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 information

Model-Driven QoS Provisioning Techniques for CCM DRE Systems

Model-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 information

Implementing a Real-Time Architecting Method in a Commercial CASE Tool

Implementing 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 information

A Meta-Model for Composition Techniques in Object-Oriented Software Development

A 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 information

bahmanzamani.com Computer Engineering i Dept. University of Isfahan

bahmanzamani.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 information

Static analysis and testing of executable DSL specification

Static 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 information

Towards a symbiosis between Aspect-Oriented and Component-Based Software Development

Towards 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 information

A SYSTEMATIC APPROACH FOR COMPONENT-BASED SOFTWARE DEVELOPMENT

A 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 information

An MDE-based approach for reconfigurable DRE systems

An 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 information

Transformational Design with

Transformational 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 information

Roles From an Aspect-Oriented Perspective

Roles 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 information

An 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 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 information

Generating Configurable Containers for Component-Based Software

Generating 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 information

An 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 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 information

Managing quality of service during evolution using component contracts

Managing 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 information

Middleware 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 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 information

Introduction to Software Engineering 10. Software Architecture

Introduction 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 information

Using Product Lines to Manage Variability in Mobile Context-Aware Applications

Using 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 information

Applying Experiences with Declarative Codifications of Software Architectures on COD

Applying 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