Datos personales

martes, 14 de agosto de 2018

Pruebas técnicas de capacidad y vulnerabilidad


Pruebas técnicas (capacidad y vulnerabilidad) sobre aplicaciones

El objetivo del plan de pruebas es documentar cada requerimiento de prueba y cómo estas pruebas serán realizadas. para el caso particular las pruebas de capacidad y vulnerabilidad. lo primero que se debe hacer es realizar la identificación del requerimiento de pruebas, esto es asignar un código de prueba, identificar el proceso/ sub-proceso de negocio en que se enmarca la prueba, definir la fecha de creación, el autor y el área de trabajo donde se define y ejecuta. todo lo anterior, con el fin de contextualizar al auditorio que recibirá el resultado de la prueba, como un auditor, un supervisor, etc.
Seguidamente se recomienda realizar una descripción del proceso a probar, identificar el diagrama de arquitectura de la aplicación, diagrama de arquitectura de la solución o servicio tecnológico y el diagrama de interfaces.
La planeación y ejecución de las pruebas de capacidad y vulnerabilidad deben articularse con las demás actividades y pruebas del proyecto y compromisos de la infraestructura tecnológica “ambientes no productivos”, para tal fin se debe tener en consideración los cronogramas de proyectos y procesos que se vean comprometidos, como pruebas funcionales, capacitaciones, paralelos, desarrollos, contrataciones, etc.

Premisas para el inicio de las Pruebas al Software
Se debe contar con un ambiente que permita realizar las pruebas, este ambiente debe encontrarse congelado. Debe estar garantizada la disponibilidad de tiempo del responsable del software a probar, para realizar reuniones de presentación, entregas parciales, comités de pruebas y definición de posibles cambios. Hay que disponer de documentación actualizada y debidamente aprobada. Es de tener en cuenta que cualquier actualización de la documentación deberá ser comunicada formalmente al gerente del proyecto.

Alcance de las pruebas técnicas (capacidad y vulnerabilidad) sobre aplicaciones:
Las Pruebas de Capacidad pueden ser: 1) Pruebas de carga: Con la participación o simulación de usuarios concurrentes en el uso de la aplicación, identificando tiempos de respuesta de aplicación, Base de Datos y otros componentes del servicio. Objetivo identificar restricciones dentro de los componentes del servicio. 2) Prueba de estrés: Se simula la concurrencia de usuarios hasta encontrar falla en el sistema, identificando límites de capacidad. 3) Prueba de estabilidad: Se simula la concurrencia alta de usuarios sin llegar a punto de falla en el sistema, se hace persistente la demanda de peticiones, durante un periodo determinado y se identifica la capacidad del sistema para soportar la persistencia de carga. Y 4) Pruebas de picos: Se simula la concurrencia alta de usuarios sin llegar a punto de falla en el sistema, se reduce la cantidad de concurrencia, nuevamente se simula la concurrencia alta de usuarios sin llegar a punto de falla en el sistema, se repite durante un periodo determinado de tiempo los pasos anteriores y se identifica la capacidad del sistema para soportar los picos de carga.

Con el fin de focalizar las pruebas, se dispone de estadísticas de volumetría de transacciones.
Las Pruebas de Vulnerabilidad son: 1) Pruebas de Vulnerabilidad a todos los servicios e integraciones y al host que contenga los servicios. 2) Aseguramiento de la transmisión, las carpetas compartidas, FTP, etc. 3) Sitios Web (Portal). Y 4) Pruebas a los servidores (sistema operativo).

Documentación requerida.
A partir de los demás proceso y actividades del proyecto, es posible obtener documentos de casos de uso, manual de usuario, manual de instalación, pruebas unitarias, certificación de pruebas técnicas, documento de casos de prueba; elementos que permitirán una mayor y mejor comprensión de las funcionalidades. Por otro lado, se debe apropiar la información disponible en el diagrama de arquitectura de la aplicación, diagrama de arquitectura de la solución o servicio tecnológico, el diagrama de interfaces y los modelos entidad relación; de esta actividad depende la oportunidad con la que se identifique y diagnostique las desviaciones encontradas en las pruebas.

Otros factores que controlar
Es necesario definir y controlar los usuarios permisos y roles necesarios para la prueba; hacer identificación de riesgos durante la prueba. Definir un plan de mitigación de riesgos; definir planes para prevenir o mitigar cada riesgo detectado (tanto los riesgos del proyecto como los del producto) y resolverlos en caso de que ocurran. Dentro de los riesgos posibles a ser gestionados se tienen: falta del recurso humano para la ejecución de la prueba (Líder técnico, Funcional), disponibilidad del soporte técnico, disponibilidad del ambiente de pruebas, disponibilidad del soporte técnico por parte de proveedores, falta de integración de los procesos internos que intervienen.
Se hace necesario definir un cronograma del proyecto de pruebas; definiendo actividades, estimado en horas, fecha estimada de inicio, fecha estimada final, fecha terminación de la prueba y responsable.

Finalmente se hace necesario definir los criterios de finalización de la prueba y criterios de devolución - suspensión o cancelación.

No hay comentarios: