Patrones de diseño software
Un libro casi mítico |
Lo que ofrecía el libro era, en esencia, un catálogo de los así llamados patrones de diseño de objetos, ejemplificada luego su codificación en C++ para todo tipo de problemáticas genéricas que se encuentran en el software del día a día, y precedida por una introducción sobre el concepto y la mecánica de utilización.
Era, simplemente, brillante.
Brillante por el novedoso planteamiento de emplear elementos reutilizables, pero no ya a nivel de código construido, cosa que se llevaba promoviendo en el mundo de la ingeniería de software desde mucho antes, sino en el nivel de diseño. Un planteamiento capaz de proporcionar soluciones elegantes y probadas ganando, pues, en calidad y eficiencia del diseño y posterior desarrollo.
Y brillante también porque la calidad de diseño de los patrones que componían el libro era altísima. Ya en aquella época consideré que, probablemente la mejor forma de aprender, de aprender de verdad, cómo era un buen diseño software orientado a objetos era leyendo este libro y usando en la práctica los diseños propuestos.
En años posteriores eché de menos que las nuevas generaciones de desarrolladores no conocieran, al menos no en su mayoría, este libro y estos patrones.
Patrones de modelos de negocio
La idea de los patrones de diseño caló en el mundo del software. Caló mucho. Y todavía hoy en día siguen apareciendo publicaciones con patrones para diferentes casuísticas o lenguajes de programación aunque quizá, y sólo quizá, el auge del low-code y el no-code, y la cada vez mayor disponibilidad de bloques preconstruidos para todo tipo de cosas en la nube, haga que decaiga el interés en este tipo de enfoques, no porque no sigan siendo interesantes, que lo siguen siendo, sino porque el diseño y desarrollo de software al modo tradicional, decaiga parcialmente en utilización
Pero lo bueno es que, no se hasta qué punto por inspiración directa, o indirecta, o por mera convergencia de planteamientos, la idea de los patrones de diseño ha trascendido al mundo del software.
Me encuentro leyendo el libro 'The business model navigator' de Oliver Gassmann, Karolin Frankenberger y Michaela Choudury un libro que habla de diseño de modelos de negocio y, sobre todo, de innovación en modelos de negocio.
Y, a alto nivel, es sorprendente el paralelismo con el libro de patrones de diseño orientado a objetos de Gamma y colaboradores.
En efecto, es libro sobre modelos de negocio ofrece lo que denomina 60 modelos de negocio pero que, en realidad, vienen a ser patrones de diseño de modelo de negocio, es decir, planteamientos de modelo de negocio reutilizables y recombinables para generar el modelo de negocio de una empresa concreta. Y ello precedido de algunos capítulos que explican el planteamiento y la mecánica a seguir. Lo mismo que el legendario libro de patrones de diseño orientado a objetos.
Y me parece fantástico.
Una gran manera de aprender a diseñar modelos de negocio, una gran manera de aprender cómo son los modelos de negocio de éxito y una gran manera de reutilizar diseños existentes aumentando la probabilidad de éxito y la eficiencia del proceso.
Exactamente como en el caso de los patrones de diseño software.
Patrones e innovación
Y si algo faltaba, los patrones de diseño, son un motor de innovación.
Pudiera parecer que reutilizar diseños existentes es una mera copia que mata el talento y la innovación, que quedaría concentrada en los pocos que diseñan los patrones.
Pero no es así.
Lo cierto es que la recombinación de patrones es un campo de creatividad e innovación. En el caso concreto de los modelos de negocio, reutilizar un patrón de modelo de negocio procedente, quizá, no ya de otra empresa, sino incluso de otro sector, puede ser una forma fantástica de innovar y mejorar en el propio modelo de negcoio.
De hecho, los autores de 'The business model navigator' nos dicen, explícitamente:
we discovered that over 90 per cent of all business model innovations simply recombine existing ideas and concepts from other industries.
O sea, no es sólo que se pueda innovar recombinando patrones de modelos de negocio ya existentes, sino es que, además, así es como se innova en modelos de negocio en la mayoría de los casos.
Conclusiones
Así que, estimado lector, no lo dudes. Los patrones de diseño, ya sea de software o de modelos de negocio, son una gran idea. Son una forma de aprender buen diseño en la disciplina que sea, son una buena forma de conseguir diseños de calidad con mayores garantías y eficiencia y, además, y pese a lo que pueda parecer, son una fuente de innovación.
¿A qué esperas para utilizarlos?
No hay comentarios:
Publicar un comentario