Integrating Model-Based Verification into Software Design Education

  • Levent Yilmaz
  • Shuo Wang


Proper design analysis is indispensable to assure quality and reduce emergent costs due to faulty software. Teaching proper design verification skills early during pedagogical development is crucial, as such analysis is the only tractable way of resolving software problems early when they are easy to fix. The premise of the presented strategy is based on the observation that fundamental component of any engineering curriculum is the use of formal and sound techniques that facilitate analysis of artifacts produced by students. Yet, fundamental roadblocks exist in bringing the state of the art in design analysis to the classroom due to the steep learning curve and quagmire of theoretical details involved in formal methods. This paper suggests a strategy and tool support that promotes the attainment of design evaluation skills. We also discuss how selective and pragmatic application of formal methods can be used in software design education.