Concurrency problems, such as deadlocks, should be identified early in the design process. This is made increasingly difficult as larger and more complex concurrent systems are being developed. We propose here an approach, based on the analysis of specific models expressed in the Unified Modeling Language (UML) that uses a specifically designed genetic algorithm to detect deadlocks. Our main motivations are (1) to devise practical solutions that are applicable in the context of UML design without requiring additional modeling and (2) to achieve scalable automation. All relevant concurrency information is extracted from systems' UML models that comply with the UML Schedulability, Performance and Time profile, a standardized specialization of UML for real-time, concurrent systems. Our genetic algorithm is then used to search for execution sequences exhibiting deadlocks. Results on three case studies show that our approach can achieve efficient results.

Additional Metadata
Keywords Concurrent systems, Deadlocks, Genetic algorithms, MDD, Model analysis, SPT, UML
Persistent URL dx.doi.org/10.1007/978-3-540-87875-9_34
Citation
Shousha, M. (Marwa), Briand, L. (Lionel), & Labiche, Y. (2008). A UML/SPT model analysis methodology for concurrent systems based on genetic algorithms. doi:10.1007/978-3-540-87875-9_34