Diego Alonso Cueva Chamorro
INTRODUCCION A LA INGENIERIA DE SOFTWARE
DEFINICION - SOFTWARE Es el conjunto de instrucciones que permite al hardware de la computadora desempeñar trabajo útil.
INGENIERÍA DE SOFTWARE Es una “Ingeniería” Conjunto de métodos, técnicas y herramientas Crea y mantiene aplicaciones de software Controla el proceso integral del desarrollo de
software Bases para construir software de calidad, de forma eficiente en los plazos adecuados.
INGENIERÍA DE SOFTWARE Es el conjunto de métodos, técnicas y herramientas que controlan el proceso integral del desarrollo del software , dando las bases para construir software de calidad, de forma eficiente en los plazos dados, minimizando los costos.
INGENIERO DE SOFTWARE El ingeniero de software debe aporta soluciones reales a los problemas diarios de la organizaciones de software, lo que puede suponer agregar a los conocimientos estrictamente técnicos, habilidades y formación en aspectos de gestión, economía, legislación, etc. Debe saber trasladar con sentido práctico los conocimientos científicos de la informática al desarrollo y mantenimiento de software.
¿Por qué la Ingeniería de Software? En un mundo en el las computadoras dominan, es vital poseer los medios para usarla de modo que logremos los resultados que esperamos. Para esto necesitamos de software, y de un buen software que vaya mejorando constantemente. Por eso es que aparece la Ing. de Software, para asegurarse de que el software que se produzca esté a la altura de las necesidades de los clientes
OBJETIVOS Generar y mantener sistemas de software dentro
de las restricciones de tiempo, funcionalidad y costos acordados con el cliente. Mejorar la calidad de los productos desarrollados. Facilitar el control del proceso de desarrollo de software. Aumentar la productividad y trabajo de los ingenieros del software. Se habla de "programar en grande"
IMPORTANCIA Alrededor del globo, el software contribuye al crecimiento
económico y de productividad. La ingeniería de software cambia la cultura del mundo debido al extendido uso de la computadora. Uso del correo electrónico (E-mail), la WWW y la mensajería instantánea permiten a la gente interactuar en nuevas formas. El software baja el costo y mejora la calidad de los servicios de salud , los departamentos de bomberos , las dependencias gubernamentales y otros servicios sociales. Los proyectos exitosos donde se han usado métodos de ingeniería de software incluyen a Linux, el software del trasbordador espacial, los cajeros automáticos y muchos otros.
HISTORIA PRIMERA FASE.
Los albores (1945-1955) SEGUNDA FASE. El florecimiento (1955-1965) TERCERA FASE. La Crisis (1965-1970) CUARTA FASE. Innovación conceptual (1970-1980) QUINTA FASE. El diseño es el problema (Desde 1980)
LA CRISIS DEL SOFTWARE El término “crisis del software” se acuñó en 1968, en
la primera conferencia organizada por la OTAN . En la misma conferencia se utilizó por primera vez el término “Ingeniería del software" . La crisis se caracterizo por los siguientes problemas:
Imprecisión en la planificación del proyecto y estimación de los costos. Baja calidad del software. Dificultad de mantenimiento de programas con un diseño poco estructurado, etc.
EVOLUCIÓN En los pasados 50 años, el software ha evolucionado
desde ser una herramienta para la solución de problemas especializados y el análisis de información, hasta convertirse en una industria por sí mismo. Se utilizan diversas estrategias en la enseñanza de la ingeniería de software. La evolución pudo solucionar problemas como:
Administración Calidad Productividad Fácil mantenimiento
Métodos, técnicas y herramientas La ingeniería del software esta compuesta por una serie de pasos que abarcan los métodos, las herramientas y los procedimientos antes mencionados. Estos pasos se denominan frecuentemente paradigmas de la ingeniería del software. La elección de un paradigma para la ingeniería del software se lleva a cabo de acuerdo con la naturaleza del proyecto y de la aplicación, los métodos y herramientas a usar y los controles y entregas requeridos.
Métodos, técnicas y herramientas Métodos
Indican cómo construir técnicamente el software. Los métodos abarcan un amplio espectro de tareas. Un objetivo de décadas ha sido el encontrar procesos o metodologías predecibles y repetibles que mejoren la productividad y la calidad.
Métodos… Las tareas a las que se refiere son principalmente: Análisis de requisitos Especificación Diseño y arquitectura Programación Prueba Documentación Mantenimiento
Herramientas… Suministran un soporte automático o semiautomático para los métodos. Hoy existen herramientas para soportar cada uno de los métodos mencionados. Cuando se integran las herramientas de forma que la información creada por una herramienta pueda ser usada por otra, se establece un sistema para el soporte del desarrollo del software , llamado ingeniería de software asistida por computadora (del inglés, CASE). CASE combina software, hardware y bases de datos sobre ingeniería del software. Las herramientas son los elementos que nos ayudan a crear el software.
Técnicas… También llamados procedimientos. Son el pegamento que junta los métodos y las herramientas y facilita su desarrollo racional y oportuno del software de computadora. Los procedimientos definen la secuencia en la que se aplican los métodos, las entregas (documentos, informes, formas, etc.) que se requieren, Los controles que ayudan a asegurar la calidad y coordinar los cambios, y las directrices que ayudan a los gestores del software a evaluar el progreso.
NATURALEZA – ING. DE SOFTWARE Matemáticas Los programas tienen muchas propiedades matemáticas. El uso de matemáticas en la IS es llamado métodos formales. Ciencia Los programas tienen muchas propiedades científicas que se pueden medir. Por ejemplo, el desempeño y la escalabilidad de programas bajo diferentes cargas de trabajo puede ser medida. Se pueden deducir ecuaciones matemáticas de las medidas.
NATURALEZA – ING. DE SOFTWARE Ingeniería La Ingeniería de Software es considerada por muchos como una disciplina ingenieril porque tiene los puntos de vistas pragmáticos y las características esperadas de los ingenieros. Análisis, documentación, y código comentado son signos de un ingeniero. Manufactura Los programas son construidos en una secuencia de pasos. El hecho de definir propiamente y llevar a cabo estos pasos, como en una línea de ensamblaje, es necesario para mejorar la productividad de los desarrolladores y la calidad final de los programas.
NATURALEZA – ING. DE SOFTWARE Manejo de Proyectos El software comercial requiere manejo De proyectos. Hay presupuestos y calendarizaciones establecidas, gente para liderar, recursos por adquirir. Arte Los programas contienen muchos elementos artísticos. Las interfaces de usuario, la codificación, etc. Incluso la decisión para un nombre de una variable o una clase.
APLICACIÓN EN NEGOCIOS La ingeniería de software es una rama muy extensa con respecto a las otras carreras esta rama, se usa en todo lugar. Para que los objetivos se cumplan las empresas emprenden proyectos por las siguientes razones: "Las cinco C"
APLICACIÓN EN NEGOCIOS Capacidad
- Aumentan la velocidad de procesamiento - Aumento en el volumen - Recuperación más rápida de la información Costo
- Vigilancia de los costos - Reducción de costos
APLICACIÓN EN NEGOCIOS Control
- Mayor seguridad de información: - Menor margen de error (mejora de la exactitud y la consistencia) Comunicación
- Interconexión ( aumento en la comunicación) - Integración de áreas en las empresas
APLICACIÓN EN NEGOCIOS Competitividad
- Formar bases para nuevos productos - Dejar fuera a los competidores - Asegurar clientes