En ingeniería de software , una aplicación monolítica describe una aplicación de software de un solo nivel en la que la interfaz de usuario y el código de acceso a datos se combinan en un solo programa desde una sola plataforma .
Una aplicación monolítica es autónoma e independiente de otras aplicaciones informáticas. La filosofía de diseño es que la aplicación es responsable no solo de una tarea en particular, sino que puede realizar todos los pasos necesarios para completar una función en particular. [1] Hoy en día, algunas aplicaciones de finanzas personales son monolíticas en el sentido de que ayudan al usuario a realizar una tarea completa, de principio a fin, y son silos de datos privados en lugar de partes de un sistema más grande de aplicaciones que funcionan en conjunto. Algunos procesadores de texto son aplicaciones monolíticas. [2] Estas aplicaciones a veces se asocian con computadoras centrales .
En ingeniería de software, una aplicación monolítica describe una aplicación de software diseñada sin modularidad. [ cita requerida ] La modularidad es deseable, en general, ya que admite la reutilización de partes de la lógica de la aplicación y también facilita el mantenimiento al permitir la reparación o reemplazo de partes de la aplicación sin requerir un reemplazo total.
La modularidad se logra en diversos grados mediante diferentes enfoques de modularización. La modularidad basada en código permite a los desarrolladores reutilizar y reparar partes de la aplicación, pero se requieren herramientas de desarrollo para realizar estas funciones de mantenimiento (por ejemplo, es posible que sea necesario volver a compilar la aplicación). La modularidad basada en objetos proporciona la aplicación como una colección de archivos ejecutables separados que se pueden mantener y reemplazar de forma independiente sin volver a implementar la aplicación completa (por ejemplo, archivos "dll" de Microsoft ; archivos de "objetos compartidos" de Sun / UNIX). [ cita requerida ] Algunas capacidades de mensajería de objetos permiten que las aplicaciones basadas en objetos se distribuyan en múltiples computadoras (por ejemplo, Microsoft COM +). Las arquitecturas orientadas a servicios utilizan estándares / protocolos de comunicación específicos para comunicarse entre módulos.
En su uso original, el término "monolítico" describía enormes aplicaciones de mainframe sin modularidad utilizable. [ cita requerida ] Esto, en combinación con el rápido aumento en el poder computacional y por lo tanto el rápido aumento en la complejidad de los problemas que podrían ser abordados por software, resultó en sistemas inmantenibles y la " crisis del software ".
Ver también
Referencias
- ^ Aplicación monolítica de servicios de tecnología de la información Archivado el 2 de septiembre de2007 en Wayback Machine. Consultado el 28 de noviembre de 2019.
- ^ Aplicación de tres niveles de Microsoftrecuperada el 3 de agosto de 2007