Skip to Main Content
This paper presents a knowledge-centric and language independent framework and its application to develop safety analysis tools for avionics systems. A knowledge-centric approach is important to address domain-specific needs, with respect to the types of problems the tools detect and the strategies used to analyze and adapt the code. The knowledge is captured by formally specified patterns used to detect a variety of problems, ranging from simple syntactic issues to difficult semantic problems requiring global analysis. Patterns can also be used to describe transformations of the software, used to rectify problems detected through software inspection, and to support interactive inspection and adaptation when full automation is impractical. This paper describes the Knowledge Centric Software (KCS) framework. It focuses on two key aspects: an eXtensible Common Intermediate Language (XCIL) for language independent analysis, and an eXtensible Pattern Specification Language (XPSL) for representing domain-specific knowledge.