Aplicaciones Web
Análisis, programación, implementación y mejora contínua de aplicaciones web en php, javascript, bases de datos mysql y yiiframework. Front-end y back-end. ¿Software as a Service en la nube?.
QUÉ ES UNA APLICACIÓN WEB
Una Aplicación Web es un programa de software que se codifica en un lenguaje de programación soportado por los navegadores web (como Chrome, Firefox, Opera, Internet Explorer, etc.) y que se ejecuta a través del propio navegador. El programa en vez de estar instalado en tu ordenador, está alojado en un servidor web y se accede a él a través de Internet (o de una intranet) como si fuera una página web.
Las aplicaciones web son cada vez más populares debido a lo práctico del navegador web como cliente ligero, a la independencia del sistema operativo, así como a la facilidad para actualizar y mantener aplicaciones web sin distribuir e instalar software a miles de usuarios potenciales. Existen aplicaciones como los webmails, wikis, weblogs, el comercio electrónico, las redes sociales, almacenamientos de datos on-line, etc. son ejemplos bien conocidos de aplicaciones web.
La aplicación web puede contener elementos que permiten una comunicación activa entre el usuario y la información. Esto permite que el usuario acceda a los datos de modo interactivo, gracias a que la página responderá a cada una de sus acciones, como por ejemplo rellenar y enviar formularios, acceder a gestores de base de datos de todo tipo, interactuar con el ERP de la empresa, como introducir pedidos, albaranes o facturas, inscribirte a eventos, realizar reservas, realizar pagos mediante pasarela de pago TPV virtual, consultar tu cuenta bancaria, etc.
Una empresa puede mejorar considerablemente su eficiencia mediante el uso de una aplicación web, programada a medida, que optimice sus tareas cotidianas más tediosas y/o repetitivas.
VENTAJAS DE UNA APLICACIÓN WEB BRAVANTIA
- Compatible: No hay problemas de compatibilidad con otros programas o aplicaciones que tengas instaladas en tu ordenador. Solo necesitas tener un navegador actualizado y conexión a Internet para poder utilizarla.
- Multiplataforma: Se pueden usar desde cualquier sistema operativo que tengas instalado.
- Portable: Se puede ejecutar desde cualquier dispositivo electrónico que tenga conexión a Internet y pueda ejecutar un navegador: PC de sobremesa, portátil, notebook, tablet, teléfonos móviles, etc. No obstante, sí se requiere que la aplicación sea capaz de adaptar su visualización al tamaño de la pantalla del dispositivo para no dificultar la usabilidad.
- Ahorra tiempo: Se pueden realizar tareas sencillas sin necesidad de descargar ni instalar ningún programa en tu ordenador. No tienes que disponer del CD de instalación ni de posteriores actualizaciones.
- No ocupa espacio: No consume el espacio de tu disco duro ya que se ejecuta directamente desde Internet.
- Actualización inmediata: Como el software lo gestiona el propio desarrollador, cuando te conectas siempre estás usando la última versión que haya lanzado.
- Bajo consumo de recursos: Dado que la aplicación no se encuentra en tu ordenador las y tareas que realiza no consumen recursos de tu procesador.
- Alta disponibilidad: El servicio se puede ofrecer desde múltiples localizaciones para asegurar la continuidad del mismo.
- Más seguridad: Los posibles virus o malware de tu ordenador no dañan la aplicación ni los datos porque éstos están guardados en el servidor de la aplicación y no en tu ordenador. Es el desarrollador quien toma las las medidas de protección necesarias.
ANÁLISIS, PROGRAMACIÓN, IMPLEMENTACIÓN Y MEJORA CONTÍNUA DE UNA APLICACIÓN WEB BRAVANTIA
Las cuatro principales fases de desarrollo de una aplicación web desarrollada por Bravantia desde Arnedo (La Rioja) están basadas en el ciclo continuo PDCA son:
- Análisis: Investigación en profundidad de todas las tareas o procesos que se van a automatizar para que queden contemplados dentro de la aplicación todas sus posibles variantes y excepciones.
- Programación: Generación del programa informático que realizará esas labores.
- Implementación: Instalación en el servidor, configuraciones de seguridad y de las bases de datos, pruebas de funcionamiento y acceso desde los navegadores, formación de los usuarios, etc.
- Verificación y mejora contínua: Tras un tiempo de uso continuado surgirán mejoras, actualizaciones y nuevas funcionalidades que mejoren la aplicación.
FRONT-END Y BACK-END
Normalmente una aplicación web contiene una parte llamada front-end que es la cara visible y navegable para casi todos los usuarios de la misma y otra parte llamada back-end que es la zona administrativa gestionada por el administrador del sistema y que es donde se realizan las labores de configuración de la aplicación o análisis de los datos.
Los diferentes usuarios estarán registrados y deberán acceder mediante su nombre y contraseña. De esta forma se controlan los accesos y se establecen diferentes roles y privilegios de uso dentro de la aplicación.
DESARROLLAMOS APLICACIONES WEB PROFESIONALES
En Bravantia de Arnedo (La Rioja) desarrollamos sus aplicaciones web con la máxima calidad de código y rigor profesional, según las siguientes características:
- MVC: Arquitectura Modelo/Vista/Controlador con clara separación de conceptos.
- DAO y AR: Accesos a la base de datos mediante Database Access Objects y Active Record.
- Validación de datos: Validación de todos los campos de entrada a través formularios como números, textos, emails, links, etc.
- Integración con AJAX: Actualización de datos y su visualización sin tener que recargar la página.
- RBAC: Autenticación y autorización de usuarios basado en jerarquías o roles.
- Temas personalizados: Adaptación estética de las vistas según imagen corporativa de tu organización.
- APIs de terceros: Integración con aplicaciones web de otras empresas o servicios de Internet como Redes Sociales, mapas, visualización de estadísticas, pasarelas de pago TPV virtual, etc.
- I18N y L10N: Enfoque hacia la internacionalización con traducción multiidioma y adaptación a formatos locales de fecha, hora, cifras, monedas, etc.
- Caching: Capa intermedia de cacheado de datos y páginas para optimizar los recursos y la velocidad de acceso.
- Errores y loging: Gestión y visualización de errores según diferentes categorías.
- Seguridad: Implantación de medidas de seguridad a nivel aplicación para evitar ataques tipo SQL injection, cross-site scripting (XSS), cross-site request forgery (CSRF) o cookie tampering entre otros.
- Unit testing: Soporte para ejecutar pruebas unitarias y funcionales basadas en PHPUnit y Selenium.