La complejidad es un tema central en el desarrollo de software. El elevar el nivel de abstracción ayuda a reducir la complejidad así como la cantidad de documentación requerida por el proyecto. Esto puede lograrse a través de reutilización, del uso de herramientas de modelamiento de alto nivel, y estabilizando la arquitectura tempranamente.
Beneficios
- Productividad
- Reducción de la complejidad
- Reusar activos ya existentes
- Usar herramientas y lenguajes de alto nivel para reducir la cantidad de documentación.
- Enfocarse primero en la arquitectura
- Realizar la arquitectura pensando en resiliencia, calidad, simplicidad y control de la complejidad.
- Ir directamente de requerimientos vagos de alto nivel a código hecho a mano:
- Dado que se utilizan pocas abstracciones, existen conflictos entre el nivel de código y el nivel conceptual, por lo que se pierden oportunidades de reutilización
- La captura informal de requerimientos y de otra información hace necesario el revisar las especificaciones continuamente.
- Si se hace poco énfasis en la arquitectura se incurrirá en retrabajos en el futuro.
Publicar un comentario