University's Agile Software Factory Aims To Fill Enterprise Demand
- By John K. Waters
Agile development methodologies may be gaining ground in the enterprise, but in academia it's all waterfall, all the time. Despite the changing times, most university and college computer science programs are still producing developers steeped in monolithic methods with little or no exposure to agile methods.
Enter Dr. Joseph Chao, associate professor in the Department of Computer Science at Bowling Green State University (BGSU). This fall, Chao launched the Agile Software Factory, the first program in higher education to offer agile "service-learning" for course credit. The program provides students with hands-on experience developing software for real-world projects.
"Service learning" has become something of a buzzword in higher-education circles, Chao said. It's the label for a pedagogical approach that integrates community service with instruction to strengthen the ties between the school and the community.
Chao launched the first Agile Software Factory in the fall of 2008. The program involved 46 student developers who were divided into six teams to work on individual projects for a nonprofit organization for one semester. The service was provided to the organizations for free.
"The students who come into the program know programming," Chao said. "That is, they know all kinds of languages, but they have no real exposure to development methodologies. I introduce them to both the waterfall model and the agile models. I tell them that agile is better, because that's my bias. By the end of the semester I believe that most of them agree with me."
The list of the semester's projects included a victim-case tracking system for Behavioral Connections of Wood County, an employee database system for Neighborhood Property Inc., a service reporting system for the Wood County Cocoon Shelter, a service-learning information system for the Office of Service-Learning at BGSU, a student activity matching system for Eastwood Middle School and an e-voting system for the Ohio High School Speech League.
The program is sponsored by the BGSU Department of Computer Sciences, BGSU IT Services and the Agile Alliance. Phil Brock, managing director of the Agile Alliance, said his organization sees Chao's program as an important step toward wider academic acceptance of agile methodologies.
"In the universities today, everything is waterfall," Brock said. "So when you get a new grad coming out of University X, all of their experience is waterfall. It takes a while for people to loosen up and unlearn that approach. I hear from our corporate members almost on a daily basis about new engineers lacking agile development skills. They say it takes, on average, about one to two years to get somebody up to speed and comfortable working with agile."
The Agile Alliance is a nonprofit organization that promotes the concepts of agile software development as outlined in the Agile Manifesto. The Alliance reports a membership of nearly 6,000 around the world. Among other activities, it organizes the annual Agile Conference.
Chao, who has a background in industry software development, began teaching in 2001. He first became interested in agile methods in 2002. Within a year, he was hooked. He has been developing his agile chops ever since.
When asked why agile has gained the same footing in academia as it appears to be gaining in the commercial sector, he said: "Waterfall is easier to control in a classroom setting. With agile, there's a lot of flexibility and adaptation -- a lot of change. That can take some special skills, and it's a lot of work. For somebody who's already tenured, there's really no real incentive to adopt it in the schools."
Chao's students are just finishing up their first semester in the Agile Software Factory. He said he's happy with the results and expects the Factory to take on several new projects in the fall 2009 semester, including an electronic voting system for faculty senate at BGSU, some Web development for WFAL Falcon Radio Station at BGSU and a
John K. Waters is a freelance writer based in Silicon Valley. He can be reached