Diese Präsentation wurde erfolgreich gemeldet.
Die SlideShare-Präsentation wird heruntergeladen. ×

Unidad uno ingenieria de software

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Wird geladen in …3
×

Hier ansehen

1 von 28 Anzeige

Weitere Verwandte Inhalte

Diashows für Sie (20)

Anzeige

Ähnlich wie Unidad uno ingenieria de software (20)

Anzeige

Aktuellste (20)

Unidad uno ingenieria de software

  1. 1. INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE Ing. Sonia Godoy H Informática empresarial Ing-Sonia Godoy H
  2. 2. INTRODUCCIÓN INGENIERÍA DEL SOFTWARE Desarrollo del hardware Desde 1965 la Ley de Moore rige la evolución de los microprocesadores Factores que imprimen aceleración al ritmo de crecimiento del hardware: Consecuencias de la ley de Moore Comunicaciones entre sistemas <ul><li>Incremento de la capacidad de operación. </li></ul><ul><li>Incremento de la miniaturización. </li></ul><ul><li>Reducción de costes en la producción. </li></ul>Ing-Sonia Godoy H
  3. 3. INTRODUCCIÓN INGENIERÍA DEL SOFTWARE Crisis de software Éxito Problemático Fracaso El proyecto se aborta o el sistema no se llega a utilizar Desbordamiento de agendas o costes. Las funcionalidades no cubren las expectativas. Problemas funcionales Proyecto realizado en el tiempo previsto, con los costes previstos, con la funcionalidad esperada y ofreciendo un funcionamiento correcto. Fuente: Standish Group Survey, Proyectos para el desarrollo de sistemas de software Ing-Sonia Godoy H 2000 1998 1995 1994 28% 23% 49% 26% 28% 46% 27% 40% 33% 16% 31% 53% 2004 29% 19% 53%
  4. 4. ¿QUÉ ES SOFTWARE? <ul><li>Los productos de software se pueden desarrollar para un cliente en particular o pueden ser desarrollados para un mercado general. </li></ul><ul><li>Productos de software pueden ser: </li></ul><ul><ul><li>Genéricos: desarrollados para ser vendidos a un tipo de clientes. </li></ul></ul><ul><ul><li>Específicos: desarrollado para un cliente de acuerdo a sus necesidades específicas. </li></ul></ul>Ing-Sonia Godoy H
  5. 5. ¿QUÉ ES INGENIERÍA DE SOFTWARE? <ul><li>La Ingeniería de Sofware es una disciplina de la Ingeniería que se preocupa de todos los aspectos de la producción de software. </li></ul><ul><li>Aplicación de los métodos de la ingeniería al proceso de desarrollo de software: </li></ul><ul><ul><li>Diseño </li></ul></ul><ul><ul><li>Construcción </li></ul></ul><ul><ul><li>Mantenimiento </li></ul></ul>Ing-Sonia Godoy H
  6. 6. TIPOS DE PRODUCTOS SOFTWARE <ul><li>Áreas de aplicación [Pressman, 2002] (ii) </li></ul><ul><ul><li>Software de ingeniería y científico </li></ul></ul><ul><ul><li>Algoritmos de tratamiento numérico: simulación, estadística, CAD... </li></ul></ul><ul><ul><li>Diseño de algoritmos y estructuras de datos </li></ul></ul><ul><ul><li>Cálculo intensivo </li></ul></ul><ul><ul><li>Paralelización </li></ul></ul><ul><li>Software empotrado </li></ul><ul><ul><li>Reside en memoria de sólo lectura y se utiliza para controlar productos y </li></ul></ul><ul><ul><li>sistemas de los mercados industriales y de consumo </li></ul></ul><ul><ul><li>Características similares al de tiempo real </li></ul></ul><ul><li>Software de Inteligencia Artificial </li></ul><ul><ul><li>Algoritmos no numéricos para resolver problemas complejos: sistemas expertos, reconocimiento de patrones, demostradores de teoremas </li></ul></ul>Ing-Sonia Godoy H
  7. 7. <ul><li>Software de computadoras personales </li></ul><ul><ul><li>Herramientas de escritorio, software para ocio… </li></ul></ul><ul><li>Aplicaciones Web </li></ul><ul><ul><li>Software accedido a través de un navegador Web </li></ul></ul><ul><ul><li>Los sistemas Web tienen una naturaleza y unos requisitos que difieren del software tradicional </li></ul></ul><ul><ul><li>Los sistemas Web </li></ul></ul>TIPOS DE PRODUCTOS SOFTWARE Ing-Sonia Godoy H
  8. 8. ¿QUÉ ATRIBUTOS TIENE UN BUEN SOFTWARE? <ul><li>El software debería entregar la funcionalidad y desempeño requeridos por el usuario y debería ser mantenible, confiable y usable. </li></ul><ul><li>Mantenibilidad </li></ul><ul><ul><li>El software debe evolucionar para cubrir necesidades cambiantes. </li></ul></ul><ul><li>Confiabilidad </li></ul><ul><ul><li>El software debe ser confiable. </li></ul></ul><ul><li>Eficiencia </li></ul><ul><ul><li>El software no debe malgastar los recursos del sistema. </li></ul></ul><ul><li>Usabilidad </li></ul><ul><ul><li>El software debe ser usable por los usuarios para quienes se diseñó. </li></ul></ul>Ing-Sonia Godoy H
  9. 9. EL CICLO DE VIDA DEL SOFTWARE Modificación : para adaptarse a los cambios del entorno. (en otros productos se conoce como reparación o mantención) ‏ Ing-Sonia Godoy H
  10. 10. LA FASE DE DESARROLLO DEL CICLO DE VIDA DEL SOFTWARE Ing-Sonia Godoy H
  11. 11. INTRODUCCIÓN INGENIERÍA DEL SOFTWARE Principales organizaciones de estandarización <ul><li>ISO </li></ul><ul><li>SEI </li></ul><ul><li>IEEE Computer Society </li></ul>IEEE Es el Instituto de Ingenieros en electricidad y electrónica (Institute of Electrical and Electronics Engineers). Ing-Sonia Godoy H
  12. 12. INTRODUCCIÓN INGENIERÍA DEL SOFTWARE <ul><li>ISO 1227 define los procesos que componen el ciclo de vida del software </li></ul>ISO 12207 Ing-Sonia Godoy H Ciclo de vida Concepto Retirada Proceso 1 … Proceso N Actividad 1 Tarea 1 Tarea 2 … Tarea n … Actividad n Tarea 1 Tarea 2 … Tarea n
  13. 13. INTRODUCCIÓN INGENIERÍA DEL SOFTWARE ISO 12207 <ul><li>Un proceso está compuesto por actividades. </li></ul><ul><li>Una actividad está compuesta de tareas. </li></ul><ul><li>La descomposición del proceso en actividades y tareas se realiza sobre el concepto de ciclo de mejora PDCA “Plan – Do – Chek – Act” (Planificación, ejecución, medición y mejora) </li></ul>Ing-Sonia Godoy H ACTIVIDAD 1 TAREA 1 TAREA 1 TAREA X • • • PROCESO ACTIVIDAD n • • •
  14. 14. PLAN Tareas, agenda, asignaciones… CHECK Evaluación y medición DO Ejecición de planes y tareas ACT Problemas y acciones correctivas PROCESO INICIO FIN ISO 12207 Ing-Sonia Godoy H
  15. 15. INTRODUCCIÓN INGENIERÍA DEL SOFTWARE INGENIERÍA DE SISTEMAS <ul><li>conjunto de elementos de hardware, software, personas, procedimientos, herramientas y otros factores organizativos, organizados para llevar a cabo un objetivo común. </li></ul>Sistema Ing-Sonia Godoy H Elemento del sistema Elemento del sistema Elemento del sistema Elemento del sistema Sistema de Entrada Sistema de Salida Sistema
  16. 16. INTRODUCCIÓN INGENIERÍA DEL SOFTWARE INGENIERÍA DE SISTEMAS Funciones de la Ingeniería de sistemas <ul><li>Definición del problema : Determinación de las expectativas hacia el producto, necesidades y restricciones obtenidas y analizadas en los requisitos del sistema. Trabaja cerca del cliente para establecer las necesidades operacionales. </li></ul><ul><li>Análisis de la solución : Determinar las opciones posibles para satisfacer los requisitos y las restricciones. Estudiar y analizar las posibles soluciones. Seleccionar la mejor, sopesando las necesidades inmediatas, opciones de implementación, utilidad, evolución del sistema… </li></ul>Ing-Sonia Godoy H
  17. 17. <ul><li>Planificación de los procesos : Determinar los grupos de tareas técnicas que se deben realizar, el esfuerzo requerido para cada una, su prioridad y los riesgos que implican para el proyecto. </li></ul><ul><li>Control de los procesos : Determinar los métodos para controlar las actividades técnicas del proyecto y los procesos; la medición del progreso, revisión de los productos intermedios y ejecución de las acciones correctivas, cuando corresponda. </li></ul><ul><li>Evaluación del producto : Determinar la calidad y cantidad de los productos elaborados, a través de evaluaciones, pruebas, análisis, inspecciones… </li></ul>Funciones de la Ingeniería de sistemas Ing-Sonia Godoy H
  18. 18. INTRODUCCIÓN INGENIERÍA DEL SOFTWARE INGENIERÍA DE SISTEMAS Ingeniería de sistemas – Gestión de proyectos – Ingeniería del Soft. Ing-Sonia Godoy H Gestión de proyectos <ul><li>Planificación </li></ul><ul><li>Organización </li></ul><ul><li>Personal </li></ul><ul><li>Dirección </li></ul><ul><li>Control </li></ul>Ingeniería del software <ul><li>Diseño del software </li></ul><ul><li>Codificación </li></ul><ul><li>Pruebas unitarias </li></ul><ul><li>Integración del subsistema de software </li></ul>Ingeniería de sistemas <ul><li>Definición del problema </li></ul><ul><li>Análisis de la solución </li></ul><ul><li>Planificación de procesos </li></ul><ul><li>Control de procesos </li></ul><ul><li>Evaluación del producto </li></ul>
  19. 19. INTRODUCCIÓN INGENIERÍA DEL SOFTWARE INGENIERÍA DE SISTEMAS Ingeniería de sistemas – Ingeniería de sistemas de software – Ingeniería del software Codificación Pruebas unitarias Diseño detallado del software Pruebas del sub-sistema de softw. Diseño de la ar-quitectura del sw Pruebas del sistema de sw Análisis de requisitos del sw Pruebas de integración del sw Diseño del sistema Análisis del sistema Pruebas de integración del sis Pruebas del sistema <ul><li>Ingeniería de sistemas </li></ul><ul><li>Ingeniería de sistemas de software </li></ul><ul><li>Ingeniería del software </li></ul><ul><li>Ingeniería del software </li></ul>Ing-Sonia Godoy H
  20. 20. Método de ingeniería en Ingeniería del Software Ing-Sonia Godoy H
  21. 21. Ing-Sonia Godoy H
  22. 22. CAPAS Define el marco de trabajo y permite un desarrollo racional y oportuno de la Ingeniería del Software Ing-Sonia Godoy H
  23. 23. CAPAS Indica cómo construir técnicamente el software. Se incluyen técnicas de modelado y otras técnicas descriptivas Ing-Sonia Godoy H
  24. 24. CAPAS Proporcionan el soporte automático o semiautomático para el proceso y para los métodos Ing-Sonia Godoy H
  25. 25. CAPAS <ul><li>Conjunto de reglas gráficas o textuales para la representación de un modelo </li></ul>Ing-Sonia Godoy H
  26. 26. CAPAS Colección de métodos para resolver un tipo de problemas Descompone el proceso de desarrollo en actividades y proporciona los métodos adecuados para llevar a cabo dichas actividades Ing-Sonia Godoy H
  27. 27. IMPORTANCIA DEL PROCESO EN EL DESARROLLO DEL SOFTWARE <ul><li>Un proceso software debe especificar </li></ul><ul><li>La secuencia de actividades a realizar por el equipo de desarrollo </li></ul><ul><ul><ul><li>Flujo de actividades </li></ul></ul></ul><ul><li>Los productos que deben crearse </li></ul><ul><ul><li>Resultados del trabajo (modelos, documentos, datos informes...) </li></ul></ul><ul><ul><li>Qué y cuándo </li></ul></ul><ul><li>La asignación de tareas a cada miembro del equipo y al equipo </li></ul><ul><ul><li>como un todo </li></ul></ul><ul><li>Los criterios para controlar el proceso </li></ul><ul><ul><li>Se establece el control de gestión de los proyectos software </li></ul></ul><ul><ul><li>Establecimiento de hitos </li></ul></ul><ul><li>Las posibles heurísticas </li></ul>Ing-Sonia Godoy H
  28. 28. CONCLUSIONES Ing-Sonia Godoy H

Hinweis der Redaktion

  • El software no se desgasta Se modifica por errores no descubiertos en la fase de desarrollo obliga a alterar Por cambios en la aplicación Porque cambios en una modificación anterior provocan problemas en otra parte Ejemplo: cambios de las leyes obliga a cambiar el procedimiento de calculo del sueldo, y ese cambio provoca cambios en otra parte del programa. El proceso de modificación requiere que una persona, usualmente diferente del programador original, estudie el programa y su documentación hasta entenderlo, de otra forma podría introducir mas problemas de los que ya tiene. Muchas veces es preferible desechar el programa y escribirlo de nuevo, que modificarlo.
  • Fases de desarrollo Análisis En la organización, se reconoce la necesidad de realizar una aplicación computacional. Tiene que ver mas con la operación de la organización. Identificación de los usuarios y de sus necesidades, es conveniente analizar la situación actual, cuando esta exista. Se debe conocer las necesidades de ,os usuarios de esta función y de sus expectativas. Identificar las salidas de información requeridas, las entradas de información existentes o determinar la forma de obtener la información si no existe, y los procesamientos requeridos de los datos (procesos de transformación)‏ El resultado de la fase de análisis es el conjunto de requerimientos a satisfacer por el nuevo sistema. (ejemplo acceso de datos restringido a personal autorizado)‏ Una vez aclarados los requerimientos, se convierten en especificaciones técnicas del sistema a desarrollar (se debe tener una contraseña de 5 caracteres letras o dígitos)‏ Diseño Desarrollo de los detalles técnicos del sistema propuesto División en módulos Ingeniería Básica o modelamiento conceptual de la solución Construcción e Implantación Escritura de programas, desarrollo de las bases de datos Prueba Pruebas de módulos individuales, pruebas de integración, prueba de sistemas
  • La ingeniería de software es una tecnología multicapa, cualquier enfoque de ingeniería debe apoyarse sobre un compromiso de organización de calidad. El fundamento de la ingeniería de software es la capa del proceso. El proceso de la ingeniería de software es la unión que mantiene juntas las capas de tecnología y que permiten un desarrollo racional y oportuno de la ingeniería de software. El proceso define un marco de trabajo para un conjunto de áreas clave de proceso que se deben establecer para la entrega de la tecnología de la ingeniería de software.

×