TEACHING THE OLD DOG NEW TRICKS

FAYETTEVILLE, Ark. — Many businesses inevitably sink a lot of money and time into re-training computer programmers. University of Arkansas researcher Deb Armstrong has identified the specific areas that frustrate programmers and hinder re-training.

"We know that it is often difficult for experienced procedural programmers to make the shift to object-oriented programming, but up until now we didn’t know why," explained Armstrong. "By identifying the key areas where the programmers are getting stuck, we can design more effective training. That will result in better programming skills and less frustration for the programmers."

Armstrong, assistant professor of information systems, conducted her research along with James and Kay Nelson of Ohio State University. She presented their findings this week at the Workshop on Information Technology Systems in New Orleans.

Object-oriented programming has many advantages for businesses, including shorter development time and easier maintenance. But object-oriented programming differs from the procedural techniques that most business software developers use and requires a substantial shift in thinking. If the developers are not well trained, the resulting "spaghetti code" can be a nightmare for businesses to use and maintain.

"It is not a matter of just going out and hiring new programmers," Armstrong said. "To be effective, software developers need business-specific knowledge and the procedural programmers have that knowledge."

In addition, businesses are confronted with a severe shortage of object-oriented programmers. For many companies, re-training their current developers is the only viable alternative. However, this can be a long and expensive process, frustrating for both the programmers and the company executives.

Armstrong looked at the re-training process to determine where programmers were having problems. Her study of 148 procedural software developers in the process of re-training identified four points where they hit a plateau where learning seemed to become stalled. She found that learning reached a plateau at three levels — basic (concept of an object), object (attributes of an object) and system (how objects are combined).

"These learning plateaus result from proactive interference," Armstrong explained. "When the learner encounters a concept, there is a tendency to default to what is well-known. In cases that require a complete shift in thinking, such as the shift from procedural to object-oriented programming, the default is wrong and frustrates the learning process."

For example, at a point in the development process when an object-oriented developer should be thinking about 'classes of objects’ a procedural developer will be thinking 'subroutines’. But that won’t work in object-oriented programming, according to Armstrong.

The researchers demonstrated that as training progressed, the amount of time spent became less important than the number of different object-oriented projects the developers completed. At the basic level, the amount of time spent was most significant, but by the system level, the number of projects was more significant.

"By using the information in this study, we can make training faster and more productive, shorten the learning process and ease the learners’ frustrations," said Armstrong. "This can lead to a more effective and efficient learning process and better-trained object-oriented developers."

###

Contacts

Deb Armstrong, assistant professor of information systems, Walton College of Business, (479) 575-6158; darmstrong@walton.uark.edu

Carolyne Garcia, science and research communication officer, (479) 575-5555; cgarcia@uark.edu

 

News Daily