Actually two major trends can be seen on the market of tools supporting the entire development process: on the one hand there are a couple of vendors providing so-called ALM or PLM solutions (ALM = Application Lifecycle Management, PLM = Product Lifecycle Management) trying to support a variety of development disciplines (project management, requirements management, change management, configuration management, test management, bug tracking,...) in a single offer, on the other hand there is a huge number of vendors providing tools specialized on a dedicated discipline.
Although ALM solutions may provide benefits with respect to integrating the different disciplines of the lifecycle these solutions typically do not provide the same powerful functionality in all disciplines than is provided by a best-of-breed solution focussing on a dedicated discipline of the development lifecycle. Most ALM solutions today evolved from best-of-breed solutions thus being strong in their original discipline but often being weak in others.
If using an ALM solution a company is highly depending on its vendor. As soon as problems (critical bugs, vendor crashes or is being acquired) arises this may affect the whole development cycle.
On the other side best-of-breed vendors need to integrate their tools into the overall tool chain which may consist of a set of best-of-breed solutions. And those integrations may need to be updated each time a new version of the integrated tool is released. The same holds of course for vendors providing a set of integrated best-of-breed tools.
But what is easier? Integrating a best-of-breed solution improving a specific part of the development process dramatically while the rest of the development process remains unchanged? Or turning the whole development process on its head by introducing a new unknown environment to everyone in a single step?
Do you have a preference? Share your view with us!
By: Andreas Plette