Honolulu, Hawaii
June 24, 2007
June 24, 2007
June 27, 2007
2153-5965
Computers in Education
43
12.595.1 - 12.595.43
10.18260/1-2--2190
https://peer.asee.org/2190
435
Embedded Software Design Methodology to Help Students Succeed in the Real World
Introduction: A Tool for Entering the Workforce with Experience
In the good old days, new engineers could look forward to a long and rewarding career, working for a well-established engineering firm. They would typically spend their first year of employment “learning the ropes” from older, more-experienced engineers. During this apprenticeship, they would pick up the tips, tricks and engineering shortcuts necessary to accomplish miracles in engineering productivity. Then, in an engineering rite of passage, they would graduate to handling their own projects and become a full partner in the engineering brotherhood. In time, their experience would transform them into the older, more-experienced engineers that had mentored them, and they would in turn pass their wisdom on to the next generation of new college graduates. Unfortunately, in today’s embedded microcontroller job market, this ancient and beneficent brotherhood of engineering is long gone. Engineers seldom spend more than 3-5 years with a single company, so employers are reluctant to invest a year’s salary in mentoring. The older, more-experienced engineers that once would have been mentors are now competitors in an increasingly tough job market. On top of all this, new engineers face competition from offshore design centers and foreign engineers immigrating to the U.S. If junior engineers want to compete in this fast-paced, competitive job market, they have to be productive on their very first day. To be productive, they have to be able to create complex, solid code quickly. Experienced engineers accomplish this using their personal collection of tips, tricks, and shortcuts that they have picked up over the course of their career. New engineers do not have this luxury. What they need instead is a design methodology that will take the place of the tips, tricks and shortcuts. Thus presents the basic point of this paper—to teach a design methodology that will allow new engineers to create complex, solid code quickly. How can junior engineers quickly develop complex, solid code? Let us start by defining the specific goals: 1. The methodology must produce code that is capable of multitasking. Today’s electronics do not perform just one task, so engineers must be able to produce code that can accomplish more than one thing at a time. Additionally, being able to replace hardware with software is always a prime consideration in cutting production costs In order to do this, the code must be able to multitask and execute the soft peripherals with other main software functions. 2. The methodology must produce code that is capable of real-time control. The world operates in real time, and if the code has to deal with the real world, then it must produce controls with predictable, repeatable timing.
Curtis, K. (2007, June), Embedded Software Design Methodology To Help Students Succeed In The Real World Paper presented at 2007 Annual Conference & Exposition, Honolulu, Hawaii. 10.18260/1-2--2190
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