Bibliografía básica Peña Marí, R. (2005). Diseño de programas: Formalismo y abstracción. Madrid. Prentice-Hall
Arnold, K.; Gosling, J.; Holmes, D. (2001). El lenguaje de programación Java. Madrid. Addison-Wesley
Arnow, D.; Weiss, G. (2000). Introducción a la programación en Java. Un enfoque orientado a objetos. Madrid. Addison-Wesley
Balcazar, J.L. (1993). Programación metódica. McGraw-Hill
(2007). The Java Modeling Language (JML). http://www.cs.iastate.edu/leavens/JML
Gries, D. (1981). The Science of Programming. Springer-Verlag

Bibliografía complementaria P. Naughton (1996). Manual de Java. Osborne McGraw-Hill
Backhouse, R.C. (1986). Program construction and verification. Prentice-Hall
Kaldewaij, A. (1990). Programming: The derivation of algorithms. Prentice-Hall
Apt, K.R., Olderog, E. (1997). Verification of sequential and concurrent programs. Springer-Verlag