In this January article, the authors look back at the software development landscape in 2007 and make predictions for 2008.
As is traditional for a January column we are going to look back at 2007's review and predictions and look ahead to the coming year. Agile is mainstream these days, which basically means it has crossed the chasm from early adopters. Along with agile crossing the chasm there has been an increased desire to make agile and lean development scale across the enterprise. That is partly responsible for the focus on collaboration, and the working of wiki's into the overall software tracking and the knowledge-management process. But this also has some bad effects as well (in addition to some good ones).
All the Agile-named products and services claiming to be Agile (legitimate or otherwise) will be even more mainstream, whether it is claiming to be "Agile CM", "Agile Requirements" or "Agile Waterfall" or "Agile Outsourcing", (or whatever else someone can think of to make a buck)
"Agile 2.0" and "Post-Agile"
Of course the above also leads to the question of the current state of what we've previously seen dubbed as "
Next Generation Agile " or " Agile 2.0 ". Where is that headed? Lean & Six Sigma have officially been married into " Lean Six Sigma ".
- There's been recent talk of a " Post-Agile" movement as something that goes beyond merely Scrum and XP (and even Lean). And there's also been a lot of backlash against that idea as well.
- More recently, David Anderson started a KanBan development for sustainable software engineering movement (and YahooGroup) that claims to do away with iterations when you can have short-enough releases and decoupling release content planning from feature content planning so that the latter can occur more dynamically as feature development progress. The ideas are based primarily on Kan-Ban principles from the Toyota Production System (TPS) together with TOC applied to more the software engineering lifecycles.
- Craig Larman has an upcoming book on scaling & adopting Agile/Lean for successful large, multi-site & offshore using "Large-Scale Scrum"
Global Collaboration and Convergence
We previously mentioned the rise in globalization and the resulting effects on software development. This is an obvious and growing trend with out-sourcing, in-sourcing, off-shoring, near-shoring and all their brethren.
The challenges of this distributed development for SCM are obvious, with various tools and technologies being marketed, developed and adapted to address these needs.
An interesting development is that it is increasingly not just teams within the same company who need to collaborate, but also different companies and fluid networks of partner companies. Within the same company it tends to be easier to mandate a single SCM tool to help address the distributed development requirement. Even in single companies, you get new acquisitions, off-shoring partners etc which make life more complicated.
There are increasing numbers of companies that have fairly fluid requirements to work with different partners remotely. This can be as simple as individual contractors working from home, to third party companies completing a particular project which may take just a few months. Life becomes even more complicated if you have integrations with third party software, or some element of open source software to manage.
One of the key challenges when working with third parties is the likelihood of both sides using different SCM tools. You are thus faced with collaborative working requirements across tools - and traditionally vendors have tended to be less interested in