HOLLYWOOD, Fla.-Just as open source took the software industry by storm, Forrester analyst John Rymer says he believes the industry needs to shift to a new paradigm he calls “lean software,” which focuses on simplicity and avoids complexity wherever possible.
“This is something we’re predicting will coalesce; right now it’s a bunch of individuals doing this on their own, but we expect lean software to catch on,” Rymer told the audience of developers here at the annual SpringOne Americas conference for Spring developers. Rymer said his lean software message was particularly relevant for the Spring audience because the Spring Framework represents a prime example of lean software. Spring was developed to combat the complexity and “heaviness” of J2EE (Java 2 Platform, Enterprise Edition) and EJB (Enterprise JavaBeans).
Rymer defined lean software as:
“An approach to building, delivering and running software that values fit-to-purpose, simplicity and time to results above all. Lean approaches minimize complexity, startup time and resource usage, and [avoid] features and methods not essential to fulfilling the application’s business purposes. Developers can easily combine Lean software components with others when large systems require more features.“
Rymer also listed seven lean software principles for developers to adhere to when going lean. The first is to “use fit-to-purpose tools and platforms.” The second is to “employ a lean and agile development process.” The third is to “follow standards that enable pluggable components for tools and applications.” The fourth lean software principle is to “hire skillful developers.” The fifth is to “leverage open source,” the sixth is to “optimize deployments” and the seventh is to “rent or outsource context and own core applications.”
Discussing pain points developers face, Rymer described how going lean can lead to an “antidote” for several of those pains. For instance, EJB containers require heavy configurations, he said, and the antidote to that is Spring. Another example is that the WS-SOAP (Simple Object Access Protocol)-based specifications are complex to use. The antidote for that is REST (Representational State Transfer). In another example, Rymer said Java EE and .NET development is hard and not fun. The lean software antidote for that is the use of dynamic languages such as Ruby, Perl and Python. Another developer pain point is that projects take too long and too often miss the mark. The antidote for that is agile development methods, which “link developers and users to hit the mark quickly.”
In addition, Rymer listed the OSGi (Open Services Gateway Initiative), SAAS (software as a service) and PAAS (platform as a service) as modular and elastic alternatives to heavy solutions.
“There’s something going on here and it’s bigger than lightweight containers,” Rymer said.
However, do not expect going lean to cure all ills, Rymer said. “Lean software shifts complexity, but it doesn’t eliminate it,” he said. “Lean is a developer lead, but others must be convinced it will work.”
Predictions for Development in 2009
Meanwhile, as a repeat speaker at the Spring event, Rymer offered a set of predictions of what he expects to happen over the next year. “Last year I said one of the open-source providers would rise up; now it’s companies that support these lean approaches [that] will thrive,” Rymer said. “This is the next phase of growth.”
Thus, Rymer’s first prediction was, “Lean software specialists will thrive.” The second was, “SAP’s platform influence will shrink.” Third was, “Microsoft will beat IBM and Oracle to PAAS … I think Microsoft is being much more aggressive in developing this new cloud-based model than IBM and Oracle.”
Rymer’s fourth prediction was that “Sun [Microsystems] shrinks by killing products; may not survive,” he said. “They have got to cut a lot of products and focus on what they’re good at. They have to stop playing the field.” His fifth prediction was that “Agile methods will be the norm.” And sixth was that enterprises will move to the “cloud for commodity workloads.”
Rymer said there is a tension between creativity and business that is spurring this move to lean software. “We’ve reached kind of a breakpoint,” he said. “Even as the big vendors consolidate and there is a pull on corporate budgets, developers are driving lean software.”
Rymer said four enterprise vendors continue to dominate the software landscape: Microsoft, Oracle, IBM and SAP dominate in that order, with growth rates ranging from 10 to 25 percent and accounting for 37 percent of the total software market.
In addition, “the rich have enriched their portfolios through acquisition,” Rymer said, noting that all four leading vendors have made a slew of acquisitions over the past couple of years, from 12 by SAP to 29 by Microsoft. This has created a second tier of software companies that includes TIBCO, Red Hat, Sun, Software, Progress and SpringSource.
Meanwhile, there has been a lot of emphasis on frameworks among developers, including technologies such as Ruby on Rails, the Zend Framework, Spring, Mono, JavaFX, Silverlight, the Flash Platform, Asynchronous JavaScript and PAAS solutions, Rymer said.
And Rymer added that despite the vendor move to consolidation, it is not working out well for all customers, many of which are struggling to drive the cost out of developing applications, particularly Web applications.
“There are lots of pain points that vendor consolidation has not solved,” Rymer said. “Clients now want to optimize their costs; they are looking for downward curves. People are looking to open source to drive out cost. Lean software is the antidote to bloated vendors, products and applications.”