June 24, 2007
June 24, 2007
June 27, 2007
12.961.1 - 12.961.10
Introducing Civil Engineering Analysis through Programming Abstract
This paper describes a course in computer programming that is being offered to freshmen and sophomores in civil engineering at NC State. Visual Basic (VBA in Excel) and MATLAB are being used as the programming languages. Much of the learning occurs through reverse engineering and imitation. Typical civil engineering problems are used to present the programming concepts. Especially in the instance of VBA, students learn how to combine the use of spreadsheet functions with VBA code. The paper includes an overview of the course and examples of the materials covered and the teaching techniques employed. General thoughts are also presented about the directions in which programming education may be headed in the future.
Courses about computer programming have been part of undergraduate curricula for more than half a century. For example, the electrical engineering department at CMU was teaching computer programming in FORTRAN in the late 1960’s as a way to introduce logical thinking (e.g., flow charts) and programming skills. Other disciplines adopted such courses more slowly. Consequently, the topic of this paper is not new.
As Rasdorf 1 indicates, in the late 1970’s, civil engineering programs began to embrace the idea of including computer programming classes in their undergraduate curricula. The argument was, in part, that “students must be prepared to use computer methods and applications as a part of their fundamental education. It is the responsibility of colleges and universities to incorporate contemporary computing fundamentals into their academic curriculum to improve the professional qualifications of their engineering graduates. These graduates will in turn be able to provide their increasingly important expertise to both the engineering profession and the academic community.”
Today, while ABET (see the 2007-2008 criteria, for example) does not explicitly require a course in computer programming 2, it is clear that ABET expects students to learn computer programming skills. Criterion 3, focused on program outcomes and assessment, stipulates that engineering programs must demonstrate that their students attain eleven outcomes including “an ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.” Moreover, Criterion 8, which deals with program criteria, indicates that: “Programs must provide opportunities for students to learn the use of modern engineering tools. Computing and information infrastructures must be in place to support the scholarly activities of the students and faculty and the educational objectives of the program and institution.”
Even though more than half a century has passed since computer programming was first taught to engineering students, the academic community is still engaged in debate, innovation, experimentation with ways to accomplish that objective. Courses like calculus, physics and chemistry have not seen nearly the same degree of transformation. Computer programming classes have been taught by computer science departments, engineering departments, and special teaching teams. The languages used have ranged from PAL, FORTRAN, WATFIV, PL1 and
List, G. (2007, June), Introducing Civil Engineering Analysis Through Programming Paper presented at 2007 Annual Conference & Exposition, Honolulu, Hawaii. https://peer.asee.org/2303
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: © 2007 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