Técnica KISS: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
| Line 1: | Line 1: | ||
La '''técnica KISS''' (''Keep It Simple, Stupid'' | {{Meta-bok|min=4}} | ||
La '''técnica KISS''' (acrónimo de ''Keep It Simple, Stupid'', "mantenlo simple") es un principio de diseño que establece que los sistemas funcionan mejor cuando son simples: fáciles de entender, mantener y modificar. No equivale a hacerlos primitivos o incompletos, sino a evitar la complejidad innecesaria que no aporta valor. | |||
== Origen == | |||
El término fue acuñado por el ingeniero Kelly Johnson en los años sesenta, cuando dirigía el equipo de diseño "Skunk Works" en Lockheed Martin. Johnson aplicaba el principio a sistemas de ingeniería aeronáutica: los aviones debían ser tan simples que un mecánico ordinario pudiera repararlos en condiciones de combate con herramientas básicas. La complejidad innecesaria no era elegancia, era riesgo. | |||
Desde entonces el principio se ha aplicado en diseño de software, marketing, comunicación, arquitectura de sistemas y gestión de proyectos. | |||
== KISS en la gestión ágil == | |||
La agilidad y KISS comparten una raíz común: ambos desconfían de la complejidad por la complejidad. Algunas aplicaciones concretas en equipos ágiles: | |||
* '''Definir objetivos claramente:''' la claridad en el [[Objetivo del sprint|objetivo del sprint]] evita trabajo innecesario y malentendidos. | |||
* '''Simplificar la comunicación:''' evitar jerga técnica en las conversaciones con el cliente y en las historias de usuario. Si el propietario del producto no entiende una historia, es probable que sea demasiado compleja o esté mal formulada. | |||
* '''Priorizar por valor real:''' KISS aplicado a la [[pila del producto]] significa resistir la tentación de añadir funcionalidades "interesantes" que no responden a necesidades reales del usuario. | |||
* '''Evitar la sobreingeniería:''' la solución más simple que pasa los [[Criterios de aceptación|criterios de aceptación]] es siempre preferible a la más elaborada. La complejidad técnica se paga con [[deuda técnica]] y dificultad de mantenimiento. | |||
* '''Iterar y adaptar:''' cada iteración es una oportunidad de simplificar: eliminar lo que no funciona, reducir lo que es más complejo de lo necesario. | |||
==KISS en la gestión ágil== | == KISS y la IA como herramienta == | ||
La incorporación de herramientas de IA generativa en el desarrollo ha añadido nuevas dimensiones al principio KISS: | |||
*'''Definir | * '''Código generado por IA:''' los asistentes de código pueden generar soluciones funcionalmente correctas pero innecesariamente complejas. Aplicar KISS al código generado por IA significa revisarlo activamente para simplificarlo, no aceptarlo directamente porque "funciona". | ||
* '''Simplificar la comunicación:''' evitar | * '''Prompts y configuraciones de IA:''' los sistemas que incorporan IA generativa deben diseñarse con el mismo principio: un prompt simple, claro y bien acotado produce resultados más predecibles que uno elaborado y lleno de condiciones. | ||
* '''Priorizar | * '''Integración de IA en productos:''' la tentación de añadir capacidades de IA "porque están de moda" sin que respondan a una necesidad real del usuario es una violación directa del principio KISS. | ||
* '''Evitar la sobreingeniería:''' | == KISS en los contratos ágiles == | ||
* '''Iterar y | El principio KISS tiene también aplicación en la negociación y redacción de contratos ágiles: | ||
* '''Lenguaje simple:''' los contratos deben estar escritos para ser entendidos por todas las partes, sin jerga legal innecesaria. | |||
* '''Objetivos en lugar de especificaciones:''' definir qué se quiere conseguir, no cómo conseguirlo. Esto da flexibilidad al equipo y reduce la burocracia. | |||
* '''Pago por valor entregado:''' en lugar de pagar por hitos o por tiempo, basarse en la entrega de incrementos aceptados. | |||
* '''Cláusulas de adaptabilidad:''' reconocer explícitamente que los requisitos evolucionan y establecer mecanismos de revisión, en lugar de intentar prever todos los escenarios en el contrato inicial. | |||
== Error frecuente == | |||
<div class="bok-aviso"> | |||
'''Confundir "simple" con "descuidado".''' KISS no significa hacer menos trabajo ni producir resultados de menor calidad. Significa no añadir complejidad que no aporta valor. Una [[Historia de usuario|historia de usuario]] bien escrita es simple y completa; una solución técnica KISS puede ser sofisticada en lo que hace pero fácil de entender en cómo está construida. La simplicidad requiere a menudo más esfuerzo que la complejidad: es más fácil añadir que eliminar lo superfluo. | |||
* ''' | </div> | ||
== Recursos == | |||
* ''' | <div class="bok-recurso"> | ||
🎙️ [https://open.spotify.com/episode/4pLC4QkipS8pG0viTUUPr4 '''Podcast Ep. 8: Contratos ágiles: cómo informar y dar confianza al cliente''']<span class="detalle">Scrum Manager Podcast · Spotify</span> | |||
* ''' | </div> | ||
<div class="bok-recurso"> | |||
📄 [https://www.scrummanager.com/blog/2023/03/contratos-agiles-como-informar-y-dar-confianza-al-cliente/ '''Contratos ágiles: cómo informar y dar confianza al cliente''']<span class="detalle">Scrum Manager Blog · mar 2023</span> | |||
==KISS en los contratos ágiles== | </div> | ||
<div class="bok-recurso"> | |||
📄 [https://scrummanager.com/files/research/Descubriendo%20Agile%20Contracts.pdf '''''Descubriendo Agile Contracts''''']<span class="detalle">Scrum Manager · PDF descargable</span> | |||
</div> | |||
== Véase también == | |||
<div class="bok-tags"> | |||
[[Deuda técnica]] [[Refactorización]] [[Mínimo Producto Viable]] [[Historia de usuario]] [[Agilidad técnica]] [[Gold Plating]] | |||
</div> | |||
<div class="bok-ecosistema"> | |||
<div class="texto"> | |||
<span class="titulo">'''¿Quieres avanzar en agilidad?'''</span> | |||
<span class="sub">Puedes buscar convocatorias de cursos y exámenes o ir a tu ritmo haciéndote miembro del Club Agile. Esta membresía incluye recursos exclusivos, aulas e-learning y acceso a [https://scrummanager.com/skillarena/ '''Skill Arena''']: un espacio para practicar y medir tus habilidades ágiles a tu ritmo.</span> | |||
</div> | |||
<div class="botones"> | |||
<div class="bok-btn-outline">[https://www.scrummanager.com/website/c/calendar/show-courses.php Buscar convocatorias]</div> | |||
===''' | <div class="bok-btn-filled">[https://scrummanager.com/club/ Club Agile]</div> | ||
</div> | |||
== | </div> | ||
[[Category:Glosario de términos]] | [[Category:Glosario de términos]] | ||
[[Category:Prácticas ágiles]] | [[Category:Prácticas ágiles]] | ||
[[Category:Marcos y modelos]] | |||