Enterprises will spend too much this year creating monolithic apps — the sort of server-side efforts that involve formal requirements and tie up dozens (or hundreds) of architects, coders, and testers. Most would be better off using scripting languages, Web services, and SOA to weave together browser-based apps that leverage existing assets.
On the front end, this means AJAX-based UIs, which help employees work more productively. Behind the scenes, SOA-based mashups will eliminate a lot of manual labor by enabling robust, non-brittle, many-to-many integrations that offer solid performance, security, and support for multistep transactions. Unfortunately, many enterprises will not spend enough to train and hire developers accordingly.
Any shift toward scripting should be accompanied by a shift away from formal requirements and toward agile processes. But companies saying goodbye to huge software rollouts and hello to permanent betas will likely spend too little ensuring a successful transition. It’s as much a matter of having strong project management skills on board as it is to have developers versed in agile techniques. After all, when requested features can no longer wait for next year’s “dot zero” release but are instead deployed companywide in “next Thursday’s build,” not having the right personnel in place can be costly.
Also out the window this year: traditional testing models, in which QA and security validation is performed after coding is complete. That said, companies will spend too much time and money on traditional testing and on patch-and-fix deployment of security updates because they won’t spend enough on integrating strict vulnerability and functional testing into every phase of development. Traditional post-development acceptance testing will still be necessary, but by integrating testing throughout the design and coding process, you will shorten test-and-fix cycles considerably, freeing your team up to deliver more apps faster.
More intriguing is where these shifts may lead. Expect 2007 to mark the beginning of the end of desktop software development, as anything you can do on the desktop, the SOA-based server will be able to do better, spelling bad news for those rolling out Windows Vista.