Commercial or Open Source: Which One is More Agile?

>> Sunday, November 1, 2009

Is there a link between open source software and an organization's agility?

To me, that's a good question. At first, one would be tempted to say no, the type of license under which a given software artifact or system is distributed has no impact on the degree of agility of the organization that uses it. But anybody who has worked in an organization where one or the other (or both) types of licenses are used will tell you, or I expect them to tell you, that commercial software licenses tend to limit your options, your flexibility, your adaptability. Now, the lack of such qualities, in my book, tend to reduce agility, certainly not to increase it. To make my point, I tried to list the most important "rigidifying" (sic) effects of the use of commercial software licenses in an organization. Note that licensed software, for the purpose of this discussion, is any piece of software whether it is a productivity or management tool, a runtime engine, a coding or building tool, a data management system, a library or a framework incorporated in a greater ensemble.

  1. The decision making and bureaucratic process leading to the adoption of any significant piece of software is usually time consuming and arduous. When, on top of the technical and political (I was tempted by the word "religious") issues there are important budgetary and legal issues then it becomes an odyssey. In an agile organization, the decision making process should be swift and focused on the needs of the business. When it can be done without the intervention of accountants, attorneys and other peripheral stakeholders, it fits in more readily with the agile philosophy.
  2. Commercial licenses usually come with constraints. Constraints on the number of users,on the number of CPUs, they may have an expiration date, a service contract for updates and support etc. This leads sometimes to absurd (but very real) situations where a piece of software acquired for a high price is not used by all who need it because there are not enough "seats" and acquiring additional ones was not budgeted and/or approved. I was actually exposed to a situation where a bug tracking system was used by the testers but not by the developers because the number of available licenses was insufficient. Talk about something really useful and agile. In such a situation, the relative quality and feature set of a piece of software becomes irrelevant.
  3. With commercial licenses, it is often the case that the installation and distribution of copies of the software must be "managed". The number of copies installed must be monitored and the software must often be unlocked. I find that not only is commercial software more costly to acquire, it is also usually much more costly to use post-acquisition. This all adds complexity and overhead without real business value. Things that are at odds with the precepts of agility.
  4. Inertia. An agile organization should minimize inertia. However, did you ever have to convince a manager who obtained approval for a large investment in a piece of software that the software is useless or obsolete? Not an easy assignment. Often, the best decision, from a business and technical standpoint, is simply to abandon a piece of software. If there was no initial, up-front, financial commitment, the decision is often easier. Strange enough, tell a manager that he should drop a costly piece of software and use a free one instead because the free one is better, more powerful and more cost effective and you often get lot of resistance. Not a very rational stance but I guess that is human nature. There still is a strong belief that if you pay for something you will obtain more value, more service, more support. This is often true but not always. In software, strangely enough, this is not always the case and it is less and less the case. But that is possibly the subject for another article.
So long,


0 commentaires:

Post a Comment

  © Blogger template Webnolia by 2009

Back to TOP