This tutorial book presents an augmented selection of the material presented at the First Pernambuco Summer School on Software Engineering, PSSE 2004, held in Receife, Brazil in November/December 2004, jointly with the Brazilian Symposium on Formal Methods (SBMF 2004).The 7 tutorial lectures presented are the thoroughly revised versions of the contributions from the invited lecturers. The revision was inspired by the synergy generated by the opportunity for the lecturers to present and discuss their work among themselves, and with the school’s attendees. The courses cover a wide spectrum of topics in software engineering such as concurrency, probability, real time, model checking, and object orientation. Apart from languages and techniques, the courses also cover the semantic underpinnings of refinement, and industrial applications and refinement tools.