Desarrollo de aplicaciones modernas - Poco código

Las plataformas con poco código permiten crear, probar y desplegar aplicaciones empresariales más rápido que las de código manual tradicionales. Estas plataformas son adecuadas para crear aplicaciones oportunistas en colaboración con las partes interesadas de la empresa, crear aplicaciones de análisis y generación de informes de datos, ampliar aplicaciones SaaS y modernizar aplicaciones heredadas.

Una plataforma con poco código le permite centrarse en resolver su problema de negocio en lugar de hacer frente a las complejidades del desarrollo tradicional. Estas complejidades incluyen visualización de datos, recopilación de datos, análisis de datos, seguridad, accesibilidad, rendimiento y globalización. Una plataforma con poco código reduce significativamente estas complejidades y reduce drásticamente la cantidad de código que se mantiene.

Oracle Application Express (APEX) es una plataforma con poco código que proporciona componentes de alto nivel, como formularios, gráficos y widgets de interfaz de usuario. APEX también proporciona patrones de diseño comunes a través de un entorno de desarrollo gráfico intuitivo. Las aplicaciones desarrolladas mediante APEX pueden acceder a los datos locales a través de SQL e integrarse con servicios externos mediante las API de REST. Además, puede publicar la funcionalidad que desarrolla en APEX como API de REST para el consumo externo.

Principios de diseño

Al implementar un patrón de poco código, utilice los siguientes principios de diseño de desarrollo de aplicaciones modernas:
  • Utilice servicios totalmente gestionados para eliminar la complejidad del desarrollo de aplicaciones, los tiempos de ejecución y la gestión de datos

    Utilice un servicio totalmente gestionado, como Oracle APEX en Oracle Autonomous Database, para simplificar el despliegue y el funcionamiento de su aplicación ampliable, segura y con poco código. Además, las capacidades de Oracle Autonomous Database, como Oracle Data Guard, garantizan que la aplicación con poco código se pueda poner a disposición el 7/24/365.

  • Automatización de la creación, la prueba y el despliegue

    Utilice OCI Resource Manager para automatizar el aprovisionamiento de bases de datos autónomas de Oracle y entornos APEX. Utilice Oracle SQL Developer Command Line (SQLcl) con Liquibase para automatizar el despliegue de cambios en el modelo de datos.

  • Mantener el nivel de aplicación sin estado

    Las aplicaciones de Oracle APEX no tienen estado porque todo su estado se mantiene en la base de datos. Este enfoque proporciona sólidas garantías transaccionales y facilita el failover de sus aplicaciones y la realización de copias de seguridad para que puedan recuperarse de los fallos fácilmente.

  • Utilice bases de datos de varios modelos con soporte completo en todos los datos

    Tu aplicación puede utilizar datos en diversos formatos, como tabulares (relacionales), no estructurados, XML, JSON, espaciales y gráficos. La búsqueda de texto integrada, la coincidencia parcial, el análisis y el aprendizaje automático facilitan las aplicaciones avanzadas. Con Oracle APEX en Oracle Autonomous Database, puede utilizar transacciones para garantizar la consistencia y el aislamiento de todos los formatos de datos. También puede proteger los datos confidenciales mediante las funciones de seguridad de Oracle Data Safe, como el control de acceso y el enmascaramiento de datos.

  • Elimine el punto único de fallo mediante la replicación automatizada de datos y la recuperación ante fallos

    APEX en Oracle Autonomous Database se despliega mediante una arquitectura de alta disponibilidad. Puede aumentar aún más la disponibilidad de las aplicaciones mediante Autonomous Data Guard para activar un failover sin problemas.

  • Implantar un enfoque de defensa en profundidad para garantizar el ciclo de vida de la aplicación

    Utilice OCI Identity and Access Management (IAM) para controlar el acceso a sus aplicaciones de APEX. Asigne un esquema de autorización a su aplicación APEX (y sus componentes) para aplicar el control de acceso basado en el rol de usuario o el privilegio. Utilice las capacidades declarativas incorporadas de APEX para manejar la protección del estado de la sesión (SSP) y el cifrado a nivel de elemento para proteger las aplicaciones y los datos. Utilizar variables de enlace en consultas SQL para evitar la inyección SQL. Configure los timeouts apropiados de la aplicación para garantizar que las sesiones inactivas terminen automáticamente. Ejecute el asesor de APEX incorporado para detectar posibles problemas de seguridad, como páginas, elementos y botones no protegidos. Utilice API de escape declarativas y programáticas para proteger frente a scripts de sitios (XSS).

Arquitectura

Esta arquitectura se recomienda para el desarrollo y despliegue de aplicaciones con poco código. Utiliza Oracle APEX en Oracle Autonomous Database, que viene preempaquetado con Oracle REST Data Services; puede publicar API de REST para interactuar con los datos de su base de datos.

A continuación se muestra la descripción de low-code-arch.png
Descripción de la ilustración low-code-arch.png

low-code-arch-oracle.zip

La arquitectura aprovecha los gateways y los equilibradores de carga para aislar Autonomous Database en una subred privada independiente. Un gateway de NAT se utiliza para consumir API de REST externas de forma segura.

Arquitecturas no recomendadas

Las plataformas con poco código deben ser el patrón de elección para crear aplicaciones visuales centradas en datos estructurados. Los desarrolladores nacionales y de línea de negocio pueden aprovechar estas plataformas de forma eficaz, reducir la complejidad y aumentar la agilidad. El uso del desarrollo de aplicaciones tradicionales en estos escenarios le expone a numerosas complejidades, incluyendo seguridad, accesibilidad, acceso eficiente a los datos, rendimiento y globalización.

Ejemplo de casos de uso:

Entre los ejemplos de desarrollo con poco código se incluyen:
  • Aplicaciones oportunistas

    Cuando surge una nueva oportunidad de negocio, a menudo se debe crear rápidamente una nueva aplicación. Las organizaciones tienen un enorme retraso en las aplicaciones que se necesitan para satisfacer las necesidades cambiantes del negocio y seguir siendo competitivas. Este retraso puede estar mal definido y las prioridades del negocio pueden cambiar rápidamente, por lo que las aplicaciones deben ser fáciles de crear y actualizar según sea necesario. Estas aplicaciones se pueden crear y mantener fácilmente mediante APEX.

  • Informes y análisis de datos

    A menudo resulta difícil obtener una imagen completa y precisa de toda la organización o incluso dentro de un departamento. Los datos se incluyen en numerosos sistemas, los informes existentes son limitados y no siempre proporcionan los detalles necesarios para tomar decisiones de negocio fundamentadas. Es difícil limitar quién puede ver qué y evitar infracciones de datos y ejecutar informes predefinidos puede tardar horas. El uso de APEX y sus amplias capacidades de generación de informes y visualización de datos simplifican el desarrollo de paneles de control adecuados para varias comunidades de usuarios.

  • SaaS y extensiones de EBS

    Los sistemas ERP proporcionan una amplia funcionalidad, pero no siempre proporcionan los informes específicos que necesita o pueden estar faltando funcionalidades específicas de su sector u organización. También es posible que tenga procesos de negocio comunes que tomen demasiados pasos para completarse, lo que los hace ineficientes. En esos casos, crear una extensión con APEX puede proporcionar la información adecuada o mejorar considerablemente la productividad y la experiencia del usuario.

  • Modernización de aplicaciones heredadas

    Las aplicaciones de Oracle Forms a menudo proporcionan una experiencia de usuario de cliente/servidor obsoleta. Estas aplicaciones heredadas suelen tener problemas de usabilidad y accesibilidad, tienen dificultades para trabajar con varios navegadores y no son fáciles de usar para dispositivos móviles. Oracle APEX es la plataforma de elección clara para migrar fácilmente las aplicaciones de Oracle Forms a aplicaciones web modernas. Los mismos procedimientos almacenados y paquetes PL/SQL funcionan de forma nativa en APEX, lo que hace que sea fácil de desarrollar.

  • Sustitución de hojas de cálculo

    Casi todas las organizaciones utilizan hojas de cálculo para difundir y generar informes sobre los datos. ¿Por qué? Porque las hojas de cálculo son tan fáciles de crear. Cualquiera puede reunir una hoja de cálculo cuando tiene los datos. Después de su creación, las hojas de cálculo a menudo se envían a los compañeros para ayudar a actualizarlas, lo que inevitablemente lleva a numerosas copias con datos diferentes y procesos de negocio defectuosos. Una solución mucho mejor es tener una única fuente de datos almacenada en una base de datos totalmente segura con una aplicación basada en explorador que todos puedan utilizar para mantener los datos.

Agradecimientos

  • Autores: Sajan Parihar, Shakeeb Rahman, Marc Sewtz
  • Colaboradores: Todd Bottger, Matthias Brantner, James Emerson, Bernard Horan, Harshad Kasture, Parvez Syed Mohamed, Joshua Stanley

Log de Cambios

Este log muestra los cambios significativos: