• DocumentCode
    1398670
  • Title

    A UML/MARTE Model Analysis Method for Uncovering Scenarios Leading to Starvation and Deadlocks in Concurrent Systems

  • Author

    Shousha, Marwa ; Briand, Lionel ; Labiche, Yvan

  • Author_Institution
    Dept. of Syst. & Comput. Eng., Carleton Univ., Ottawa, ON, Canada
  • Volume
    38
  • Issue
    2
  • fYear
    2012
  • Firstpage
    354
  • Lastpage
    374
  • Abstract
    Concurrency problems such as starvation and deadlocks should be identified early in the design process. As larger, more complex concurrent systems are being developed, this is made increasingly difficult. We propose here a general approach based on the analysis of specialized design models expressed in the Unified Modeling Language (UML) that uses a specifically designed genetic algorithm to detect concurrency problems. Though the current paper addresses deadlocks and starvation, we will show how the approach can be easily tailored to other concurrency issues. Our main motivations are 1) to devise solutions that are applicable in the context of the UML design of concurrent systems without requiring additional modeling and 2) to use a search technique to achieve scalable automation in terms of concurrency problem detection. To achieve the first objective, we show how all relevant concurrency information is extracted from systems´ UML models that comply with the UML Modeling and Analysis of Real-Time and Embedded Systems (MARTE) profile. For the second objective, a tailored genetic algorithm is used to search for execution sequences exhibiting deadlock or starvation problems. Scalability in terms of problem detection is achieved by showing that the detection rates of our approach are, in general, high and are not strongly affected by large increases in the size of complex search spaces.
  • Keywords
    Unified Modeling Language; concurrency control; embedded systems; genetic algorithms; search problems; software engineering; MARTE profile; UML design; UML modeling and analysis; UML models; UML-MARTE model analysis method; Unified Modeling Language; complex concurrent systems; complex search spaces; concurrency information; concurrency problem detection; concurrency problems; deadlocks; design process; embedded systems; execution sequences; genetic algorithm; real-time systems; scalable automation; search technique; specialized design models; starvation; Analytical models; Computational modeling; Concurrent computing; Data mining; Real time systems; System recovery; Unified modeling language; MARTE; MDD; Search-based software engineering; UML; concurrent systems; deadlock; genetic algorithms.; model analysis; starvation;
  • fLanguage
    English
  • Journal_Title
    Software Engineering, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0098-5589
  • Type

    jour

  • DOI
    10.1109/TSE.2010.107
  • Filename
    5661791