Genetic programming: on the programming of computers by means of natural selection
Genetic programming: on the programming of computers by means of natural selection
Safeware: system safety and computers
Safeware: system safety and computers
Parallel recombinative simulated annealing: a genetic algorithm
Parallel Computing
Eraser: a dynamic data race detector for multithreaded programs
ACM Transactions on Computer Systems (TOCS)
Practical genetic algorithms
Type-based race detection for Java
PLDI '00 Proceedings of the ACM SIGPLAN 2000 conference on Programming language design and implementation
Extended static checking for Java
PLDI '02 Proceedings of the ACM SIGPLAN 2002 Conference on Programming language design and implementation
MDA Explained: The Model Driven Architecture: Practice and Promise
MDA Explained: The Model Driven Architecture: Practice and Promise
Types for safe locking: Static race detection for Java
ACM Transactions on Programming Languages and Systems (TOPLAS)
First Experiments Using the UML Profile for MARTE
ISORC '08 Proceedings of the 2008 11th IEEE Symposium on Object Oriented Real-Time Distributed Computing
Dataflow analysis for concurrent programs using datarace detection
Proceedings of the 2008 ACM SIGPLAN conference on Programming language design and implementation
UML Activity Diagram Based Testing of Java Concurrent Programs for Data Race and Inconsistency
ICST '08 Proceedings of the 2008 International Conference on Software Testing, Verification, and Validation
An Execution Framework for MARTE-Based Models
ICECCS '08 Proceedings of the 13th IEEE International Conference on on Engineering of Complex Computer Systems
A UML/SPT Model Analysis Methodology for Concurrent Systems Based on Genetic Algorithms
MoDELS '08 Proceedings of the 11th international conference on Model Driven Engineering Languages and Systems
Fast and accurate static data-race detection for concurrent programs
CAV'07 Proceedings of the 19th international conference on Computer aided verification
Hi-index | 0.00 |
The earlier concurrency problems are identified, the less costly they are to fix. As larger, more complex concurrent systems are developed, early detection of problems is made increasingly difficult. We have developed a general approach meant to be used in the context of Model Driven Development. Our approach is based on the analysis of design models expressed in the Unified Modeling Language (UML) and uses specifically designed genetic algorithms to detect concurrency problems. Our main motivation is to devise practical solutions that are applicable in the context of UML design of concurrent systems without requiring additional modeling. All relevant concurrency information is extracted from UML models that comply with the UML Modeling and Analysis of Real-Time and Embedded Systems (MARTE) profile. Our approach was shown to work for both deadlocks and starvation. The current paper addresses data race detection, further illustrating how our approach can be tailored to other concurrency issues. Results on a case study inspired from the Therac-25 radiation machine show that our approach is effective in the detection of data races.