Ingeniería del Software Universidad de los Andes Demián Gutierrez Abril 2009.

Slides:



Advertisements
Presentaciones similares
* Es el proceso de organizar, planear, dirigir y controlar; actividades y recursos con el fin de lograr un objetivo.
Advertisements

IdalbertoChiavenato (2001), dice que “El objetivo de la administración de recursos humanos es el planear, organizar, desarrollar, coordinar y controlar”.
Sistemas de Información Enfoques para la Construcción de los Sistemas de Información MBA Luis Elissondo.
CONCEPTO INGENIERÍA DE SOFTWARE  Analiza, diseña y desarrolla productos de sistemas software, proponiendo la plataforma tecnológica más apropiada. Domina.
Ingeniería del Software Diseñó de Software Universidad de los Andes Demián Gutierrez Abril 2009.
Lcdo. Eddy Cortez Sistemas II. Ingeniería de Requisitos.
NIA Planeación de una auditoria de Estados Financieros. NOMBRE: Beatriz Acero Zapana CURSO: Auditoria Financiera ESCUELA: Ciencias Contables y Financiera.
International Organization for Standardization. Organización Internacional de Normalización La ISO es una organización no gubernamental establecida el.
Organizaciones involucradas: El centro de cálculo noruego. Crea lenguaje llamado Simula 67, desarrollado por Krinsten Nygaard y Ole-Johan Dahl, en 1967.
Análisis de Proyecto de Software.
Ingeniería en Informática
APLICACIÓN DE CONTROL INTERNO EN PyMEs
Gestión de Proyectos.
CC4401 – Ingeniería de Software I
Análisis y catalogación de las fuentes que definen las competencias demandadas en el campo de la Interacción Persona-Ordenador Raquel Lacuesta Jesús Gallardo.
El uso de conocimientos técnicos y las Tic para la innovación.
SWEBOK.
Metodología Desarrollo de Sistemas de Información.
CICLO DE VIDA DEL SOFTWARE
II unidad Mantenimiento preventivo
SISTEMAS DE INFORMACIÓN GERENCIAL
Conceptos y definición básicos
MOPROSOFT.
Crisis del Software.
Ingeniería de Sistemas Requerimientos
Ciclo de Vida del SIA.
CICLO DE VIDA DEL SOFTWARE
UNIVERSIDAD NACIONAL DE LOJA Área de la Educación, el Arte y la Comunicación Informática Educativa IV INGENIERIA DE SOFTWARE Taller de Análisis y Diseño.
Software Es intangible, existe como información, ideas, conceptos, símbolos, pero no ocupa un espacio físico, se podría decir que no tiene sustancia. Se.
DEFINICION Y FUNCIONES
Metodología Merise Universidad Nororiental Privada
Historia Síntomas Factores de Influencia Posibles Causas
EL PROCESO ADMINISTRATIVO
Ingeniería del Software
Principales desafíos: adaptabilidad y agilidad empresarial
“PROYECTO TECNOLOGICO”.
Análisis Financiero Clase 1: 22 de enero de 2018.
Ciclo de Vida del Software
Introducción a la gestión
Unidad 5: Evaluación de los sistemas
Comprensión y obtención de los requerimientos
1.2. Desarrollo de Software
I N S T R U C O A L D I S E Ñ O MODELO ADDIE.
REPÚBLICA BOLIVARIANA DE VENEZUELA UNIVERSIDAD DEL ZULIA FACULTAD EXPERIMENTAL DE CIENCIAS DIVISIÓN DE PROGRAMAS ESPECIALES LICENCIATURA EN COMPUTACIÓN.
Auditoria de Tecnologías de Información PLANIFICACION Ing. Eder Gutiérrez Quispe.
Análisis y diseño de aplicaciones. Introducción Crisis del software - conferencia organizada en 1968 por la Comisión de Ciencias de la OTAN en Garmisch.
Planeamiento: un plan incremental para que la ingeniería web produzca resultados. La ingeniería web es un área que abarca procesos, técnicas y modelos.
METODOLOGIAS AGILES VS TRADICIONALES SCRUM - RUP FABIO ARNOBY BEJARANO Q. UNIREMINGTON BUGA (V) INGENIERIA DE SOFTWARE II SEPTIEMBRE 2018.
La planeación y la organización de los procesos técnicos.
LA TECNOLOGIA EDUCATIVA: CONCEPTUALIZACION, LINEAS DE INVESTIGACION.
Informática Gestión Técnica.
Análisis y Diseño de Sistemas.
Proyecto "Las mascotas" Informática 6° Básico.
Objetivos:  Explicar el concepto de la Investigación de Operaciones mediante análisis del tema.  Describir los pasos del método científico en Investigación.
ADMINISTRACIÓN FINANCIERA GENERALIDADES. Administración Financiera * Definición de finanzas * Definición de administración financiera * Objetivos de la.
Tema: Administración de la configuración de software UNIVERSIDAD TECNOLÓGICA ISRAEL CALIDAD DE SOFTWARE.
¿Qué es la Administración?
Metodología de Desarrollo de Sistemas II Ingeniería de Software  DEFINICIÓN La ingeniería del software es el establecimiento y uso de principios de.
SOFTWARE PRESENTADO POR: THE APPLE. ¿QUÉ ES LA INGENIERÍA DE SOFTWARE ? La Ingeniería de Software es una disciplina de la Ingeniería que concierne a todos.
ASIGNATURA: REINGENIERÍA DEL SOFTWARE CUATRIMESTRE: I DOCENTE: ING. IRENE MARTÍNEZ MEJÍA CORREO: Managua, 26 de Enero 2019
Características de los Sistemas Operativos
1 SISTEMAS II CICLO DE VIDA. 2 Sistemas II. CICLO DE VIDA DE Los Sistemas de Información “ Es un proceso por el cual los analistas de sistemas, los ingenieros.
Desarrollo de Sistemas de Información Contable - Sis USB 1 METODOLOGIAS DE DESARROLLO DE SOFTWARE.
Docente: Mg.Henry Infante Takey Unidad 1 Investigación Operativa 1.
¿Qué es la celda de manufactura? La celda de manufactura es un conjunto de componentes electromecánicos, que trabajan de manera coordinada para el logro.
Desarrollo de Sistemas de Información Contable - Sis USB 1 METODOLOGIAS DE DESARROLLO DE SOFTWARE.
UNIDAD 1 LA ADMINISTRACIÓN EN EL CONTEXTO INFORMÁTICO.
Plan de Sistemas de Información (PSI). Plan de Sistemas de Información (PSI) Descripción y Objetivos Tiene como objetivo la obtención de un marco de referencia.
PLANIFICACION Diego Hernández.
INGENIERIA DE SOFTWARE I Ing. Verónica Defaz. MSc.
Transcripción de la presentación:

Ingeniería del Software Universidad de los Andes Demián Gutierrez Abril 2009

¿Quién soy? Prof. Demián Gutierrez ● Profesor Instructor del Dpto. de Computación. ● Miembro del GIDyC (Grupo de Investigación en Ingeniería de Datos y Conocimiento). ● Empresario (inactivo por los momentos) en el área de Desarrollo de Software. ● Programador, Desarrollador de Software y aventurero del mundo de la tecnología...

Objetivos Introducir al estudiante en los conceptos fundamentales y tendencias de la Ingeniería de Software, en los métodos, técnicas y herramientas comúnmente utilizadas en el desarrollo de sistemas programados. Adiestrar al estudiante en el uso de métodos y técnicas orientadas por objetos (OO) para modelar y construir un sistema programado. Realizar un proyecto de desarrollo de software aplicando métodos, técnicas y herramientas OO.

¡Objetivos del Curso! ¡Debata, cuestione, sea inquisitivo! ¡Lea, lea y lea! ¡Lea libros (de ingeniería), literatura, blogs, foros, trate de entender que piensa la gente y vea que puede usted aportar a esas ideas. ¡Piense!, ¡Piense diferente!...pero sobre todo... ¡Use el sentido común!

Plan de Evaluación

Plan del Curso Unidad I y II (I Examen Parcial)

Plan del Curso Unidad III y IV (II Examen Parcial)

Plan del Curso Unidad V y VI (III Examen Parcial)

¿Qué es el Software? ¿Qué es el Software?...para hacer un producto, hay que entender la naturaleza del producto, para hacer un edificio, hay que entender la naturaleza de un edificio, para hacer software de forma eficaz y eficiente hay que entender la naturaleza del software...

¿Qué es el Software? SOFTWARE: El software se forma con: 1) Las instrucciones (programas de computadora) que al ejecutarse proporcionan las características, funciones y el grado de desempeño deseados 2) las estructuras de datos que permiten que los programas manipulen información de manera adecuada; y 3) los documentos que describen la operación y el uso de los programas Roger S. Pressman

¿Qué es el Software? PROGRAMAS (líneas de código, XML, HTML, C/C++ SQL, otros) DATOS (estructuras de datos, bases de datos, otros) DOCUMENTACI ÓN (manuales de usuario, documentación de construcción, otros) CONCEPCIÓN + DESARROLLO + MANTENIMIENTO SOFTWARE = PROGRAMAS + DATOS + DOCUMENTACIÓN...y algunos autores consideran que las reglas de negocios y los procedimientos usados para construir el software también son parte de este...

¿Características del Software? No es visible / tangible o tiene propiedades físicas El software se desarrolla o construye; no se manufactura El software no se “desgasta” (pero se deteriora) la mayoría del software se construye a la medida (a pesar de la tendencia de componentes) Es un elemento lógico (no físico) Tiene una estructura modificable: Cambia con el tiempo

¿Características del Software? No existen repuestos... A diferencia del hardware, que si una pieza se daña simplemente se reemplaza y se resuelve el problema. En el software las fallas no son consecuencia de desgaste, son consecuencia de errores de diseño, codificación, configuración, plataforma, u otros. Esto hace que el mantenimiento del software sea mucho mas complejo que el del hardware.

¿Características del Software?

¡Aceptar y Prepararse para el Cambio!...el software es algo “vivo” que nace, crece, evoluciona, cambia y muere...

Categorías / Tipos de Software Software de Sistema Software de Aplicación Software Científico y de Ingeniería Software Empotrado Software de Línea de Productos Aplicaciones WEB Software de Inteligencia Artificial... muchos más, y la combinación de estos...

¿Qué es el Software? ¿Qué es la Ingeniería del Software?...que tiempos aquellos, en los que un programador solitario usando apenas un 8085 y una vieja cafetera, era capaz conquistar al mundo escribiendo en un fin de semana en un garaje unas cientos de líneas de código...

¿Qué es el Software? Pdf/8-11

La “Crisis del Software” Es un término informático acuñado en 1968, en la primera conferencia organizada por la OTAN sobre desarrollo de software, de la cual nació formalmente la rama de la Ingeniería de Software. Para entender la “Ingeniería del Software” es necesario entender la “Crisis del Software”

La “Crisis del Software” (Causas) Hardware más potente Mayor demanda de software (Desarrollo y Mantenimiento) Sistemas mas complejos Uso inadecuado de recursos (humanos y de otros tipos) Poca información (formación / calificación) de los desarrolladores (falta de personal calificado) Falta de metodologías y técnicas (y fallas en su adecuada aplicación)

La “Crisis del Software” (Síntomas) Los proyectos no terminan a tiempo Los proyectos no se ajustan al presupuesto El software producido es de muy baja calidad El Software producido no cumple con las especificaciones del cliente El código producido no es mantenible, dificultando la gestión y evolución del proyecto Insatisfacción generalizada del cliente / usuario

La “Crisis del Software” (Consecuencias) Baja Productividad Baja Calidad...hoy en día se considera más que de una crisis se trata de una enfermedad crónica... Un desastre de software tras otro... En promedio, hay 60 errores por cada 1000 líneas de código

La “Crisis del Software” (Una “verdadera” Historia de Terror) 16.2 % 52.7 % 31.1 % 19 % 35 % 46 % Es decir que hoy en día el 19% de los proyectos fracasan totalmente y el 46% o bien sobrepasan las estimaciones en tiempo, en presupuesto, ambas cosas o no satisfacen completamente las necesidades de los clientes y usuarios.

¿Qué es el Software? ppt/8-9

La “Crisis del Software” (Solución) Aplicar Ingeniería a la Construcción de Sistemas Informáticos, es decir, hacer Ingeniería del Software Bien, pero entonces, ¿Qué es la Ingeniería del Software?

Es una disciplina de la ingeniería que comprende todos los aspectos de la producción de software, desde las etapas iniciales de la especificación del sistema hasta el mantenimiento de este después de que se utiliza. Ian Sommerville Es el establecimiento y uso de principios (métodos) sólidos de ingeniería con el fin de obtener sistemas programados en forma económica, confiable y que trabajen en máquinas reales [computadores]" Friedrich Ludwig Bauer (1968)

¿Qué es la Ingeniería? Bien, pero entonces, ¿Qué es la Ingeniería?

"Arte de aplicar los conocimientos científicos a la invención, perfeccionamiento o utilización de la técnica [o tecnología] en todas sus determinaciones" Diccionario Real Academia Actividad Humana Procesos de Diseño, Construcción y Mantenimiento (de algo) Supone Eficiencia y Eficacia ¡Implica Gestión!, No sólo técnica o cálculo

¿Qué es la Ingeniería? (Proceso) Un proceso define quien está haciendo qué, cuándo y cómo lograr cierta meta. The three “Amigos”

¿Qué es la Ingeniería? (Gestión) Gestionar es realizar diligencias conducentes al logro de un negocio o de un deseo cualquiera. El concepto de gestión hace referencia a la acción y al efecto de gestionar y de administrar. Administrar, por otra parte, consiste en gobernar, dirigir, ordenar, disponer u organizar. El término gestión, por lo tanto, implica al conjunto de trámites que se llevan a cabo para resolver un asunto o concretar un proyecto.

¿Qué es la Ingeniería? (Eficacia / Eficiencia) ¿Cuál es más eficaz? ¿Cuál es más eficiente?

¿Cómo Resuelve la Ingeniería un Problema? Formulación del Problema Análisis del Problema Búsqueda de Soluciones Toma de Decisiones Especificaciones de Diseño Implementación Solución a Problemas Similares Reconocimiento del Problema Información Irrelevante y otros Datos Erróneos Solución Operativa Documentación Problema Formulado Definición Detallada del Problema (Especificaciones, Limitaciones, Criterios, otros) Soluciones Potenciales y Soluciones Parciales Solución Seleccionada Diseño Detallado, Modelo, Informes y Documentación del Diseño El proceso de solución de problemas en ingeniería

¿Qué es la Ingeniería del Software? Entonces, la Ingeniería del Software consiste en aplicar principios, técnicas y métodos de Ingeniería y Gestión al desarrollo de Proyectos de Software / Sistemas Informáticos. Es decir: ¡¡¡Realizar un proyecto de software NO es sólo programar!!!

¿Qué es la Ingeniería del Software? ppt/12

¿Ingeniería del Software, Ciencias de la Computación y Programación?

¿Qué Produce la Ingeniería del Software? La Ingeniería del software produce software que: Se produce a tiempo (dentro de lo establecido en el plan del proyecto) (Ayuda a estimar correctamente) Su costo total está dentro de lo establecido en su presupuesto (Ver punto anterior) Está validado y es útil (hace lo se supone debe hacer) Es: Amistoso, Confiable, Libre de Errores, Flexible, Adaptable, Comprensible, Mantenible, Eficiente, Usable

Participantes en el Desarrollo de Software CLIENTE (Patrocina el desarrollo del sistema) USUARI O (Utiliza el Sistema) DESARROLLADO R (Construye el Sistema) Tiene Obligaciones Contractuale s Proporciona Financiamient o Proporciona Sistemas de Software Tiene Necesidade s Pfleeger (1998)

¿Cómo Resuelve la Ingeniería un Problema? pdf/46

¿Cómo Resuelve la Ingeniería un Problema? Análisis/Definició n de Requerimientos Diseño de Sistema Diseño de Programa Implementación Pruebas Unitarias Pruebas de Integración Pruebas de Sistema Entrega del Sistema Mantenimiento ANALISTA DISEÑADOR PROGRAMADOR PROBADOR CAPACITADOR ¡TODOS! Papel del Grupo de Desarrollo en el Proceso de Ingeniería del Software Pfleeger (1998)

Funciones de un Ingeniero de Software Gerenciar un proyecto de desarrollo de software: 1) Planificación del proyecto: planes, presupuestos, calendarios, eventos, hitos. 2) Organización y Dirección del grupo de trabajo (gestión de recursos humanos). 3) Control del Proyecto: control de costos, tiempos, recursos, otros. Determinar las necesidades y requerimientos de los usuarios de un sistema programado. Analizar y especificar formal o gráficamente los requerimientos, a fin de determinar y resolver posibles conflictos en la verificación y validación del sistema.

Funciones de un Ingeniero de Software Establecer un diseño del sistema que satisfaga los requerimientos dentro de restricciones de costos, tiempo, recursos humanos, equipos, etc. Desarrollar, evaluar y mantener software (Programar, resolver problemas técnicos) Asegurar la calidad y confiabilidad del sistema producido. Garantizar, a través del mantenimiento, la operación eficiente y económica de los sistemas producidos.

Evolución de la Ingeniería del Software