• DocumentCode
    805090
  • Title

    Architectural-level risk analysis using UML

  • Author

    Goseva-Popstojanova, Katerina ; Hassan, Ahmed ; Guedem, Ajith ; Abdelmoez, Walid ; Nassar, Diaa Eldin M ; Ammar, Hany ; Mili, Ali

  • Author_Institution
    Dept. of Electr. & Comput. Eng., West Virginia Univ., Morgantown, WV, USA
  • Volume
    29
  • Issue
    10
  • fYear
    2003
  • Firstpage
    946
  • Lastpage
    960
  • Abstract
    Risk assessment is an essential part in managing software development. Performing risk assessment during the early development phases enhances resource allocation decisions. In order to improve the software development process and the quality of software products, we need to be able to build risk analysis models based on data that can be collected early in the development process. These models will help identify the high-risk components and connectors of the product architecture, so that remedial actions may be taken in order to control and optimize the development process and improve the quality of the product. In this paper, we present a risk assessment methodology which can be used in the early phases of the software life cycle. We use the Unified Modeling Language (UML) and commercial modeling environment Rational Rose Real Time (RoseRT) to obtain UML model statistics. First, for each component and connector in software architecture, a dynamic heuristic risk factor is obtained and severity is assessed based on hazard analysis. Then, a Markov model is constructed to obtain scenarios risk factors. The risk factors of use cases and the overall system risk factor are estimated using the scenarios risk factors. Within our methodology, we also identify critical components and connectors that would require careful analysis, design, implementation, and more testing effort. The risk assessment methodology is applied on a pacemaker case study.
  • Keywords
    Markov processes; risk management; software architecture; specification languages; UML; Unified Modeling Language; dynamic coupling; risk assessment; severity of failure; software architecture; software development; software life cycle; Computer architecture; Connectors; Programming; Resource management; Risk analysis; Risk management; Software development management; Software quality; Statistics; Unified modeling language;
  • fLanguage
    English
  • Journal_Title
    Software Engineering, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0098-5589
  • Type

    jour

  • DOI
    10.1109/TSE.2003.1237174
  • Filename
    1237174