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:
http://www.cs.ou.edu/~rlpage/SEcollab/20projects.htm
A one-page description of three courses
that have emerged from this process so far may be viewed here:
http://www.cs.ou.edu/~rlpage/SEcollab/EngineeringSoftwareCourses.pdf
A short paper on the courses may be viewed here:
http://www.cs.ou.edu/~rlpage/SEcollab/rlpACL209.pdf
slides from presentation
Links to specific materials on the subject appear below.
Engineering Software Correctness, Journal of Functional Programming, Nov 2007
Full text of
paper (PDF) - reports experience in a 2-course sequence in software
engineering
FDPE 2005
Conference presentation: PDF
slides,
PPT
slides
ACL2 in DrScheme - ACL2 Workshop 2006 (PDF)
Lecture Notes - ACL2
zipped PDF
zipped
PPT
Lecture Notes - Processes
zipped PDF
zipped
PPT
Projects
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)
PDF