SlideShare una empresa de Scribd logo
1 de 42
M.C. María Loreto Edit López Veloz
Agosto - Diciembre 2014
Presentación de la Materia
• Presentación
• Programa de la Materia
• Evaluación
– Primer parcial 20%
– Segundo examen parcial 20%
– Examen Final 20%
– Trabajos y Tareas 15%
– Proyecto Final 25%
• Políticas de clase
Programa de Materia
I. Fundamentos de la Ingeniería en Software
II. El proceso de Software
III. Administración de la Configuración
IV. Etapas del desarrollo de sistemas
V. Estatus de control de programas
VI. Pruebas
VII.Métricas de Software
VIII.Calidad de Software
UNIDAD I Fundamentos de la
Ingeniería de Software
Objetivos Particular
• Comprenderá la evolución del software y su
impacto en las organizaciones
Conceptos Fundamentales
Ingeniería
Profesión que posee conocimientos
científicos, actividades y criterios ( ingenio )
para crear dispositivos, métodos y sistemas
para transformar los recursos y satisfacer
mejor las necesidades de una sociedad.
Conceptos Fundamentales
Software: Conjunto de programas que se
pueden ejecutar en una computadora, así
como toda la información, utilerías y recursos
necesarios para su diseño, instalación,
operación, mantenimiento y refinamiento.
Conceptos Fundamentales
Ingeniería de Software: Disciplina que establece
el uso de principios de ingeniería robustos,
orientados a obtener software económico, que
sea confiable y funcione de manera eficiente.
Evolución del Software
Evolución: Acción de transformar gradualmente algo.
El término “evolución” del software se utiliza desde los
sesenta para denominar la dinámica de crecimiento del
software.
Evolución del Software
Una definición atribuida a Lehman y Ramil dice que la evolución
del software es “todas las actividades de programación que se
orientan a generar una nueva versión de un software a partir de
una versión anterior operativa.
1) Chapin, N., Hale, J.E., Khan, K.M., Ramil, J. and Tan, W. (2001) Types of software evolution and software maintenance. Journal of Software
Maintenance and Evolution: research and practice, 13, pp. 3-30.
Evolución del Software
La guía SWEBOK considera que la necesidad de “cambios” en el
software es la causa del mantenimiento y por lo tanto provoca
la “evolución del software”.
2) www.swebok.org
Papel evolutivo del software
El papel dual del software es:
1. Producto – transformador de información (bit hasta
presentación multimedia)
• Procesos producción
• Manejo
• Adquisición
• Modificación
• Despliegue
• Transmisión
2. Vehículo mediante el cual es entrega un producto, se
maneja como un aspecto recursivo
Papel evolutivo del software
El software podemos calcular su tiempo de
existencia sobre alrededor de 50 años y sus
cambios durante este tiempo se han originado
principalmente por:
Mejorías sustanciales en el desempeño del hardware
• Incremento en la capacidad de almacenamiento y
memoria
• amplia variedad de opciones de entrada y salida
Historia de Software
Tarea 18-agosto ¿Cuáles fueron sus Predicciones? ¿Cuáles
fueron reales? y ¿Cuáles erróneas?
• Osborne - 79 Nueva revolución industrial
• Toffler - ToF80 Tercera ola del cambio
• Naisbitt - Naii82 Sociedad de la información
• Feigenbaum - McCorduck 83 Información y conocimiento
controlado por computadoras
• Stoll - STO89 Comunidad electrónica
• Toffler - ToF90 Un cambio de Poder
• Yourdon - you96 surgimiento y resurrección
• YK2 - bomba de tiempo
Preocupaciones de hoy y siempre en el
desarrollo del software
• Por qué tarda tanto la obtención del software
terminado?
• ¿Por qué son tan altos los costos de desarrollo del
software?
• ¿Por qué es imposible encontrar todos los errores en el
software antes de entregarlo a los clientes?
• Por qué se gastan tanto tiempo y esfuerzo en el
mantenimiento de los programas existentes?
• ¿Por qué es difícil medir el progreso al desarrollar y darle
mantenimiento al software?
Objetivo Particular
• Aprenderá los principales conceptos
existentes en la Ingeniería de software
Software
Una definición de software involucraría lo siguiente:
1. Instrucciones (programas de computadoras) que al
ejecutar se proporcionan las características y el
grado de desempeño deseados.
2. Cuentan con estructuras de datos que permiten que
los programas manipulen la información de manera
adecuada
3. Los documentos que describen la operación y uso de
los programas
Precepto fundamental del software es que es un
elemento lógico y en lugar de un físico como el
hardware
• El software se desarrolla o construye no se
manufactura
– hardware y software alta calidad – buen diseño
– Diferencias problemas de calidad de los componentes
– Producción de un “producto”
Precepto fundamental del software es que es un
elemento lógico y en lugar de un físico como el
hardware
• El software no se desgasta – se deteriora
– Tasa de falla en el tiempo: alto diseño , exposición ambiental
(polvo, la vibración, el abuso, temperaturas extremas)
– El software se deteriora debido a los cambios
– Cuando en el hardware un componente se desgasta
se sustituye por otro componente o repuesto
– El software implica de manera considerable una complejidad
mayor que el hardware
Precepto fundamental del software es que es un
elemento lógico y en lugar de un físico como el
hardware
• A pesar de que la industria tiene una tendencia haría
la construcción por componentes , la mayoría del
software aún se construye a la medida.
Naturaleza cambiante del software-
Categorías del software
1. Software de Sistemas
Es una colección de programas escritos para servir
otros programas
1. Utilerías
2. Compiladores
3. Editores
4. Utilerías para administración
5. Controladores
6. Software de red
7. Procesadores de telecomunicaciones
2. Software de aplicación
Programas independientes que resuelven una
necesidad de negocio especifica
– Datos empresariales, técnicos o de gestión
– Control de funciones de negocios en tiempo real
3. Software científico y de Ingeniería
• Algoritmos devoradores de números, abarca
desde la astronomía hasta la vulcanogía.
• Sistemas de análisis de la tensión automotriz
• Dinámica orbital de los transbordadores
espaciales
• Simulación o escenarios
4. Software empotrado o incrustrado
Programas que residen dentro de la memoria de
solo lectura del sistema con el se implementa y
controlan características y funciones par el
usuario final y el sistema mismo.
– Control del horno de microondas
– Funciones digitales del automóvil
– Control de combustible
– El despliegue de datos del tablero
– Sistemas de frenado
5. Software de líneas de productos
Programas diseñados para proporcionar una
capacidad especifica y la utilización de muchos
clientes diferentes
– Productos para control de inventarios
– Procesadores de Texto
– Hojas de Calculo
– Gráficadores
– Multimedia
– Entretenimiento o videojuegos
– Administración de personal o finanzas
6. Aplicaciones basadas en WEB-
WebApps
Programas que engloban un espectro amplio de
aplicaciones. Desde un simple conjunto de
archivos de hipertexto, gráficos hasta
aplicaciones con bases de datos corporativas y
cualquier aplicación de negocio
7. Software de inteligencia artificial
Software que utiliza algoritmos no numéricos en
la resolución de problemas complejos que es
imposible abordar por medio de análisis directo.
1. Robótica
2. Sistemas expertos
3. Reconocimiento de patrones (voz e imagen)
4. Redes neuronales
5. Comprobación de teoremas
6. Algunos juegos de computadora
Software Heredado
• Son programas realizados en tiempos pasados
y que han sido modificados en forma continua
para cumplir los requerimientos de los
cambios de los negocios y las plataformas de
computo
• Se caracterizan por su longevidad y el ser
críticos en una unidad del negocio o
indispensables para las empresas
Calidad en el software heredado
• Diseños imposibles de extender
• Código complicado
• Documentación escasa o inexistente
• Casos de prueba y resultados que nunca
fueron archivados
• Historial de cambios poco detallados o nulos
Puntos para garantizar la calidad del
software heredado
• Adaptarse -- Nuevas tecnologías
• Mejorarse – Nuevos requerimientos
• Extenderse - Nuevos sistemas y bd
• Rediseñarse – ambiente red
“Metodologías que se basen en la evolución”
Mitos del Software
Creencias del software y de los procesos
empleados para construirlo
1. Mitos en la Administración
2. Mitos del Cliente
3. Mitos del Desarrollador
1. Mitos del Administrador
Los administradores del software generalmente trabajan
bajo presión para mantener el presupuesto y cronograma
de un proyecto
– Mito: En la organización o institución ya se cuenta con un
manual completo de procedimientos y estándares para el
desarrollo del software
– Realidad:
• Tal vez exista, ¿pero se usa?
• Los desarrolladores saben de su existencia?
• El manual refleja la práctica de la Ingeniería de Software?
• Esta completo?
• Es adaptable?
• Esta dirigido para mejorar el tiempo de entrega sin dejar de lado la
calidad del software
Mitos del Administrador
– Mito: Si se esta atrasado el proyecto de desarrollo en el
cronograma planteado, se contratan mas personal de
desarrollo y se cubre con el tiempo planeado
– Realidad:
Ley de Brooks:
• Esta comprobado que agregar mas personal de desarrollo a un
proyecto atrasado lo atrasa mas
• En la actividad de desarrollo se comprueba una vez mas que
agregar un nuevo integrante al equipo de desarrollo involucra
tiempo de capacitación lo cual redunda en tiempos muertos de
producción
• Se agrega personal pero solo de una manera planeada y
coordinada
Mitos del Administrador
– Mito: si deseo realizar subcontratación para un
tercero puedo relajarme y esperar tranquilo el
resultado
– Realidad:
• Si no se tiene organización interna y se sabe realmente
el objetivo de tal desarrollo difícilmente lo podrá cubrir
con éxito la empresa subcontratada
2. Mitos del Cliente
– Mito: Un enunciado general de los objetivos del
sistema es suficiente para comenzar a programar
los detalles se afinan después.
– Realidad:
• Los requerimientos no siempre son del todo
comprensibles y estables
• Un requerimiento ambiguo es augurio de un desastre
total en el resultado
• Los requerimientos precisos se logran siempre en
función de una comunicación continua
2. Mitos del Cliente
– Mito: Los cambios solicitados pueden realizarse
de manera simple porque el software es flexible
– Realidad:
• El impacto del cambio del sistema varia según sea el
tiempo, ya sea en el inicio o en las etapas de desarrollo
finales
3. Mitos del Desarrollador
– Mito: Una vez que la aplicación se haya
programado y se ponga a funcionar el trabajo esta
terminado
– Realidad:
• Alguien comento que entre mas rápido se ponga un
desarrollador a programar su sistema pasara mas
tiempo para terminar de acuerdo al objetivo deseado
• Una métrica de software indica que entre el 60 y 80%
del esfuerzo utilizado para terminar el software se
aplicara después de la primera vez que se entregue la
primera versión del sistema
3. Mitos del Desarrollador
– Mito: No es posible evaluar la calidad del software
hasta que se este ejecutando
– Realidad:
• Hay una practica de ingeniería de software que dice
que se puede revisar la calidad el sistema desde el
inicio. Revisión Técnica formal denomina “Filtro de
Calidad” que se ha comprobado que es más efectivo
que la prueba, para encontrar ciertas clases de defectos
en el software.
3. Mitos del Desarrollador
– Mito: La aplicación de la Ingeniería de software,
implica la creación de documentación engorrosa y
que retarda la entrega del proyecto final
– Realidad:
• Esta disciplina no se relaciona con la creación de
documentos si no se relaciona con las técnicas que
logren obtener mejor calidad en el producto de
software.
• Obtención de calidad basada en un precepto básico
reducción de trabajos redundantes que aseguren la
reducción de tiempos de entrega
3. Mitos del Desarrollador
– Mito: El único producto que se puede entregar en
una entrega formal del sistema es el sistema
funcionando
– Realidad:
• El software funcionando es solo una parte de una
CONFIGURACION DE SOFTWARE.
• La documentación es la base de un buen desarrollo y
guías para las tarea de mantenimiento.
Configuración del Software
Son los elementos que componen toda la
información producida como parte del proceso
de Ingeniería
Mantenimiento
Manual del usuario
preliminar
Distribución del esfuerzo en un proyecto de
Programación
Se entiende por mantenimiento a todas las actividades posteriores a la liberación inicial
del producto.
El mantenimiento de los paquetes de software contempla 3 actividades:
1. Mejoramiento de las capacidades del producto
2. Adaptación del producto a nuevos ambientes de computo
3. Depuración de errores

Más contenido relacionado

La actualidad más candente

Sistemas numã©ricos y cã³digos
Sistemas numã©ricos y cã³digosSistemas numã©ricos y cã³digos
Sistemas numã©ricos y cã³digosMaria Vegas Arraez
 
Aritmética de los números binarios
Aritmética de los números binariosAritmética de los números binarios
Aritmética de los números binariosarpablos001
 
trabajo de geometria 8.1 Elipse
trabajo de geometria 8.1 Elipsetrabajo de geometria 8.1 Elipse
trabajo de geometria 8.1 Elipsekevinalbeiro
 
Numeros racionales
Numeros racionalesNumeros racionales
Numeros racionalesYadi Campos
 
Operaciones con logaritmos
Operaciones con logaritmosOperaciones con logaritmos
Operaciones con logaritmosjcremiro
 
Circuitos digitales ii
Circuitos digitales iiCircuitos digitales ii
Circuitos digitales iijesuseperez
 
Ppt matematicas relaciones de reurrencia
Ppt matematicas relaciones de reurrenciaPpt matematicas relaciones de reurrencia
Ppt matematicas relaciones de reurrenciaRamny Casado Santos
 
PPT Sistemas de numeración
PPT Sistemas de numeraciónPPT Sistemas de numeración
PPT Sistemas de numeraciónLeal884
 
Valor absoluto
Valor absolutoValor absoluto
Valor absolutojazz089
 
Despejes
DespejesDespejes
Despejesdelsas
 
Funciones mac os
Funciones mac osFunciones mac os
Funciones mac osyandry loor
 
Reperesentantes de Trigonometría
Reperesentantes de TrigonometríaReperesentantes de Trigonometría
Reperesentantes de TrigonometríaIván Dominguez
 
Grafos propuestos
Grafos propuestosGrafos propuestos
Grafos propuestosmenamigue
 
áReas de superficies planas
áReas de superficies planas áReas de superficies planas
áReas de superficies planas Byron Gutierrez
 
Historia breve de los numeros racionales
Historia breve de los numeros racionalesHistoria breve de los numeros racionales
Historia breve de los numeros racionalesMiguel Acero
 

La actualidad más candente (17)

Sistemas numã©ricos y cã³digos
Sistemas numã©ricos y cã³digosSistemas numã©ricos y cã³digos
Sistemas numã©ricos y cã³digos
 
Aritmética de los números binarios
Aritmética de los números binariosAritmética de los números binarios
Aritmética de los números binarios
 
trabajo de geometria 8.1 Elipse
trabajo de geometria 8.1 Elipsetrabajo de geometria 8.1 Elipse
trabajo de geometria 8.1 Elipse
 
Numeros racionales
Numeros racionalesNumeros racionales
Numeros racionales
 
Operaciones con logaritmos
Operaciones con logaritmosOperaciones con logaritmos
Operaciones con logaritmos
 
Circuitos digitales ii
Circuitos digitales iiCircuitos digitales ii
Circuitos digitales ii
 
Ppt matematicas relaciones de reurrencia
Ppt matematicas relaciones de reurrenciaPpt matematicas relaciones de reurrencia
Ppt matematicas relaciones de reurrencia
 
PPT Sistemas de numeración
PPT Sistemas de numeraciónPPT Sistemas de numeración
PPT Sistemas de numeración
 
Valor absoluto
Valor absolutoValor absoluto
Valor absoluto
 
Despejes
DespejesDespejes
Despejes
 
Funciones mac os
Funciones mac osFunciones mac os
Funciones mac os
 
Reperesentantes de Trigonometría
Reperesentantes de TrigonometríaReperesentantes de Trigonometría
Reperesentantes de Trigonometría
 
Grafos propuestos
Grafos propuestosGrafos propuestos
Grafos propuestos
 
Sucesión de Fibonacci
Sucesión de FibonacciSucesión de Fibonacci
Sucesión de Fibonacci
 
Diapositivas Números Racionales
Diapositivas Números RacionalesDiapositivas Números Racionales
Diapositivas Números Racionales
 
áReas de superficies planas
áReas de superficies planas áReas de superficies planas
áReas de superficies planas
 
Historia breve de los numeros racionales
Historia breve de los numeros racionalesHistoria breve de los numeros racionales
Historia breve de los numeros racionales
 

Similar a Introducción a la Ingeniria del Software

Ingenieria de software -analizis literario
Ingenieria de software -analizis literarioIngenieria de software -analizis literario
Ingenieria de software -analizis literariodiegos08
 
Unidad 1 ing de software
Unidad 1 ing de softwareUnidad 1 ing de software
Unidad 1 ing de softwareMary Carmen
 
ing. de software
ing. de softwareing. de software
ing. de softwareellizabp_22
 
Unidad 1 Ingenieria de software
Unidad 1 Ingenieria de softwareUnidad 1 Ingenieria de software
Unidad 1 Ingenieria de softwareJahiro Bojorquez
 
Trabajo de analisis y diseño
Trabajo de analisis y diseñoTrabajo de analisis y diseño
Trabajo de analisis y diseñomary taipe
 
Trabajo diapositiva Software por Jhonatan Ruiz
Trabajo diapositiva  Software por Jhonatan RuizTrabajo diapositiva  Software por Jhonatan Ruiz
Trabajo diapositiva Software por Jhonatan Ruizjhonatanalex
 
Trabajo diapositiva modulo 3 de jhonatan
Trabajo diapositiva modulo 3 de jhonatanTrabajo diapositiva modulo 3 de jhonatan
Trabajo diapositiva modulo 3 de jhonatanjhonatanalex
 
Metricas del proyecto de Software - introduccion
Metricas del proyecto de Software - introduccionMetricas del proyecto de Software - introduccion
Metricas del proyecto de Software - introduccionJose Diaz Silva
 
Sesión 1: Introduccion. ¿Qué es ingeniería de software?
Sesión 1: Introduccion. ¿Qué es ingeniería de software?Sesión 1: Introduccion. ¿Qué es ingeniería de software?
Sesión 1: Introduccion. ¿Qué es ingeniería de software?Luis Fernández
 
Sesión 1: Introduccion. ¿Qué es ingeniería de software?
Sesión 1: Introduccion. ¿Qué es ingeniería de software?Sesión 1: Introduccion. ¿Qué es ingeniería de software?
Sesión 1: Introduccion. ¿Qué es ingeniería de software?Coesi Consultoria
 
Trabajo diapositiva modulo 3 de josue
Trabajo diapositiva modulo 3 de josueTrabajo diapositiva modulo 3 de josue
Trabajo diapositiva modulo 3 de josueJosue Zelaya
 
IngSoftCap01-Introduccion.pdf
IngSoftCap01-Introduccion.pdfIngSoftCap01-Introduccion.pdf
IngSoftCap01-Introduccion.pdfcristian265023
 

Similar a Introducción a la Ingeniria del Software (20)

UNIDAD_I.ppt
UNIDAD_I.pptUNIDAD_I.ppt
UNIDAD_I.ppt
 
Ingenieria de software -analizis literario
Ingenieria de software -analizis literarioIngenieria de software -analizis literario
Ingenieria de software -analizis literario
 
introducción ingeniería de software
introducción  ingeniería de  softwareintroducción  ingeniería de  software
introducción ingeniería de software
 
Unidad 1 ing de software
Unidad 1 ing de softwareUnidad 1 ing de software
Unidad 1 ing de software
 
Ingeniería de software
Ingeniería de software Ingeniería de software
Ingeniería de software
 
Desarrollo de software
Desarrollo de softwareDesarrollo de software
Desarrollo de software
 
ing. de software
ing. de softwareing. de software
ing. de software
 
Unidad 1 Ingenieria de software
Unidad 1 Ingenieria de softwareUnidad 1 Ingenieria de software
Unidad 1 Ingenieria de software
 
Trabajo de analisis y diseño
Trabajo de analisis y diseñoTrabajo de analisis y diseño
Trabajo de analisis y diseño
 
Trabajo diapositiva Software por Jhonatan Ruiz
Trabajo diapositiva  Software por Jhonatan RuizTrabajo diapositiva  Software por Jhonatan Ruiz
Trabajo diapositiva Software por Jhonatan Ruiz
 
Trabajo diapositiva modulo 3 de jhonatan
Trabajo diapositiva modulo 3 de jhonatanTrabajo diapositiva modulo 3 de jhonatan
Trabajo diapositiva modulo 3 de jhonatan
 
Fundamentos de ingenieria del software (2)
Fundamentos de ingenieria del software (2)Fundamentos de ingenieria del software (2)
Fundamentos de ingenieria del software (2)
 
Metricas del proyecto de Software - introduccion
Metricas del proyecto de Software - introduccionMetricas del proyecto de Software - introduccion
Metricas del proyecto de Software - introduccion
 
Software de ingenieria
Software de ingenieriaSoftware de ingenieria
Software de ingenieria
 
Conferencia_Introducción a la Ingeniería de Software
Conferencia_Introducción a la Ingeniería de SoftwareConferencia_Introducción a la Ingeniería de Software
Conferencia_Introducción a la Ingeniería de Software
 
Sesión 1: Introduccion. ¿Qué es ingeniería de software?
Sesión 1: Introduccion. ¿Qué es ingeniería de software?Sesión 1: Introduccion. ¿Qué es ingeniería de software?
Sesión 1: Introduccion. ¿Qué es ingeniería de software?
 
Sesión 1: Introduccion. ¿Qué es ingeniería de software?
Sesión 1: Introduccion. ¿Qué es ingeniería de software?Sesión 1: Introduccion. ¿Qué es ingeniería de software?
Sesión 1: Introduccion. ¿Qué es ingeniería de software?
 
1. introduccion
1. introduccion1. introduccion
1. introduccion
 
Trabajo diapositiva modulo 3 de josue
Trabajo diapositiva modulo 3 de josueTrabajo diapositiva modulo 3 de josue
Trabajo diapositiva modulo 3 de josue
 
IngSoftCap01-Introduccion.pdf
IngSoftCap01-Introduccion.pdfIngSoftCap01-Introduccion.pdf
IngSoftCap01-Introduccion.pdf
 

Último

Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptxFelicitasAsuncionDia
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdfDemetrio Ccesa Rayme
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...JAVIER SOLIS NOYOLA
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxYadi Campos
 
Ecosistemas Natural, Rural y urbano 2021.pptx
Ecosistemas Natural, Rural y urbano  2021.pptxEcosistemas Natural, Rural y urbano  2021.pptx
Ecosistemas Natural, Rural y urbano 2021.pptxolgakaterin
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIACarlos Campaña Montenegro
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñotapirjackluis
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSjlorentemartos
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaDecaunlz
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxAna Fernandez
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdfgimenanahuel
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dstEphaniiie
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzprofefilete
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxKarlaMassielMartinez
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.José Luis Palma
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoFundación YOD YOD
 

Último (20)

Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptx
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdf
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
 
Ecosistemas Natural, Rural y urbano 2021.pptx
Ecosistemas Natural, Rural y urbano  2021.pptxEcosistemas Natural, Rural y urbano  2021.pptx
Ecosistemas Natural, Rural y urbano 2021.pptx
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
 
Power Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptxPower Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptx
 
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdfTema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
 
Fe contra todo pronóstico. La fe es confianza.
Fe contra todo pronóstico. La fe es confianza.Fe contra todo pronóstico. La fe es confianza.
Fe contra todo pronóstico. La fe es confianza.
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativa
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docx
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes d
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativo
 

Introducción a la Ingeniria del Software

  • 1. M.C. María Loreto Edit López Veloz Agosto - Diciembre 2014
  • 2. Presentación de la Materia • Presentación • Programa de la Materia • Evaluación – Primer parcial 20% – Segundo examen parcial 20% – Examen Final 20% – Trabajos y Tareas 15% – Proyecto Final 25% • Políticas de clase
  • 3. Programa de Materia I. Fundamentos de la Ingeniería en Software II. El proceso de Software III. Administración de la Configuración IV. Etapas del desarrollo de sistemas V. Estatus de control de programas VI. Pruebas VII.Métricas de Software VIII.Calidad de Software
  • 4. UNIDAD I Fundamentos de la Ingeniería de Software
  • 5. Objetivos Particular • Comprenderá la evolución del software y su impacto en las organizaciones
  • 6. Conceptos Fundamentales Ingeniería Profesión que posee conocimientos científicos, actividades y criterios ( ingenio ) para crear dispositivos, métodos y sistemas para transformar los recursos y satisfacer mejor las necesidades de una sociedad.
  • 7. Conceptos Fundamentales Software: Conjunto de programas que se pueden ejecutar en una computadora, así como toda la información, utilerías y recursos necesarios para su diseño, instalación, operación, mantenimiento y refinamiento.
  • 8. Conceptos Fundamentales Ingeniería de Software: Disciplina que establece el uso de principios de ingeniería robustos, orientados a obtener software económico, que sea confiable y funcione de manera eficiente.
  • 9. Evolución del Software Evolución: Acción de transformar gradualmente algo. El término “evolución” del software se utiliza desde los sesenta para denominar la dinámica de crecimiento del software.
  • 10. Evolución del Software Una definición atribuida a Lehman y Ramil dice que la evolución del software es “todas las actividades de programación que se orientan a generar una nueva versión de un software a partir de una versión anterior operativa. 1) Chapin, N., Hale, J.E., Khan, K.M., Ramil, J. and Tan, W. (2001) Types of software evolution and software maintenance. Journal of Software Maintenance and Evolution: research and practice, 13, pp. 3-30.
  • 11. Evolución del Software La guía SWEBOK considera que la necesidad de “cambios” en el software es la causa del mantenimiento y por lo tanto provoca la “evolución del software”. 2) www.swebok.org
  • 12. Papel evolutivo del software El papel dual del software es: 1. Producto – transformador de información (bit hasta presentación multimedia) • Procesos producción • Manejo • Adquisición • Modificación • Despliegue • Transmisión 2. Vehículo mediante el cual es entrega un producto, se maneja como un aspecto recursivo
  • 13. Papel evolutivo del software El software podemos calcular su tiempo de existencia sobre alrededor de 50 años y sus cambios durante este tiempo se han originado principalmente por: Mejorías sustanciales en el desempeño del hardware • Incremento en la capacidad de almacenamiento y memoria • amplia variedad de opciones de entrada y salida
  • 14. Historia de Software Tarea 18-agosto ¿Cuáles fueron sus Predicciones? ¿Cuáles fueron reales? y ¿Cuáles erróneas? • Osborne - 79 Nueva revolución industrial • Toffler - ToF80 Tercera ola del cambio • Naisbitt - Naii82 Sociedad de la información • Feigenbaum - McCorduck 83 Información y conocimiento controlado por computadoras • Stoll - STO89 Comunidad electrónica • Toffler - ToF90 Un cambio de Poder • Yourdon - you96 surgimiento y resurrección • YK2 - bomba de tiempo
  • 15. Preocupaciones de hoy y siempre en el desarrollo del software • Por qué tarda tanto la obtención del software terminado? • ¿Por qué son tan altos los costos de desarrollo del software? • ¿Por qué es imposible encontrar todos los errores en el software antes de entregarlo a los clientes? • Por qué se gastan tanto tiempo y esfuerzo en el mantenimiento de los programas existentes? • ¿Por qué es difícil medir el progreso al desarrollar y darle mantenimiento al software?
  • 16. Objetivo Particular • Aprenderá los principales conceptos existentes en la Ingeniería de software
  • 17. Software Una definición de software involucraría lo siguiente: 1. Instrucciones (programas de computadoras) que al ejecutar se proporcionan las características y el grado de desempeño deseados. 2. Cuentan con estructuras de datos que permiten que los programas manipulen la información de manera adecuada 3. Los documentos que describen la operación y uso de los programas
  • 18. Precepto fundamental del software es que es un elemento lógico y en lugar de un físico como el hardware • El software se desarrolla o construye no se manufactura – hardware y software alta calidad – buen diseño – Diferencias problemas de calidad de los componentes – Producción de un “producto”
  • 19. Precepto fundamental del software es que es un elemento lógico y en lugar de un físico como el hardware • El software no se desgasta – se deteriora – Tasa de falla en el tiempo: alto diseño , exposición ambiental (polvo, la vibración, el abuso, temperaturas extremas) – El software se deteriora debido a los cambios – Cuando en el hardware un componente se desgasta se sustituye por otro componente o repuesto – El software implica de manera considerable una complejidad mayor que el hardware
  • 20. Precepto fundamental del software es que es un elemento lógico y en lugar de un físico como el hardware • A pesar de que la industria tiene una tendencia haría la construcción por componentes , la mayoría del software aún se construye a la medida.
  • 21. Naturaleza cambiante del software- Categorías del software 1. Software de Sistemas Es una colección de programas escritos para servir otros programas 1. Utilerías 2. Compiladores 3. Editores 4. Utilerías para administración 5. Controladores 6. Software de red 7. Procesadores de telecomunicaciones
  • 22. 2. Software de aplicación Programas independientes que resuelven una necesidad de negocio especifica – Datos empresariales, técnicos o de gestión – Control de funciones de negocios en tiempo real
  • 23. 3. Software científico y de Ingeniería • Algoritmos devoradores de números, abarca desde la astronomía hasta la vulcanogía. • Sistemas de análisis de la tensión automotriz • Dinámica orbital de los transbordadores espaciales • Simulación o escenarios
  • 24. 4. Software empotrado o incrustrado Programas que residen dentro de la memoria de solo lectura del sistema con el se implementa y controlan características y funciones par el usuario final y el sistema mismo. – Control del horno de microondas – Funciones digitales del automóvil – Control de combustible – El despliegue de datos del tablero – Sistemas de frenado
  • 25. 5. Software de líneas de productos Programas diseñados para proporcionar una capacidad especifica y la utilización de muchos clientes diferentes – Productos para control de inventarios – Procesadores de Texto – Hojas de Calculo – Gráficadores – Multimedia – Entretenimiento o videojuegos – Administración de personal o finanzas
  • 26. 6. Aplicaciones basadas en WEB- WebApps Programas que engloban un espectro amplio de aplicaciones. Desde un simple conjunto de archivos de hipertexto, gráficos hasta aplicaciones con bases de datos corporativas y cualquier aplicación de negocio
  • 27. 7. Software de inteligencia artificial Software que utiliza algoritmos no numéricos en la resolución de problemas complejos que es imposible abordar por medio de análisis directo. 1. Robótica 2. Sistemas expertos 3. Reconocimiento de patrones (voz e imagen) 4. Redes neuronales 5. Comprobación de teoremas 6. Algunos juegos de computadora
  • 28. Software Heredado • Son programas realizados en tiempos pasados y que han sido modificados en forma continua para cumplir los requerimientos de los cambios de los negocios y las plataformas de computo • Se caracterizan por su longevidad y el ser críticos en una unidad del negocio o indispensables para las empresas
  • 29. Calidad en el software heredado • Diseños imposibles de extender • Código complicado • Documentación escasa o inexistente • Casos de prueba y resultados que nunca fueron archivados • Historial de cambios poco detallados o nulos
  • 30. Puntos para garantizar la calidad del software heredado • Adaptarse -- Nuevas tecnologías • Mejorarse – Nuevos requerimientos • Extenderse - Nuevos sistemas y bd • Rediseñarse – ambiente red “Metodologías que se basen en la evolución”
  • 31. Mitos del Software Creencias del software y de los procesos empleados para construirlo 1. Mitos en la Administración 2. Mitos del Cliente 3. Mitos del Desarrollador
  • 32. 1. Mitos del Administrador Los administradores del software generalmente trabajan bajo presión para mantener el presupuesto y cronograma de un proyecto – Mito: En la organización o institución ya se cuenta con un manual completo de procedimientos y estándares para el desarrollo del software – Realidad: • Tal vez exista, ¿pero se usa? • Los desarrolladores saben de su existencia? • El manual refleja la práctica de la Ingeniería de Software? • Esta completo? • Es adaptable? • Esta dirigido para mejorar el tiempo de entrega sin dejar de lado la calidad del software
  • 33. Mitos del Administrador – Mito: Si se esta atrasado el proyecto de desarrollo en el cronograma planteado, se contratan mas personal de desarrollo y se cubre con el tiempo planeado – Realidad: Ley de Brooks: • Esta comprobado que agregar mas personal de desarrollo a un proyecto atrasado lo atrasa mas • En la actividad de desarrollo se comprueba una vez mas que agregar un nuevo integrante al equipo de desarrollo involucra tiempo de capacitación lo cual redunda en tiempos muertos de producción • Se agrega personal pero solo de una manera planeada y coordinada
  • 34. Mitos del Administrador – Mito: si deseo realizar subcontratación para un tercero puedo relajarme y esperar tranquilo el resultado – Realidad: • Si no se tiene organización interna y se sabe realmente el objetivo de tal desarrollo difícilmente lo podrá cubrir con éxito la empresa subcontratada
  • 35. 2. Mitos del Cliente – Mito: Un enunciado general de los objetivos del sistema es suficiente para comenzar a programar los detalles se afinan después. – Realidad: • Los requerimientos no siempre son del todo comprensibles y estables • Un requerimiento ambiguo es augurio de un desastre total en el resultado • Los requerimientos precisos se logran siempre en función de una comunicación continua
  • 36. 2. Mitos del Cliente – Mito: Los cambios solicitados pueden realizarse de manera simple porque el software es flexible – Realidad: • El impacto del cambio del sistema varia según sea el tiempo, ya sea en el inicio o en las etapas de desarrollo finales
  • 37. 3. Mitos del Desarrollador – Mito: Una vez que la aplicación se haya programado y se ponga a funcionar el trabajo esta terminado – Realidad: • Alguien comento que entre mas rápido se ponga un desarrollador a programar su sistema pasara mas tiempo para terminar de acuerdo al objetivo deseado • Una métrica de software indica que entre el 60 y 80% del esfuerzo utilizado para terminar el software se aplicara después de la primera vez que se entregue la primera versión del sistema
  • 38. 3. Mitos del Desarrollador – Mito: No es posible evaluar la calidad del software hasta que se este ejecutando – Realidad: • Hay una practica de ingeniería de software que dice que se puede revisar la calidad el sistema desde el inicio. Revisión Técnica formal denomina “Filtro de Calidad” que se ha comprobado que es más efectivo que la prueba, para encontrar ciertas clases de defectos en el software.
  • 39. 3. Mitos del Desarrollador – Mito: La aplicación de la Ingeniería de software, implica la creación de documentación engorrosa y que retarda la entrega del proyecto final – Realidad: • Esta disciplina no se relaciona con la creación de documentos si no se relaciona con las técnicas que logren obtener mejor calidad en el producto de software. • Obtención de calidad basada en un precepto básico reducción de trabajos redundantes que aseguren la reducción de tiempos de entrega
  • 40. 3. Mitos del Desarrollador – Mito: El único producto que se puede entregar en una entrega formal del sistema es el sistema funcionando – Realidad: • El software funcionando es solo una parte de una CONFIGURACION DE SOFTWARE. • La documentación es la base de un buen desarrollo y guías para las tarea de mantenimiento.
  • 41. Configuración del Software Son los elementos que componen toda la información producida como parte del proceso de Ingeniería Mantenimiento Manual del usuario preliminar
  • 42. Distribución del esfuerzo en un proyecto de Programación Se entiende por mantenimiento a todas las actividades posteriores a la liberación inicial del producto. El mantenimiento de los paquetes de software contempla 3 actividades: 1. Mejoramiento de las capacidades del producto 2. Adaptación del producto a nuevos ambientes de computo 3. Depuración de errores