Ir al contenido principal

Entradas

Mostrando las entradas de noviembre, 2021

Trazas o rastros (Tracers)

  Trazas o rastros (Tracers) La gestión de trazas en los sistemas informáticos es un proceso fundamental para garantizar la seguridad. La gran mayoría de software, hardware y dispositivos de red, poseen mecanismos para generar registros del estado de su funcionamiento. Es de gran importancia conocer los accesos realizados, u otros eventos que permiten determinar el comportamiento de un sistema en un período de tiempo. Las trazas se generan en diferentes formatos lo que hace difícil su procesamiento. La gestión de trazas requiere de sistemas que procesen y normalicen la gran variedad de formatos existentes. También es fundamental definir mecanismos de transporte, planeación y ejecución, sistemas de almacenamiento eficientes en cuanto la utilización de espacio y herramientas para la búsqueda y detección de patrones.  Las trazas generadas por los sistemas de hardware y software tienen una importancia fundamental en el proceso de gestión de la seguridad de la información. Dentro d...

Registros (logs)

  Registros (logs) Las empresas se apoyan en sistemas que generan una gran cantidad de datos en forma de trazas textuales, llamadas técnicamente “Logs ”. Esta información no es visible para el usuario, pero suele estar relacionada con su actividad informática (por ejemplo, historial de navegación, programas abiertos, etc.) o con los propios sistemas de información (es decir, estado actual de programas, seguridad, accesos, conectividad de redes, etc.). Los Logs, que nos explican el comportamiento de nuestros sistemas o programas, suelen escribirse en ficheros. Aunque más adelante pueden ser examinados, estos archivos por sí solos no nos permitirán detectar si se ha producido un error. ¿Cómo se presentan los Logs? En general podemos decir que un archivo de log de cualquier sistema, aplicación o dispositivo debe incluir: Time-stamp: información sobre la hora en que se ha producido el evento; fecha, hora, minuto y segundo. Categoría: cualquier archivo de log incluye algún tipo de clas...

Métricas

  Métricas Las métricas de desarrollo de software pueden revelar cómo se está desempeñando una aplicación y qué tan efectivo es el equipo de desarrollo en su trabajo. Las métricas del Software comprenden un amplio rango de actividades diversas, estas son algunas: Productividad del desarrollador Rendimiento del software Defectos y seguridad Experiencia de usuario (UX) Si bien una organización de TI no necesita tabular todas las métricas de software, debe priorizar y rastrear las que más importan para sus requisitos y objetivos. Métricas de productividad del desarrollador Las métricas de productividad permiten a los gerentes de desarrollo ejecutar mejor los proyectos. Tabule una combinación de estas métricas de software para medir qué tan avanzado está un proyecto, los niveles de productividad del desarrollador, la cantidad de tiempo de desarrollo adicional necesario y otras más. Tiempo de entrega (lead time). Cantidad de código. Trabajo en curso (WIP). Velocidad ágil. Tasa de éx...

MONITOREO DE SOFTWARE

  MONITOREO DE SOFTWARE Un buen sistema de monitorización es indispensable para optimizar la administración de sistemas IT y ganar en eficiencia. Todos los datos que se guardan en los sistemas de monitorización y logs son realmente importantes tanto para predecir problemas como para ser proactivos. La monitorización permite anticiparse con datos para detectar debilidades y cuellos de botella, mejorar servicios y, por supuesto, evitar y solucionar cualquier problema —incluso antes de que llegue a manifestarse. Disponer de las herramientas adecuadas para monitorizar es tan importante como establecer los procedimientos a seguir y decidir los KPIs (métricas) que hay que controlar. Todo proceso de monitorización y administración de sistemas IT comienza por un estudio previo de las necesidades; que puede ir acompañado, en caso de necesidad, de una auditoría de sistemas y de seguridad. Si la plataforma es nueva, se definirá la arquitectura de sistemas ideal para cada proyecto específico; ...

SELENIUM IDE

  SELENIUM IDE Es una extensión de Firefox que permite escribir test de Selenium con las interacciones del usuario y ejecutarlos directamente desde el navegador. Puedes indicarle rutinas de navegación para luego ejecutarlas una y otra vez y detectar así, de una manera sencilla, posibles errores. Todo esto sin necesidad de tener conocimientos de ningún lenguaje de scripting de prueba. Enseñarle a Selenium lo que queremos probar de nuestro sistema web es relativamente sencillo. Y digo “relativamente” porque Selenium IDE, por desgracia, tiene muchos límites. Su interfaz es muy fácil de usar, pero para sacarle el máximo provecho no se recomienda quedarse solo con lo que nos ofrece Selenium IDE. Se pueden crear funciones personalizadas para necesidades específicas en lenguaje JavaScript, ampliando así, el espectro de las posibles pruebas. Además de esto también existen unos cuantos plugins oficiales recogidos en el portal web del proyecto. Selenium es compatible con una gran variedad de...

¿QUÉ ES LA INTEGRACIÓN CONTINUA?

  ¿QUÉ ES LA INTEGRACIÓN CONTINUA? Es la práctica de hacer que todos los que trabajan en el mismo proyecto de software compartan sus cambios en la base de código con regularidad, y luego comprobar que el código sigue funcionando como debería después de cada cambio. La práctica de la integración continua comienza con la confirmación de los cambios en un sistema de control de versiones/fuentes con regularidad, para que todos construyan sobre la misma base. Cada confirmación desencadena una compilación y una serie de pruebas automatizadas para verificar el comportamiento y asegurar que el cambio no ha estropeado nada. Prácticas de CI Los ingredientes clave de la integración continua son los siguientes: Un sistema de control de fuentes o versiones que contenga todo el código base, incluidos los archivos de código fuente, las bibliotecas, los archivos de configuración y los scripts Scripts de compilación automatizados Tests automatizados Infraestructura en la que ejecutar las compilacio...

¿QUÉ ES AUTOMATIZACIÓN?

  ¿QUÉ ES AUTOMATIZACIÓN? Las empresas de desarrollo de software buscan la manera de entregar sus productos o mejoras de estos de una forma ágil y fiable a sus clientes. Para lograr este objetivo necesitan automatizar este proceso de entrega o despliegue, es decir, incluir los mecanismos y herramientas necesarias para realizar el despliegue sin la intervención humana.  Implementar herramientas de automatización dentro del proceso de desarrollo de software permite agilizar la entrega de un producto de software al reducir el tiempo invertido en el desarrollo de este. La integración continua, la entrega continua y el despliegue continuo proporcionan un modelo informático automatizado que permite distribuir las aplicaciones de manera más rápida, eficiente y segura.  Ventajas de la automatización en sistemas  La automatización en el desarrollo de software proporciona una serie de beneficios entre los que podemos destacar las siguientes:  Reduce el tiempo necesario pa...