NEWS & EVENTS
Dordt College News
Computer software developers do real analysis and design
August 16, 2010
"Working on real projects makes a big difference in how students approach writing software,” says Computer Science Professor Dawn Wolthuis.
Knowing an assignment is simply an exercise seems to negatively affect student creativity and persistence.
“It’s unsatisfying to design if there’s no possibility that it could ever be implemented,” says Wolthuis.
Finding small businesses that might like software development assistance isn’t hard, but since most software development classes focus on only part of the process, collaborating with businesses can be difficult. Understandably, they want a finished product, not a piece of a product.
So Wolthuis, a half-time assistant professor who also has her own start-up software company, assigns her students pieces of the project she’s currently working on—a web-based sign-up and roster management program called SnupNow.
“This allows them to work on a real project and, at the same time, only focus on one particular piece of a project,” she says, adding, “Students can come up with some great ideas.”
SnupNow is currently in its alpha delivery phase, Wolthuis explains. “It has a lot of features at this point but still is not feature rich.” She has her students pick something that SnupNow doesn’t currently do, figure out what it would take to make it happen, and then work on it.
“It’s better than a case study,” Wolthuis believes, because students see the work as part of a bigger project that is already working. She expects her students to get more out of the assignment than her company does, but nevertheless she gives them the option to do another case study if they prefer not to contribute to SnupNow. She’s had one student opt out, but she says that the result was a more general research paper, rather than hands-on experience. Those student developers who contribute are listed as developers on the SnupNow website.
“I taught this course five years ago using only case studies, and the students’ designs were not nearly as good,” she says. Doing analysis and design in the abstract is not as helpful because students don’t see the messiness that develops in a project that has many dimensions—and because of that, they don't have to correct for it.
Wolthuis, who has worked in both corporate and higher education IT departments, actively promotes software development with her students and says she can usually pick out who will be good at it.
“You need to use both left and right brain to be a good developer and get projects done,” she says. She also believes that good software engineers and developers need excellent communication skills so they can better understand what a customer needs and communicate their vision for how that could come about.
“Software development can be an especially good fit for women,” says Wolthuis, who has loved her career in software development and related fields. She notes that many women went into data processing a couple of decades ago, but after it was named computer science, the numbers fell off.
“Unfortunately women are not as likely to choose a discipline named after a machine. Perhaps we could call it software quilting,” she says with a chuckle.