Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Ingeniería de software
Alumno:
Elian Alberto rincón beccerra
Informática sección 11 trayecto 2-1
La historia de la Ingeniería del software es paralela a la historia del software, el termino surge
en los años1940 pero como se ha visto, no surge con los equipos electrónicos, “aunque es con
ellos que adopta el nombre”ya se encontraba presente desde el empleo de ábacos o
sumadoras mecánicas.
El término ingeniería del software surgió por primera vez enla década de 1950 y principios de
los años 1960.
En 1965 se inicia un fenómeno conocido como la “crisis delsoftware”, por esta razón la
NASA/IEEE Software Engineering Workshop de 1966 y las conferencias del comitéde ciencias
de la OTAN (Organización del Tratado del Atlántico Norte) en 1968 y en 1969 toman como
temacentral la crisis del software y es allí donde se utilizó por primera vez el término "ingeniería
del software".Por la llamada crisis del software de la década de 1965, muchos proyectos de
software sobrepasaron el presupuesto y el tiempo estimado.
Sin embargo, la formación de los profesionales sigue siendo ad-hocy más centrada en los
sistemas y en la programación, que en una verdadera Ingeniería del Software.Para la década
de 1970 y 1980, la evolución de los sistemas distribuidos, las redes de área local y globaly la
creciente demanda de acceso instantáneo a datos supuso una fuerte presión sobre los
desarrollos desoftware incrementando la complejidad de los sistemas informáticos, es aquí
donde se introduce la programaciónestructurada y los métodos formales para especificar
software, el costo y mantenimiento en la década de 1980 fue dos veces más caro que el
desarrollo del software.
La Ingeniería de Software se define como un proceso de análisis de los requisitos del usuario,
así como del diseño, construcción y prueba de la aplicación de software
Para esta década el software era privado entonces surge la necesidad por parte
de un grupo deprogramadores de crear proyectos que impulsan la creación de software
libre y de código abierto.
El desarrollo dirigido por modelos toma fuerza y se integra el desarrollode software con el de
sistemas.
Las ventajas de la ingeniería de software se pueden ver desde 3 puntos de vista importantes
los cuales son;
1.- desde el punto de vista de gestión: A.- Facilitar la tarea de seguimiento del proyecto, B.-
Optimizar el uso de recursos
.
2.- Desde el punto de vista de los ingenieros de software: A.-Ayudar a comprender el
problema.
C.- Facilitar el mantenimiento del producto final.
3.- Desde el punto de vista de cliente ousuario final: A.- Garantizar el nivel de calidad del
producto final.
C.- Confianza en los plazos del tiempo mostrados en la definición del proyecto.Las desventajas
son: A.- Comprar puede ser más caro que construir.
CONCLUSION: Aunque tubo comienzos difíciles donde era considerada un producto añadido e
inclusoera aplicado el mismo proceso del hardware en su desarrollo, logro demostrar su
complejidad e importanciagracias a las misiones de la NASA y a la complejidad de su código
espagueti el cual era difícil de entenderincluso para quien lo programaba, cuando empezó la
crisis del software en la década de 1965 muchos proyectosfracasaron causando daños en el
mundo de la informática pero gracias a esto logro evolucionar en calidad eimpulsando la
programación estructurada, para cuando evolucionan los sistemas de distribución, redes y
aparecela demanda de acceso instantáneo a datos el software tuvo mucha presión
incrementando su complejidad en lossistemas informáticos y su costo y mantenimiento subió
incluso más que su desarrollo, realizaron estadísticas yse demostró que más de la mitad de
estos proyectos se encontraban operando pero aun así no eran exitosos.En eso surge la
programación orientada a objetos la cual logro el primer proceso comercial de
desarrolloorientado a objetos y aparece el software libre y de código abierto el cual podía ser
editado por cualquier personapermitiendo que el software ocupara la posición crítica en el
mercado y en la asociación WEB, en la actualidadlos temas son importantes en el desarrollo y
el valor para el cliente ya que las nuevas tecnologías son parte denuestro ciclo de vida, gracias
al internet y las comunicaciones de banda ancha el mundo está conectado y cadavez más el
ser humano es más dependiente de la tecnología, permitiendo al software estar en la mayoría
de losequipos de última generación.
Demostrando que tiene mucho más para dar en su estructura e impulsando cadavez más a la
humanidad a un nuevo mundo.
En cada etapa incremental se agrega una nueva funcionalidad, lo que permite ver resultados
de una forma más rápida en comparación con el modelo en cascada.
Por otro lado, el código puede contener más errores, y sus funciones son limitadas debido al
poco tiempo del que se dispone para desarrollarlas.
Como hemos dicho al principio del artículo, las metodologías ágiles de desarrollo de software
son las más utilizadas hoy en día debido a su alta flexibilidad y agilidad
Los equipos de trabajo que las utilizan son mucho más productivos y eficientes, ya que saben
lo que tienen que hacer en cada momento.
Además, la metodología permite adaptar el software a las necesidades que van surgiendo por
el camino, lo que facilita construir aplicaciones más funcionales.
Las metodologías ágiles se basan en la metodología incremental, en la que en cada ciclo de
desarrollo se van agregando nuevas funcionalidades a la aplicación final.
Sin embargo, los ciclos son mucho más cortos y rápidos, por lo que se van agregando
pequeñas funcionalidades en lugar de grandes cambios.
Este tipo de metodologías permite construir equipos de trabajo autosuficientes e
independientes que se reúnen cada poco tiempo para poner en común las novedades.
De esta forma, se crea un flujo de trabajo muy visual basado en tareas prioritarias e
incrementando el valor del producto.
Scrum: es también una metodología incremental que divide los requisitos y tareas de forma
similar a Kanban.
Las etapas son: planificación de la iteración (planning sprint), ejecución (sprint), reunión diaria
(daily meeting) y demostración de resultados (sprint review).
Cada iteración por estas etapas se denomina también sprint.
Lean: está configurado para que pequeños equipos de desarrollo muy capacitados elaboren
cualquier tarea en poco tiempo.
Programación extrema (XP): es una metodología de desarrollo de software basada en las
relaciones interpersonales, que se consideran la clave del éxito.