Abstract | ||
---|---|---|
For extensible software platforms in safety-critical domains, it is important that deployed plug-ins work as specified. This is especially true with the prospect of allowing third parties to add plug-ins. We propose a contract-based approach for deployment-time verification. Every plug-in guarantees its functional behavior under a specific set of assumptions towards its environment. With proof-carrying apps, we generalize proof-carrying code from proofs to artifacts that facilitate deployment-time verification, where the expected behavior is specified by the means of design-by-contract. With proof artifacts, the conformance of apps to environment assumptions is checked during deployment, even on resource-constrained devices. This procedure prevents unsafe operation by unintended programming mistakes as well as intended malicious behavior. We discuss which criteria a formal verification technique has to fulfill to be applicable to proof-carrying apps and evaluate the verification tools KeY and Soot for proof-carrying apps. |
Year | DOI | Venue |
---|---|---|
2016 | 10.1007/978-3-319-47166-2_58 | Lecture Notes in Computer Science |
Keywords | Field | DocType |
Deployment-time verification,Design-by-contract,Software evolution | Software deployment,Software engineering,Computer science,Design by contract,Mathematical proof,Software,Software evolution,Extensibility,Formal verification | Conference |
Volume | ISSN | Citations |
9952 | 0302-9743 | 1 |
PageRank | References | Authors |
0.36 | 16 | 4 |
Name | Order | Citations | PageRank |
---|---|---|---|
Sönke Holthusen | 1 | 66 | 3.68 |
Michael Nieke | 2 | 2 | 1.74 |
Thomas Thüm | 3 | 1048 | 47.15 |
Ina Schaefer | 4 | 1634 | 99.16 |