@inproceedings{barnett2005the, author = {Barnett, Mike and Leino, Rustan and Schulte, Wolfram}, title = {The Spec# Programming System: An Overview}, series = {Lecture Notes in Computer Science}, booktitle = {CASSIS 2004, Construction and Analysis of Safe, Secure and Interoperable Smart devices}, year = {2005}, month = {January}, abstract = {The Spec# programming system is a new attempt at a more cost effective way to develop and maintain high-quality software. This paper describes the goals and architecture of the Spec# programming system, consisting of the object-oriented Spec# programming language, the Spec# compiler, and the Boogie static program verifier. The language includes constructs for writing specifications that capture programmer intentions about how methods and data are to be used, the compiler emits run-time checks to enforce these specifications, and the verifier can check the consistency between a program and its specifications.}, publisher = {Springer}, url = {http://approjects.co.za/?big=en-us/research/publication/the-spec-programming-system-an-overview/}, pages = {49-69}, volume = {3362}, edition = {CASSIS 2004, Construction and Analysis of Safe, Secure and Interoperable Smart devices}, }