Abstrakt. Vi presenterar en formell metodik och verktyg för att upptäcka fel i interaktionen mellan programvarumoduler. Vår metodik består av en uppsättning språk för att definiera programvarugränssnitt, och algoritmer för att kontrollera gränssnittets kompatibilitet. Vi fokuserar på gränssnitt som förklarar metod-call beroenden mellan programvarumoduler. Ett sådant gränssnitt gör antaganden om miljön i form av samtal och tillgänglighet begränsningar. En anropsbegränsning begränsar lokala metoders tillgänglighet till vissa externa metoder. En tillgänglighetsbegränsning begränsar tillgängligheten av lokala metoder till vissa tillstånd i modulen. Till exempel kan gränssnittet för en filserver med lokala metoder öppna och läsa hävda att en fil inte kan läsas utan att ha öppnats. Kontroll av gränssnittets kompatibilitet kräver lösningen av spel, och i närvaro av tillgänglighet begränsningar, av pushdown spel. Baserat på denna metod har vi implementerat ett verktyg som har avslöjat inkompatibiliteter i TinyOS, ett litet operativsystem för sensornoder i adhoc nätverk.
I REF specificeras programvarumodulers gränssnitt som en uppsättning begränsningar, och algoritmer för kontroll av kompatibilitet presenteras.
Interface Compatibility Checking for Software Modules
{'venue': 'CAV', 'journal': None, 'mag_field_of_study': ['Computer Science']}