Engineering Correct Software. Engineering, according to dictionaries, is the applying principles of science and mathematics to the design of useful things. Software engineering isn't. A primary goal of this project is to develop educational materials that present software engineering within an engineering framework.
Projects for learning to engineer software may be found here: 20projects/
A one-page description of three courses
that have emerged from this process so far may be viewed here:
A short paper on the courses may be viewed here:
slides from presentation
A short presentation on applied logic may be viewed here:
Materials for a course on applied logic (paper and pencil, not mechanized) may be found under "Related Materials" here:
Course materials for discrete math and applied logic
Links to specific materials on the subject appear below.
Lecture Notes - Mechanized logic
Lecture Notes - Processes
Project write-ups (zipped HTML, two project sequences for SE-I: 1A, 1B)
Software supplied with projects (zipped Lisp)
Syllabus, texbooks, lesson plan, ... (SE-I)