Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Pattern-oriented software architecture: a system of patterns
Pattern-oriented software architecture: a system of patterns
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
Unit testing in multi-agent systems using mock agents and aspects
Proceedings of the 2006 international workshop on Software engineering for large-scale multi-agent systems
Aspect-oriented software development
Aspect-oriented software development
On the interplay of exception handling and design by contract: an aspect-oriented recovery approach
Proceedings of the 13th Workshop on Formal Techniques for Java-Like Programs
Hi-index | 0.00 |
Modern applications are typically complex, multithreaded, distributed, and often should provide real-time responses and small-footprint. Due to such characteristics, most often, it is hard to understand the behavior of such systems and consequently detect the root causes of performance or reliability problems. In order to collect information about system's runtime behavior - operations' performance, internal threads status - the system developer is required to instrument the target application (and sometimes also its execution platform). Such monitoring code which allows the developer to reason about the code execution is not localized in a single application module; it must be included in many modules. As a consequence, the monitoring concern tends to be scattered across multiple application/platform modules and tangled with other application concerns. The Application Monitor pattern supports the separate definition of monitoring-related functionalities concerns through the use of aspect-oriented programming. It decouples such concerns from the implementation of application-specific concerns, which in turn improves the system reusability and maintainability.