Software engineering concepts
An overview of the SR language and implementation
ACM Transactions on Programming Languages and Systems (TOPLAS)
Concurrent program structures
Data path debugging: data-oriented debugging for a concurrent programming language
PADD '88 Proceedings of the 1988 ACM SIGPLAN and SIGOPS workshop on Parallel and distributed debugging
How to write parallel programs: a guide to the perplexed
ACM Computing Surveys (CSUR)
The C Information Abstraction System
IEEE Transactions on Software Engineering
Program understanding: challenge for the 1990's
IBM Systems Journal
Reverse engineering: algorithms for program graph production
Software—Practice & Experience
Hermes: a language for distributed computing
Hermes: a language for distributed computing
Ada task taxonomy support for concurrent programming
ACM SIGSOFT Software Engineering Notes
Software reverse engineering: a case study
Software—Practice & Experience
A measure for composite module cohesion
ICSE '92 Proceedings of the 14th international conference on Software engineering
Configuring object-based distributed programs in REXX
Software Engineering Journal - Object-oriented systems
Software complexity and maintenance costs
Communications of the ACM
Process clustering for distributed debugging
PADD '93 Proceedings of the 1993 ACM/ONR workshop on Parallel and distributed debugging
An intelligent tool for re-engineering software modularity
ICSE '91 Proceedings of the 13th international conference on Software engineering
Communications of the ACM
SPSS-X Advanced Statistics Guide
SPSS-X Advanced Statistics Guide
Reverse Engineering and Design Recovery: A Taxonomy
IEEE Software
A linear-time heuristic for improving network partitions
DAC '82 Proceedings of the 19th Design Automation Conference
A prototype debugger for Hermes
CASCON '92 Proceedings of the 1992 conference of the Centre for Advanced Studies on Collaborative research - Volume 1
The use of process clustering in distributed-system event displays
CASCON '93 Proceedings of the 1993 conference of the Centre for Advanced Studies on Collaborative research: software engineering - Volume 1
Services supporting management of distributed applications and systems
IBM Systems Journal
Approaches to clustering for program comprehension and remodularization
Advances in software engineering
Logical Clock Requirements for Reverse Engineering Scenarios from a Distributed System
IEEE Transactions on Software Engineering
High-Level Views of Distributed Executions: Convex Abstract Events
Automated Software Engineering
An Approach for Recovering Distributed System Architectures
Automated Software Engineering
Assessing the relevance of identifier names in a legacy software system
CASCON '98 Proceedings of the 1998 conference of the Centre for Advanced Studies on Collaborative research
Enhancing Partial-Order Reduction via Process Clustering
Proceedings of the 16th IEEE international conference on Automated software engineering
A user-assisted approach to component clustering
Journal of Software Maintenance: Research and Practice
Cluster-Based Partial-Order Reduction
Automated Software Engineering
An improved methodology on information distillation by mining program source code
Data & Knowledge Engineering
Automatic threshold estimation for data matching applications
SBBD '08 Proceedings of the 23rd Brazilian symposium on Databases
Clustering for Monitoring Software Systems Maintainability Evolution
Electronic Notes in Theoretical Computer Science (ENTCS)
WSEAS Transactions on Computers
Automatic threshold estimation for data matching applications
Information Sciences: an International Journal
Hi-index | 0.00 |
Distributed applications written in Hermes typically consist of a large number of sequential processes. The use of a hierarchy of process clusters can facilitate the debugging of such applications. Ideally, such a hierarchy should be derived automatically. This paper discusses two approaches to automatic process clustering, one analyzing runtime information with a statistical approach and one utilizing additional semantic information. Tools realizing these approaches were developed and a quantitative measure to evaluate process clusters is proposed. The results obtained under both approaches are compared, and indicate that the additional semantic information improves the cluster hierarchies derived. We demonstrate the value of automatic process clustering with an example. It is shown how appropriate process clusters reduce the complexity of the understanding process, facilitating program maintenance activities such as debugging.