Weaving Rewrite-Based Access Control Policies
|
|
- Lorin Lynch
- 5 years ago
- Views:
Transcription
1 Weaving Rewrite-Based Access Control Policies Anderson Santana de Oliveira a, Eric Ke Wang ab, Claude Kirchner a, Hélène Kirchner a INRIA & LORIA The University of Hong Kong FMSE, 2007 Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 1 FMSE,
2 Context Access control is a central issue in computer security Policies are software artifacts on their own: Policies may be composed of several rule sets Complex conditions on the policy environment It is necessary to ensure the compliance of a large system to a given dynamic access control policy Several bugs are related to access control Policy specification and implementation are error prone Policies need to be maintained independently from the application code Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 2 FMSE,
3 Enforcement Mechanism Execution monitoring A reference monitor watches the execution of a target program, and interferes when it is about to violate the security policy Monitors can be inlined in the application code This process can be automated for low level, static, policies Si Action Action... Si+1 Si+2 Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 3 FMSE,
4 Enforcement Mechanism Execution monitoring A reference monitor watches the execution of a target program, and interferes when it is about to violate the security policy Monitors can be inlined in the application code This process can be automated for low level, static, policies Si Action Action Si+1 Si+2... Reference Monitor Reference Monitor Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 3 FMSE,
5 Objectives In this work we provide a methodology for building reference monitors for expressive policies to adopt a formal model for access control policies using term rewriting with strategies to help developers to enforce dynamic policies in a modular and flexible way to be able to reuse policies independently specified in different context or applications Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 4 FMSE,
6 Outline 1 Context/Motivation 2 Expressive Rewrite-Based Access Control 3 Weaving Policies 4 Related Work 5 Summary and Future Works Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 5 FMSE,
7 Example - A conference policy Authors can submit papers during the submission phase. aut(q(author(x), submitpaper, paper(x, z)), submission, cnd) aut(q(author(x), readscores, p), phase, cnd) aut(q(reviewer(x), action, p), phase, conflict(x, p)) aut(q(reviewer(x), action, paper(x, z)), phase, cnd) aut(q(reviewer(x), action, paper(x, z)), phase, conflict(x, paper(x, z))) aut(a, b, c) permit deny deny notapp Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 6 FMSE,
8 Example - A conference policy Authors can submit papers during the submission phase. aut(q(author(x), submitpaper, paper(x, z)), submission, cnd) aut(q(author(x), readscores, p), phase, cnd) aut(q(reviewer(x), action, p), phase, conflict(x, p)) aut(q(reviewer(x), action, paper(x, z)), phase, cnd) aut(q(reviewer(x), action, paper(x, z)), phase, conflict(x, paper(x, z))) aut(a, b, c) permit deny deny notapp Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 6 FMSE,
9 Example - A conference policy Authors may never read scores for a paper. aut(q(author(x), submitpaper, paper(x, z)), submission, cnd) aut(q(author(x), readscores, p), phase, cnd) aut(q(reviewer(x), action, p), phase, conflict(x, p)) aut(q(reviewer(x), action, paper(x, z)), phase, cnd) aut(q(reviewer(x), action, paper(x, z)), phase, conflict(x, paper(x, z))) aut(a, b, c) permit deny deny notapp Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 6 FMSE,
10 Example - A conference policy A reviewer may never perform an action over a paper if he is conflicted with that paper. aut(q(author(x), submitpaper, paper(x, z)), submission, cnd) aut(q(author(x), readscores, p), phase, cnd) aut(q(reviewer(x), action, p), phase, conflict(x, p)) aut(q(reviewer(x), action, paper(x, z)), phase, cnd) aut(q(reviewer(x), action, paper(x, z)), phase, conflict(x, paper(x, z))) aut(a, b, c) permit deny deny notapp Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 6 FMSE,
11 Example - A conference policy A reviewer is conflicted with a paper if he is an author for that paper. aut(q(author(x), submitpaper, paper(x, z)), submission, cnd) aut(q(author(x), readscores, p), phase, cnd) aut(q(reviewer(x), action, p), phase, conflict(x, p)) aut(q(reviewer(x), action, paper(x, z)), phase, cnd) aut(q(reviewer(x), action, paper(x, z)), phase, conflict(x, paper(x, z))) aut(a, b, c) permit deny deny notapp Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 6 FMSE,
12 Example - A conference policy aut(q(author(x), submitpaper, paper(x, z)), submission, cnd) aut(q(author(x), readscores, p), phase, cnd) aut(q(reviewer(x), action, p), phase, conflict(x, p)) aut(q(reviewer(x), action, paper(x, z)), phase, cnd) aut(q(reviewer(x), action, paper(x, z)), phase, conflict(x, paper(x, z))) aut(a, b, c) permit deny deny notapp Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 6 FMSE,
13 Rewrite-Based Access Control Term rewriting provides a clear semantics to access control and a framework to formulate its formal properties consistency, completeness, termination An uniform semantics for policy combiners relying on rewriting strategies The language allows us to handle a wide range of dynamic policies D. J. Dougherty, C. Kirchner, H. Kirchner, and A. Santana de Oliveira. Modular access control via strategic rewriting. ESORICS, volume 4734 of Lecture Notes in Computer Science, pages Springer, Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 7 FMSE,
14 Rewrite-Based Access Control Term rewriting provides a clear semantics to access control and a framework to formulate its formal properties consistency, completeness, termination An uniform semantics for policy combiners relying on rewriting strategies The language allows us to handle a wide range of dynamic policies D. J. Dougherty, C. Kirchner, H. Kirchner, and A. Santana de Oliveira. Modular access control via strategic rewriting. ESORICS, volume 4734 of Lecture Notes in Computer Science, pages Springer, Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 7 FMSE,
15 Rewrite-Based Access Control Term rewriting provides a clear semantics to access control and a framework to formulate its formal properties consistency, completeness, termination An uniform semantics for policy combiners relying on rewriting strategies The language allows us to handle a wide range of dynamic policies D. J. Dougherty, C. Kirchner, H. Kirchner, and A. Santana de Oliveira. Modular access control via strategic rewriting. ESORICS, volume 4734 of Lecture Notes in Computer Science, pages Springer, Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 7 FMSE,
16 Rewriting-Based Policies. Definition (Security Policy) A policy is defined by : 1 a signature for defining structure of the data-structure for the policy environment; 2 a non-empty set of constants which represent decisions; 3 a set of rewrite rules to govern the behavior of the policy 4 a set of terms that represent access requests 5 a rewrite strategy that controls rule application. Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 8 FMSE,
17 Rewriting-Based Policies. Definition (Security Policy) A policy is defined by : 1 a signature for defining structure of the data-structure for the policy environment; 2 a non-empty set of constants which represent decisions; 3 a set of rewrite rules to govern the behavior of the policy 4 a set of terms that represent access requests 5 a rewrite strategy that controls rule application. Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 8 FMSE,
18 Rewriting-Based Policies. Definition (Security Policy) A policy is defined by : 1 a signature for defining structure of the data-structure for the policy environment; 2 a non-empty set of constants which represent decisions; 3 a set of rewrite rules to govern the behavior of the policy 4 a set of terms that represent access requests 5 a rewrite strategy that controls rule application. Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 8 FMSE,
19 Rewriting-Based Policies. Definition (Security Policy) A policy is defined by : 1 a signature for defining structure of the data-structure for the policy environment; 2 a non-empty set of constants which represent decisions; 3 a set of rewrite rules to govern the behavior of the policy 4 a set of terms that represent access requests 5 a rewrite strategy that controls rule application. Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 8 FMSE,
20 Rewriting-Based Policies. Definition (Security Policy) A policy is defined by : 1 a signature for defining structure of the data-structure for the policy environment; 2 a non-empty set of constants which represent decisions; 3 a set of rewrite rules to govern the behavior of the policy 4 a set of terms that represent access requests 5 a rewrite strategy that controls rule application. Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 8 FMSE,
21 Example - A conference policy aut(q(author(x), submitpaper, paper(x, z)), submission, cnd) aut(q(author(x), readscores, p), phase, cnd) aut(q(reviewer(x), action, p), phase, conflict(x, p)) aut(q(reviewer(x), action, paper(x, z)), phase, cnd) aut(q(reviewer(x), action, paper(x, z)), phase, conflict(x, paper(x, z))) aut(a, b, c) permit deny deny notapp Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 9 FMSE,
22 Tom Implementing Rewriting in Java Tom ( Extends Java with pattern matching, rewriting, and strategies %match allows discriminating among a list of patterns. (backquote construct) is used to build terms from Java values. %gom provides a language to define tree-like data structures %strategy groups rules for constructing more complex strategies, e.g. innermost, outermost, top down, etc.. E. Balland, P. Brauner, R. Kopetz, P.-E. Moreau, and A. Reilles. Tom: Piggybacking rewriting on java. RTA 2007, vol of LNCS, pages Springer. Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 10 FMSE,
23 Tom Implementing Rewriting in Java Tom ( Extends Java with pattern matching, rewriting, and strategies %match allows discriminating among a list of patterns. (backquote construct) is used to build terms from Java values. %gom provides a language to define tree-like data structures %strategy groups rules for constructing more complex strategies, e.g. innermost, outermost, top down, etc.. E. Balland, P. Brauner, R. Kopetz, P.-E. Moreau, and A. Reilles. Tom: Piggybacking rewriting on java. RTA 2007, vol of LNCS, pages Springer. Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 10 FMSE,
24 Tom Implementing Rewriting in Java Tom ( Extends Java with pattern matching, rewriting, and strategies %match allows discriminating among a list of patterns. (backquote construct) is used to build terms from Java values. %gom provides a language to define tree-like data structures %strategy groups rules for constructing more complex strategies, e.g. innermost, outermost, top down, etc.. E. Balland, P. Brauner, R. Kopetz, P.-E. Moreau, and A. Reilles. Tom: Piggybacking rewriting on java. RTA 2007, vol of LNCS, pages Springer. Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 10 FMSE,
25 Tom Implementing Rewriting in Java Tom ( Extends Java with pattern matching, rewriting, and strategies %match allows discriminating among a list of patterns. (backquote construct) is used to build terms from Java values. %gom provides a language to define tree-like data structures %strategy groups rules for constructing more complex strategies, e.g. innermost, outermost, top down, etc.. E. Balland, P. Brauner, R. Kopetz, P.-E. Moreau, and A. Reilles. Tom: Piggybacking rewriting on java. RTA 2007, vol of LNCS, pages Springer. Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 10 FMSE,
26 Tom Implementing Rewriting in Java Tom ( Extends Java with pattern matching, rewriting, and strategies %match allows discriminating among a list of patterns. (backquote construct) is used to build terms from Java values. %gom provides a language to define tree-like data structures %strategy groups rules for constructing more complex strategies, e.g. innermost, outermost, top down, etc.. E. Balland, P. Brauner, R. Kopetz, P.-E. Moreau, and A. Reilles. Tom: Piggybacking rewriting on java. RTA 2007, vol of LNCS, pages Springer. Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 10 FMSE,
27 Structure of a policy in Tom public class P o l i c y { %gom{... Request = q ( s : Subject, a : Action, o : Obj ) Phase = submission ( ) meeting ( ) review ( ) Action = submitpaper ( ) readscores ( )... Decision = permit ( ) deny ( ) aut ( r : Request, p : Phase )... }... %strategy Rules ( ) {... aut ( q ( author ( x ), submitpaper ( ), paper ( x, y ) ), submission ( ), cnd ) > { return permit ( ) ; }... }... public s t a t i c boolean apply (... ) {... Strategy p o l i c y = Innermost ( Rules ( ) ) ;... Decision d = ( Decision ) p o l i c y. v i s i t ( q1 ) ;... }... } Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 11 FMSE,
28 Aspect Oriented Programming Separation of crosscutting concerns, e.g. access control Encapsulation of behaviors that affect multiple classes in aspects Basic concepts: pointcuts and and code advice Weaving: compilation process that matches the pointcuts against the actual code and inserts the code advice before, after or around a joinpoint Several implementations exist, a popular one is AspectJ Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 12 FMSE,
29 System Architecture Policy Target program Policy Signature mapping Program Code Policy Rules Joinpoints Program Code Code Advice weaving Reference Monitor Aspect Generated program Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 13 FMSE,
30 Aspects for Access Control 1 Capture the policy environment 2 Identify access requests 3 Give the control to the reference monitor: advice code 4 Weave the policy rules Example aspect PolicyAspect {... private i n t phase ;... a f t e r ( i n t cp ) : set ( i n t Conference. currentphase ) & & args ( cp ) { phase=cp ; }... } Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 14 FMSE,
31 Aspects for Access Control 1 Capture the policy environment 2 Identify access requests 3 Give the control to the reference monitor: advice code 4 Weave the policy rules Example aspect PolicyAspect {... private i n t phase ;... a f t e r ( i n t cp ) : set ( i n t Conference. currentphase ) & & args ( cp ) { phase=cp ; }... } Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 14 FMSE,
32 Aspects for Access Control 1 Capture the policy environment 2 Identify access requests 3 Give the control to the reference monitor: advice code 4 Weave the policy rules Example pointcut submitreviewcut ( i n t objid, i n t revid ) : c a l l ( void Conference. submitreview ( i n t, i n t, i n t ) ) & & args ( o b j I d, r e v I d, ) ; Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 15 FMSE,
33 Aspects for Access Control 1 Capture the policy environment 2 Identify access requests 3 Give the control to the reference monitor: advice code 4 Weave the policy rules Example pointcut submitreviewcut ( i n t objid, i n t revid ) : c a l l ( void Conference. submitreview ( i n t, i n t, i n t ) ) & & args ( o b j I d, r e v I d, ) ; Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 15 FMSE,
34 Aspects for Access Control 1 Capture the policy environment 2 Identify access requests 3 Give the control to the reference monitor: advice code 4 Weave the policy rules: AspectJ compiler Example before ( Paper p ) : submitpapercut ( p ) {... i f ( P o l i c y. apply ( usr. g e t I d ( ),..., phase ) = = Deny ) { System. e r r. p r i n t l n ( " Access Denied. " ) ; throw new AccessControlException ( ) ; } } Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 16 FMSE,
35 Aspects for Access Control 1 Capture the policy environment 2 Identify access requests 3 Give the control to the reference monitor: advice code 4 Weave the policy rules: AspectJ compiler Example before ( Paper p ) : submitpapercut ( p ) {... i f ( P o l i c y. apply ( usr. g e t I d ( ),..., phase ) = = Deny ) { System. e r r. p r i n t l n ( " Access Denied. " ) ; throw new AccessControlException ( ) ; } } Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 16 FMSE,
36 Aspects for Access Control 1 Capture the policy environment 2 Identify access requests 3 Give the control to the reference monitor: advice code 4 Weave the policy rules: AspectJ compiler Example before ( Paper p ) : submitpapercut ( p ) {... i f ( P o l i c y. apply ( usr. g e t I d ( ),..., phase ) = = Deny ) { System. e r r. p r i n t l n ( " Access Denied. " ) ; throw new AccessControlException ( ) ; } } Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 16 FMSE,
37 Weaving rules using AspectJ and Tom TOM Policy.t compiler Policy.java Policy.class Aspect.java AspectJ compiler Program.java Program.class Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 17 FMSE,
38 Considerations Overhead: balanced with modularity and better security Proving policy properties increases trust: consistency, completeness, termination Policies also need to be protected against malicious or unaware developers Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 18 FMSE,
39 Related works Static analyzers e.g. Java bytecode verifier Formalization of run-time execution monitors [Schneider, 2000, Ligatti et al., 2005] Program rewriters(at compile or load time) [Erlingsson and Schneider, 2000, Evans and Twyman, 1999, Bauer et al., 2005] Other approaches that use AOP for policy enforcement [Song et al., 2005, Cuppens et al., 2006] Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 19 FMSE,
40 Summary and Future Works We presented a methodology to weave expressive rewrite-based policies into existing Java programs Developers can formally specify policies and reuse them in a flexible enforcement scheme We have implemented a number of examples to test the robustness of the approach Future works To automate the generation of pointcuts To provide more fine-tuned analysis for policies Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 20 FMSE,
41 Consistency. Definition (Consistency) A security policy is consistent if for every query evaluation, at most one decision is computed. Confluence q t 1 t 2 Return Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 21 FMSE,
42 Consistency. Definition (Consistency) A security policy is consistent if for every query evaluation, at most one decision is computed. Confluence q t 1 d t 2 Return Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 21 FMSE,
43 Consistency. Definition (Consistency) A security policy is consistent if for every query evaluation, at most one decision is computed. Confluence q t 1 t 2 Return Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 22 FMSE,
44 Consistency. Definition (Consistency) A security policy is consistent if for every query evaluation, at most one decision is computed. Confluence q t 1 d t 2 Return Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 22 FMSE,
45 Termination. Definition (Termination) A security policy is terminating if every request evaluation is finite. Powerful proof techniques: dependency pairs, recursive path orderings, etc Several automated tools for proving termination are available: AProVE, TTT, CiME, etc. Return Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 23 FMSE,
46 Termination. Definition (Termination) A security policy is terminating if every request evaluation is finite. Powerful proof techniques: dependency pairs, recursive path orderings, etc Several automated tools for proving termination are available: AProVE, TTT, CiME, etc. Return Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 24 FMSE,
47 Completeness. Definition (Completeness) A security policy is complete if for every request its evaluation returns an access decision. Return q d t... Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 25 FMSE,
48 Completeness. Definition (Completeness) A security policy is complete if for every request its evaluation returns an access decision. Return q d d d Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 25 FMSE,
49 Completeness. Definition (Completeness) A security policy is complete if for every request its evaluation returns an access decision. Return q d t... Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 26 FMSE,
50 Completeness. Definition (Completeness) A security policy is complete if for every request its evaluation returns an access decision. Return q d d d Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 26 FMSE,
51 For Further Information I Bauer, L., Ligatti, J., and Walker, D. (2005). Composing security policies with polymer. In PLDI 05: Proceedings of the 2005 ACM SIGPLAN conference on Programming language design and implementation, pages , New York, NY, USA. ACM Press. Cuppens, F., Cuppens-Boulahia, N., and Ramard, T. (2006). Availability enforcement by obligations and aspects identification. In ARES, pages IEEE Computer Society. Erlingsson, U. and Schneider, F. B. (2000). Sasi enforcement of security policies: a retrospective. In NSPW 99: Proceedings of the 1999 workshop on New security paradigms, pages 87 95, New York, NY, USA. ACM Press. Evans, D. and Twyman, A., editors (1999). Flexible Policy-Directed Code Safety, IEEE Symposium on Security and Privacy, IEEE Computer Society. Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 27 FMSE,
52 For Further Information II Ligatti, J., Bauer, L., and Walker, D. (2005). Enforcing non-safety security policies with program monitors. In di Vimercati, S. D. C., Syverson, P. F., and Gollmann, D., editors, ESORICS, volume 3679 of Lecture Notes in Computer Science, pages Springer. Schneider, F. B. (2000). Enforceable security policies. ACM Trans. Inf. Syst. Secur., 3(1): Song, E., Reddy, R., France, R. B., Ray, I., Georg, G., and Alexander, R. (2005). Verifiable composition of access control and application features. In Ferrari, E. and Ahn, G.-J., editors, SACMAT, pages ACM. Oliveira, Wang, Kirchner, Kirchner Weaving Rewrite-Based Access Control 28 FMSE,
Rules and Strategies in Java
Electronic Notes in Theoretical Computer Science 204 (2008) 71 82 www.elsevier.com/locate/entcs Rules and Strategies in Java Pierre-Etienne Moreau and Antoine Reilles INRIA & INPL & Loria (moreau reilles)@loria.fr
More informationPoliSeer: A Tool for Managing Complex Security Policies
PoliSeer: A Tool for Managing Complex Security Policies Daniel Lomsak and Jay Ligatti University of South Florida Department of Computer Science and Engineering {dlomsak,ligatti}@cse.usf.edu Abstract.
More informationLoPSiL: A Location-based Policyspecification
LoPSiL: A Location-based Policyspecification Language Jay Ligatti, Billy Rickey, and Nalin Saigal Department of Computer Science and Engineering, University of South Florida 1/51 Introduction Policy-specification
More informationTracechecks: Defining semantic interfaces with temporal logic
Tracechecks Defining semantic interfaces with temporal logic Eric Bodden 1 Volker Stolz 2 1 Sable Research Group McGill University, Montréal, Canada 2 MOVES: Software Modeling and Verification RWTH Aachen
More informationTake Control with AspectJ
Hermod Opstvedt Chief Architect DnB NOR ITUD Common components Hermod Opstvedt Slide 1 What is AspectJ? Aspect-oriented programming (AOP) is a technique for improving separation of concerns. Crosscutting
More informationDynamic Information Management and Exchange for Command and Control Applications
AFRL-AFOSR-UK-TR-2015-0026 Dynamic Information Management and Exchange for Command and Control Applications Maribel Fernandez KING S COLLEGE LONDON THE STRAND LONDON WC2R 2LS UNITED KINGDOM EOARD GRANT
More informationA short introduction to INF329. Spring AOP
A short introduction to INF329 Spring AOP Introduction to AOP AOP is an abbreviation for aspectoriented programming Aspect-oriented programming is a new paradigm in programming, seperating functionality
More informationChapter 7. Modular Refactoring. 7.1 Introduction to Modular Refactoring
Chapter 7 Modular Refactoring I n this chapter, the role of Unified Modeling Language (UML) diagrams and Object Constraint Language (OCL) expressions in modular refactoring have been explained. It has
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 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 informationLanguage support for AOP
Language support for AOP AspectJ and beyond Mario Südholt www.emn.fr/sudholt INRIA and École des Mines de Nantes OBASCO project, Nantes, France Language support for AOP ; Mario Südholt; INRIA/EMN; March
More informationProceedings of Student Research Day, CSIS, Pace University, May 9th, Current Approaches to Policy based Security. A. L.
Proceedings of Student Research Day, CSIS, Pace University, May 9th, 2003 Current Approaches to Policy based Security A. L. Gottlieb ABSTRACT The effort to combat the effects of malicious software on unwary
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 informationA Novel Approach to Unit Testing: The Aspect-Oriented Way
A Novel Approach to Unit Testing: The Aspect-Oriented Way Guoqing Xu and Zongyuan Yang Software Engineering Lab, Department of Computer Science East China Normal University 3663, North Zhongshan Rd., Shanghai
More informationUsing Aspect-Oriented Programming to extend Protégé. Henrik Eriksson Linköping University
Using Aspect-Oriented Programming to extend Protégé Henrik Eriksson Linköping University Questions about MOP and Protégé Original goal: Extending the JessTab plug-in What is the class precedence in Protégé?
More informationA Type System for Functional Traversal-Based Aspects
A Type System for Functional Traversal-Based Aspects Bryan Chadwick and Karl Lieberherr March 2 nd 2009 1 / 30 Outline Introduction Example (Pure) Semantics Example (Full Dispatch) Type System Soundness
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 informationAPTE: Automated Pointcut Testing for AspectJ Programs
APTE: Automated Pointcut Testing for AspectJ Programs Prasanth Anbalagan Department of Computer Science North Carolina State University Raleigh, NC 27695 panbala@ncsu.edu Tao Xie Department of Computer
More informationAn Aspect-Oriented Approach. Henrique Rebêlo Informatics Center
An Aspect-Oriented Approach to implement JML Features Henrique Rebêlo Informatics Center Federal University of Pernambuco Summary jmlc problems bigger code, slower code, no suppport for Java ME, and bad
More informationJML and Aspects: The Benefits of
JML and Aspects: The Benefits of Instrumenting JML Features with AspectJ Henrique Rebêlo Sérgio Soares Ricardo Lima Paulo Borba Márcio Cornélio Java Modeling Language Formal specification language for
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 informationCourse 6 7 November Adrian Iftene
Course 6 7 November 2016 Adrian Iftene adiftene@info.uaic.ro 1 Recapitulation course 5 BPMN AOP AOP Cross cutting concerns pointcuts advice AspectJ Examples In C#: NKalore 2 BPMN Elements Examples AOP
More informationEnforcing Interaction Properties in AOSD-Enabled Systems
Enforcing Interaction Properties in AOSD-Enabled Systems Constantin Serban Department of Computer Science Rutgers University 110 Frelinghuysen Rd. Piscataway, NJ 08854 USA serban@cs.rutgers.edu Shmuel
More informationIntegration of Application Business Logic and Business Rules with DSL and AOP
Integration of Application Business Logic and Business Rules with DSL and AOP Bogumiła Hnatkowska and Krzysztof Kasprzyk Wroclaw University of Technology, Wyb. Wyspianskiego 27 50-370 Wroclaw, Poland Bogumila.Hnatkowska@pwr.wroc.pl
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 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 informationAOP 101: Intro to Aspect Oriented Programming. Ernest Hill
AOP 101: Intro to Aspect Oriented Programming ernesthill@earthlink.net AOP 101-1 AOP 101: Aspect Oriented Programming Goal of Software History of Programming Methodology Remaining Problem AOP to the Rescue
More informationAssertion with Aspect
Assertion with Aspect Takashi Ishio, Toshihiro Kamiya, Shinji Kusumoto, Katsuro Inoue Graduate School of Engineering Science, PRESTO, Japan Science and Technology Agency Osaka University 1-3 Machikaneyama-cho,
More informationSo, What is an Aspect?
Introduction to AspectJ Aspect-oriented paradigm AspectJ constructs Types of Join Points Primitive Lexical designators Type designators Control flow Types of Advice Before After Around Receptions Join
More informationIntroduction to. Bruno Harbulot. ESNW, the University of Manchester.
Introduction to Aspect-Oriented Software Development Bruno Harbulot ESNW, the University of Manchester http://www.cs.man.ac.uk/~harbulob/ ELF Developers' Forum Manchester - October 2005 1/24 Presentation
More informationCourse 7 25 November Adrian Iftene
Course 7 25 November 2013 Adrian Iftene adiftene@info.uaic.ro 1 Recapitulation course 6 AOP AOP Profiler Tracing Pooling PostSharp Spring Framework Runtime Verification Model Checking MOP Java MOP 2 Concern
More informationLanguage Oriented Modularity: From Theory to Practice
Language Oriented Modularity: From Theory to Practice Arik Hadas Dept. of Mathematics and Computer Science The Open University of Israel Joint Work With: David H. Lorenz Language Oriented Modularity (LOM)
More informationDynamic Weaving for Building Reconfigurable Software Systems
Dynamic Weaving for Building Reconfigurable Software Systems FAISAL AKKAWI Akkawi@cs.iit.edu Computer Science Dept. Illinois Institute of Technology Chicago, IL 60616 ATEF BADER abader@lucent.com Lucent
More informationStrategic Programming in Java
1 Strategic Programming in Java Pierre-Etienne Moreau Antoine Reilles Software Transformation Systems Workshop October, 22 nd, 2006 2 Motivations Rule Based Programming is a nice idea! We interested in
More informationAnalyzing effect of Aspect Oriented concepts in design and implementation of design patterns with case study of Observer Pattern
Analyzing effect of Aspect Oriented concepts in design and implementation of design patterns with case study of Observer Pattern Deepali A. Bhanage 1, Sachin D. Babar 2 Sinhgad Institute of Technology,
More informationISR 2014 Strategies. Hélène KIRCHNER Inria. August Topics, Objectives, Contents. Hélène KIRCHNER Inria ISR 2014 Strategies 1 / 48
ISR 2014 Strategies Hélène KIRCHNER Inria August 2014 Topics, Objectives, Contents Hélène KIRCHNER Inria ISR 2014 Strategies 1 / 48 Computation, Deduction and Strategies Series of workshops since 1997
More informationInformation systems modeling. Tomasz Kubik
Information systems modeling Tomasz Kubik Aspect-oriented programming, AOP Systems are composed of several components, each responsible for a specific piece of functionality. But often these components
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 informationCAP - Advanced Programming Concepts
Coordinating unit: 270 - FIB - Barcelona School of Informatics Teaching unit: 723 - CS - Department of Computer Science Academic year: Degree: 2017 BACHELOR'S DEGREE IN INFORMATICS ENGINEERING (Syllabus
More informationMobile and Context-aware Interactive Systems
Mobile and Context-aware Interactive Systems Gaëlle Calvary Grenoble INP Laboratoire d Informatique de Grenoble (LIG) Core concepts Principles Terminology For more information, see Sara Bouchenak s M1
More informationAspect-Oriented Generation of the API Documentation for AspectJ
Aspect-Oriented Generation of the API Documentation for AspectJ Michihiro Horie Tokyo Institute of Technology 2-12-1 Ohkayama, Meguro-ku, Tokyo 152-8552, Japan www.csg.is.titech.ac.jp/ horie Shigeru Chiba
More informationExploring Possibilities for Symmetric Implementation of Aspect-Oriented Design Patterns in Scala
Exploring Possibilities for Symmetric Implementation of Aspect-Oriented Design Patterns in Scala Pavol PIDANIČ Slovak University of Technology in Bratislava Faculty of Informatics and Information Technologies
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 informationComposition Graphs: a Foundation for Reasoning about Aspect-Oriented Composition
s: a Foundation for Reasoning about Aspect-Oriented - Position Paper - István Nagy Mehmet Aksit Lodewijk Bergmans TRESE Software Engineering group, Faculty of Computer Science, University of Twente P.O.
More informationc Copyright 2004, Vinicius Cardoso Garcia, Eduardo Kessler Piveta, Daniel Lucrédio, Alexandre Alvaro, Eduardo Santana de Almeida, Antonio Francisco
c Copyright 2004, Vinicius Cardoso Garcia, Eduardo Kessler Piveta, Daniel Lucrédio, Alexandre Alvaro, Eduardo Santana de Almeida, Antonio Francisco do Prado, Luiz Carlos Zancanella. Permission is granted
More informationHOW AND WHEN TO FLATTEN JAVA CLASSES?
HOW AND WHEN TO FLATTEN JAVA CLASSES? Jehad Al Dallal Department of Information Science, P.O. Box 5969, Safat 13060, Kuwait ABSTRACT Improving modularity and reusability are two key objectives in object-oriented
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 informationAnalysis and Research on the Automated Generation of Unit Test
1+, 1 1, 1 (, 200062) Analysis and Research on the Automated Generation of Unit Test XU Guo-qing 1+, YANG Zong-yuan 1, HUANG Hai-tao 1 1 (Software Engineering Lab, Department of Computer Science, East
More informationCalFuzzer: An Extensible Active Testing Framework for Concurrent Programs Pallavi Joshi 1, Mayur Naik 2, Chang-Seo Park 1, and Koushik Sen 1
CalFuzzer: An Extensible Active Testing Framework for Concurrent Programs Pallavi Joshi 1, Mayur Naik 2, Chang-Seo Park 1, and Koushik Sen 1 1 University of California, Berkeley, USA {pallavi,parkcs,ksen}@eecs.berkeley.edu
More informationA Type System for Functional Traversal-Based Aspects
A Type System for Functional Traversal-Based Aspects Bryan Chadwick College of Computer & Information Science Northeastern University, 360 Huntington Avenue Boston, Massachusetts 02115 USA chadwick@ccs.neu.edu
More informationDynamic Weaving for Building Reconfigurable Software Systems
Dynamic Weaving for Building Reconfigurable Software Systems JAGDISH LAKHANI lakhjag@iitedu Computer Science Dept Illinois Institute of Technology Chicago, IL 60616 FAISAL AKKAWI akkawif@iitedu Computer
More informationA Framework for Enforcing Constrained RBAC Policies
A Framework for Enforcing Constrained RBAC Policies Jason Crampton Information Security Group Royal Holloway, University of London jason.crampton@rhul.ac.uk Hemanth Khambhammettu Information Security Group
More informationCopyright IBM Corporation 2004.All rights reserved.
Copyright IBM Corporation 2004.All rights reserved. http://www-106.ibm.com/developerworks/rational/library/2782.html Search help A look at aspect-oriented programming Gary Pollice Worcester Polytechnic
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 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 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 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 informationIdioms for Building Software Frameworks in AspectJ
Idioms for Building Software Frameworks in AspectJ Stefan Hanenberg 1 and Arno Schmidmeier 2 1 Institute for Computer Science University of Essen, 45117 Essen, Germany shanenbe@cs.uni-essen.de 2 AspectSoft,
More informationAspect Oriented Programming
1 Aspect Oriented Programming Programming Languages Seminar Presenter: Barış Aktemur University of Illinois 18 Feb. 2004 Mostly taken from Bedir Tekinerdogan s slides Outline Introduction Problems Terminology
More informationAJDT: Getting started with Aspect-Oriented Programming in Eclipse
AJDT: Getting started with Aspect-Oriented Programming in Eclipse Matt Chapman IBM Java Technology Hursley, UK AJDT Committer Andy Clement IBM Java Technology Hursley, UK AJDT & AspectJ Committer Mik Kersten
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 informationComparative Evaluation of Programming Paradigms: Separation of Concerns with Object-, Aspect-, and Context-Oriented Programming
Comparative Evaluation of Programming Paradigms: Separation of Concerns with Object-, Aspect-, and Context-Oriented Programming Fumiya Kato, Kazunori Sakamoto, Hironori Washizaki, and Yoshiaki Fukazawa
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 informationAspect-Oriented Programming and Aspect-J
Aspect-Oriented Programming and Aspect-J TDDD05 Ola Leifer Most slides courtesy of Jens Gustafsson and Mikhail Chalabine Outline: Aspect-Oriented Programming New concepts introduced Crosscutting concern
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 informationWhen Java technology burst onto the Internet scene in 1995,
MOBILE CODE SECURITY SECURE JAVA CLASS LOADING The class loading mechanism, LI GONG Sun Microsystems central to Java, plays a key role in JDK 1.2 by enabling When Java technology burst onto the Internet
More informationTechnical presentation
TOWARDS A COGNITIVE COMPUTING PLATFORM SUPPORTING A UNIFIED APPROACH TOWARDS PRIVACY, SECURITY AND SAFETY (PSS) OF IOT SYSTEMS The VESSEDIA Project Technical presentation Armand PUCCETTI, CEA Rome, 11th
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 informationSimulation on Agent-based Onion Routing Network *
National Research Council Canada Institute for Information Technology Conseil national de recherches Canada Institut de technologie de l'information Simulation on Agent-based Onion Routing Network * Song,
More informationTest-Case Generation for Runtime Analysis and Vice-Versa: Verification of Aircraft Separation Assurance
Test-Case Generation for Runtime Analysis and Vice-Versa: Verification of Aircraft Separation Assurance Marko Dimjašević University of Utah Dimitra Giannakopoulou NASA Ames Research Center ISSTA 2015,
More informationAspect Oriented Programming with AspectJ. Ted Leung Sauria Associates, LLC
Aspect Oriented Programming with AspectJ Ted Leung Sauria Associates, LLC twl@sauria.com Overview Why do we need AOP? What is AOP AspectJ Why do we need AOP? Modular designs are not cut and dried Responsibilities
More informationOn Meaning Preservation of a Calculus of Records
On Meaning Preservation of a Calculus of Records Emily Christiansen and Elena Machkasova Computer Science Discipline University of Minnesota, Morris Morris, MN 56267 chri1101, elenam@morris.umn.edu Abstract
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 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 informationA Unit Testing Framework for Aspects without Weaving
A Unit Testing Framework for Aspects without Weaving Yudai Yamazaki l01104@sic.shibaura-it.ac.jp Kouhei Sakurai sakurai@komiya.ise.shibaura-it.ac.jp Saeko Matsuura matsuura@se.shibaura-it.ac.jp Hidehiko
More informationInsECTJ: A Generic Instrumentation Framework for Collecting Dynamic Information within Eclipse
InsECTJ: A Generic Instrumentation Framework for Collecting Dynamic Information within Eclipse Arjan Seesing and Alessandro Orso College of Computing Georgia Institute of Technology a.c.seesing@ewi.tudelft.nl,
More informationAspect Weaving DyMAC middleware. by Tonje Klykken, INF5360 May 6th 2008
Aspect Weaving DyMAC middleware by Tonje Klykken, INF5360 May 6th 2008 Agenda Brief AOP/AOSD motivation and concepts Problem description and refinement DyMAC component model DyMAC architecture model Analysis
More informationInformation 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 informationEfficient Separate Compilation of Object-Oriented Languages
Efficient Separate Compilation of Object-Oriented Languages Jean Privat, Floréal Morandat, and Roland Ducournau LIRMM Université Montpellier II CNRS 161 rue Ada 34392 Montpellier cedex 5, France {privat,morandat,ducour}@lirmm.fr
More informationTom: Piggybacking Rewriting on Java
Author manuscript, published in "Conference on Rewriting Techniques and Applications - RTA'07, Paris/France : (2007)" Tom: Piggybacking Rewriting on Java Emilie Balland 1, Paul Brauner 1, Radu Kopetz 2,
More informationXFindBugs: extended FindBugs for AspectJ
XFindBugs: extended FindBugs for AspectJ Haihao Shen, Sai Zhang, Jianjun Zhao, Jianhong Fang, Shiyuan Yao Software Theory and Practice Group (STAP) Shanghai Jiao Tong University, China A code Is there
More informationELAN. A rule-based programming language. Hélène Kirchner and Pierre-Etienne Moreau LORIA CNRS INRIA Nancy, France
ELAN A rule-based programming language Hélène Kirchner and Pierre-Etienne Moreau LORIA CNRS INRIA Nancy, France Introduction Overview General presentation ELAN: simple part (computation) ELAN: advanced
More informationOverview of AspectOPTIMA
COMP-667 Software Fault Tolerance Overview of AspectOPTIMA Jörg Kienzle School of Computer Science McGill University, Montreal, QC, Canada With Contributions From: Samuel Gélineau, Ekwa Duala-Ekoko, Güven
More informationExtracting the Range of cps from Affine Typing
Extracting the Range of cps from Affine Typing Extended Abstract Josh Berdine, Peter W. O Hearn Queen Mary, University of London {berdine, ohearn}@dcs.qmul.ac.uk Hayo Thielecke The University of Birmingham
More informationCOMPOSABILITY, PROVABILITY, REUSABILITY (CPR) FOR SURVIVABILITY
AFRL-IF-RS-TR-2002-61 Final Technical Report April 2002 COMPOSABILITY, PROVABILITY, REUSABILITY (CPR) FOR SURVIVABILITY Kestrel Institute Sponsored by Defense Advanced Research Projects Agency DARPA Order
More informationCatBAC: A Generic Framework for Designing and Validating Hybrid Access Control Models
CatBAC: A Generic Framework for Designing and Validating Hybrid Access Control Models Bernard Stepien Hemanth Khambhammettu Kamel Adi Luigi Logrippo Department of Computer Science and Engineering, University
More informationA Flexible Architecture for Enforcing and Composing Policies in a Service-Oriented Environment
A Flexible Architecture for Enforcing and Composing Policies in a Service-Oriented Environment Tom Goovaerts, Bart De Win, and Wouter Joosen DistriNet Research Group, Katholieke Universiteit Leuven Celestijnenlaan
More informationSymbolic Evaluation of Sums for Parallelising Compilers
Symbolic Evaluation of Sums for Parallelising Compilers Rizos Sakellariou Department of Computer Science University of Manchester Oxford Road Manchester M13 9PL United Kingdom e-mail: rizos@csmanacuk Keywords:
More informationSCALA AND ASPECTJ. Approaching Modularizing of Crosscutting. Ramnivas Laddad. Concerns. ramnivas
SCALA AND ASPECTJ Approaching Modularizing of Crosscutting Concerns Ramnivas Laddad ramnivas ramnivas!com @ramnivas Copyright Ramnivas Laddad. All rights reserved. @ramnivas Spring framework committer
More informationPL Punta Arenas
PL 2008 - Punta Arenas Aspects, Processes, and Components Jacques Noyé OBASCO - Ecole des Mines de Nantes/INRIA, LINA Jacques.Noye@emn.fr 12 November 2008 Introduction The basic idea There is usually no
More informationSchool of Informatics, University of Edinburgh
CS1Bh Practical 1 Words and Sentences This is an individual practical exercise which requires you to submit some Java programs and some text files for assessment. A system which measures software similarity
More informationJay Ligatti and Srikar Reddy University of South Florida
Jay Ligatti and Srikar Reddy University of South Florida Also known as runtime/security/program monitors Ubiquitous Operating systems (e.g., file access control) Virtual machines (e.g., stack inspection)
More informationStratego: A Language for Program Transformation Based on Rewriting Strategies
Stratego: A Language for Program Transformation Based on Rewriting Strategies System Description of Stratego 0.5 Eelco Visser Institute of Information and Computing Sciences, Universiteit Utrecht, P.O.
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 informationHomework 5: Aspect-Oriented Programming and AspectJ
Com S 541 Programming Languages 1 November 30, 2005 Homework 5: Aspect-Oriented Programming and AspectJ Due: Tuesday, December 6, 2005. This homework should all be done individually. Its purpose is to
More informationXAJ: An Extensible Aspect Oriented Language
XAJ: An Extensible Aspect Oriented Language Leonardo V. S. Reis, Roberto S. Bigonha, Mariza A. S. Bigonha Departamento de Ciência da Computação Universidade Federal de Minas Gerais Belo Horizonte, Brazil
More informationBlack-Box Program Specialization
Published in Technical Report 17/99, Department of Software Engineering and Computer Science, University of Karlskrona/Ronneby: Proceedings of WCOP 99 Black-Box Program Specialization Ulrik Pagh Schultz
More informationASPECTUAL PATTERNS FOR WEB SERVICES ADAPTATION
ASPECTUAL PATTERNS FOR WEB SERVICES ADAPTATION Najme Abbasi Tehrani and Afshin Salajegheh Department of Computer Engineering, South Tehran Branch, Islamic Azad University, Tehran, Iran ABSTRACT The security
More informationConcurrent Programming Constructs and First-Class Logic Engines
Concurrent Programming Constructs and First-Class Logic Engines Paul Tarau University of North Texas tarau@cs.unt.edu Multi-threading has been adopted in today s Prolog implementations as it became widely
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 information