June 26, 2011
June 26, 2011
June 29, 2011
Systems Engineering and Multidisciplinary Engineering
22.151.1 - 22.151.13
Agile Methodologies for Hardware / Software Teams for a Capstone Design Course: Lessons LearnedAbstract:Agile methodologies provide an alternative to more rigorous engineering design processesthrough iterative design and development. An engineering design process guides a team throughthe development of a product or products from inception to delivery based on customer needs.Software and systems engineering communities have defined a large number of processes thatcan be characterized by process models such as the waterfall model, v-model, spiral model, etc.These process models include large monolithic requirements and design activities with feedbackloops, and implementations such as the Team Software Process produce a significant level ofoverhead for students. Unfortunately, during a capstone design project in which students areworking with new tools, programming languages, multidisciplinary domains, etc., they oftenencounter set backs, requirements changes, and design changes because they are learning.There are a variety of agile methodologies that exist within the software engineering communitysuch as Crystal Clear, Extreme Programming, Scrum, etc. The Agile Manifesto emphasizesfrequent and rapid delivery of working prototypes of the system to the customer that areiteratively refined and developed. The teams define the specifics of their own design processbased on the guidance of the agile methodology selected with the anticipation that it will berevised periodically based on the team’s experience on the project. Since the team designates theprocess (with some input from the team’s manager), the overhead required can be significantlyreduced.At Anonymous University, the Crystal Clear agile process methodology has been utilized for thepast four years as part of its capstone senior design course for computer and softwareengineering students. Over that time, the course makeup has shifted from being over 75%software engineering to only 50%. As a result, these methodologies, which were developed forsoftware teams have been adapted to accommodate both hardware and software design elements.The size of the team has also changed resulting in additional lessons learned regarding thescalability of the process.This paper shall discuss in greater detail: A literature review of agile and non-agile software and systems engineering processes. A detailed overview of how the Crystal Clear methodology has been adapted at ERAU. Provide case studies of agile vs. TSP based capstone design projects including metrics analyzing team performance. Discuss lessons learned based on case study courses. Provide recommendation for instructors considering the application of agile processes to their discipline.
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: © 2011 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