Cómo elegir software (I)

Introducción

El otro día un conocido mío me comentaba que se había comprado un diseño web a medida y que le parecía caro. Resulta que le habían estafado y le habían cobrado seis veces más del precio actual de mercado.

A raíz de la conversación recordé otras situaciones similares: directores de departamento de grandes empresas que también habían sido estafados al dejar que consultores y programadores eligiesen el software por ellos, "arquitectos" que habían seleccionado mal los "frameworks" para llevar a cabo un proyecto, startups que habían seleccionado mal su software y que tenían problemas para escalarlo cuando el éxito asomaba a su puerta, ... y tantas otras batallitas.

Y entonces pensé que quizá haya mucha gente que no sabe comprar software. Sin duda hay mucha gente que sabe comprarse un coche, o una camisa, pero que no sabe cómo comprar software. Y, claro, o bien les timan o bien compran software que no es adecuado para solucionar su problema. Es como si comprasen un ciclomotor cuando necesitaban una furgoneta, o como si comprasen un seat seiscientos cuando necesitaban un camión.

Y también pensé en escribir una serie de entradas en el blog que pudiesen servir a cualquier persona a la hora de comprar software. Y creo que la analogía de la compra de un coche puede servir para aclarar conceptos. Y aquí va la primera entrega.

Cómo comprar

Para comprarnos un coche solemos hacer una lista de criterios que nos permiten comparar diferentes marcas y modelos: la seguridad, la potencia, la estética, la facilidad de conducción, la comodidad, el consumo, si cabe o no el perro, etcétera.

Una vez fijados estos criterios de decisión les asignamos una puntuación, los valoramos para cada marca y modelo de coche que nos interesa. Nos hacemos una pequeña tabla y asignamos una puntuación a cada uno de los criterios del paso anterior. Si es necesario nos vamos al concesionario y pedimos dar una vuelta con el coche, y le pisamos el acelerador para ver cómo va.

Proceso de compra elemental.

Y una vez tenemos clara cada puntuación nos decidimos a comprar el coche. Y lo compramos. O no: quizá queramos discutirlo con alguien que tiene una serie de criterios diferentes, y entonces podemos discutir y discutir y no nos compramos el coche (y sí, conozco algún caso).

Lo del coche es un ejemplo, claro. La técnica de evaluar una serie de criterios de decisión que nos permitan comparar las opciones vale tanto para comprar coches como lavadoras o camisas, indistintamente. Hasta para comprar naranjas, si me apuran. Y, desde luego, para elegir el software adecuado para resolver un problema.

Resumiendo, la técnica consiste en establecer unos criterios o factores decisivos, valorarlos para cada una de las opciones de compra y luego elegir una. Esto es, efectivamente, una verdad de perogrullo: cualquier ama de casa lo hace a diario en el supermercado.

Tiempo, dinero y otros recursos

Obviamente, como en todas las compras, el criterio que suele ser fundamental a la hora de elegir el software, o el coche, suele ser el presupuesto disponible. O el tiempo que tenemos para poner el software a funcionar, ¿no?

Pues la verdad es que no. El tiempo, o el dinero, o el equipo humano que tenemos o que podemos conseguir, son realmente "condiciones de contorno" que entran en juego en el paso número 3: cuando valoramos los criterios anteriores.

Y es que un software, o un coche, que se anuncia muy barato, y que puede parecernos ideal si tenemos un presupuesto corto, puede resultar muy caro a la larga, y costarnos más de lo que debiese. "Lo barato sale caro", decía mi abuela, y creo que es un buen consejo.

Si uno va a elegir software es mejor hacerse la lista de criterios primero, evaluarlos bien, y luego preocuparse en el paso de valoración sobre cuál es la mejor opción en función del presupuesto económico, del tiempo que tenga y del equipo humano que lo lleve a cabo. Quizá el software, o el coche, que parecía más barato inicialmente resulte ser el más caro a la larga.

Criterios para elegir los criterios para elegir la compra

Los criterios de decisión para elegir una compra dependen, claro está, del artículo a comprar. Si uno compra naranjas no tiene sentido evaluar su facilidad de conducción o si tienen cinco o seis marchas, ¿no?

Con el software pasa igual: los criterios que usamos para seleccionar un procesador de textos no son los mismos que los que usamos para comprar un sistema operativo, un servidor web, una tienda online o un lenguaje de programación.

Los criterios dependen también del uso que se quiera dar al artículo a comprar, y de quién los vaya a usar. Los criterios de decisión para comprar un vehículo de trabajo para un fontanero no son los mismos que para comprar un vehículo familiar, por ejemplo. Y los criterios para comprar un vehículo familiar no son los mismos para una familia normal que para una familia con un minusválido. Los criterios para comprar naranjas no son los mismos si son para zumo o son para postre.

Proceso de compra elemental, versión mejorada.

Con el software sucede lo mismo: los factores para elegir un sistema operativo adecuado dependen de si el uso que se le va a dar es para usarlo en una oficina o en un servidor de internet o en un gran banco, y si en la oficina hay un porrón de expertos en Unix o si son personas que no saben qué es un ratón (de ordenador).

Finalmente, los factores dependen también del tiempo que vayamos a usar el objeto a comprar. Si prevemos que no vamos a tomar las naranjas hasta dentro de unos días entonces quizá podamos comprarlas un poco verdes, para que estén en su punto al consumirlas. Si queremos comprarnos un vehículo que vaya a durar unos años nos interesará saber cuánto nos van a costar las reparaciones y qué averías típicas tiene cada uno de los modelos a evaluar.

Y con el software sucede, de nuevo, lo mismo. Los factores dependen de si es un software que vamos a usar poco tiempo, de forma provisional antes de pasarnos a otro mejor (o más caro). O de si lo queremos para mucho tiempo, y entonces tendremos que considerar cuánto nos van a costar las reparaciones (el software, como todo, se avería de vez en cuando), o cuánto nos va a costar hacer modificaciones, o cuánto nos va a costar mantenerlo en funcionamiento adecuadamente.

En resumen, antes de elegir la lista de criterios tendremos que resolver una serie de preguntas: qué software queremos, para qué lo queremos, quién va a interaccionar con él y por cuánto tiempo lo vamos a usar.

Todas estas preguntas son fáciles de hacer, pero son un poco complicadas de contestar, y serán objeto de una entrada futura en el blog.

Hasta entonces intenten comprar bien, y que no les timen.