Abstract | ||
---|---|---|
Contract-based software development has long been a leading methodology for the construction of component-based reactive systems, embedded systems in particular. Contracts are an effective way to establish boundaries between components and can be used efficiently to verify global properties by using compositional reasoning techniques. A contract specifies the assumptions a component makes on its context and the guarantees it provides. Requirements in the specification of a component are often case-based, with each case describing what the component should do depending on a specific situation (or mode) the component is in. We introduce CoCoSpec, a mode-aware assume-guarantee-based contract language for embedded systems built as an extension of the Lustre language. CoCoSpec lets users specify mode behavior directly, instead of encoding it as conditional guarantees, thus preventing a loss of mode-specific information. Mode-aware model checkers supporting CoCoSpec can increase the effectiveness of the compositional analysis techniques found in assume-guarantee frameworks and improve scalability. Such tools can also produce much better feedback during the verification process, as well as valuable qualitative information on the contract itself. We presents the CoCoSpec language and illustrate the benefits of mode-aware model-checking on a case study involving a flight-critical avionics system. The evaluation uses Kind 2, a collaborative, parallel, SMT-based model checker extended to fully support CoCoSpec. |
Year | DOI | Venue |
---|---|---|
2016 | 10.1007/978-3-319-41591-8_24 | Lecture Notes in Computer Science |
Field | DocType | Volume |
Model checking,Software engineering,Computer science,Avionics,Real-time computing,Compositional reasoning,Lustre (mineralogy),Reactive system,Software development,Encoding (memory),Scalability | Conference | 9763 |
ISSN | Citations | PageRank |
0302-9743 | 7 | 0.51 |
References | Authors | |
16 | 4 |
Name | Order | Citations | PageRank |
---|---|---|---|
Adrien Champion | 1 | 17 | 1.06 |
Arie Gurfinkel | 2 | 43 | 4.20 |
Temesghen Kahsai | 3 | 221 | 14.80 |
Cesare Tinelli | 4 | 1409 | 79.86 |