SlideShare una empresa de Scribd logo
1 de 31
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 1
Una introducción a la Ingeniería de
Software
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 2
Objetivos
Introducir y comprender la Ingeniería de
Software y explicar su importancia.
Establecer respuestas a preguntas clave acerca
de la Ingeniería de Software.
Introducir aspectos éticos y profesionales y
explicar la importancia de los mismos para los
ingenieros de software.
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 3
Tópicos expuestos
Preguntas frecuentes acerca de la Ingeniería de
Software.
Responsabilidad ética y profesional.
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 4
Ingeniería de Software
Las economías de TODAS las naciones
desarrolladas son dependientes de software y
sistemas informáticos.
Cada vez más sistemas son controlados por
software.
La Ingeniería de Software concierne teorías,
métodos y herramientas para el desarrollo
profesional de software.
Los gastos en software representan una fracción
significativa del PIB en todos los países
desarrollados.
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 5
Costos del Software
Los costos del software a menudo dominan en
los costos de un sistema computacional o
informático. Los costos de software en una PC
son a menudo mayores que el costo del
hardware.
Cuesta más el mantenimiento del software que
el desarrollo del mismo. Para sistemas de larga
vida, los costos de mantenimiento se multiplican
con respecto a los costos de desarrollo.
A la Ingeniería de Software le compete el
desarrollo de software rentable.
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 6
Preguntas frecuentes acerca de
Ingeniería de Software
Qué es Software?
Qué es la Ingeniería de Software?
Cuál es la diferencia entre Ingeniería de
Software y Ciencias de la Computación?
Cuál es la diferencia entre Ingeniería de
Software e Ingeniería de Sistemas?
Qué es un proceso de software?
Qué es un modelo de proceso de software?
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 7
Preguntas frecuentes acerca de
Ingeniería de Software
Cuáles son los costos que implica la Ingeniería
de Software?
Cuáles son las metodologías de desarrollo de
Software?
Qué son las herramientas CASE (Computer-
Aided Software Engineering)
Cuáles son los atributos de un buen software?
Cuáles son los desafíos primordiales frente a la
Ingeniería de Software?
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 8
Qué es software?
Programas de cómputo y documentación asociada,
como ser documentos de requerimientos, arquitectura y
modelos de diseño y manuales de usuario.
Los productos software pueden ser desarrollados para
un cliente particular o bien para el mercado en general.
Los productos software pueden ser:
• Genéricos – desarrollados para ser vendidos a una gama de
diversos clientes, ejemplo: software como Excel o Word.
• Hecho a medida – desarrollado para un cliente particular
acorde a sus requerimientos y especificaciones.
Nuevo software puede ser creado desarrollando nuevos
programas, configurando sistemas de software genérico
o reutilizando software existente.
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 9
Qué es la Ingeniería de Software?
La Ingeniería de Software es una disciplina de la
ingeniería que concierne a todo lo referente con
producción de software.
Los ingenieros de software deberían adoptar un
enfoque sistemático y organizado con respecto a
su trabajo, utilizar herramientas y técnicas
apropiadas con relación al problema planteado,
las restricciones del desarrollo y los recursos
disponibles.
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 10
Cuál es la diferencia entre Ingeniería de
Software y Computación?
La computación comprende teorías y
fundamentos de cualquier sistema de cómputo;
a la Ingeniería de Software le concierne los
aspectos prácticos del desarrollo y entrega de
software útil.
Las teorías de la computación aún son
insuficientes para respaldar completamente a la
Ingeniería de Software (indistintamente a,
ejemplo, la física y la ingeniería eléctrica).
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 11
Cuál es la diferencia entre Ingeniería de
Software e ingeniería de sistemas?
A la ingeniería de sistemas le competen todos
los aspectos de desarrollo de sistemas basados
en cómputos, incluyendo hardware, software y
procesos de ingeniería. La Ingeniería de
Software es parte de este proceso, haciendo
referencia al desarrollo de la infraestructura del
software, aplicaciones y bases de datos en el
sistema.
Los ingenieros de sistemas están involucrados
con la especificación del sistema, diseño
arquitectónico, integración y despliegue del
mismo.
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 12
Qué es un proceso de software?
Un conjunto sistemático de actividades cuya
meta es el desarrollo o la evolución del software.
Actividades genéricas en todos los procesos de
software son:
• Especificación – lo que el sistema debería hacer y
sus restricciones de desarrollo
• Desarrollo – producción del sistema software
• Validación – comprobando que el software es lo que
el cliente quiere
• Evolución – cambios y mantenimiento en el software
con relación a los cambios en los requerimientos y
demandas.
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 13
Qué es un modelo de proceso de
software?
Una representación simplificada de un proceso de
software, presentada desde una perspectiva específica.
Ejemplos de perspectivas de proceso son:
• Perspectiva de flujo de trabajo – secuencia de actividades;
• Perspectiva de flujo de datos – flujo de información;
• Perspectiva de Rol/Acción – quién hace qué (funcionalidad).
Modelos de proceso genéricos
• Modelo en Cascada;
• Desarrollo iterativo;
• Ingeniería de Software basada en componentes.
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 14
Cuáles son los costos de Ingeniería de
Software?
Rigurosamente, 60% de los costos son de
desarrollo, 40% son costos de prueba. Para
software hecho a medida, los costos de
evolución a menudo exceden los costos de
desarrollo.
Varían acorde al tipo de sistema a desarrollar y a
los requerimientos con respecto a los atributos
del mismo, como ser el funcionamiento y la
confiabilidad del sistema.
La distribución de los costos depende del
modelo empleado para el desarrollo del software
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 15
Distribución de costos por actividad
Waterfall model
Iterative development
Component-based software eng ineering
Development and evolution costs for long-lifetime syst ems
System evolution
10 200 30 4000
System development
Specification Design Development Integration and testing
25 50 75 1000
Specification Development Integration and testing
25 50 75 1000
Specification Iterative development System testing
25 50 75 1000
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 16
Costos de desarrollo del producto
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 17
Cuáles son las metodologías de desarrollo
de software?
Acercamientos estructurados al desarrollo de software
que incluyen modelos del sistema, notaciones, reglas,
pautas de diseño y pasos a seguir.
Descripciones del modelo
• Descripciones de modelos gráficos que deben ser producidos;
Reglas
• Restricciones aplicadas a los modelos del sistema;
Recomendaciones
• Pautas para un buen diseño en la práctica;
Pasos a seguir
• Qué actividades deben seguirse.
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 18
Qué son las herramientas CASE (Computer-
Aided Software Engineering)
Sistemas de software cuya finalidad es la de proveer
soporte automatizado para actividades de proceso o
desarrollo de software.
Los sistemas CASE son usados con frecuencia como
soporte dentro de la metodología de desarrollo.
Herramientas CASE tempranas o Superiores
• Herramientas para soportar las actividades tempranas de
requerimientos y diseño dentro del proceso de software;
Herramientas CASE tardías o Inferiores
• Herramientas para soportar actividades posteriores como ser
la programación, depuración y prueba o testeo.
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 19
Cuáles son los atributos de un buen
software?
El software debe entregar la funcionalidad y el
funcionamiento requeridos por el usuario, y debe ser
mantenible, confiable, eficiente y usable:
• Mantenibilidad
• El software debe evolucionar para cubrir necesidades cambiantes;
• Confiabilidad
• El software debe ser confiable;
• Eficiencia
• El software no debería hacer mal uso de los recursos del sistema;
• Usabilidad
• El software debe facilitar la vida de los usuarios para los cuales fue
diseñado. Esto significa que debe ser entendible, de utilidad y compatible
con otros sistemas. Debe tener una IU y documentación adecuadas.
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 20
Cuáles son los desafíos primordiales frente a
la Ingeniería de Software?
Heterogeneidad, entrega y confianza.
• Heterogeneidad
• Técnicas de desarrollo para la construcción de software que
puedan encararse con plataformas heterogéneas y ambientes de
ejecución apropiados;
• Entrega
• Técnicas de desarrollo que lleven a una entrega de software más
rápida;
• Confianza
• Técnicas de desarrollo que demuestren que el software es de
confianza para con sus usuarios.
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 21
Responsabilidad ética y profesional
La Ingeniería de Software implica
responsabilidades mayores que el simple uso de
habilidades técnicas.
Los ingenieros de software deben comportarse
de manera honesta y éticamente responsable si
van a ser respetados como profesionales.
Comportamiento éticamente responsable es
mucho más que simplemente actuar dentro de la
ley.
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 22
Aspectos de responsabilidad
profesional
Confidencialidad
• Los ingenieros deberían normalmente respetar la
confidencialidad de sus clientes independientemente
de que se haya firmado o no un previo acuerdo de
confidencialidad.
Competencia
• Los ingenieros no deberían pretender tener mayor
capacidad (intelectual y laboral) de la que tienen,
deben aceptar conscientemente trabajo que esté
acorde a su capacidad.
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 23
Aspectos de responsabilidad
profesional
Derechos de propiedad intelectual
• Los ingenieros deberían estar conscientes de las leyes que
gobiernan el uso de propiedad intelectual, como ser patentes y
derechos reservados. Deben ser cuidadosos al garantizar que
la propiedad intelectual de sus clientes está protegida.
Mal uso de la computadora
• Los ingenieros de software no deberían usar sus habilidades
técnicas para un mal uso de las computadoras de otras
personas. El mal uso de una computadora comprende desde lo
relativamente simple (jugar en la computadora del cliente)
hasta lo extremamente serio (diseminar virus).
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 24
Código de Etica ACM/IEEE
Las sociedades profesionales en los Estados
Unidos cooperaron para producir un código de
práctica ética.
Miembros de estas organizaciones fueron
consecuentes con el código de práctica ética
cuando se asociaron.
El código contiene ocho principios relacionados
al comportamiento y las decisiones hechas por
ingenieros de software profesionales, incluyendo
a los que lo ejercían, educadores, encargados,
supervisores y editores, asi como aprendices y
estudiantes de la profesión.
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 25
Código de Etica - preámbulo
Preámbulo
• La versión corta del código resume aspiraciones a un alto nivel
de abstracción; las cláusulas que se incluyen en la versión
completa dan ejemplos y detalles de cómo estas aspiraciones
cambian nuestro modo de actuar como profesionales de la
Ingeniería de Software. Sin las aspiraciones, los detalles
pueden llegar a ser legalistas y aburridos; sin los detalles, las
aspiraciones pueden llegar a ser ruidosas pero vacías; juntas,
las aspiraciones y los detalles forman un código cohesivo.
• Los ingenieros de software se comprometerán a hacer del
análisis, especificación, diseño, desarrollo, prueba y
mantenimiento de software una profesión respetable y
beneficiosa. Acorde a su compromiso con la salud, bienestar y
seguridad del público, los ingenieros de software se adherirán
a los ocho principios siguientes:
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 26
Código de Etica - Principios
PUBLICO
• Los ingenieros de software actuarán constantemente con el
interés público.
CLIENTE Y EMPLEADOR
• Los ingenieros de software actuarán acorde al mayor interés
de sus clientes y empleadores en constancia con el interés
público.
PRODUCTO
• Los ingenieros de software garantizarán que sus productos y
relativas modificaciones van acorde a los estándares
profesionales más altos posibles.
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 27
Código de Etica - Principios
JUICIO
• Los ingenieros de software mantendrán su integridad e
independencia de juicio como profesional.
GERENCIA
• Gerentes y líderes de Ingeniería de Software suscribirán y
promoverán un acercamiento ético hacia el manejo de
desarrollo de software y evolución.
PROFESION
• Los ingenieros de Software incrementarán la integridad y
reputación de la profesión en constancia con el interés público.
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 28
Código de Etica - Principios
COLEGAS
• Los ingenieros de software serán condescendientes
y brindarán apoyo a sus colegas.
UNO MISMO
• Los ingenieros de software participarán en la
formación continua con respecto a la práctica de su
profesión y promoverán un acercamiento ético a la
práctica de la profesión.
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 29
Dilemas Eticos
Desacuerdo en principio con las políticas de
administración superior.
El empleador actúa de un modo no ético y lanza
un sistema de seguridad crítico sin terminar la
prueba del sistema.
Participación en el desarrollo de armamento
militar o sistemas nucleares.
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 30
Puntos Clave
La Ingeniería de Software es una disciplina de la ingeniería
concerniente a todos los aspectos de la producción de
software.
Los productos software están consistidos de programas
desarrollados y su documentación asociada. Atributos
esenciales del producto son la mantenibilidad, formalidad,
eficiencia y utilidad.
El proceso de software consiste en actividades involucradas
en el desarrollo de productos software. Actividades básicas
son la especificación del software, desarrollo, validación y
evolución.
Las metodologías son maneras organizadas de producir
software. Estas incluyen sugerencias para el proceso a seguir,
notaciones a usar, reglas que rigen las descripciones del
sistema que son pautas para el desarrollo.
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 31
Puntos Clave
Las herramientas CASE son sistemas de software
diseñadas para soportar actividades rutinarias en el
proceso de software, como ser: editar diagramas de
diseño, verificaciones de la consistencia de diagramas y
seguir el rastro de las pruebas del programa que han
sido ejecutadas.
Los ingenieros de software tienen responsabilidades
para con la profesión y la sociedad. No deberían
simplemente preocuparse de aspectos técnicos.
Las sociedades profesionales publican códigos de
conducta que establecen los estándares de
comportamiento que se esperan de sus miembros.

Más contenido relacionado

La actualidad más candente

Unidad 1 Ingenieria de software
Unidad 1 Ingenieria de softwareUnidad 1 Ingenieria de software
Unidad 1 Ingenieria de softwareJahiro Bojorquez
 
PROCESOS DE INGENIERIA DEL SW
PROCESOS DE INGENIERIA DEL SWPROCESOS DE INGENIERIA DEL SW
PROCESOS DE INGENIERIA DEL SWRaquel Solano
 
Que es Ingenieria del Software?,
Que es Ingenieria del Software?,Que es Ingenieria del Software?,
Que es Ingenieria del Software?,Robert Rodriguez
 
Gestión de Proyectos de Software - Unidad II: Calidad en el Software
Gestión de Proyectos de Software - Unidad II: Calidad en el SoftwareGestión de Proyectos de Software - Unidad II: Calidad en el Software
Gestión de Proyectos de Software - Unidad II: Calidad en el SoftwareJosé Antonio Sandoval Acosta
 
14. fundamentos de desarrollo de software
14. fundamentos de desarrollo de software14. fundamentos de desarrollo de software
14. fundamentos de desarrollo de softwareJhon Barrera
 
Procesos de desarrollo de Software
Procesos de desarrollo de SoftwareProcesos de desarrollo de Software
Procesos de desarrollo de Softwareolea_saavedra
 
Modelos y capas de la ingenieria de software
Modelos y capas  de la ingenieria de softwareModelos y capas  de la ingenieria de software
Modelos y capas de la ingenieria de softwarejhonatanalex
 
Ingeniería de software
Ingeniería de softwareIngeniería de software
Ingeniería de softwareysik granja
 
Etapas del Proceso de la Ingeniería del Software
Etapas del Proceso de la Ingeniería del SoftwareEtapas del Proceso de la Ingeniería del Software
Etapas del Proceso de la Ingeniería del SoftwareT.I.C
 
Desarrollo agil, Producto Proceso, Scrum
Desarrollo agil, Producto Proceso, ScrumDesarrollo agil, Producto Proceso, Scrum
Desarrollo agil, Producto Proceso, Scrumrgomezm
 
Ingeniería de software Definicion,inicion,importancia y utilidad
Ingeniería de software Definicion,inicion,importancia y utilidadIngeniería de software Definicion,inicion,importancia y utilidad
Ingeniería de software Definicion,inicion,importancia y utilidadXKWDX
 
Introducción a la Ingenieria de Software
Introducción a la Ingenieria de SoftwareIntroducción a la Ingenieria de Software
Introducción a la Ingenieria de SoftwareSorey García
 
Curso ingeniería de software parte i
Curso ingeniería de software parte iCurso ingeniería de software parte i
Curso ingeniería de software parte iparafernalico
 
Tecnicas ingenieria de software
Tecnicas ingenieria de softwareTecnicas ingenieria de software
Tecnicas ingenieria de softwareedsacun
 

La actualidad más candente (20)

Unidad 1 Ingenieria de software
Unidad 1 Ingenieria de softwareUnidad 1 Ingenieria de software
Unidad 1 Ingenieria de software
 
PROCESOS DE INGENIERIA DEL SW
PROCESOS DE INGENIERIA DEL SWPROCESOS DE INGENIERIA DEL SW
PROCESOS DE INGENIERIA DEL SW
 
Que es Ingenieria del Software?,
Que es Ingenieria del Software?,Que es Ingenieria del Software?,
Que es Ingenieria del Software?,
 
Introducción a la ingeniería del software
Introducción a la ingeniería del softwareIntroducción a la ingeniería del software
Introducción a la ingeniería del software
 
conceptos de ingenieria de software
conceptos de ingenieria de softwareconceptos de ingenieria de software
conceptos de ingenieria de software
 
Gestión de Proyectos de Software - Unidad II: Calidad en el Software
Gestión de Proyectos de Software - Unidad II: Calidad en el SoftwareGestión de Proyectos de Software - Unidad II: Calidad en el Software
Gestión de Proyectos de Software - Unidad II: Calidad en el Software
 
14. fundamentos de desarrollo de software
14. fundamentos de desarrollo de software14. fundamentos de desarrollo de software
14. fundamentos de desarrollo de software
 
El proceso
El procesoEl proceso
El proceso
 
Ingenieria De Software
Ingenieria De SoftwareIngenieria De Software
Ingenieria De Software
 
Ciclo de Vida y roles
Ciclo de Vida y roles Ciclo de Vida y roles
Ciclo de Vida y roles
 
Procesos de desarrollo de Software
Procesos de desarrollo de SoftwareProcesos de desarrollo de Software
Procesos de desarrollo de Software
 
ingenieria del software
ingenieria del softwareingenieria del software
ingenieria del software
 
Modelos y capas de la ingenieria de software
Modelos y capas  de la ingenieria de softwareModelos y capas  de la ingenieria de software
Modelos y capas de la ingenieria de software
 
Ingeniería de software
Ingeniería de softwareIngeniería de software
Ingeniería de software
 
Etapas del Proceso de la Ingeniería del Software
Etapas del Proceso de la Ingeniería del SoftwareEtapas del Proceso de la Ingeniería del Software
Etapas del Proceso de la Ingeniería del Software
 
Desarrollo agil, Producto Proceso, Scrum
Desarrollo agil, Producto Proceso, ScrumDesarrollo agil, Producto Proceso, Scrum
Desarrollo agil, Producto Proceso, Scrum
 
Ingeniería de software Definicion,inicion,importancia y utilidad
Ingeniería de software Definicion,inicion,importancia y utilidadIngeniería de software Definicion,inicion,importancia y utilidad
Ingeniería de software Definicion,inicion,importancia y utilidad
 
Introducción a la Ingenieria de Software
Introducción a la Ingenieria de SoftwareIntroducción a la Ingenieria de Software
Introducción a la Ingenieria de Software
 
Curso ingeniería de software parte i
Curso ingeniería de software parte iCurso ingeniería de software parte i
Curso ingeniería de software parte i
 
Tecnicas ingenieria de software
Tecnicas ingenieria de softwareTecnicas ingenieria de software
Tecnicas ingenieria de software
 

Destacado

Desarrollo Evolutivo
Desarrollo EvolutivoDesarrollo Evolutivo
Desarrollo EvolutivoFABIO
 
Sesion5 requerimientos de software
Sesion5 requerimientos de softwareSesion5 requerimientos de software
Sesion5 requerimientos de softwareOscar López
 
P H P, M Y S Q L Y A P A C H E
P H P,  M Y S Q L  Y  A P A C H EP H P,  M Y S Q L  Y  A P A C H E
P H P, M Y S Q L Y A P A C H ERONALD LEIVA PEÑA
 
Unidad 9 Patrones De DiseñO
Unidad 9 Patrones De DiseñOUnidad 9 Patrones De DiseñO
Unidad 9 Patrones De DiseñOSergio Sanchez
 
Unidad 3.1 Prueba De Sistemas
Unidad 3.1 Prueba De SistemasUnidad 3.1 Prueba De Sistemas
Unidad 3.1 Prueba De SistemasSergio Sanchez
 
Unidad 6 Mad Modelado Analsis Diagrama De Secuencia Del Sistema
Unidad 6 Mad Modelado Analsis    Diagrama De Secuencia Del SistemaUnidad 6 Mad Modelado Analsis    Diagrama De Secuencia Del Sistema
Unidad 6 Mad Modelado Analsis Diagrama De Secuencia Del SistemaSergio Sanchez
 
Unidad 7 Mad Modelado DiseñO Contratos Y Casos De Uso Reales
Unidad 7 Mad Modelado DiseñO    Contratos Y Casos De Uso RealesUnidad 7 Mad Modelado DiseñO    Contratos Y Casos De Uso Reales
Unidad 7 Mad Modelado DiseñO Contratos Y Casos De Uso RealesSergio Sanchez
 
Unidad 1.1 Que Es La Ing. De Software
Unidad 1.1 Que Es La Ing. De SoftwareUnidad 1.1 Que Es La Ing. De Software
Unidad 1.1 Que Es La Ing. De SoftwareSergio Sanchez
 
Unidad 2.3 Prueba De Programas
Unidad 2.3 Prueba De ProgramasUnidad 2.3 Prueba De Programas
Unidad 2.3 Prueba De ProgramasSergio Sanchez
 
Unidad 1.2 A IntroduccióN A Los Proceso De Software Modelos Tradicionales
Unidad 1.2 A IntroduccióN A Los Proceso De Software   Modelos TradicionalesUnidad 1.2 A IntroduccióN A Los Proceso De Software   Modelos Tradicionales
Unidad 1.2 A IntroduccióN A Los Proceso De Software Modelos TradicionalesSergio Sanchez
 
Unidad 1.2 B Metodos Agiles 1
Unidad 1.2 B Metodos Agiles  1Unidad 1.2 B Metodos Agiles  1
Unidad 1.2 B Metodos Agiles 1Sergio Sanchez
 
Unidad 8 Diagramas De InteraccióN
Unidad 8 Diagramas De InteraccióNUnidad 8 Diagramas De InteraccióN
Unidad 8 Diagramas De InteraccióNSergio Sanchez
 
Unidad 2.2 Escribiendo El Programa
Unidad 2.2 Escribiendo El ProgramaUnidad 2.2 Escribiendo El Programa
Unidad 2.2 Escribiendo El ProgramaSergio Sanchez
 
Unidad 10 Mad Diagrama De Clases
Unidad 10 Mad Diagrama De ClasesUnidad 10 Mad Diagrama De Clases
Unidad 10 Mad Diagrama De ClasesSergio Sanchez
 
Unidad 2 Modelo De Datos
Unidad 2 Modelo De DatosUnidad 2 Modelo De Datos
Unidad 2 Modelo De DatosSergio Sanchez
 

Destacado (20)

Desarrollo Evolutivo
Desarrollo EvolutivoDesarrollo Evolutivo
Desarrollo Evolutivo
 
Sesion5 requerimientos de software
Sesion5 requerimientos de softwareSesion5 requerimientos de software
Sesion5 requerimientos de software
 
Norma tecnica peruana
Norma tecnica peruanaNorma tecnica peruana
Norma tecnica peruana
 
I N G S O F T W A R E
I N G  S O F T W A R EI N G  S O F T W A R E
I N G S O F T W A R E
 
Ing del Software part1
Ing del Software part1Ing del Software part1
Ing del Software part1
 
P H P, M Y S Q L Y A P A C H E
P H P,  M Y S Q L  Y  A P A C H EP H P,  M Y S Q L  Y  A P A C H E
P H P, M Y S Q L Y A P A C H E
 
NTP
NTPNTP
NTP
 
Unidad 9 Patrones De DiseñO
Unidad 9 Patrones De DiseñOUnidad 9 Patrones De DiseñO
Unidad 9 Patrones De DiseñO
 
Unidad 3.1 Prueba De Sistemas
Unidad 3.1 Prueba De SistemasUnidad 3.1 Prueba De Sistemas
Unidad 3.1 Prueba De Sistemas
 
Unidad 6 Mad Modelado Analsis Diagrama De Secuencia Del Sistema
Unidad 6 Mad Modelado Analsis    Diagrama De Secuencia Del SistemaUnidad 6 Mad Modelado Analsis    Diagrama De Secuencia Del Sistema
Unidad 6 Mad Modelado Analsis Diagrama De Secuencia Del Sistema
 
Unidad 7 Mad Modelado DiseñO Contratos Y Casos De Uso Reales
Unidad 7 Mad Modelado DiseñO    Contratos Y Casos De Uso RealesUnidad 7 Mad Modelado DiseñO    Contratos Y Casos De Uso Reales
Unidad 7 Mad Modelado DiseñO Contratos Y Casos De Uso Reales
 
Unidad 1.1 Que Es La Ing. De Software
Unidad 1.1 Que Es La Ing. De SoftwareUnidad 1.1 Que Es La Ing. De Software
Unidad 1.1 Que Es La Ing. De Software
 
Modelos evolutivos
Modelos evolutivosModelos evolutivos
Modelos evolutivos
 
Unidad 2.3 Prueba De Programas
Unidad 2.3 Prueba De ProgramasUnidad 2.3 Prueba De Programas
Unidad 2.3 Prueba De Programas
 
Unidad 1.2 A IntroduccióN A Los Proceso De Software Modelos Tradicionales
Unidad 1.2 A IntroduccióN A Los Proceso De Software   Modelos TradicionalesUnidad 1.2 A IntroduccióN A Los Proceso De Software   Modelos Tradicionales
Unidad 1.2 A IntroduccióN A Los Proceso De Software Modelos Tradicionales
 
Unidad 1.2 B Metodos Agiles 1
Unidad 1.2 B Metodos Agiles  1Unidad 1.2 B Metodos Agiles  1
Unidad 1.2 B Metodos Agiles 1
 
Unidad 8 Diagramas De InteraccióN
Unidad 8 Diagramas De InteraccióNUnidad 8 Diagramas De InteraccióN
Unidad 8 Diagramas De InteraccióN
 
Unidad 2.2 Escribiendo El Programa
Unidad 2.2 Escribiendo El ProgramaUnidad 2.2 Escribiendo El Programa
Unidad 2.2 Escribiendo El Programa
 
Unidad 10 Mad Diagrama De Clases
Unidad 10 Mad Diagrama De ClasesUnidad 10 Mad Diagrama De Clases
Unidad 10 Mad Diagrama De Clases
 
Unidad 2 Modelo De Datos
Unidad 2 Modelo De DatosUnidad 2 Modelo De Datos
Unidad 2 Modelo De Datos
 

Similar a Sesion1 Introducción Ingeniería Software

Curso de Ingeniería de Software - Capítulo 1
Curso de Ingeniería de Software - Capítulo 1Curso de Ingeniería de Software - Capítulo 1
Curso de Ingeniería de Software - Capítulo 1Eddie Malca
 
SeccióN De TéCnicas De IngenieríA De Software(2007)
SeccióN De TéCnicas  De IngenieríA De Software(2007)SeccióN De TéCnicas  De IngenieríA De Software(2007)
SeccióN De TéCnicas De IngenieríA De Software(2007)denny osael lopez medina
 
Introduccion a la Ingeniería de Software
Introduccion a la Ingeniería de SoftwareIntroduccion a la Ingeniería de Software
Introduccion a la Ingeniería de SoftwareLia IS
 
Tarea(1)
Tarea(1)Tarea(1)
Tarea(1)daniel
 
IngSoftCap01-Introduccion.pdf
IngSoftCap01-Introduccion.pdfIngSoftCap01-Introduccion.pdf
IngSoftCap01-Introduccion.pdfcristian265023
 
software
softwaresoftware
softwarealkosto
 
Trabajo diapositiva modulo 3 de josue
Trabajo diapositiva modulo 3 de josueTrabajo diapositiva modulo 3 de josue
Trabajo diapositiva modulo 3 de josueJosue Zelaya
 
SELECCIÓN DE TECNICAS DE INGENIERIA DE SOFTWARE.
SELECCIÓN DE TECNICAS DE INGENIERIA DE SOFTWARE. SELECCIÓN DE TECNICAS DE INGENIERIA DE SOFTWARE.
SELECCIÓN DE TECNICAS DE INGENIERIA DE SOFTWARE. Cristhian Martinez
 
Tecnicas en ing.de software
Tecnicas en ing.de softwareTecnicas en ing.de software
Tecnicas en ing.de softwarestephanierivas
 
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
 

Similar a Sesion1 Introducción Ingeniería Software (20)

Curso de Ingeniería de Software - Capítulo 1
Curso de Ingeniería de Software - Capítulo 1Curso de Ingeniería de Software - Capítulo 1
Curso de Ingeniería de Software - Capítulo 1
 
Nuevo1
Nuevo1Nuevo1
Nuevo1
 
SeccióN De TéCnicas De IngenieríA De Software(2007)
SeccióN De TéCnicas  De IngenieríA De Software(2007)SeccióN De TéCnicas  De IngenieríA De Software(2007)
SeccióN De TéCnicas De IngenieríA De Software(2007)
 
Is01
Is01Is01
Is01
 
Introduccion a la Ingeniería de Software
Introduccion a la Ingeniería de SoftwareIntroduccion a la Ingeniería de Software
Introduccion a la Ingeniería de Software
 
Tarea(1)
Tarea(1)Tarea(1)
Tarea(1)
 
Tarea intro ing_sw_quina
Tarea intro ing_sw_quinaTarea intro ing_sw_quina
Tarea intro ing_sw_quina
 
IngSoftCap01-Introduccion.pdf
IngSoftCap01-Introduccion.pdfIngSoftCap01-Introduccion.pdf
IngSoftCap01-Introduccion.pdf
 
Ingenieria de software
Ingenieria de softwareIngenieria de software
Ingenieria de software
 
Paula guia
Paula guiaPaula guia
Paula guia
 
Diapositivas-Ing-SW-napa
Diapositivas-Ing-SW-napaDiapositivas-Ing-SW-napa
Diapositivas-Ing-SW-napa
 
software
softwaresoftware
software
 
Conceptos
ConceptosConceptos
Conceptos
 
Trabajo diapositiva modulo 3 de josue
Trabajo diapositiva modulo 3 de josueTrabajo diapositiva modulo 3 de josue
Trabajo diapositiva modulo 3 de josue
 
SELECCIÓN DE TECNICAS DE INGENIERIA DE SOFTWARE.
SELECCIÓN DE TECNICAS DE INGENIERIA DE SOFTWARE. SELECCIÓN DE TECNICAS DE INGENIERIA DE SOFTWARE.
SELECCIÓN DE TECNICAS DE INGENIERIA DE SOFTWARE.
 
La ingeniería de software
La ingeniería de softwareLa ingeniería de software
La ingeniería de software
 
Tecnicas en ing.de software
Tecnicas en ing.de softwareTecnicas en ing.de software
Tecnicas en ing.de software
 
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
 
La ingeniería de software 2010
La ingeniería de software 2010La ingeniería de software 2010
La ingeniería de software 2010
 

Último

MODELO DE INFORME DE INDAGACION CIENTIFICA .docx
MODELO DE INFORME DE INDAGACION CIENTIFICA .docxMODELO DE INFORME DE INDAGACION CIENTIFICA .docx
MODELO DE INFORME DE INDAGACION CIENTIFICA .docxRAMON EUSTAQUIO CARO BAYONA
 
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdfFichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdfssuser50d1252
 
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdfFisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdfcoloncopias5
 
Uses of simple past and time expressions
Uses of simple past and time expressionsUses of simple past and time expressions
Uses of simple past and time expressionsConsueloSantana3
 
4º SOY LECTOR PART2- MD EDUCATIVO.p df PARTE
4º SOY LECTOR PART2- MD  EDUCATIVO.p df PARTE4º SOY LECTOR PART2- MD  EDUCATIVO.p df PARTE
4º SOY LECTOR PART2- MD EDUCATIVO.p df PARTESaraNolasco4
 
Fichas de Matemática TERCERO DE SECUNDARIA.pdf
Fichas de Matemática TERCERO DE SECUNDARIA.pdfFichas de Matemática TERCERO DE SECUNDARIA.pdf
Fichas de Matemática TERCERO DE SECUNDARIA.pdfssuser50d1252
 
sesión de aprendizaje 4 E1 Exposición oral.pdf
sesión de aprendizaje 4 E1 Exposición oral.pdfsesión de aprendizaje 4 E1 Exposición oral.pdf
sesión de aprendizaje 4 E1 Exposición oral.pdfpatriciavsquezbecerr
 
Presentación Bloque 3 Actividad 2 transversal.pptx
Presentación Bloque 3 Actividad 2 transversal.pptxPresentación Bloque 3 Actividad 2 transversal.pptx
Presentación Bloque 3 Actividad 2 transversal.pptxRosabel UA
 
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfTarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfManuel Molina
 
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...YobanaZevallosSantil1
 
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdfEstrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdfAlfredoRamirez953210
 
DETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIORDETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIORGonella
 
Fichas de matemática DE PRIMERO DE SECUNDARIA.pdf
Fichas de matemática DE PRIMERO DE SECUNDARIA.pdfFichas de matemática DE PRIMERO DE SECUNDARIA.pdf
Fichas de matemática DE PRIMERO DE SECUNDARIA.pdfssuser50d1252
 
FICHA PL PACO YUNQUE.docx PRIMARIA CUARTO GRADO
FICHA  PL PACO YUNQUE.docx PRIMARIA CUARTO GRADOFICHA  PL PACO YUNQUE.docx PRIMARIA CUARTO GRADO
FICHA PL PACO YUNQUE.docx PRIMARIA CUARTO GRADOMARIBEL DIAZ
 
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfvictorbeltuce
 
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdf
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdfFichas de MatemáticA QUINTO DE SECUNDARIA).pdf
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdfssuser50d1252
 
Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024Rosabel UA
 

Último (20)

Aedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptxAedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptx
 
La luz brilla en la oscuridad. Necesitamos luz
La luz brilla en la oscuridad. Necesitamos luzLa luz brilla en la oscuridad. Necesitamos luz
La luz brilla en la oscuridad. Necesitamos luz
 
MODELO DE INFORME DE INDAGACION CIENTIFICA .docx
MODELO DE INFORME DE INDAGACION CIENTIFICA .docxMODELO DE INFORME DE INDAGACION CIENTIFICA .docx
MODELO DE INFORME DE INDAGACION CIENTIFICA .docx
 
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdfFichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
 
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdfFisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdf
 
Uses of simple past and time expressions
Uses of simple past and time expressionsUses of simple past and time expressions
Uses of simple past and time expressions
 
4º SOY LECTOR PART2- MD EDUCATIVO.p df PARTE
4º SOY LECTOR PART2- MD  EDUCATIVO.p df PARTE4º SOY LECTOR PART2- MD  EDUCATIVO.p df PARTE
4º SOY LECTOR PART2- MD EDUCATIVO.p df PARTE
 
Fichas de Matemática TERCERO DE SECUNDARIA.pdf
Fichas de Matemática TERCERO DE SECUNDARIA.pdfFichas de Matemática TERCERO DE SECUNDARIA.pdf
Fichas de Matemática TERCERO DE SECUNDARIA.pdf
 
sesión de aprendizaje 4 E1 Exposición oral.pdf
sesión de aprendizaje 4 E1 Exposición oral.pdfsesión de aprendizaje 4 E1 Exposición oral.pdf
sesión de aprendizaje 4 E1 Exposición oral.pdf
 
Presentación Bloque 3 Actividad 2 transversal.pptx
Presentación Bloque 3 Actividad 2 transversal.pptxPresentación Bloque 3 Actividad 2 transversal.pptx
Presentación Bloque 3 Actividad 2 transversal.pptx
 
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfTarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
 
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
 
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdfEstrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
 
DETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIORDETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIOR
 
recursos naturales america cuarto basico
recursos naturales america cuarto basicorecursos naturales america cuarto basico
recursos naturales america cuarto basico
 
Fichas de matemática DE PRIMERO DE SECUNDARIA.pdf
Fichas de matemática DE PRIMERO DE SECUNDARIA.pdfFichas de matemática DE PRIMERO DE SECUNDARIA.pdf
Fichas de matemática DE PRIMERO DE SECUNDARIA.pdf
 
FICHA PL PACO YUNQUE.docx PRIMARIA CUARTO GRADO
FICHA  PL PACO YUNQUE.docx PRIMARIA CUARTO GRADOFICHA  PL PACO YUNQUE.docx PRIMARIA CUARTO GRADO
FICHA PL PACO YUNQUE.docx PRIMARIA CUARTO GRADO
 
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
 
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdf
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdfFichas de MatemáticA QUINTO DE SECUNDARIA).pdf
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdf
 
Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024
 

Sesion1 Introducción Ingeniería Software

  • 1. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 1 Una introducción a la Ingeniería de Software
  • 2. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 2 Objetivos Introducir y comprender la Ingeniería de Software y explicar su importancia. Establecer respuestas a preguntas clave acerca de la Ingeniería de Software. Introducir aspectos éticos y profesionales y explicar la importancia de los mismos para los ingenieros de software.
  • 3. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 3 Tópicos expuestos Preguntas frecuentes acerca de la Ingeniería de Software. Responsabilidad ética y profesional.
  • 4. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 4 Ingeniería de Software Las economías de TODAS las naciones desarrolladas son dependientes de software y sistemas informáticos. Cada vez más sistemas son controlados por software. La Ingeniería de Software concierne teorías, métodos y herramientas para el desarrollo profesional de software. Los gastos en software representan una fracción significativa del PIB en todos los países desarrollados.
  • 5. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 5 Costos del Software Los costos del software a menudo dominan en los costos de un sistema computacional o informático. Los costos de software en una PC son a menudo mayores que el costo del hardware. Cuesta más el mantenimiento del software que el desarrollo del mismo. Para sistemas de larga vida, los costos de mantenimiento se multiplican con respecto a los costos de desarrollo. A la Ingeniería de Software le compete el desarrollo de software rentable.
  • 6. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 6 Preguntas frecuentes acerca de Ingeniería de Software Qué es Software? Qué es la Ingeniería de Software? Cuál es la diferencia entre Ingeniería de Software y Ciencias de la Computación? Cuál es la diferencia entre Ingeniería de Software e Ingeniería de Sistemas? Qué es un proceso de software? Qué es un modelo de proceso de software?
  • 7. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 7 Preguntas frecuentes acerca de Ingeniería de Software Cuáles son los costos que implica la Ingeniería de Software? Cuáles son las metodologías de desarrollo de Software? Qué son las herramientas CASE (Computer- Aided Software Engineering) Cuáles son los atributos de un buen software? Cuáles son los desafíos primordiales frente a la Ingeniería de Software?
  • 8. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 8 Qué es software? Programas de cómputo y documentación asociada, como ser documentos de requerimientos, arquitectura y modelos de diseño y manuales de usuario. Los productos software pueden ser desarrollados para un cliente particular o bien para el mercado en general. Los productos software pueden ser: • Genéricos – desarrollados para ser vendidos a una gama de diversos clientes, ejemplo: software como Excel o Word. • Hecho a medida – desarrollado para un cliente particular acorde a sus requerimientos y especificaciones. Nuevo software puede ser creado desarrollando nuevos programas, configurando sistemas de software genérico o reutilizando software existente.
  • 9. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 9 Qué es la Ingeniería de Software? La Ingeniería de Software es una disciplina de la ingeniería que concierne a todo lo referente con producción de software. Los ingenieros de software deberían adoptar un enfoque sistemático y organizado con respecto a su trabajo, utilizar herramientas y técnicas apropiadas con relación al problema planteado, las restricciones del desarrollo y los recursos disponibles.
  • 10. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 10 Cuál es la diferencia entre Ingeniería de Software y Computación? La computación comprende teorías y fundamentos de cualquier sistema de cómputo; a la Ingeniería de Software le concierne los aspectos prácticos del desarrollo y entrega de software útil. Las teorías de la computación aún son insuficientes para respaldar completamente a la Ingeniería de Software (indistintamente a, ejemplo, la física y la ingeniería eléctrica).
  • 11. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 11 Cuál es la diferencia entre Ingeniería de Software e ingeniería de sistemas? A la ingeniería de sistemas le competen todos los aspectos de desarrollo de sistemas basados en cómputos, incluyendo hardware, software y procesos de ingeniería. La Ingeniería de Software es parte de este proceso, haciendo referencia al desarrollo de la infraestructura del software, aplicaciones y bases de datos en el sistema. Los ingenieros de sistemas están involucrados con la especificación del sistema, diseño arquitectónico, integración y despliegue del mismo.
  • 12. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 12 Qué es un proceso de software? Un conjunto sistemático de actividades cuya meta es el desarrollo o la evolución del software. Actividades genéricas en todos los procesos de software son: • Especificación – lo que el sistema debería hacer y sus restricciones de desarrollo • Desarrollo – producción del sistema software • Validación – comprobando que el software es lo que el cliente quiere • Evolución – cambios y mantenimiento en el software con relación a los cambios en los requerimientos y demandas.
  • 13. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 13 Qué es un modelo de proceso de software? Una representación simplificada de un proceso de software, presentada desde una perspectiva específica. Ejemplos de perspectivas de proceso son: • Perspectiva de flujo de trabajo – secuencia de actividades; • Perspectiva de flujo de datos – flujo de información; • Perspectiva de Rol/Acción – quién hace qué (funcionalidad). Modelos de proceso genéricos • Modelo en Cascada; • Desarrollo iterativo; • Ingeniería de Software basada en componentes.
  • 14. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 14 Cuáles son los costos de Ingeniería de Software? Rigurosamente, 60% de los costos son de desarrollo, 40% son costos de prueba. Para software hecho a medida, los costos de evolución a menudo exceden los costos de desarrollo. Varían acorde al tipo de sistema a desarrollar y a los requerimientos con respecto a los atributos del mismo, como ser el funcionamiento y la confiabilidad del sistema. La distribución de los costos depende del modelo empleado para el desarrollo del software
  • 15. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 15 Distribución de costos por actividad Waterfall model Iterative development Component-based software eng ineering Development and evolution costs for long-lifetime syst ems System evolution 10 200 30 4000 System development Specification Design Development Integration and testing 25 50 75 1000 Specification Development Integration and testing 25 50 75 1000 Specification Iterative development System testing 25 50 75 1000
  • 16. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 16 Costos de desarrollo del producto
  • 17. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 17 Cuáles son las metodologías de desarrollo de software? Acercamientos estructurados al desarrollo de software que incluyen modelos del sistema, notaciones, reglas, pautas de diseño y pasos a seguir. Descripciones del modelo • Descripciones de modelos gráficos que deben ser producidos; Reglas • Restricciones aplicadas a los modelos del sistema; Recomendaciones • Pautas para un buen diseño en la práctica; Pasos a seguir • Qué actividades deben seguirse.
  • 18. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 18 Qué son las herramientas CASE (Computer- Aided Software Engineering) Sistemas de software cuya finalidad es la de proveer soporte automatizado para actividades de proceso o desarrollo de software. Los sistemas CASE son usados con frecuencia como soporte dentro de la metodología de desarrollo. Herramientas CASE tempranas o Superiores • Herramientas para soportar las actividades tempranas de requerimientos y diseño dentro del proceso de software; Herramientas CASE tardías o Inferiores • Herramientas para soportar actividades posteriores como ser la programación, depuración y prueba o testeo.
  • 19. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 19 Cuáles son los atributos de un buen software? El software debe entregar la funcionalidad y el funcionamiento requeridos por el usuario, y debe ser mantenible, confiable, eficiente y usable: • Mantenibilidad • El software debe evolucionar para cubrir necesidades cambiantes; • Confiabilidad • El software debe ser confiable; • Eficiencia • El software no debería hacer mal uso de los recursos del sistema; • Usabilidad • El software debe facilitar la vida de los usuarios para los cuales fue diseñado. Esto significa que debe ser entendible, de utilidad y compatible con otros sistemas. Debe tener una IU y documentación adecuadas.
  • 20. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 20 Cuáles son los desafíos primordiales frente a la Ingeniería de Software? Heterogeneidad, entrega y confianza. • Heterogeneidad • Técnicas de desarrollo para la construcción de software que puedan encararse con plataformas heterogéneas y ambientes de ejecución apropiados; • Entrega • Técnicas de desarrollo que lleven a una entrega de software más rápida; • Confianza • Técnicas de desarrollo que demuestren que el software es de confianza para con sus usuarios.
  • 21. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 21 Responsabilidad ética y profesional La Ingeniería de Software implica responsabilidades mayores que el simple uso de habilidades técnicas. Los ingenieros de software deben comportarse de manera honesta y éticamente responsable si van a ser respetados como profesionales. Comportamiento éticamente responsable es mucho más que simplemente actuar dentro de la ley.
  • 22. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 22 Aspectos de responsabilidad profesional Confidencialidad • Los ingenieros deberían normalmente respetar la confidencialidad de sus clientes independientemente de que se haya firmado o no un previo acuerdo de confidencialidad. Competencia • Los ingenieros no deberían pretender tener mayor capacidad (intelectual y laboral) de la que tienen, deben aceptar conscientemente trabajo que esté acorde a su capacidad.
  • 23. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 23 Aspectos de responsabilidad profesional Derechos de propiedad intelectual • Los ingenieros deberían estar conscientes de las leyes que gobiernan el uso de propiedad intelectual, como ser patentes y derechos reservados. Deben ser cuidadosos al garantizar que la propiedad intelectual de sus clientes está protegida. Mal uso de la computadora • Los ingenieros de software no deberían usar sus habilidades técnicas para un mal uso de las computadoras de otras personas. El mal uso de una computadora comprende desde lo relativamente simple (jugar en la computadora del cliente) hasta lo extremamente serio (diseminar virus).
  • 24. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 24 Código de Etica ACM/IEEE Las sociedades profesionales en los Estados Unidos cooperaron para producir un código de práctica ética. Miembros de estas organizaciones fueron consecuentes con el código de práctica ética cuando se asociaron. El código contiene ocho principios relacionados al comportamiento y las decisiones hechas por ingenieros de software profesionales, incluyendo a los que lo ejercían, educadores, encargados, supervisores y editores, asi como aprendices y estudiantes de la profesión.
  • 25. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 25 Código de Etica - preámbulo Preámbulo • La versión corta del código resume aspiraciones a un alto nivel de abstracción; las cláusulas que se incluyen en la versión completa dan ejemplos y detalles de cómo estas aspiraciones cambian nuestro modo de actuar como profesionales de la Ingeniería de Software. Sin las aspiraciones, los detalles pueden llegar a ser legalistas y aburridos; sin los detalles, las aspiraciones pueden llegar a ser ruidosas pero vacías; juntas, las aspiraciones y los detalles forman un código cohesivo. • Los ingenieros de software se comprometerán a hacer del análisis, especificación, diseño, desarrollo, prueba y mantenimiento de software una profesión respetable y beneficiosa. Acorde a su compromiso con la salud, bienestar y seguridad del público, los ingenieros de software se adherirán a los ocho principios siguientes:
  • 26. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 26 Código de Etica - Principios PUBLICO • Los ingenieros de software actuarán constantemente con el interés público. CLIENTE Y EMPLEADOR • Los ingenieros de software actuarán acorde al mayor interés de sus clientes y empleadores en constancia con el interés público. PRODUCTO • Los ingenieros de software garantizarán que sus productos y relativas modificaciones van acorde a los estándares profesionales más altos posibles.
  • 27. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 27 Código de Etica - Principios JUICIO • Los ingenieros de software mantendrán su integridad e independencia de juicio como profesional. GERENCIA • Gerentes y líderes de Ingeniería de Software suscribirán y promoverán un acercamiento ético hacia el manejo de desarrollo de software y evolución. PROFESION • Los ingenieros de Software incrementarán la integridad y reputación de la profesión en constancia con el interés público.
  • 28. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 28 Código de Etica - Principios COLEGAS • Los ingenieros de software serán condescendientes y brindarán apoyo a sus colegas. UNO MISMO • Los ingenieros de software participarán en la formación continua con respecto a la práctica de su profesión y promoverán un acercamiento ético a la práctica de la profesión.
  • 29. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 29 Dilemas Eticos Desacuerdo en principio con las políticas de administración superior. El empleador actúa de un modo no ético y lanza un sistema de seguridad crítico sin terminar la prueba del sistema. Participación en el desarrollo de armamento militar o sistemas nucleares.
  • 30. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 30 Puntos Clave La Ingeniería de Software es una disciplina de la ingeniería concerniente a todos los aspectos de la producción de software. Los productos software están consistidos de programas desarrollados y su documentación asociada. Atributos esenciales del producto son la mantenibilidad, formalidad, eficiencia y utilidad. El proceso de software consiste en actividades involucradas en el desarrollo de productos software. Actividades básicas son la especificación del software, desarrollo, validación y evolución. Las metodologías son maneras organizadas de producir software. Estas incluyen sugerencias para el proceso a seguir, notaciones a usar, reglas que rigen las descripciones del sistema que son pautas para el desarrollo.
  • 31. ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 31 Puntos Clave Las herramientas CASE son sistemas de software diseñadas para soportar actividades rutinarias en el proceso de software, como ser: editar diagramas de diseño, verificaciones de la consistencia de diagramas y seguir el rastro de las pruebas del programa que han sido ejecutadas. Los ingenieros de software tienen responsabilidades para con la profesión y la sociedad. No deberían simplemente preocuparse de aspectos técnicos. Las sociedades profesionales publican códigos de conducta que establecen los estándares de comportamiento que se esperan de sus miembros.