CA Labs and NSERC CRD
Project
“Logging, Monitoring and Diagnosis Systems for Enterprise Software
Applications”
Kostas Kontogiannis, U.
Waterloo / NTUA
John Mylopoulos, U.
Trento
Hausi Muller, U.
Victoria
Kenny Wong, U.
Alberta
To support more
business initiatives than ever before, companies integrate diverse sets of
applications into mission-critical enterprise systems. The scale and complexity
of these systems creates unprecedented development, configuration, support, and
management challenges. Even with the best intentions during system development,
unforeseen problems may still occur in an integrated production system. To
obtain a successful running system that achieves defined quality goals, such as
availability and performance, the timely detection and resolution of failures
is needed. Thus, effective diagnosis capabilities in application software,
systematic and preventative practices in the support organization, and
incremental migration toward self-healing systems are essential and strategic
objectives. The goal of this research is to investigate concepts, methods,
techniques, technologies, and tools to assess, evaluate, and evolve the logging
and diagnosis capabilities of enterprise management applications. Our project
focuses on the logging and diagnosis capabilities and failure scenarios of
selected CA Inc. applications. To extract the required information to assess
these capabilities, we will develop methods and tools based on our extensive
experience in software reverse engineering (e.g., is there sufficient
information collected in logs to diagnose a specific potential problem). To
evolve the diagnosis capabilities of existing applications, we will develop
techniques based on our software migration expertise (e.g., incremental insertion
of sensory and diagnosis capabilities). To improve failure detection and
recovery, we will explore techniques based on our autonomic computing
experience to inject self-managing capabilities (i.e., monitoring and
self-healing) and automate selected logging and diagnosis processes (e.g.,
sense the environment of the enterprise application and verify that the
initialization and configuration parameters of the application are still
valid).