Researchers hope to transform software engineering training

Aug 16, 2012

Ten percent of software projects are abandoned, one-third are not successful and more than half end up late or over budget. But technology isn't to blame. People are. Now, researchers led by a San Francisco State University professor hope to improve the effectiveness of software engineering teams by learning what causes them to fail.

Failures in communication, organization and teamwork are the primary cause of problems in software engineering, says Dragutin Petkovic, professor and chair of SF State's Department. The high rate of failure, he says, indicates a glaring need to rethink how software engineers are trained and managed, to ensure they develop the teamwork skills necessary to thrive in the working world.

To that end, Petkovic is leading a study that will learn what affects whether software engineering teams succeed and use that information to develop new software models that can objectively predict whether a team is likely to fail. That software will then be shared with other educators and industry leaders so they can monitor the effectiveness of their training and improve and build on the researchers' work.

Knowing which teams might fail could allow to intervene and improve a project's chances of success. In order to learn which factors affect a team's outcome, Dragutin and his colleagues -- Kazunori Okada, associate professor of computer science at SF State, Shihong Huang, associate professor of computer science and engineering at Florida Atlantic University, and Rainer Todtenhoefer, professor of at Fulda University in Germany -- are looking to their students.

Assessments of how well software work in teams are typically done subjectively, for example by asking students to complete a questionnaire following the conclusion of the class, Petkovic said. His project will be the first to use objective and quantitative measures to assess and predict success in teamwork learning.

"Imagine if you could measure, during the class, how often teams use software tools or how often they meet, for example, and a computer would objectively tell you which teams are likely to fail," Petkovic said. "This is a dramatic and, I would say, radical solution to the problem. You could then use this 'early prediction' to adjust your teaching and help potentially failing teams. Or in a work environment, alert the management to address the issue before it is too late."

Dragutin, Huang and Todtenhoefer simultaneously teach a course in which students learn teamwork skills while developing a software project. For the study, researchers will collect data, such as how often team members e-mail each other or meet, how much time they spend coding and how long it takes for problems to get resolved. The aim is to develop software models that can automatically determine team success as well as rank the factors that influence the learning process, leading to better teaching methodology.

While some teams in the class are made up of students from a single university, others are comprised of students from all three institutions, mirroring a industry in which those working together on a project are more likely to be separated by several time zones than a few cubicles.

"Students have to learn how to work with a peer they have never met, in a global collaboration setting," Huang said.

Once researchers have built the database, they can share it with others who can input their own data to evaluate their teams or broaden the study into other fields. Petkovic said he has already heard from mechanical engineers who would like a similar project to examine that field.

"We want to give advice to teachers and industry leaders on how to manage their teams," Petkovic said. "Research overwhelmingly shows that it is 'soft skills,' how people work together, that are the most critical to success."

Explore further: PAX Prime gaming convention kicks off in Seattle

add to favorites email to friend print save as pdf

Related Stories

Research Looks at How Open Source Software Gets Written

Sep 20, 2006

Computer software systems are now among the most complex, expensive artifacts ever created by humans, and some of the most sophisticated are being built by teams of volunteers as "open source" projects, where any programmer ...

Teamwork increases student learning and career success

Nov 02, 2007

A two-year study of college students at The Pennsylvania State University (PSU) proves that students learn better and develop higher-level skills by participating in cooperative (team) activities, compared ...

Team-based e-learning turns a new page

Feb 26, 2008

How do students, who may be located across the globe, collaborate together on team-based project work? European researchers have developed the first online platform that integrates elements of e-learning, social networking ...

Smarter software development

Jun 02, 2011

(PhysOrg.com) -- Victoria scientists are combining their expertise with collaborators at universities around New Zealand to come up with faster, more flexible and more affordable ways of developing software.

Students cut grass with robotic-controlled mower

May 31, 2007

Cutting the lawn has taken on significant importance for a group of Wright State University students. The 11-member team is entered in the Fourth Annual Institute of Navigation (ION) Autonomous Lawnmower Competition hosted ...

Recommended for you

Watching others play video games is the new spectator sport

Aug 29, 2014

As the UK's largest gaming festival, Insomnia, wrapped up its latest event on August 25, I watched a short piece of BBC Breakfast news reporting from the festival. The reporter and some of the interviewees appeared baff ...

SHORE facial analysis spots emotions on Google Glass

Aug 28, 2014

One of the key concerns about facial recognition software has been over privacy. The very idea of having tracking mechanisms as part of an Internet-connected wearable would be likely to upset many privacy ...

User comments : 1

Adjust slider to filter visible comments by rank

Display comments: newest first

machinephilosophy
not rated yet Aug 19, 2012
Geez. Try simply listening to what users say. Example: Facebook not being able to understand that ANYTHING a user posts should be editable. And they STILL don't get it. You too can be this oblivious by doing all kinds of superfluous and irrelevant things, like those described in this article. Just makes sure you don't actually make any real changes in anything.