Paul Krill
Editor at Large

Complexity grows for developers, Rational exec warns

news
Apr 10, 20033 mins

Technology limits cited

New Orleans– Complexity poses increasingly difficult obstacles for software developers, who are nonetheless called on to build applications for users who want this complexity hidden, Rational Chief Scientist Grady Booch said during a presentation at the IBM developerWorksLive conference here Thursday.

Software has changed the world, creating opportunities for businesses and even changing the nature of civilization, Booch said.

“Therefore, it is a tremendous privilege to be a software developer,” said Booch.

Web services technologies such as WSDL and UDDI make it possible to build systems that are accessible to a larger community “than we could have conceived of in the past,” Booch said.

But developers face difficulties, he noted.

“Software development has been, and frankly it will remain to be, a very hard thing. That’s the fundamental thing we all face as software developers,” Booch said.

“The reality for all of us is complexity is increasing,” with applications needing to be more distributed and secure, he said. “Building better software faster is a challenge for most organizations.”

Developers must cope with building systems on top of operating systems and other systems with millions of lines of code.  But developers have to create an illusion of simplicity, with users wanting to hide technology, Booch said.

Technology is limited by factors such as the laws of physics and software, the challenges of algorithms, distribution problems, economics, politics, and the limits of human imagination, according to Booch. Additionally, developers must adapt legacy systems for new applications as well as do new development.

“In short, we are building continuously evolving systems that we can never turn off,” he said.

But the history of software engineering, Booch said, has been about raising levels of abstraction, moving from Cobol and Fortran to C, C++, and Java. “These are languages which allow us to express things at higher levels of abstractions than we could in previous times,” he said.

Web services add even more abstractions, said Booch. Grid computing also is becoming a factor, but for many it will be transparent.

Rational, for its part, is dedicated to improving the developer experience, he said. Business process modeling also presents an opportunity for developers, he said.

Middleware, meanwhile, provides a way to handle repetitive tasks. The future of software development will feature concepts such as component-based development, reusable assets, model-driven development, and collaborative development environments, according to Booch.

Also on the horizon for developers is the semantic Web, said Booch.

 “What the semantic Web brings to bear is the notion of bringing more self-knowledge to things on the Web,” creating opportunities for new applications that tie together semantically rich and knowledgeable data, he said.

But Booch cautioned, “I must remind you again that software development remains a very, very hard thing. There’s no silver bullet here.”

Paul Krill

Paul Krill is editor at large at InfoWorld. Paul has been covering computer technology as a news and feature reporter for more than 35 years, including 30 years at InfoWorld. He has specialized in coverage of software development tools and technologies since the 1990s, and he continues to lead InfoWorld’s news coverage of software development platforms including Java and .NET and programming languages including JavaScript, TypeScript, PHP, Python, Ruby, Rust, and Go. Long trusted as a reporter who prioritizes accuracy, integrity, and the best interests of readers, Paul is sought out by technology companies and industry organizations who want to reach InfoWorld’s audience of software developers and other information technology professionals. Paul has won a “Best Technology News Coverage” award from IDG.

More from this author