• DocumentCode
    635234
  • Title

    Detecting inconsistencies in wrappers: A case study

  • Author

    Femmer, Henning ; Ganesan, D. ; Lindvall, Mikael ; McComas, Dave

  • Author_Institution
    Tech. Univ. Munchen, Munich, Germany
  • fYear
    2013
  • fDate
    18-26 May 2013
  • Firstpage
    1022
  • Lastpage
    1031
  • Abstract
    Exchangeability between software components such as operating systems, middleware, databases, and hardware components is a common requirement in many software systems. One way to enable exchangeability is to promote indirect use through a common interface and an implementation for each component that wraps the original component. As developers use the interface instead of the underlying component, they assume that the software system will behave in a specific way independently of the actual component in use. However, differences in the implementations of the wrappers may lead to different behavior when one component is changed for another, which might lead to failures in the field. This work reports on a simple, yet effective approach to detect these differences. The approach is based on tool-supported reviews leveraging lightweight static analysis and machine learning. The approach is evaluated in a case study that analyzes NASA´s Operating System Abstraction Layer (OSAL), which is used in various space missions. We detected 84 corner-case issues of which 57 turned out to be bugs that could have resulted in runtime failures.
  • Keywords
    learning (artificial intelligence); object-oriented programming; operating systems (computers); program diagnostics; system recovery; NASA Operating System Abstraction Layer; OSAL; common interface; database; hardware components; lightweight static analysis; machine learning; middleware; operating system; runtime failure; software component exchangeability; software system behavior; space mission; tool-supported review; wrapper inconsistency detection; Computer bugs; Data mining; Feature extraction; Measurement; Software systems; Training; Abstraction; Equivalence; Inconsistencies; Interfaces; Machine Learning; Wrappers;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Engineering (ICSE), 2013 35th International Conference on
  • Conference_Location
    San Francisco, CA
  • Print_ISBN
    978-1-4673-3073-2
  • Type

    conf

  • DOI
    10.1109/ICSE.2013.6606652
  • Filename
    6606652