Articulo de referencia

Caso extremo

Un caso extremo es un problema o situación que ocurre solo en un parámetro operativo extremo (máximo o mínimo) . Por ejemplo, un altavoz estéreo puede distorsionar notablemente ...

Un caso extremo es un problema o situación que ocurre solo en un parámetro operativo extremo (máximo o mínimo) . Por ejemplo, un altavoz estéreo puede distorsionar notablemente el audio cuando se reproduce al máximo volumen, incluso en ausencia de cualquier otra configuración o condición extrema.

Un caso extremo puede ser esperado o inesperado. En ingeniería , el proceso de planificación y abordaje elegante de casos extremos puede ser una tarea importante, y aun así, esta tarea puede pasarse por alto o subestimarse.

Algunas causas comunes de casos extremos [1] son:

Algunos ejemplos básicos de casos extremos incluyen:

  • Un nombre de usuario largo en una aplicación se desborda y se muestra incorrectamente
  • Un sistema de reservas no gestiona correctamente las reservas en un día bisiesto (29 de febrero)

Los casos extremos no triviales pueden provocar el fallo de un objeto que se está diseñando. Es posible que no se hayan previsto durante la fase de diseño y que no se haya pensado que fueran posibles durante el uso normal del objeto. Por este motivo, los intentos de formalizar buenas normas de ingeniería suelen incluir información sobre los casos extremos.

Ingeniería de software

En programación, un caso límite generalmente implica valores de entrada que requieren un manejo especial en un algoritmo detrás de un programa de computadora. Como medida para validar el comportamiento de los programas de computadora en tales casos, generalmente se crean pruebas unitarias ; son pruebas de las condiciones de contorno de un algoritmo, función o método . Se puede utilizar una serie de casos límite alrededor de cada "límite" para brindar una cobertura y confianza razonables utilizando el supuesto de que si se comporta correctamente en los bordes, debería comportarse en todos los demás lugares. [2]

Por ejemplo, una función que divide dos números podría probarse utilizando tanto números muy grandes como muy pequeños. Esto supone que si funciona para ambos extremos del espectro de magnitudes, debería funcionar correctamente en el medio. [3]

Los programadores también pueden crear pruebas de integración para abordar casos extremos que no están cubiertos por las pruebas unitarias. [4] Estas pruebas cubren casos que solo aparecen cuando se prueba un sistema en su totalidad. Por ejemplo, mientras que una prueba unitaria puede garantizar que una función calcule correctamente un resultado, una prueba de integración garantiza que esta función funcione correctamente cuando se integra con una base de datos o una API externa . Estas pruebas son particularmente relevantes con la creciente complejidad del sistema en sistemas distribuidos , microservicios y dispositivos de Internet de las cosas (IoT) . Con los microservicios en particular, las pruebas se convierten en un desafío ya que las pruebas de integración pueden no cubrir todos los puntos finales de microservicio, lo que da como resultado casos extremos no cubiertos. [5]

Otros tipos de pruebas que se relacionan con casos extremos pueden incluir pruebas de carga y pruebas negativas o de falla . Ambos métodos apuntan a expandir la cobertura de pruebas de un sistema, reduciendo la probabilidad de casos extremos inesperados.

En el desarrollo basado en pruebas , los casos extremos pueden determinarse según los requisitos del sistema y tenerse en cuenta en las pruebas antes de escribir el código. Dicha documentación puede incluirse en un documento de requisitos del producto después de las conversaciones con las partes interesadas y otros equipos.

Véase también

Referencias

  1. ^ Beram, Shehab (3 de agosto de 2023). "¿Qué es un caso extremo? Significado, ejemplos en el desarrollo de software". Blog de LogRocket . Consultado el 24 de octubre de 2023 .
  2. ^ Zimmerman, Josh (2012). "Unit Testing" (PDF) . Principles of Imperative Computation (Principios de computación imperativa ). cs.cmu.edu . Consultado el 16 de enero de 2014 .
  3. ^ Cho, Shinil (octubre de 2018), "La transformada de Fourier", Transformada de Fourier y sus aplicaciones con Microsoft EXCEL® , IOP Publishing, doi :10.1088/978-1-64327-286-3ch2, ISBN 978-1-64327-286-3, S2CID  210754571 , consultado el 17 de febrero de 2022
  4. ^ Khorikov, Vladimir (2019). Pruebas unitarias: principios, prácticas y patrones . Manning Publications. págs.  188-190 . ISBN 978-1617296277.
  5. ^ Hossain, Md. Delowar; Sultana, Tangina; Akhter, Sharmen; Hossain, Md. Imtiaz; Thu, Ngo Thien; Huynh, Luan NT; Lee, Ga-Won; Huh, Eui-Nam (23 de junio de 2023). "El papel del enfoque de microservicios en la informática de borde: oportunidades, desafíos y direcciones de investigación". ICT Express . doi : 10.1016/j.icte.2023.06.006 . ISSN  2405-9595.
Obtenido de "https://es.wikipedia.org/w/index.php?title=Case_de_borde&oldid=1243664816"