ACTIVIDAD N°: E1 FECHA ENVIO: 07/05/2019 FECHA ENTREGA: 15/05/2019 TEMA: Diseño de Clases UNIDAD N° II: Determinación de la Visibilidad, Diagrama de clases del diseño OBJETIVO: Realizar una investigación de las herramientas de evaluación mediante la recopilación de información que permitan analizar parámetros de métricas de calidad. PROBLEMA: Desconocimiento las herramientas de evaluación que permiten analizar parámetros de métricas de calidad. INDICADOR DE EVALUACIÓN: CALIFICACIÓN: Siempre (100%) CRITERIOS DE EVALUACIÓN: A veces (75%) EN IMPRESOS • Entrega documentación impresa y digital. (Siguiendo las normas y convenciones para la escritura y sin falta de ortografía). La redacción del documento debe ser clara. Debe incluir todas las fuentes de donde tomó la información. • Cumple con el formato, normas y estructura para la elaboración del documento. APLICACIÓN DE VALORES. • Puntualidad. Entrega de trabajo a tiempo • Responsabilidad ética. El trabajo es inédito y respeta la propiedad intelectual • Responsabilidad profesional. Cumple con las normas técnicas. USO DE RECURSOS: • Material electrónico formato Power Point • Internet • Computadora • Microsoft Word CAPACIDAD DE REFLEXIÓN. • Incluye ejemplos claros que permiten un mejor entendimiento del tema. CONOCIMIENTO TÉCNICO. • Destreza con las herramientas informáticas. TIPO DE ACTIVIDAD LUGAR ALCANCE □ Intraclase □Individual □ Extraclase □Grupal FORMA □Taller □Síntesis, esquemas □Caso de estudio □Investigativa □Vinculación con la colectividad □Práctica en laboratorio □Práctica en clase □Resolución de problemas, ejercicios □Ensayo, artículo □Informe de exposición Nunca (10%) ROLES Y RESPONSABILIDADES DE LOS PARTICIPANTES EN LA TAREA: NOMBRE ESTUDIANTE ROL JUAN AQUILES TORRES APOLO Investigador DAVIS SALVATORE CHALCO MOROCHO Investigador JONATHAN JAVIER BRITO AGUILAR Investigador ANGEL LEONARDO MACAS AZUERO Investigador JORGE LEONARDO GONZALEZ CORDOVA Investigador TÉCNICAS EMPLEADAS Investigación y Análisis (utilizando formas de recopilación de datos, revisión en los libros básicos e internet) UNIVERSIDAD TÉCNICA DE MACHALA “Calidad, Pertinencia y Calidez" D.L. No. 69-04 DE 14 DE ABRIL DE 1969 PROVINCIA DE EL ORO – REPUBLICA DEL ECUADOR UNIDAD ACADÉMICA DE INGENIERÍA CIVIL CARRERA DE INGENIERÍA DE SISTEMAS ESCUELA: RESOL. Nº087/1995 – 25 DE OCTUBRE DE 1995 – ING. SIST.: RESOL. Nº 077/2001 – 7 MAYO DE 2001 TRABAJO DE INVESTIGACIÓN DE INGENIERÍA DEL SOFTWARE II TEMA: ESTRATEGIAS DE PRUEBAS CURSO: SEXTO SEMESTRE “A” INTEGRANTES: Jorge Leonardo González Córdova Davis Salvatore Chalco Morocho Ángel Leonardo Macas Azuero Juan Aquiles Torres Apolo Jonathan Javier Brito Aguilar DOCENTE: ING. JIMMY ROLANDO MOLINA RÍOS, MG. SC. PERIODO: MAYO - AGOSTO AÑO LECTIVO: 2019 MACHALA – EL ORO – ECUADOR 1. Introducción Al evaluar un sitio web es muy importante tener la calidad principalmente a la accesibilidad y a usabilidad para darnos una idea tenemos el siguiente ejemplo: “Se trata de una tienda de novedades con grandes afiches gráficos, coloridos y letreros vistosos que informan lo que se puede encontrar dentro de la tienda, hasta allí todo estaría bien, pero (importancia de la accesibilidad ) existe un único camino para llegar a la tienda el cual permite el acceso solo a vehículos pequeños o a personas que presenten una licencia especial y además el camino es muy peligroso; finalmente logran llegar a la tienda un numero especifico de clientes y al estar allí (importancia de la usabilidad) aunque la tienda disponga de los productos más modernos pero las personas que atienden se demoran demasiado, la tienda no está bien organizada y se tarda horas en encontrar lo que se busca, no explican las características de los productos y nos hablan con términos sofisticados, no se podría salir satisfecho de haber visitado esa tienda, y a lo mejor no se puede comprar lo que se tenía en mente.” Para dicha evaluación necesitamos de herramientas de evaluar sitios web ya sean gratuitas o de paga. 2. Objetivos 2.1.Objetivo General Realizar un análisis crítico sobre las estrategias de pruebas en los softwares mediante una búsqueda descriptiva utilizando fuentes confiables de investigación para un buen entendimiento en las técnicas aplicadas en la creación de un software 2.2.Objetivos Específicos • Investigar de fuentes externas, información relevante que aporte y complemente el trabajo, para un mejor entendimiento del mismo. • Investigar los términos desconocidos, para tener un vocabulario amplio y claro de la lectura. • Analizar cada uno de los aspectos encontrados y aportar con un pequeño criterio a cada uno de ellos. • Desarrollar un taller y cuestionario del trabajo que permita medir el grado de conocimiento obtenido con la presente investigación. 3. Marco Teórico 3.1. Estrategias de prueba para software Existen muchas estrategias que pueden usarse para probar el software. En un extremo, puede esperarse hasta que el sistema esté completamente construido y luego realizar las pruebas sobre el sistema total, con la esperanza de encontrar errores. Este enfoque, aunque atractivo, simplemente no funciona. En el otro extremo, podrían realizarse pruebas diariamente, siempre que se construya alguna parte del sistema. Este enfoque, aunque menos atractivo para muchos, puede ser muy efectivo. [1] Una estrategia de prueba que eligen la mayoría de los equipos de software se coloca entre los dos extremos. Toma una visión incremental de las pruebas, comenzando con la de unidades de programa individuales, avanza hacia pruebas diseñadas para facilitar la integración de las unidades y culmina con pruebas que ejercitan el sistema construido. [2] Los 5 tipos de prueba del software • Especificación: Este tipo de prueba incluye probar la aplicación en contra de la documentación que se hizo antes, por ejemplo, que los procesos concuerden con los algoritmos hechos a papel, o que la aplicación tenga todas las funciones que se habían planeado. [3] • • • • Usabilidad: Este tipo de prueba se refiere a asegurar de que la interfaz de usuario (o GUI) sea intuitiva, amigable y funcione correctamente. Unidad: Este tipo de prueba solo aplica a proyectos grandes. Se divide el proyecto a unidades y cada unidad es sometida a prueba individualmente. Integración: Prueba varias unidades juntas para asegurar que funcionen bien. También se asegura de que las nuevas aplicaciones se integren con aplicaciones antiguas o aplicaciones complementarias. [3] Regresión: Esta prueba incluye todas las pruebas anteriores en caso de que se le haga algún cambio a algún modulo después de haber sido puesto en ambiente de producción. 3.2.Estrategia de pruebas Webapps El enfoque de las pruebas de las WebApps adopta los principios básicos de todas las pruebas del software y aplica estrategias y tácticas que ya han sido recomendadas para los sistemas orientados a objetos. [1] Este enfoque se resume en los pasos siguientes: El modelo de contenido de la WebApp es revisado para descubrir errores. Esta actividad de “prueba” se asemeja en muchos aspectos a la de un corrector ortográfico de un documento escrito. Los casos prácticos derivados como parte de la actividad de análisis permiten que un ingeniero Web ejercite cada escenario de utilización frente al diseño arquitectónico y de navegación [5] Se aplican pruebas de unidad a los componentes de proceso seleccionados y las páginas Web. Cuando lo que se tiene en consideración es el tema de las WebApps el concepto de unidad cambia. Cada una de las páginas Web encapsulará el contenido, los enlaces de navegación y los elementos de procesamiento (formularios, guiones, applets) Se construye la arquitectura, se realizan las pruebas de integración. La estrategia para la prueba de integración depende de la arquitectura que se haya elegido para la WebApp. La WebApp ensamblada se prueba para conseguir una funcionalidad global y un contenido. Al igual que la validación convencional, la validación de los sistemas y aplicaciones basados en Web se centra en acciones visibles del usuario y en salidas reconocibles para el usuario que procedan del sistema [5] La WebApp se comprueba controlada y monitorizada. con una población de usuarios finales Se selecciona un grupo de usuarios que abarque todos los roles posibles de usuarios. La WebApp se pone en práctica con estos usuarios y se evalúan los resultados de su interacción con el sistema para ver los errores de contenido y de navegación [1] 3.3. MÉTODOS DE PRUEBAS ORIENTADO A OBJETO Berard sugiere un enfoque global en el diseño de casos de prueba OO: 1. Cada caso de prueba debe identificarse de manera única y explícita asociado con la clase que se va a probar. 2. Debe establecerse el propósito de la prueba. 3. Debe desarrollarse una lista de pasos de prueba para cada una de ellas, que debe contener: [7] a. Una lista de estados b. Una lista de mensajes y operaciones c. Una lista de excepciones d. Una lista de condiciones externas e. Información complementaria que ayudará a comprender o a implementar la prueba 4. Taller Taller 1 – Herramientas de Evaluación 1. Tipos de pruebas tipos de Especificación pruebas Usabilidad Unidad Integración Regresión 2. Métodos de pruebas orientados a objetos Pruebas orientados a objetos Cada caso de prueba debe identificarse de manera única y explícita asociado con la clase que se va a probar Debe establecerse el propósito de la prueba Debe desarrollarse una lista de pasos de prueba para cada una de ellas 5. Evaluación FORMATO Simple Contexto 1 Planteamiento ¿incluye probar la aplicación en contra de la documentación que se hizo antes que tipo de prueba de software es? Opción A Especificación Opción B Usabilidad Opción C Unidad Opción D Integración Respuesta Correcta Opción A Nivel 1 Operación Cognitiva Aplicación de Conceptos FORMATO Simple Contexto Planteamiento ¿Prueba varias unidades juntas para asegurar que funcionen bien qué tipo de prueba del software es? Opción A Integración Opción B Especificación Opción C Regresión Opción D Usabilidad Respuesta Correcta Opción A Nivel 1 Operación Cognitiva Aplicación de Conceptos FORMATO Simple 2 Contexto 3 4 Planteamiento ¿Esta prueba incluye todas las pruebas anteriores en caso de que se le haga algún cambio que tipo de prueba del software es ? Opción A Regresión Opción B Usabilidad Opción C Especificación Opción D Integración Respuesta Correcta Opción A Nivel 1 Operación Cognitiva Aplicación de Conceptos FORMATO Simple Contexto Planteamiento ¿Este tipo de prueba solo aplica a proyectos grandes que tipo de prueba del software es? Opción A Unidad Opción B Regresión Opción C Usabilidad Opción D Especificación Respuesta Correcta Opción A Nivel 1 Operación Cognitiva Aplicación de Conceptos FORMATO Simple Contexto 5 Planteamiento ¿Este tipo de prueba se refiere a asegurar de que la interfaz de usuario sea intuitiva, amigable y funcione correctamente? Opción A Usabilidad Opción B Unidad Opción C Regresión Opción D Especificación Respuesta Correcta Opción A Nivel 1 Operación Cognitiva Aplicación de Conceptos FORMATO Simple 6 Contexto Planteamiento ¿ Cada caso de prueba debe identificarse de manera única y explícita asociado con la clase que se va a probar.? Opción A VERDADERO Opción B FALSO Respuesta Correcta Opción A Nivel 1 Operación Cognitiva Aplicación de Conceptos FORMATO Simple Contexto Planteamiento ¿La WebApp ensamblada se prueba para conseguir una funcionalidad global y un contenido? Opción A VERDADERO Opción B FALSO Respuesta Correcta Opción A Nivel 1 Operación Cognitiva Aplicación de Conceptos FORMATO Simple 7 Contexto Planteamiento El modelo de diseño para la WebApp es revisado para descubrir errores de navegación Opción A Verdadero Opción B Falso Respuesta Correcta Opción A 8 Nivel 1 Operación Cognitiva Aplicación de Conceptos 6. Glosario ▪ ▪ ▪ ▪ ▪ ▪ ▪ Bug: Error o fallo de software. Backlinks: Enlace de un sitio web obtenido de otro sitio web. Versión Beta: es una versión de software que ha pasado la etapa de prueba interna, llamada "Alfa" y ha sido lanzada a los usuarios para pruebas públicas. Url: Uniform Resource Locator (Localizador Uniforme de Recursos) Java Servlet: La tecnología Java Servlet proporciona a los desarrolladores web un mecanismo simple y consistente para ampliar la funcionalidad de un servidor web y para acceder a los sistemas empresariales existentes. Indexación: Ordenación de datos de acuerdo a un criterio común, para facilitar su búsqueda. Seo: Search Engine Optimization (Optimizacion de motores de busqueda). 7. Conclusiones La evaluación de las páginas web son muy importantes, pues permiten obtener información y valoraciones acerca de la calidad de la página web. Existen muchas herramientas de evaluación de software con diferentes métodos de evaluación como legibilidad, velocidad de carga, indexación, etc. Creemos que son herramientas indispensables aparte de las valoraciones de usuarios, es por eso que se recomienda usar todas las posibles para una buena calidad. 8. Bibliografía Bibliografía [1] Oracle, «Oracle,» [En línea]. Available: https://www.oracle.com/technetwork/java/index-jsp135475.html. [2] W3C, «Acerca del Validador de CSS,» [En línea]. Available: https://jigsaw.w3.org/cssvalidator/about.html.es. [3] Designia, «DESIGNIA,» 5 Julio 2016. [En línea]. Available: http://anahuacmayab.mx/designia/?p=1599. [Último acceso: 17 Mayo 2018]. [4] Francisco, «LDC,» [En línea]. Available: https://ldc.usb.ve/~francisco/Contenidos/gui/intro.html. [Último acceso: 17 Mayo 2018]. [5] Digital Guide, «Digital Guide,» 17 Agosto 2017. [En línea]. Available: https://www.1and1.es/digitalguide/paginas-web/diseno-web/ui-que-es-una-interfaz-deusuario/. [Último acceso: 17 Mayo 2018]. [6] «Programación de Interfaces de Usuario,» [En línea]. Available: http://algo3.uqbarproject.org/temario/07-bonus-UI/10-web-distribuida/manipulacion-directa. [Último acceso: 17 Mayo 2018]. [7] R. S. Pressman, Ingenieria del software. Un enfoque practico 3ª Edicion, McGrawHill, 1993. [8] J. M. Cueva, «Calidad del software,» Oviedo, 1999. [9] ISO, «ISO 9001 en iso.org,» [En línea]. Available: https://www.iso.org/obp/ui/es/#iso:std:iso:9000:ed-4:v1:es. [10] ISO, «ISO/IEC 25000:2014,» [En línea]. Available: https://www.iso.org/standard/64764.html. [11] D. D. Portillo, Gestión de la calidad de productos editoriales multimedia. ARGN0110, 2017. [12] J. L. V. Romero, Desarrollo y optimización de componentes software para tareas administrativas de sistemas. IFCT0609, 2015.