IBM is undoubtedly one of the oldest computer technology companies, but it may be on the cutting edge when it comes to deploying newfangled agile programming methodologies.
The company is holding an IBM Academy of Technology conference on agile programming this week at the IBM Almaden Research Center in San Jose, Calif. With agile, software is delivered in short, iterative release cycles, such as two-week cycles. This methodology accommodates changing requirements that otherwise can render software obsolete upon release
"Agile is a major push in the industry," said Scott Ambler, IBM practice leader for agile development in IBM's Rational Software group. "We've actually been doing it for quite a while, but we haven't taken the opportunity to actually get together and coalesce [around] what we're doing."
With the event, IBM wants to discuss what is and what is not working, he said. In some places at IBM, agile has been in use for more than five years, said Michael Maximillien, an IBM research staff member. Agile has been used to develop and refine the IBM.com Web site, for example.
Agile programming is cost-effective and produces higher quality software, Ambler said. "You end up with software that meets the changing needs of your stakeholders," he said.
While traditional waterfall-style processes adhere to a strict plan, agile is more flexible. "In agile, we do a lot of planning. It's just that we don't do a lot of upfront planning and blindly follow that plan," said Ambler.
A keynote speaker interviewed at the event concurred about agile's flexibility.
"One of the things that people like about agile methods is that they enable you to do things rapidly, and if you don't get them right this month, they will you give the right thing next month," said Barry Boehm, a software engineering professor at the University of Southern California.
Agile practices can help software developers avoid missed market opportunities that can occur while waiting to change requirements in non-agile processes, said conference attendee and panelist Laurie Williams, an associate professor of computer science at North Carolina State University. With agile, developers do not have to wait for requirements to be finalized before getting started, she said.
Agile, she said, "is getting to be more mainstream."
IBM also leverages agile methodologies at customer sites. But agile has had to face a number of issues, such as a mistaken belief by some adherents that no requirements planning or architecture should be devised before embarking on a project, Ambler said.
Also, there are industry perceptions that a database schema cannot be changed, which has negatively impacted perceptions of agile and its practice of changing requirements. But these schemas can, indeed, be changed through database re-factoring, Ambler said.
Another obstacle faced by agile programming has been scaling the size of programmer teams, Boehm said. While an ideal agile team has seven to 10 developers, there are government projects, for instance, that have 4,000 developers working on them where agile is not being used, he said.
With the Scrum variant of agile, for instance, team members discuss what they did the day before and what they plan to do today, Boehm said. This certainly is not possible with a project that has 4,000 developers, he noted.
This whitepaper explains the terminology and concepts behind Data Replication technologies and establishes some sizing rules through worked examples. Learn the new paradigm in disaster tolerance—protect data anywhere.
Download now »Server virtualization is a popular option for dealing with mounting datacenter costs. Another equally promising approach is the use of an Application Delivery Controller. Citrix NetScaler provides a low-cost way for organizations to reduce their server count and accrue cost savings from a reduction in space, cooling, power and personnel.
Download now »
The emergence of WLANs has created a new breed of security threats to enterprise networks.
Included in HP ProCurve WLAN solutions is security technology that alleviates threats from WLANs through:
* Monitoring wireless activity inside and out of the enterprise
* Classifying WLAN transmissions into harmful and harmless
* Preventing transmissions that pose a security threat to the enterprise network
* Locating participating devices for physical remediation
Effectively address data protection challenges, implementing solutions that help store and protect businesscritical data while cutting costs and improving efficiency and reliability.
Download now »
Sign up to receive InfoWorld Resource Alerts
