Software Validación de Verificación y - cs.uns.edu.armll/vyvs/downloads/VyVS - Clase 14 -...

40
Verificación y Validación de Software Ingeniería en Sistemas de Información Departamento de Ciencias e Ingeniería de la Computación 2017

Transcript of Software Validación de Verificación y - cs.uns.edu.armll/vyvs/downloads/VyVS - Clase 14 -...

Verificación y Validación de SoftwareIngeniería en Sistemas de InformaciónDepartamento de Ciencias e Ingeniería de la Computación2017

¿Cuánto tiempo tardan en cepillarse los dientes?

¿Cuánto tiempo tarda en reiniciar su computadora?

¿Cuántos autos pasan por minuto por la esquina de Zapiola y Salta?

¿Cuánta memoria consumía en ejecución el proyecto de TdP?

Verificación y Validación de Software

De todos los testing no funcionales el testing de performance puede que sea uno de los más complejos

Verificación y Validación de Software

In software engineering, performance testing is in general, a testing practice performed to

determine how a system performs in terms of responsiveness and stability under a particular

workload

https://en.wikipedia.org/wiki/Software_performance_testing.

Verificación y Validación de Software

It can also serve to investigate, measure, validate or verify other quality attributes of the

system, such as scalability, reliability and resource usage

https://en.wikipedia.org/wiki/Software_performance_testing.

Verificación y Validación de Software

Testing de PerformancePerformance Testing

En un testing de performance es crucial la acción de medición

Verificación y Validación de Software

Testing de PerformancePerformance Testing

The measurement of time elapsed during an action or step in your testing actions helps you

to become aware of potential performance failure, from the end-user’s perspective

Verificación y Validación de Software

Testing de PerformancePerformance Testing

The measure of volume or size will help you to become aware of the capacity limits of a

system and its potential overutilization

Verificación y Validación de Software

Testing de PerformancePerformance Testing

Sobre una medición, existen cálculos matemáticos que nos permiten describir

características de los datos medidos.

Por ejemplo, mínimo, máximo y promedio

Verificación y Validación de Software

Testing de PerformancePerformance Testing

Sobre una medición, existen calculos matemáticos que nos permiten describir

características de los datos medidos.

O desvio estandar, moda, media y percentiles

Verificación y Validación de Software

Testing de PerformancePerformance Testing

http://www.mathportal.org/calculators/statistics-calculator/

Verificación y Validación de Software

Testing de PerformancePerformance Testing

https://www.autodeskresearch.com/publications/samestats

Verificación y Validación de Software

Testing de PerformancePerformance Testing

https://en.wikipedia.org/wiki/Anscombe%27s_quartet

Verificación y Validación de Software

Testing de PerformancePerformance Testing

Performance User Story: Write a user story about end-user functionality and give

performance attributes to it for response time and throughput objectives or success criteria

Verificación y Validación de Software

Testing de PerformancePerformance Testing

Performance Issue Write-up: Research one existing, known performance issue in your

application and document how that behavior could be measured and monitored...

Verificación y Validación de Software

Testing de PerformancePerformance Testing

... consider how to search through application logs, monitoring system resources, or end-user

behaviors

Verificación y Validación de Software

Testing de PerformancePerformance Testing

Prerequisites For An Application: Document the prerequisites for a performance test of your

application - what needs to be in-place for data, configuration, environment, accounts, tools.

Verificación y Validación de Software

Testing de PerformancePerformance Testing

Data Flow Diagram: This is an image that illustrates how data comes into a component,

what happens to the data inside the component and what comes out of the component

Verificación y Validación de Software

Diagrama de Flujo de DatosData Flow Diagram (DFD)

El modelado de flujo de datos (DFD) permite representar, gráficamente, el flujo de datos a través de un sistema.

También se puede utilizar para visualizar el procesamiento de datos

Verificación y Validación de Software

Diagrama de Flujo de DatosData Flow Diagram (DFD)

El DFD proporciona una representación del sistema a nivel lógico y conceptual. El DFD se utilizará para representar el

sistema a diferentes niveles de abstracción

Verificación y Validación de Software

Diagrama de Flujo de DatosData Flow Diagram (DFD)

En particular se identifican 4 niveles de detalle

Nivel Diagrama de Contexto

Nivel 0, Diagrama de nivel superior

Nivel 1, Diagrama de detalle de un proceso en Nivel 0

Nivel 2, Detalle de proceso en Nivel 1.

Verificación y Validación de Software

Diagrama de Flujo de DatosData Flow Diagram (DFD)

http://www.conceptdraw.com/How-To-Guide/data-flow-diagram

Verificación y Validación de Software

M. Larrea Modelos de Software

DFD Nivel Diagrama de Contexto

Modelado de Flujo de Datos

23

Modelos de Software

0

Rent A Car

Cliente

Administrador

Cliente

Solicitud

Devolución

Alta de Auto /Baja de Auto

Multar

M. Larrea Modelos de Software

DFD Nivel 0, Diagrama de Sistema

Modelado de Flujo de Datos

24

Modelos de Software

1Gestionar Solicitud

2Gestionar Retornos

3Administración

Flota

Flota de AutosSolicitudDevolución

Alta de Auto /Baja de Auto

4GestiónClientes

Multa

Auto

Auto

Auto

Informe de Cliente

M. Larrea Modelos de Software

DFD Nivel 1, Diagrama de Detalle del proceso Gestionar Retornos

Modelado de Flujo de Datos

25

Modelos de Software

Flota de AutosDevolución

2.1Recepción Devolución

2.2Taller

Auto

Informe de Cliente

Auto

M. Larrea Modelos de Software

DFD Nivel 2, Diagrama de Detalle del proceso Recepción Devolución

Modelado de Flujo de Datos

26

Modelos de Software

Formularios

2.1.1

Mesa de Entrada

2.1.2

Atención al Cliente

Llave Auto

Entrevista

2.1.3

Servicio Post Venta

2.1.4

Responsable de Playa

ClienteLlave

Testing de PerformancePerformance Testing

Network Diagram: This is an image that includes the front-end clients, middle-tier

servers/apps and the back-end data sources

Verificación y Validación de Software

Testing de PerformancePerformance Testing

http://networkdiagram101.com/

Verificación y Validación de Software

Testing de PerformancePerformance Testing

Verificación y Validación de Software

Causation vs. Correlation

https://www.youtube.com/watch?v=VMUQSMFGBDo

Verificación y Validación de Software

Pruebas de Cargas y Stress

https://www.youtube.com/watch?v=CdH9Y3MQ33g

Verificación y Validación de Software

Website Performance Tutorials

https://www.youtube.com/watch?v=aD94FQ-WsIg&list=PLLnpHn493BHGpGXukqYsxwQw3ziW3uti6

Verificación y Validación de Software

Proxies para registro de tráfico

Telerik Fiddlerhttps://www.telerik.com/fiddler

Charleshttps://www.charlesproxy.com/

Verificación y Validación de Software

Herramientas para consultar logs

Log Parser Studiohttps://gallery.technet.microsoft.com/Log-Parser-Studio-cd458765

https://blogs.technet.microsoft.com/karywa/2013/04/21/getting-started-with-log-parser-studio-part-1/

Verificación y Validación de Software

Análisis de performance en sitios webs

Webpagetesthttp://www.webpagetest.org/

https://sites.google.com/a/webpagetest.org/docs/using-webpagetest/quick-start-quide\

Verificación y Validación de Software

Monitoreo de recursos en SO

Windowshttps://www.youtube.com/watch?v=oG1tbuw2Yn4

OSXhttps://www.youtube.com/watch?v=JKj_CO4vkC4

Linuxhttps://www.youtube.com/watch?v=Qw2ZUf0hTF8

Verificación y Validación de Software

Análisis de carga

Windowshttp://www.makeuseof.com/tag/use-windows-performance-monitor-like-power-user/

Web Serverhttps://www.digitalocean.com/community/tutorials/how-to-use-apache-jmeter-to-perform-load-testing-on-a-web-s

erver

Verificación y Validación de Software

RESUMEN

In software engineering, performance testing is in general, a testing practice performed to

determine how a system performs in terms of responsiveness and stability under a particular

workload

https://en.wikipedia.org/wiki/Software_performance_testing.

Verificación y Validación de Software

Verificación y Validación de SoftwareIngeniería en Sistemas de InformaciónDepartamento de Ciencias e Ingeniería de la Computación2017