If you're not modeling, you're just programming: Modeling throughout an undergraduate software engineering program

James Vallino

Originally published by: Springer - http://www.springerlink.com/content/p25mw252t1596133/?p=e46b23192e3b4798a214c60ad78190b8Ï€=0


Modeling is a hallmark of the practice of engineering. Through centuries, engineers have used models ranging from informal "back of the envelope" scribbles to formal, verifiable mathematical models. Whether circuit models in electrical engineering, heat-transfer models in mechanical engineering, or queuing theory models in industrial engineering, modeling makes it possible to perform rigorous analysis that is the cornerstone of modern engineering. By considering software development as fundamentally an engineering endeavor, RIT's software engineering program strives to instill a culture of engineering practice by exposing our students to both formal and informal modeling of software systems throughout the entire curriculum. This paper describes how we have placed modeling in most aspects of our curriculum. The paper also details the specific pedagogy that we use in several courses to teach our students how to create, analyze and implement models of software systems.