Asee peer logo

Developing An Introductory Software Programming Course For Engineering Students

Download Paper |


2005 Annual Conference


Portland, Oregon

Publication Date

June 12, 2005

Start Date

June 12, 2005

End Date

June 15, 2005



Conference Session

Programming for Engineering Students

Page Count


Page Numbers

10.436.1 - 10.436.7



Permanent URL

Download Count


Request a correction

Paper Authors

author page

Scott Schneider

Download Paper |

NOTE: The first page of text has been automatically extracted and included below in lieu of an abstract

Developing an Introductory Software Programming Course for Engineering Students

Scott J. Schneider Department of Engineering Technology University of Dayton Dayton, OH 45469


The ability to effectively develop software programs, from complex software systems to simple macros, is becoming increasingly important in all engineering disciplines. Educators have realized this need, and likewise have included software programming in many engineering curriculums. The initial course in software programming has historically focused on learning the syntax for a single programming language instead of the skills of logical and algorithmic thinking and the processes for software development. This paper presents a stepped process for introducing software programming to engineering technology students. 1 Introduction

Working as a contract engineer for numerous companies has allowed me to interact with both young and veteran engineers developing software systems for a myriad of industries. This experience made evident the shortcomings of my software programming education as well as that of many of my peers. While I was competent with the syntax and structure of programming, I was ill prepared to tackle large problems or complex systems. My deficiency was in understanding the software programming process. Those colleagues that obtained an education in computer science were much better prepared to tackle software design using proven techniques than their engineer counterparts. The main difference is the “code it first” mentality that many engineers have when it comes to software development.

The “code it first” philosophy arises from both a lack of knowledge about the software development process and only being introduced to software programming courses that focus on developing the syntax skills of programming. During my time in industry, it became evident that one’s ability to implement a structured software development process is just as critical as one’s syntax skills. In moving to an academic environment, I once again confronted the “code it first” mentality.

Computer science and engineering educators have long realized the importance of providing engineering students with a solid understanding of the software design process 1. However, the first course, and often times only course, an engineering student receives in software programming is typically based on learning a particular programming syntax with little emphasis placed on understanding the software design process. In teaching an introduction to software

Proceedings of the 2005 American Society for Engineering Education Annual Conference & Exposition Copyright © 2005, American Society for Engineering Education

Schneider, S. (2005, June), Developing An Introductory Software Programming Course For Engineering Students Paper presented at 2005 Annual Conference, Portland, Oregon. 10.18260/1-2--14546

ASEE holds the copyright on this document. It may be read by the public free of charge. Authors may archive their work on personal websites or in institutional repositories with the following citation: © 2005 American Society for Engineering Education. Other scholars may excerpt or quote from these materials with the same citation. When excerpting or quoting from Conference Proceedings, authors should, in addition to noting the ASEE copyright, list all the original authors and their institutions and name the host city of the conference. - Last updated April 1, 2015