Escribir El Título De La Tesis
Total Page:16
File Type:pdf, Size:1020Kb
UNIVERSIDAD TECNICA´ DE AMBATO FACULTAD DE INGENIER´IA EN SISTEMAS ELECTRONICA´ E INDUSTRIAL CARRERA DE INGENIER´IA EN SISTEMAS COMPUTACIONALES E INFORMATICOS´ TEMA: ANALISIS´ DE METODOS,´ TECNICAS´ Y HERRAMIENTAS DE VERIFICACION´ Y VALIDACION´ DE SOFTWARE, APLICADOS EN LA DIRECCION´ DE TECNOLOG´IA DE INFORMACION´ Y COMUNICACION´ DE LA UNIVERSIDAD TECNICA´ DE AMBATO Trabajo de Graduaci´on.Modalidad: Proyecto de Investigaci´on,presentado previo la obtenci´ondel t´ıtulode Ingeniero en Sistemas Computacionales e Inform´aticos SUBL´INEA DE INVESTIGACION:´ Ingenier´ıadel Software AUTOR: Daniel Sebasti´anJerez Mayorga TUTOR: Ing. Franklin Oswaldo Mayorga Mayorga, Mg Ambato - Ecuador Agosto, 2017 DEDICATORIA A mis padres Mercedes Alicia y Victor Manuel que a pesar de todos los problemas y desaciertos siempre me han apoyado, a mis hermanas Anita, Paulina que siempre me han colaborado cuando lo he necesita- do. A Diana por ser mi compa˜nerade estudios y ahora mi compa˜nerade vida TE AMO. A Benjam´ınpor traer tanta suerte a mi vida TE AMO hijo. Daniel Sebasti´anJerez Mayorga. vi AGRADECIMIENTO A Dios por darme salud y permitirme despertar cada d´ıasin eso no somos nada, a mis padres por darme la dicha de estar vivo, a mi familia por el apoyo que siempre me brindan, a los docentes que estuvieron presentes en la formaci´onde mi carrera, a Ing. Ra´ulPe˜napor darme esa fuerza, motivaci´ony ver ese potencial que puede existir en mi, saludos a la distancia, a todos los jefes y compa˜nerosde trabajado de los cuales he aprendido mucho, a la m´usicala cual me ha influenciado para alcanzar objetivos y ver la vida de otra manera, a Ing. Franklin Mayorga por los conocimientos y tiempo brindado y a Ing. Robert Vaca por permitirme realizar mi estudio en su Direcci´on. Daniel Sebasti´anJerez Mayorga vii ´INDICE APROBACION´ DEL TUTOR ii AUTOR´IA iii APROBACION´ COMISION´ CALIFICADORA v Dedicatoria vi Agradecimiento vii Introducci´on xvii CAP´ITULO 1 El problema 1 1.1 Tema de Investigaci´on . 1 1.2 Planteamiento del Problema . 1 1.3 Delimitaci´on. 2 1.4 Justificaci´on. 2 1.5 Objetivos . 3 1.5.1 General . 3 1.5.2 Espec´ıficos. 3 CAP´ITULO 2 Marco Te´orico 4 2.1 Antecendentes Investigativos . 4 2.2 Fundamentaci´onTe´orica . 5 2.2.1 Ingenier´ıadel Software . 5 2.2.2 Desarrollo de Software . 5 2.2.3 Etapas de Desarrollo de Software . 5 2.2.3.1 An´alisisde Requisitos . 6 2.2.3.2 Dise˜no. 7 2.2.3.3 Codificaci´on. 7 2.2.3.4 Pruebas . 7 2.2.3.5 Mantenimiento . 7 viii 2.2.4 Proceso de Desarrollo de Software . 7 2.2.4.1 Actividades fundamentales que deben estar presen- tes en el proceso de desarrollo de software . 8 2.2.4.2 Elementos del proceso de desarrollo de software . 9 2.2.4.3 Modelos del proceso de desarrollo de software . 11 2.2.5 Normas de Control Interno de la Contralor´ıaGeneral Del Estado 22 2.2.6 Calidad del Software . 26 2.2.7 Est´andaresde Calidad . 26 2.2.7.1 ISO/IEC 9126 . 27 2.2.8 Verificaci´onde Software . 32 2.2.8.1 Verificaci´onEst´atica . 33 2.2.8.2 Verificaci´onDin´amica . 33 2.2.9 Validaci´onde Software . 33 2.2.9.1 Validaci´onSimple . 33 2.2.9.2 Validaci´onCruzada . 33 2.2.10 M´etodos de Verificaci´ony Validaci´onde Software . 33 2.2.10.1 M´etodo de Caja Negra . 34 2.2.10.2 M´etodo de Caja Blanca . 34 2.2.10.3 M´etodo Top-Down . 34 2.2.10.4 M´etodo Act-like-a-customer . 35 2.2.10.5 M´etodo ATAM . 35 2.2.10.6 M´etodo ADR . 35 2.2.10.7 M´etodo ARID . 35 2.2.11 Proceso de Pruebas . 35 2.2.11.1 Niveles de Pruebas . 35 2.2.11.2 M´etodos y tipos de pruebas . 37 2.2.12 T´ecnicasde Verificaci´ony Validaci´onde Software . 37 2.2.12.1 An´alisisy Pruebas Funcionales . 37 2.2.12.2 An´alisisy Pruebas Estructurales . 38 2.2.12.3 Error-Oriented . 38 2.2.12.4 Testing and Analysis . 38 2.2.12.5 Estrategias de Integraci´on . 39 2.2.12.6 Hybrid Approaches (Enfoques H´ıbridos) . 39 2.2.12.7 An´alisisde Flujo de Transacci´on . 39 2.2.12.8 Stress Testing (An´alisisde Estr´es) . 39 2.2.12.9 An´alisisde Falla . 39 2.2.12.10 An´alisisde Concurrencia . 40 ix 2.2.12.11 An´alisisde Algoritmos . 40 2.2.12.12 An´alisisde Cobertura . 40 2.2.12.13 An´alisisde Flujo de Datos . 40 2.2.12.14 Inspecciones . 41 2.2.12.15 Model Checking (Verificaci´onde Modelos) . 41 2.2.13 Herramientas de Verificaci´ony Validaci´onde Software . 41 2.2.13.1 Herramientas Open Source . 41 2.2.13.2 Herramientas Comerciales . 50 2.3 Propuesta de Soluci´on . 59 CAP´ITULO 3 Metodolog´ıa 60 3.1 Modalidad B´asicade la Investigaci´on . 60 3.2 Poblaci´ony Muestra . 60 3.3 Recolecci´onde la Informaci´on . 60 3.4 Procesamiento y An´alisisde Datos . 61 3.5 Desarrollo del Proyecto . 61 CAP´ITULO 4 Desarrollo de la propuesta 62 4.1 Recolecci´onde Informaci´on. 62 4.2 An´alisisy Presentaci´onde Resultados . 62 4.3 Interpretaci´onde Resultados . 75 4.4 Situaci´onActual . 76 4.4.1 Gesti´onde Desarrollo de Software en la Universidad T´ecnica de Ambato . 77 4.4.2 Proceso de Desarrollo de Software en la Universidad T´ecnica de Ambato . 78 4.4.3 Modelos de Desarrollo de Software en la Universidad T´ecnica de Ambato . 80 4.4.3.1 Tipo de Desarrollo de Software . 80 4.4.3.2 Tipo de Arquitectura . 80 4.4.3.3 Herramientas de Desarrollo de Software . 81 4.4.3.4 Control del Desarrollo de Software en la Universidad T´ecnicade Ambato . 83 4.4.4 Proceso de Pruebas . 83 4.5 Aspecto Legal . 84 4.5.1 Reglamento . 84 4.6 Verificaci´onde Software . 84 4.7 Validaci´onde Software . 84 x 4.8 M´etodos de Verificaci´ony Validaci´onde Software . 85 4.9 T´ecnicasde Verificaci´ony Validaci´ondel Software . 85 4.10 Herramientas para la Verificaci´ony Validaci´onde Software . 86 4.11 An´alisis y presentaci´on de m´etodos, t´ecnicas y herramientas de verificaci´ony validaci´onde software adecuadas para el desarrollo de software en la Universidad T´ecnicade Ambato . 86 4.11.1 An´alisisde M´etodos . 87 4.11.2 An´alisisde T´ecnicas . 95 4.11.3 An´alisisde Herramientas . 105 4.11.4 M´etodos, t´ecnicasy herramientas de verificaci´ony validaci´on de software adecuadas para el desarrollo de software en la Universidad T´ecnica de Ambato . 110 CAP´ITULO 5 Conclusiones y Recomendaciones 113 5.1 CONCLUSIONES . 113 5.2 RECOMENDACIONES . 114 Bibliograf´ıa 115 ANEXOS 118 xi ´INDICE DE TABLAS 4.1 Resultados Pregunta 1 . 63 4.2 Resultados Pregunta 3 . 66 4.3 Resultados Pregunta 5 . 68 4.4 Resultados Pregunta 6 . 69 4.5 Resultados Pregunta 7 . 70 4.6 Resultados Pregunta 8 . 71 4.7 Resultados Pregunta 9 . 72 4.8 Resultados Pregunta 10 . 73 4.9 Resultados Pregunta 11 . 74 4.10 Herramientas de Desarrollo de Software. Scriptcase 7 . 81 4.11 Herramientas de Desarrollo de Software. Visual Studio . 82 4.12 Herramientas de Administraci´onde Bases de Datos. SQL Server . 83 4.13 Criterio de Valoraci´onde Subcaracter´ısticas . 88 4.14 Criterio de Valoraci´onde Subcaracter´ısticas . 95 4.15 M´etricas de Calidad en Uso seleccionadas para el an´alisis de herramientas . 106 xii ´INDICE DE FIGURAS 2.1 Proceso de Desarrollo de Software . 8 2.2 Elementos del proceso de desarrollo de software . 10 2.3 Relaci´onentre los elementos del proceso de desarrollo de software . 10 2.4 Modelo de desarrollo en cascada . 13 2.5 Modelo de desarrollo evolutivo. 14 2.6 Paradigma de programaci´onautom´atica . 16 2.7 Desarrollo basado en reutilizaci´onde componentes . 17 2.8 Modelo de desarrollo iterativo incremental . 18 2.9 Modelo de desarrollo en espiral . 20 2.10 Modelo V . 21 2.11 Caracter´ısticas y subcaracter´ısticas de la calidad de un producto software . 28 4.1 Gr´aficoPregunta 1 . 63 4.2 Gr´aficoPregunta 2 . 65 4.3 Gr´aficoPregunta 3 . 66 4.4 Gr´aficoPregunta 4 . 68 4.5 Gr´aficoPregunta 5 . 69 4.6 Gr´aficoPregunta 6 . 70 4.7 Gr´aficoPregunta 7 . 71 4.8 Gr´aficoPregunta 8 . 72 4.9 Gr´aficoPregunta 9 . ..