La palabra "diseño" evoca muchas cosas, pero principalmente evoca aspectos visuales y gráficos, sobre todo si nos encontramos en el mundillo del desarrollo. Como muestra el logotipo de la categoría que acompaña a este hilo o la mayoría de posts bajo dicha categoría.
La misma palabra alude a formas y dibujos en muchas de sus acepciones en distintos diccionarios, sin embargo el diseño alude a la necesidad de seguir un plan a la hora de crear algo. Planes que se dibujaban. Un vestido, un edificio, la maquinaria de una imprenta... Da Vinci dibujaba a la hora de diseñar.
Y el diseño quedó ligado al dibujo, quedó ligado a todo aquello que es gráfico y visual. Hasta nuestros días. Hoy en día muchos defenderán que el desarrollo y el diseño son disciplinas completamente separadas y que necesitarás un desarrollador y un diseñador para tu proyecto si quieres que este triunfe. La separación entre iglesia y estado encarnada en el mismo nombre de este subforo.
Un programador no tiene porqué saber dibujar. (Extendiendo "dibujar" al dibujo por ordenador y al diseño gráfico en general.)
Un diseñador gráfico no tiene porqué saber programar.
Estoy completamente de acuerdo con esas dos afirmaciones. Dibujar y programar son herramientas. Herramientas que podrán ser más o menos útiles según el proyecto acometido o según la fase de dicho proyecto en la que nos encontremos. Si controlas ambas herramientas de puta madre, sin embargo el diseño es algo que va más allá del diseño gráfico y de dibujar.
Diseñar es planear, es resolver problemas, es encontrar problemas que pueden surgir y resolverlos, es tomar decisiones argumentadas. TODAS las decisiones.
Y en determinados proyectos hará falta que todas o muchas personas involucradas en el proyecto estén involucradas en dichas decisiones de una u otra manera. Por lo que hay que tener un mínimo de perspectiva de diseño, "design-thinking" que lo llaman.
Obviamente en un proyecto grande y jerárquico no es necesario que todas las personas tengan esta visión de diseño. Un proyecto grande tendrá involucrados a diseñadores, arquitectos, ingenieros, programadores, artistas gráficos, sociólogos, publicistas, secretarias, chiefs de miles de cosas y una turba de becarios. Como poco.
Sin embargo, en el momento en el que se pierda la visión de que hay que diseñar todas las decisiones, es decir, planearlas, todo se habrá ido a la mierda. Planes y decisiones que se tomarán en base a dibujos, prototipos, y cualquier otra herramienta al alcance.
Un momento, ¿pero para todo esto no tenemos la ingeniería del software? ¿Para qué me he pasado meses empollando esos tochos sobre el Proceso Unificado y ahora ando todo enfarrado con post-its con mis metodologías ágiles?
La ingeniería software no deja de ser parte del proceso de diseño, metodologías a seguir una vez determinadas decisiones han sido tomadas, pero no por ello deben dejarse otras decisiones al azar. El diseño debe guiar todo el proceso.
Y es que el diseño no es arte, el diseño es ingeniería.
Con este pequeño alegato a favor del diseño y de una perspectiva distinta del diseño quiero, sobre todo, obtener vuestras impresiones, ¿qué es para vosotros el diseño? ¿Alguna vez habéis sentido como yo que el término diseño muchas veces se limita al diseño gráfico? ¿Consideráis necesaria esa separación entre diseño y desarrollo? O, en su defecto, ¿consideráis necesaria una visión más holística de lo que es el diseño en el campo del software?
PD: Me hubiera gustado darle una vuelta a todo esto pero blzkz me está metiendo prisa para que lo postee, así que lo siento si la exposición de ideas es un poco difusa o si existe algún error de bulto; quedo a la espera de vuestros comentarios y correcciones.