Portland, Oregon
June 12, 2005
June 12, 2005
June 15, 2005
2153-5965
7
10.436.1 - 10.436.7
10.18260/1-2--14546
https://peer.asee.org/14546
437
Developing an Introductory Software Programming Course for Engineering Students
Scott J. Schneider Department of Engineering Technology University of Dayton Dayton, OH 45469 sschneider@udayton.edu
Abstract
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