Está en la página 1de 7

República bolivariana de Venezuela

Ministerio del poder popular para la educación


U.N.E. Rafael María Baralt

Ingeniería de software

Alumno:
Elian Alberto rincón beccerra
Informática sección 11 trayecto 2-1

San francisco 4 de marzo del 2023


Concepto básico de ingeniería de software :

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.

Años en los que se aplica al desarrollo de software el mismoproceso que al desarrollo de


hardware, se usa el método científico para aprender a través de la experiencia, elsoftware se
consideraba como un producto añadido y la programación de computadores era un arte para el
queno existían métodos sistemáticos, el desarrollo de software se realizaba sin ninguna
planificación una solopersona lo escribía, lo ejecutaba y, si fallaba, lo depuraba.En esta misma
época a pesar de importantes éxitos como las misiones de la NASA, se hace evidente queel
software se diferencia demasiado del hardware para poder ser tratado de la misma manera.
Es la época de losfamosos “códigos espagueti” (muy difíciles de entender incluso por quien lo
escribía) y la aparición de “héroes”que después de varias noches sin dormir conseguían
arreglar a último minuto el software para cumplir los plazos.Los programadores siempre habían
sabido sobre ingenieros civiles, eléctricos y de computadores y debatían quépodría significar la
ingeniería para el software.

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.

En 1995, las estadísticas mostraron que la mitad de los proyectos dedesarrollo


encuestados estaban operacionales, pero no eran exitosos.
El proyecto de software sobrepasa suestimación en tiempo un 50%.
Por talessucesos el (paralelismo y distribución) adquiere mayor importancia, la orientación a
objetos se extiende a lasfases de análisis y diseño, se implementa el lenguaje de modelado
(UML) y se genera el 1° proceso comercial dedesarrollo orientado objetos (RUP).
patrones de diseño y de arquitectura.

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

La ingeniería de software tiene dos partes: software e ingeniería.

El software es una colección de códigos, documentos y activadores que realiza un trabajo


específico y cumple con un requisito específico. La ingeniería, por otro lado, es el desarrollo de
productos utilizando las mejores prácticas, principios y métodos.

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.

Conceptos básicos: La ingeniería de software es una disciplina formada por un conjunto de


métodos,herramientas y técnicas que se utilizan en el desarrollo de los programas informáticos
(software). Esta disciplinatrasciende la actividad de programación, que es la actividad principal
a la hora de crear un software. El ingenierode software se encarga de toda la gestión del
proyecto para que éste se pueda desarrollar en un plazodeterminado y con el presupuesto
previsto. La ingeniería de software, por lo tanto, incluye el análisis previo de lasituación, el
diseño del proyecto, el desarrollo del software, las pruebas necesarias para confirmar su
correctofuncionamiento y la implementación del sistema. Cabe destacar que el proceso de
desarrollo de software implicalo que se conoce como ciclo de vida del software, que está
formado por cuatro etapas: concepción, elaboración,construcción y transición

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.

D.-Optimizar el conjunto y cada una de las fases del proceso de desarrollo.

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.

C.- Progreso más difícil de medir.


I.- Funciones reducidas Dependencia en componentes de terceros: funcionalidad de más o de
menos, problemas legales.

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.

Las metodologías de desarrollo de software se utilizan en el ámbito de la programación, entre


otros, con el objetivo de trabajar en equipo de manera organizada.
Por lo tanto, si quieres dedicar tu carrera profesional al desarrollo de software, deberás
aprender cómo funcionan las metodologías ágiles.
Sea como sea, emplear metodologías de desarrollo de software es imprescindibles en el
ámbito de la programación y similares para generar software de alta calidad.
Todos ellos se engloban en una metodología de desarrollo que permite organizar el trabajo de
la forma más ordenada posible.
El trabajo con una metodología de desarrollo de software permite reducir el nivel de dificultad,
organizar las tareas, agilizar el proceso y mejorar el resultado final de las aplicaciones a
desarrollar

En la actualidad se pueden diferenciar dos grandes grupos de metodologías de desarrollo de


software: las ágiles y las tradicionales.
Las metodologías de desarrollo de software tradicionales se caracterizan por definir total y
rígidamente los requisitos al inicio de los proyectos de ingeniería de software.
Los ciclos de desarrollo son poco flexibles y no permiten realizar cambios, al contrario que las
metodologías ágiles; lo que ha propiciado el incremento en el uso de las segundas.
La organización del trabajo de las metodologías tradicionales es lineal, es decir, las etapas se
suceden una tras otra y no se puede empezar la siguiente sin terminar la anterior.
Los requisitos y especificaciones iniciales no están predispuestos para cambiarse, por lo que
no se pueden ver los resultados hasta que el proyecto ya esté bastante avanzado.
Es un modelo iterativo que se basa en el método de prueba y error para comprender las
especificidades del producto.

El nombre de esta metodología da nombre a su funcionamiento, ya que se van procesando las


etapas en forma de espiral.

Incremental: en esta metodología de desarrollo de software se va construyendo el producto


final de manera progresiva.

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.

El software se puede empezar a utilizar incluso antes de que se complete totalmente y, en


general, es mucho más flexible que las demás metodologías.
Los costes son mucho más altos y el desarrollo más flexible, aunque requiere una mayor
intervención de los usuarios.

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.

El software es imprescindible para cualquier sistema informático o basado en informática,


puesto que sin él, este no funcionaría.

Cuál es la diferencia entre Ingeniería de Software y Ciencias Computacionales:


Ingeniería de software se centra en los aspectos más prácticos de la producción de un sistema
de software, mientras que la ciencia de la computación se basa en el estudio de los aspectos
teóricos de la computación.

Cuál es la diferencia entre Ingeniería de Software e Ingeniería de Sistemas:


La ingeniería del software es una rama de la ingeniería que desarrolla y gestiona sistemas de
software utilizando técnicas y experimentos de la informática, la gestión de proyectos y otras
disciplinas.

Qué es un modelo de proceso de software:


Es una abstracción del proceso de desarrollo de software.
Entonces, piense en esto como una representación del orden de las actividades del proceso y
la secuencia en la que se realizan.
Cuáles son los costos de la Ingeniería de Software:
El costo total de un software está dividido aproximadamente de la siguiente forma: 60%costos
de desarrollo40%costos de pruebas
Qué son los métodos de Ingeniería de Software:
Los métodos comprenden una diversidad de tareas tales como el análisis de requisitos, diseño,
elaboración de programas, verificación y mantenimiento.

Cuáles son los atributos del software de calidad:


Los atributos más comunes Desplegabilidad (facilidad de despliegue).

Cuáles son los retos de la Ingeniería de Software:


Los principales retos en ingeniería de software son la incomprensión del proceso de desarrollo,
la baja calidad de los productos finales y las grandes diferencias en sus costos

También podría gustarte