Navigation |
Welcome to CIS 771 Software SpecificationsAs the complexity of software increases, it is crucial that the software engineering community move toward automated tool-based solutions that provide deeper semantic reasoning about system specifications. While courses that present best practices of software development based on existing commercial tools and development processes are valuable, we chose to focus this graduate course on software specification and verification technologies that provider deeper semantic reasoning and verification of development artifacts including functional models, architecture, and source-code implementations. Thus, the material in this course does not cover existing industry software development processes and tools. Rather, it presents cutting-edge tool-based specification and verification technologies that have the potential to be incorporated into industry tools and development workflows within the next 3-5 years. The current version of this course presents three tools that embody the principles above for different stages of software development:
For more information about getting started in this course, please see the Getting Started link the left tool bar. The pedagogical material for this course (include videos of lectures, slides, examples, etc.) can be found at the Lectures link. If you are a faculty member from an another institution interested in using this course material, please contact John Hatcliff about obtaining a distribution bundle. |