SlideShare a Scribd company logo
1 of 3
INGENIERÍA DE SOFTWARE I – UNIVERSIDAD SERGIO ARBOLEDA

Abstract—Software Engineering is considered nowadays an
important science and field of study for establishing software
development methodologies. In the following paper a
conceptualization about SI is presented and the challenges
presented in that discipline in the XXI century.
Index Terms—Software, Development, Methodologies,
Evaluation.
I. INTRODUCCIÓN
A ingeniería de software consiste en dar una
orientación sistemática y cuantificable al software, como
facilitadora para su creación y posterior mantenimiento en
diferentes escenarios.
La carencia de aplicación de ingeniería de software trae
como consecuencia que el software tienda a fallar, a ser más
difícil de analizar y a causar retrasos a las personas que lo
requieren, como se evidenció por ejemplo en los años 50
donde aún no se consideraba como disciplina. Posteriormente
se produjo un suceso conocido como "La crisis del software"
donde la comunidad estudiosa del software se reunió y
comenzó a establecer estándares y formalizar el trabajo de los
ingenieros de software (que en ese momento su metodología
no era lo suficientemente estructurada). Tras terminar la
segunda guerra mundial se refinó el proceso de elaboración
del software agregándole la calidad del mismo.
En la actualidad existe un amplio estudio sobre el
planteamiento de dichas metodologías, por ejemplo, Pressman
estableció que la ingeniería de software podría tener 7
enfoques: de sistemas, de aplicación, científico y de
ingeniería, empotrado, de línea de productos, aplicaciones web
y de Inteligencia Artificial.
Esta ingeniería también puede definirse como un área de las
ciencias computacionales donde se hace uso de la gestión de
proyectos, diseño, desarrollo, documentación pruebas, control
y gestión de calidad y mantenimiento de software; esta ha
cobrado mayor importancia debido a que al transcurrir del
tiempo se demanda software con mayores funcionalidades y
especificaciones causando que este tenga una mayor injerencia
social y deba orientarse siempre a lo que busca el cliente
ofreciendo herramientas fiables.
II. HISTORIA
En 1980, Estados Unidos hizo uso de tarjetas perforadas y
máquinas tabuladoras para realizar el censo nacional diseñadas
por Hernan Hollerith (donde su compañía sería la base del
origen de IBM). Hacia 1950 se crearon los primeros
compiladores y lenguajes de programación orientando a la
ingeniería de software solamente hacia la programación (en
ese entonces estructurada, por ende haciendo que los
programas fuesen extensos y poco controlables).
En 1967 se estableció el grupo de estudios en ciencias
computacionales en la OTAN. Ese mismo año se realizó una
conferencia en Alemania para discutir el proceso de
producción de software, la formación de ingenieros de
software, entre otras temáticas.
Así mismo el software fue evolucionando como se describe
en 4 etapas: los primeros años (donde se introdujo el
procesamiento por lotes y software a la medida), la segunda
era (apareció la programación multiusuario y en tiempo real,
las bases de datos y el aumento en consumo de software), la
tercera era (se crearon los sistemas distribuidos y se introdujo
el concepto de inteligencia de software, aumento de consumo
y baja de precios de hardware) y la cuarta era (se incrementó
la potencia de los equipos, se introdujo la programación
orientada a objetos, aplicaciones de inteligencia artificial,
programación concurrente y crecimiento de las redes de
computadores).
III. CICLO DE VIDA DEL SOFTWARE
Al pasar del tiempo se propusieron diferentes modelos del
ciclo de vida del software, el ciclo de vida en cascada donde se
estableció el desarrollo lineal y secuencial de las actividades
(desde el análisis previo hasta su desarrollo y posterior
mantenimiento) e hizo una analogía con la cascada debido a
que entre más fuerte fuese un cambio en etapas avanzadas del
software, se hacía mucho más difícil volver a estados
anteriores del mismo. El ciclo de vida basado en prototipos en
el año 1975 donde se hacía un prototipo del software a
desarrollar en etapas tempranas de su desarrollo con el fin de
que el cliente pudiese visualizar desde un primer momento las
funcionalidades que poseería el software. Es un ciclo de vida
evolutivo estableciendo que si se agrega personal a un
proyecto atrasado, este se retrasará aún más. El ciclo de vida
incremental, también proceso evolutivo, donde el software se
desarrolla sobre versiones intermedias donde una nueva
versión es igual a la anterior agregándole los nuevos
Ingeniería de Software: Conceptos y Retos
(February 2015)
Laura Brugés, Member, Universidad Sergio Arboleda
L
INGENIERÍA DE SOFTWARE I – UNIVERSIDAD SERGIO ARBOLEDA
requerimientos establecidos por el cliente que surgen durante
su desarrollo. El ciclo de vida en espiral el cual agrega una
nueva fase en el desarrollo de software de evaluación e
identificación de riesgos contemplando tres tipos: riesgos de
proyecto, riesgos técnicos y riesgos del negocio. El ciclo de
vida de agrupamiento o de clúster que está orientado a objetos
donde se desarrollan componentes o agregaciones donde cada
uno tendrá su propio ciclo de vida, especificación, diseño, etc.
El ciclo de vida fuente, igualmente orientado a objetos donde
se contempla en concepto de piscina (donde reposan las clases
del sistema). Cuenta con tres fases: la del negocio,
construcción y entrega. El ciclo de vida rápido de aplicaciones
donde se promueve el uso de programación visual y los
generadores automáticos de aplicaciones donde se aumenta la
productividad de los programadores y se disminuye su tiempo
de desarrollo. El ciclo de vida en remolino donde se amplía la
versión del ciclo de vida en cascada donde se lleva un proceso
iterativo hasta que se alcance el nivel de detalle deseado
siendo multi-cíclico semejante a la forma de un remolino. En
1990 la institución ISO, encargada de establecer estándares a
nivel global, se estableció el 12207 donde el ciclo de vida del
software está conformado por 5 procesos principales
(adquisición, suministro, desarrollo, operación y
mantenimiento que consiste a los cambios realizados sobre el
software), 4 procesos organizacionales (gestión,
infraestructura, mejora en los procesos y formación) y 8 de
apoyo (documentación, gestión de la configuración,
verificación, validación del cumplimiento de los requisitos ,
revisión conjunta, auditoría y resolución de problemas.
IV. DESARROLLO DEL SOFTWARE EN LATINOAMÉRICA
La ingeniería de Software puede ser considerada como una
alternativa de consolidación económica y de desarrollo por lo
que resulta ideal para Latino América donde es una industria
en crecimiento para así poder tener más herramientas para
competir a nivel global. Países como Costa Rica han mostrado
interés en obtener certificaciones relacionadas con software
como las normad de ISO 9000 y 2000, habiendo establecido
igualmente un plan de desarrollo de software. También se han
evidenciado avances en países como Argentina, Chile, Brasil,
Uruguay, Perú, Venezuela y Bolivia donde se han establecido
organismos específicos para ocuparse de esta área.
En Colombia por su parte la industria del software es
creciente contando con varias empresas certificadas en ISO y
CMMI donde sin embargo falta inversión en dicha materia y
en el área de tecnología. Así mismo, Colombia exporta
servicios de consultoría, desarrollo e ingeniería de software
que se ve limitado debido al nivel de bilingüismo. Por su parte
en Colombia se encuentran instituciones como FEDESOFT,
INDUSOFT y FEDECOLSOFT entre otras. Más
recientemente se fundó el ministerio especializado en
tecnologías de la información (min TIC). Así mismo tiene
políticas de derechos de autor, reglamentación de inscripción
de soporte lógico, entre otros.
Contruir correctamente un producto de software implica que
este sea fiable (resistente a fallos), de fácil mantenimiento, de
acuerdo a los parámetros establecidos por el cliente (respecto a
tiempo, costo, expectativas, etc.), ser portable y predecible al
momento de estar en funcionamiento.
V. INGENIERÍA DE SOFTWARE EN LATINOAMÉRICA
Atribuyéndole a la crisis del software el inicio del estudio
de la ingeniería de software como ciencia, el principal objetivo
de la conferencia que se convocó en torno a ella fue el de usar
principios de la ingeniería para producir software de manera
económica y a su vez fiable y eficiente.
Se buscó darle una caracterización más ingenieril al
desarrollo y construcción de software, aunque también
requiere de creatividad.
Para poder estudiar el desarrollo de software en
Latinoamérica se tomaron como referencia tres enfoques.
El primer enfoque es la formación académica de
profesionales en software debido a que la producción de
software de calidad influencia de gran manera la capacidad
técnico-académica de los profesionales que llevan a cabo
proyectos, su actualización y profundización de su
conocimiento para lo cual se recomienda proveer formación
académica actualizada, crear condiciones necesarias para
responder a la demanda de sorftware con el número de
profesionales formados, actualizar constantemente los
contenidos relacionados con control y gestión de proyectos,
fomentar la creación de grupos de investigación, orientar
especializaciones a la ingeniería de requisitos, fomentar y
fortalecer la formación a nivel posgrado, promover beca, entre
otras.
El segundo trata el tema de los atributos de los productos de
software, debido a que siempre se busca ofrecer una solución
adecuada para los requerimientos del usuario, es necesario
focalizarse en aspectos de calidad no relacionados con la
funcionalidad del negocio como la confiabilidad que busca no
generar inconvenientes al momento de ocurrir un fallo en el
sistema (idealmente de funcionamiento ininterrumpido en el
tiempo), seguridad que se refiere a la prevención de fraudes y
ataques de diferentes tipos, la precisión que busca responder
eficientemente a las necesidades que surjan alrededor del uso
del software, usabilidad refiriéndose a que deben ser sencillos
de entender para sus usuarios, y el mantenimiento que implica
que la documentación debe actualizarse con la evolución del
software.
El tercer enfoque se refiere a la responsabilidad ética y
profesional ya que estos aspectos son inherentes al proceso de
desarrollo de software. A pesar de que organizaciones como la
IEEE promulgan códigos de conducta, no se tienen las
suficientes regulaciones en cuanto a las responsabilidades
sociales y morales implicadas. Aspectos que se contemplan en
cuanto a esto son la competencia que busca que un ingeniero
de software no tome trabajos que superen su capacidad ni su
área de especialización empresarial, confidencialidad que
consiste en respetar la información intercambiada entre cliente
y usuario así haya o no un acuerdo de confidencialidad en
medio y que no se debe emplear habilidades técnicas para
hacer uso inapropiado de hardware.
INGENIERÍA DE SOFTWARE I – UNIVERSIDAD SERGIO ARBOLEDA
VI. PROYECCIÓN Y RETOS DE LA INGENIERÍA DE SOFTWARE
La proyección a futuro de la ingeniería de software no
busca predecir sino analizar los cambios para enfrentar
situaciones donde se puedan presentar fallos requiriendo
creatividad y aplicación de elementos transformadores y de
cambio.
La primera problemática que se aborda al respecto es la
calidad del software donde se requiere del cumplimiento de
varios factores los cuales son esenciales en la determinación
de las fases iniciales del ciclo de vida haciendo énfasis en
requerimientos no funcionales donde se contemplan
características como Seguridad (protección de información
sensible susceptible a ataque), disponibilidad y confiabilidad
(funcionamiento ininterrumpido) y la usabilidad (facilitar el
acceso a todo tipo de usuario al software).
La segunda se refiere a los servicios y modelos del negocio
que involucra modelo de software como servicio, cambio y
adaptación de la arquitectura y optimización de recursos para
responder a las necesidades del cliente que cada vez se hacen
más complejas haciendo que se orientar el software a
componentes o frameworks para así incrementar la
reutilización
Una tercera problemática habla de la integración de
sistemas y componentes debido al incremento en la demanda
de software por componentes debe evitarse que se pierda el
control sobre los mismos donde cada uno podría ser cambiado
o actualizado; este inconveniente debe ser solucionado en
corto plazo.
Como cuarta problemática se tiene que gracias a la creciente
demanda de dispositivos móviles deben replantearse las
necesidades del usuario en campos como conectividad y
diseño de aplicativo donde se busca responder a las
necesidades de que el producto sea seguro y confiable.
La última se refiere a la selección de recurso humano
competente para la capacitación de personal y el desarrollo de
proyectos
Existen cuatro tendencias en el desarrollo de software: los
métodos ágiles e incrementales (que ofrecen atención a
modificaciones requeridas por el usuario, la integración de
nuevas tecnologías y formación de grupos de desarrollo para
lograr interacción y cohesión), dominio de los productos de
software (que hacen referencia a su vida útil), ingeniería de
requisitos en entornos globales (relacionada con la aplicación
de metodologías de trabajo) y la prueba del software
(propuesta de metodologías para probar su funcionamiento).
En cuanto a las necesidades actuales se encuentra la gestión
de conocimiento (planificar, coordinar y controlar el
conocimiento que produce una organización de la realización
de sus funciones para generar nuevas competencias para
combinarlas con las existentes donde vienen asociados cuatro
pilares: las personas, los procesos, los contenidos y la
tecnología).
La ingeniería de software es un proceso cognitivo, debido a
que su materia prima es el conocimiento, se debe hacer gestión
del mismo, este proceso tiene las siguientes características:
requieren de conocimiento de múltiples dominios, el objetivo
de un proyecto de software es dinámico, el proceso de
obtención y transformación de conocimiento es continuo, la
evolución del software es un proceso continuo y el software se
orienta a diferentes grupos sociales y áreas geográficas.
La gestión de software también se orienta a comprender el
conocimiento existente en la aplicación, facilitar a los
analistas, arquitectos y desarrolladores el acceso a la
información, orientar una metodología para seguir el
desarrollo de objetivos cumplidos o por cumplir y dar
retroalimentación a cada uno de los miembros del equipo de
desarrollo.
Dentro de la gestión de los equipos de desarrollo se
encuentra la gestión de datos (que incluye el modelo de datos,
la administración de bases de datos, el data warehousing, la
migración de datos, la minería de datos, entre otros) y la
gestión y vigilancia de la información (que incluye la
búsqueda de ventajas competitivas, niveles elevados de
saturación y el control de la información).
VII. CONCLUSIONES
La ingeniería de software entró a normalizar, estandarizar y
organizar el proceso de la elaboración de software proveyendo
una serie de metodologías y paradigmas usando como materia
prima el conocimiento y la información buscando dar a este
proceso una caracterización más ingenieril buscando que las
personas que participen en proyectos de software sean
capacitadas y que haya una comprensión y dominio sobre el
proceso evolutivo de la creación de software de tal manera que
satisfaga las necesidades de los clientes que se van adaptando
a un entorno de crecimiento progresivo.
La aplicación de ingeniería de software hace que se eviten
fallos de construcción de software sobre modelos poco sólidos
susceptibles a tener baja seguridad, confiabilidad y ser
difíciles de manipular por los usuarios finales que fueron las
principales causas de que ocurriera la llamada “Crisis del
Software”.
Debido a que recientemente se han estado utilizando
metodologías de desarrollo en torno a componentes o
frameworks es esencial que se tenga control sobre los cambios
que se realizan en cada uno de ellos y que tengan la cohesión
suficiente para poder ser utilizados como una sola aplicación.
La utilización de la Ingeniería de Software en los proyectos
de elaboración del mismo puede servir como herramienta para
que los países latinoamericanos avancen en materia de
producción de software de tal manera que puedan competir
con distintas alternativas ofrecidas a nivel internacional y así
aportar a su proceso de crecimiento y desarrollo.
Como la Ingeniería de Software ayuda a la comprensión y
gestión de proyectos se vuelve una herramienta indispensable
para los CIOs pudiendo así orientar los procesos de una
organización bajo sus principios acercándola al concepto de
organización inteligente.
VIII. REFERENCIAS
[1] Instituto Antioqueño de Investigación, LIBRO BLANCO DE LA
INGENIERÍA DE SOFTWARE EN AMÉRICA LATINA 1st
ed.
Colombia. pp. 23-44, 81-94.

More Related Content

What's hot

Etapas del desarrollo de software
Etapas del desarrollo de softwareEtapas del desarrollo de software
Etapas del desarrollo de softwarexinithazangels
 
Ingeniería de software II - Parte 2
Ingeniería de software II - Parte 2Ingeniería de software II - Parte 2
Ingeniería de software II - Parte 2Marta Silvia Tabares
 
Desarrollo de software basado en componentes
Desarrollo de software basado en componentesDesarrollo de software basado en componentes
Desarrollo de software basado en componentesmellcv
 
Etapas del Desarrollo Software
Etapas del Desarrollo SoftwareEtapas del Desarrollo Software
Etapas del Desarrollo SoftwareZuleima
 
Fundamentos de la ingenieria del software
Fundamentos de la ingenieria del softwareFundamentos de la ingenieria del software
Fundamentos de la ingenieria del softwarealberto calatayu
 
Ingeniería de Software
Ingeniería de SoftwareIngeniería de Software
Ingeniería de SoftwareUacm Lis Slt
 
Trabajo 2 exposicion
Trabajo 2 exposicionTrabajo 2 exposicion
Trabajo 2 exposicionEvelin Oña
 
Ingenieria de software
Ingenieria de softwareIngenieria de software
Ingenieria de softwareDiaxz Salgado
 
Unidad 2 ing de software
Unidad 2 ing de softwareUnidad 2 ing de software
Unidad 2 ing de softwareArmando Barrera
 
Unidad 1 Ingenieria de software
Unidad 1 Ingenieria de softwareUnidad 1 Ingenieria de software
Unidad 1 Ingenieria de softwareJahiro Bojorquez
 
¿Qué es la arquitectura de software?
¿Qué es la arquitectura de software?¿Qué es la arquitectura de software?
¿Qué es la arquitectura de software?Israel Rey
 
Modelos de procesos de software(completo)
Modelos de procesos de software(completo)Modelos de procesos de software(completo)
Modelos de procesos de software(completo)David Rosero
 

What's hot (20)

Etapas del desarrollo de software
Etapas del desarrollo de softwareEtapas del desarrollo de software
Etapas del desarrollo de software
 
introduccion metododologias de analisis y diseño de software
 introduccion metododologias de analisis y diseño de software introduccion metododologias de analisis y diseño de software
introduccion metododologias de analisis y diseño de software
 
Ingenieria de software
Ingenieria de softwareIngenieria de software
Ingenieria de software
 
Ingeniería de software II - Parte 2
Ingeniería de software II - Parte 2Ingeniería de software II - Parte 2
Ingeniería de software II - Parte 2
 
Morales aguirreguillermo
Morales aguirreguillermoMorales aguirreguillermo
Morales aguirreguillermo
 
Desarrollo de software basado en componentes
Desarrollo de software basado en componentesDesarrollo de software basado en componentes
Desarrollo de software basado en componentes
 
Etapas del Desarrollo Software
Etapas del Desarrollo SoftwareEtapas del Desarrollo Software
Etapas del Desarrollo Software
 
Fundamentos de la ingenieria del software
Fundamentos de la ingenieria del softwareFundamentos de la ingenieria del software
Fundamentos de la ingenieria del software
 
Ingeniería de Software
Ingeniería de SoftwareIngeniería de Software
Ingeniería de Software
 
Siste deinf
Siste deinfSiste deinf
Siste deinf
 
ingenieria del software
ingenieria del softwareingenieria del software
ingenieria del software
 
Trabajo 2 exposicion
Trabajo 2 exposicionTrabajo 2 exposicion
Trabajo 2 exposicion
 
Adrian adrianza
Adrian adrianzaAdrian adrianza
Adrian adrianza
 
Ingenieria de software
Ingenieria de softwareIngenieria de software
Ingenieria de software
 
Unidad 2 ing de software
Unidad 2 ing de softwareUnidad 2 ing de software
Unidad 2 ing de software
 
Unidad 1 Ingenieria de software
Unidad 1 Ingenieria de softwareUnidad 1 Ingenieria de software
Unidad 1 Ingenieria de software
 
¿Qué es la arquitectura de software?
¿Qué es la arquitectura de software?¿Qué es la arquitectura de software?
¿Qué es la arquitectura de software?
 
Modelos de procesos de software(completo)
Modelos de procesos de software(completo)Modelos de procesos de software(completo)
Modelos de procesos de software(completo)
 
Tarea 3 fundamentos del computador
Tarea 3 fundamentos del computador Tarea 3 fundamentos del computador
Tarea 3 fundamentos del computador
 
Estudiante
EstudianteEstudiante
Estudiante
 

Similar to Ingeniería de Software: Conceptos y Retos

Ornelas muñizdavid actividad1.1_grupo_si5-2
Ornelas muñizdavid actividad1.1_grupo_si5-2Ornelas muñizdavid actividad1.1_grupo_si5-2
Ornelas muñizdavid actividad1.1_grupo_si5-2David Ornelas Muñiz
 
Ingeniería de software - Descripción, características, modelos
Ingeniería de software - Descripción, características, modelosIngeniería de software - Descripción, características, modelos
Ingeniería de software - Descripción, características, modelosRafael Fdo Lopez Castillo
 
Dialnet del manifiestoagilsusvaloresy-principios-4809645
Dialnet del manifiestoagilsusvaloresy-principios-4809645Dialnet del manifiestoagilsusvaloresy-principios-4809645
Dialnet del manifiestoagilsusvaloresy-principios-4809645QAexpert
 
ingenieradesoftwareii-140115210933-phpapp01 (1).pptx
ingenieradesoftwareii-140115210933-phpapp01 (1).pptxingenieradesoftwareii-140115210933-phpapp01 (1).pptx
ingenieradesoftwareii-140115210933-phpapp01 (1).pptxMaikoUrizar1
 
Ingeniería de software
Ingeniería de software Ingeniería de software
Ingeniería de software jevo1994
 
Ingeniería de software
Ingeniería de softwareIngeniería de software
Ingeniería de softwareIngryd Cobain
 
Ensayo de software
Ensayo de softwareEnsayo de software
Ensayo de softwareJhoel_1995M
 
Ingenieria de software final.
Ingenieria de software final.Ingenieria de software final.
Ingenieria de software final.Andrés Sorto
 
Ingenieria de software final.
Ingenieria de software final.Ingenieria de software final.
Ingenieria de software final.Andrés Sorto
 

Similar to Ingeniería de Software: Conceptos y Retos (20)

Ingeniería de Software 1
Ingeniería de Software 1Ingeniería de Software 1
Ingeniería de Software 1
 
Ingeniería de Software 1 - SI
Ingeniería de Software 1 - SIIngeniería de Software 1 - SI
Ingeniería de Software 1 - SI
 
Ornelas muñizdavid actividad1.1_grupo_si5-2
Ornelas muñizdavid actividad1.1_grupo_si5-2Ornelas muñizdavid actividad1.1_grupo_si5-2
Ornelas muñizdavid actividad1.1_grupo_si5-2
 
Ingeniería de software - Descripción, características, modelos
Ingeniería de software - Descripción, características, modelosIngeniería de software - Descripción, características, modelos
Ingeniería de software - Descripción, características, modelos
 
Dialnet del manifiestoagilsusvaloresy-principios-4809645
Dialnet del manifiestoagilsusvaloresy-principios-4809645Dialnet del manifiestoagilsusvaloresy-principios-4809645
Dialnet del manifiestoagilsusvaloresy-principios-4809645
 
ingenieradesoftwareii-140115210933-phpapp01 (1).pptx
ingenieradesoftwareii-140115210933-phpapp01 (1).pptxingenieradesoftwareii-140115210933-phpapp01 (1).pptx
ingenieradesoftwareii-140115210933-phpapp01 (1).pptx
 
Niebla sortillon jesus francisco actividad1.1 si5 1
Niebla sortillon jesus francisco actividad1.1 si5 1Niebla sortillon jesus francisco actividad1.1 si5 1
Niebla sortillon jesus francisco actividad1.1 si5 1
 
Ensayo (El Software)
Ensayo (El Software)Ensayo (El Software)
Ensayo (El Software)
 
Ingeniería de software
Ingeniería de software Ingeniería de software
Ingeniería de software
 
Ensayo sobre la calidad de software
Ensayo sobre la calidad de softwareEnsayo sobre la calidad de software
Ensayo sobre la calidad de software
 
Ensayo sobre la calidad de software
Ensayo sobre la calidad de softwareEnsayo sobre la calidad de software
Ensayo sobre la calidad de software
 
Ensayo sobre la calidad de software
Ensayo sobre la calidad de softwareEnsayo sobre la calidad de software
Ensayo sobre la calidad de software
 
Ingenieria de Software
Ingenieria de Software Ingenieria de Software
Ingenieria de Software
 
Plan
PlanPlan
Plan
 
Ingeniería de software
Ingeniería de softwareIngeniería de software
Ingeniería de software
 
Ensayo de software
Ensayo de softwareEnsayo de software
Ensayo de software
 
Yoenybravo
YoenybravoYoenybravo
Yoenybravo
 
Ingenieria de software final.
Ingenieria de software final.Ingenieria de software final.
Ingenieria de software final.
 
Ingenieria de software final.
Ingenieria de software final.Ingenieria de software final.
Ingenieria de software final.
 
Iswi t01 - ing sofware
Iswi   t01 - ing sofwareIswi   t01 - ing sofware
Iswi t01 - ing sofware
 

Recently uploaded

PRIMER Y SEGUNDO TEOREMA DE CASTIGLIANO.pdf
PRIMER Y SEGUNDO TEOREMA DE CASTIGLIANO.pdfPRIMER Y SEGUNDO TEOREMA DE CASTIGLIANO.pdf
PRIMER Y SEGUNDO TEOREMA DE CASTIGLIANO.pdfAuraGabriela2
 
FORMATO REPORTE SEMANAL KLEF - Sem 15.pptx
FORMATO REPORTE SEMANAL KLEF - Sem 15.pptxFORMATO REPORTE SEMANAL KLEF - Sem 15.pptx
FORMATO REPORTE SEMANAL KLEF - Sem 15.pptxSAMAELAUGURIOFIGUERE
 
5. MATERIAL COMPLEMENTARIO - PPT de la Sesión 02.pptx
5. MATERIAL COMPLEMENTARIO - PPT  de la Sesión 02.pptx5. MATERIAL COMPLEMENTARIO - PPT  de la Sesión 02.pptx
5. MATERIAL COMPLEMENTARIO - PPT de la Sesión 02.pptxJOSLUISCALLATAENRIQU
 
MAPA CONCEPTUAL: MANIFESTACIONES CULTURALES
MAPA CONCEPTUAL: MANIFESTACIONES CULTURALESMAPA CONCEPTUAL: MANIFESTACIONES CULTURALES
MAPA CONCEPTUAL: MANIFESTACIONES CULTURALESjhosselinvargas
 
La mineralogia y minerales, clasificacion
La mineralogia y minerales, clasificacionLa mineralogia y minerales, clasificacion
La mineralogia y minerales, clasificacionnewspotify528
 
Trabajo en altura de acuerdo a la normativa peruana
Trabajo en altura de acuerdo a la normativa peruanaTrabajo en altura de acuerdo a la normativa peruana
Trabajo en altura de acuerdo a la normativa peruana5extraviado
 
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)ssuser6958b11
 
Sistema de Base de Datos para renta de trajes
Sistema de Base de Datos para renta de trajesSistema de Base de Datos para renta de trajes
Sistema de Base de Datos para renta de trajesjohannyrmnatejeda
 
trabajos en altura 2024, sistemas de contencion anticaidas
trabajos en altura 2024, sistemas de contencion anticaidastrabajos en altura 2024, sistemas de contencion anticaidas
trabajos en altura 2024, sistemas de contencion anticaidasNelsonQuispeQuispitu
 
ESTUDIO TÉCNICO DEL PROYECTO DE CREACION DE SOFTWARE PARA MANTENIMIENTO
ESTUDIO TÉCNICO DEL PROYECTO DE CREACION DE SOFTWARE PARA MANTENIMIENTOESTUDIO TÉCNICO DEL PROYECTO DE CREACION DE SOFTWARE PARA MANTENIMIENTO
ESTUDIO TÉCNICO DEL PROYECTO DE CREACION DE SOFTWARE PARA MANTENIMIENTOCamiloSaavedra30
 
Electricidad y electronica industrial unidad 1
Electricidad y electronica industrial unidad 1Electricidad y electronica industrial unidad 1
Electricidad y electronica industrial unidad 1victorrodrigues972054
 
SEMANA 6 MEDIDAS DE TENDENCIA CENTRAL.pdf
SEMANA  6 MEDIDAS DE TENDENCIA CENTRAL.pdfSEMANA  6 MEDIDAS DE TENDENCIA CENTRAL.pdf
SEMANA 6 MEDIDAS DE TENDENCIA CENTRAL.pdffredyflores58
 
Simbología de Soldadura, interpretacion y aplicacion en dibujo tecnico indus...
Simbología de Soldadura,  interpretacion y aplicacion en dibujo tecnico indus...Simbología de Soldadura,  interpretacion y aplicacion en dibujo tecnico indus...
Simbología de Soldadura, interpretacion y aplicacion en dibujo tecnico indus...esandoval7
 
Estudio de materiales asfalticos para utilizar en obras viales
Estudio de materiales asfalticos para utilizar en obras vialesEstudio de materiales asfalticos para utilizar en obras viales
Estudio de materiales asfalticos para utilizar en obras vialesRamonCortez4
 
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdf
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdfS454444444444444444_CONTROL_SET_A_GEOMN1204.pdf
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdffredyflores58
 
Procedimientos constructivos superestructura, columnas
Procedimientos constructivos superestructura, columnasProcedimientos constructivos superestructura, columnas
Procedimientos constructivos superestructura, columnasAhmedMontaoSnchez1
 
4.3 Subestaciones eléctricas componentes principales .pptx
4.3 Subestaciones eléctricas componentes principales .pptx4.3 Subestaciones eléctricas componentes principales .pptx
4.3 Subestaciones eléctricas componentes principales .pptxEfrain Yungan
 
CFRD simplified sequence for Mazar Hydroelectric Project
CFRD simplified sequence for Mazar Hydroelectric ProjectCFRD simplified sequence for Mazar Hydroelectric Project
CFRD simplified sequence for Mazar Hydroelectric ProjectCarlos Delgado
 
Fe_C_Tratamientos termicos_uap _3_.ppt
Fe_C_Tratamientos termicos_uap   _3_.pptFe_C_Tratamientos termicos_uap   _3_.ppt
Fe_C_Tratamientos termicos_uap _3_.pptVitobailon
 

Recently uploaded (20)

PRIMER Y SEGUNDO TEOREMA DE CASTIGLIANO.pdf
PRIMER Y SEGUNDO TEOREMA DE CASTIGLIANO.pdfPRIMER Y SEGUNDO TEOREMA DE CASTIGLIANO.pdf
PRIMER Y SEGUNDO TEOREMA DE CASTIGLIANO.pdf
 
FORMATO REPORTE SEMANAL KLEF - Sem 15.pptx
FORMATO REPORTE SEMANAL KLEF - Sem 15.pptxFORMATO REPORTE SEMANAL KLEF - Sem 15.pptx
FORMATO REPORTE SEMANAL KLEF - Sem 15.pptx
 
5. MATERIAL COMPLEMENTARIO - PPT de la Sesión 02.pptx
5. MATERIAL COMPLEMENTARIO - PPT  de la Sesión 02.pptx5. MATERIAL COMPLEMENTARIO - PPT  de la Sesión 02.pptx
5. MATERIAL COMPLEMENTARIO - PPT de la Sesión 02.pptx
 
MAPA CONCEPTUAL: MANIFESTACIONES CULTURALES
MAPA CONCEPTUAL: MANIFESTACIONES CULTURALESMAPA CONCEPTUAL: MANIFESTACIONES CULTURALES
MAPA CONCEPTUAL: MANIFESTACIONES CULTURALES
 
La mineralogia y minerales, clasificacion
La mineralogia y minerales, clasificacionLa mineralogia y minerales, clasificacion
La mineralogia y minerales, clasificacion
 
Trabajo en altura de acuerdo a la normativa peruana
Trabajo en altura de acuerdo a la normativa peruanaTrabajo en altura de acuerdo a la normativa peruana
Trabajo en altura de acuerdo a la normativa peruana
 
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)
 
Sistema de Base de Datos para renta de trajes
Sistema de Base de Datos para renta de trajesSistema de Base de Datos para renta de trajes
Sistema de Base de Datos para renta de trajes
 
trabajos en altura 2024, sistemas de contencion anticaidas
trabajos en altura 2024, sistemas de contencion anticaidastrabajos en altura 2024, sistemas de contencion anticaidas
trabajos en altura 2024, sistemas de contencion anticaidas
 
ESTUDIO TÉCNICO DEL PROYECTO DE CREACION DE SOFTWARE PARA MANTENIMIENTO
ESTUDIO TÉCNICO DEL PROYECTO DE CREACION DE SOFTWARE PARA MANTENIMIENTOESTUDIO TÉCNICO DEL PROYECTO DE CREACION DE SOFTWARE PARA MANTENIMIENTO
ESTUDIO TÉCNICO DEL PROYECTO DE CREACION DE SOFTWARE PARA MANTENIMIENTO
 
Linea del tiempo de la inteligencia artificial.pptx
Linea del tiempo de la inteligencia artificial.pptxLinea del tiempo de la inteligencia artificial.pptx
Linea del tiempo de la inteligencia artificial.pptx
 
Electricidad y electronica industrial unidad 1
Electricidad y electronica industrial unidad 1Electricidad y electronica industrial unidad 1
Electricidad y electronica industrial unidad 1
 
SEMANA 6 MEDIDAS DE TENDENCIA CENTRAL.pdf
SEMANA  6 MEDIDAS DE TENDENCIA CENTRAL.pdfSEMANA  6 MEDIDAS DE TENDENCIA CENTRAL.pdf
SEMANA 6 MEDIDAS DE TENDENCIA CENTRAL.pdf
 
Simbología de Soldadura, interpretacion y aplicacion en dibujo tecnico indus...
Simbología de Soldadura,  interpretacion y aplicacion en dibujo tecnico indus...Simbología de Soldadura,  interpretacion y aplicacion en dibujo tecnico indus...
Simbología de Soldadura, interpretacion y aplicacion en dibujo tecnico indus...
 
Estudio de materiales asfalticos para utilizar en obras viales
Estudio de materiales asfalticos para utilizar en obras vialesEstudio de materiales asfalticos para utilizar en obras viales
Estudio de materiales asfalticos para utilizar en obras viales
 
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdf
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdfS454444444444444444_CONTROL_SET_A_GEOMN1204.pdf
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdf
 
Procedimientos constructivos superestructura, columnas
Procedimientos constructivos superestructura, columnasProcedimientos constructivos superestructura, columnas
Procedimientos constructivos superestructura, columnas
 
4.3 Subestaciones eléctricas componentes principales .pptx
4.3 Subestaciones eléctricas componentes principales .pptx4.3 Subestaciones eléctricas componentes principales .pptx
4.3 Subestaciones eléctricas componentes principales .pptx
 
CFRD simplified sequence for Mazar Hydroelectric Project
CFRD simplified sequence for Mazar Hydroelectric ProjectCFRD simplified sequence for Mazar Hydroelectric Project
CFRD simplified sequence for Mazar Hydroelectric Project
 
Fe_C_Tratamientos termicos_uap _3_.ppt
Fe_C_Tratamientos termicos_uap   _3_.pptFe_C_Tratamientos termicos_uap   _3_.ppt
Fe_C_Tratamientos termicos_uap _3_.ppt
 

Ingeniería de Software: Conceptos y Retos

  • 1. INGENIERÍA DE SOFTWARE I – UNIVERSIDAD SERGIO ARBOLEDA  Abstract—Software Engineering is considered nowadays an important science and field of study for establishing software development methodologies. In the following paper a conceptualization about SI is presented and the challenges presented in that discipline in the XXI century. Index Terms—Software, Development, Methodologies, Evaluation. I. INTRODUCCIÓN A ingeniería de software consiste en dar una orientación sistemática y cuantificable al software, como facilitadora para su creación y posterior mantenimiento en diferentes escenarios. La carencia de aplicación de ingeniería de software trae como consecuencia que el software tienda a fallar, a ser más difícil de analizar y a causar retrasos a las personas que lo requieren, como se evidenció por ejemplo en los años 50 donde aún no se consideraba como disciplina. Posteriormente se produjo un suceso conocido como "La crisis del software" donde la comunidad estudiosa del software se reunió y comenzó a establecer estándares y formalizar el trabajo de los ingenieros de software (que en ese momento su metodología no era lo suficientemente estructurada). Tras terminar la segunda guerra mundial se refinó el proceso de elaboración del software agregándole la calidad del mismo. En la actualidad existe un amplio estudio sobre el planteamiento de dichas metodologías, por ejemplo, Pressman estableció que la ingeniería de software podría tener 7 enfoques: de sistemas, de aplicación, científico y de ingeniería, empotrado, de línea de productos, aplicaciones web y de Inteligencia Artificial. Esta ingeniería también puede definirse como un área de las ciencias computacionales donde se hace uso de la gestión de proyectos, diseño, desarrollo, documentación pruebas, control y gestión de calidad y mantenimiento de software; esta ha cobrado mayor importancia debido a que al transcurrir del tiempo se demanda software con mayores funcionalidades y especificaciones causando que este tenga una mayor injerencia social y deba orientarse siempre a lo que busca el cliente ofreciendo herramientas fiables. II. HISTORIA En 1980, Estados Unidos hizo uso de tarjetas perforadas y máquinas tabuladoras para realizar el censo nacional diseñadas por Hernan Hollerith (donde su compañía sería la base del origen de IBM). Hacia 1950 se crearon los primeros compiladores y lenguajes de programación orientando a la ingeniería de software solamente hacia la programación (en ese entonces estructurada, por ende haciendo que los programas fuesen extensos y poco controlables). En 1967 se estableció el grupo de estudios en ciencias computacionales en la OTAN. Ese mismo año se realizó una conferencia en Alemania para discutir el proceso de producción de software, la formación de ingenieros de software, entre otras temáticas. Así mismo el software fue evolucionando como se describe en 4 etapas: los primeros años (donde se introdujo el procesamiento por lotes y software a la medida), la segunda era (apareció la programación multiusuario y en tiempo real, las bases de datos y el aumento en consumo de software), la tercera era (se crearon los sistemas distribuidos y se introdujo el concepto de inteligencia de software, aumento de consumo y baja de precios de hardware) y la cuarta era (se incrementó la potencia de los equipos, se introdujo la programación orientada a objetos, aplicaciones de inteligencia artificial, programación concurrente y crecimiento de las redes de computadores). III. CICLO DE VIDA DEL SOFTWARE Al pasar del tiempo se propusieron diferentes modelos del ciclo de vida del software, el ciclo de vida en cascada donde se estableció el desarrollo lineal y secuencial de las actividades (desde el análisis previo hasta su desarrollo y posterior mantenimiento) e hizo una analogía con la cascada debido a que entre más fuerte fuese un cambio en etapas avanzadas del software, se hacía mucho más difícil volver a estados anteriores del mismo. El ciclo de vida basado en prototipos en el año 1975 donde se hacía un prototipo del software a desarrollar en etapas tempranas de su desarrollo con el fin de que el cliente pudiese visualizar desde un primer momento las funcionalidades que poseería el software. Es un ciclo de vida evolutivo estableciendo que si se agrega personal a un proyecto atrasado, este se retrasará aún más. El ciclo de vida incremental, también proceso evolutivo, donde el software se desarrolla sobre versiones intermedias donde una nueva versión es igual a la anterior agregándole los nuevos Ingeniería de Software: Conceptos y Retos (February 2015) Laura Brugés, Member, Universidad Sergio Arboleda L
  • 2. INGENIERÍA DE SOFTWARE I – UNIVERSIDAD SERGIO ARBOLEDA requerimientos establecidos por el cliente que surgen durante su desarrollo. El ciclo de vida en espiral el cual agrega una nueva fase en el desarrollo de software de evaluación e identificación de riesgos contemplando tres tipos: riesgos de proyecto, riesgos técnicos y riesgos del negocio. El ciclo de vida de agrupamiento o de clúster que está orientado a objetos donde se desarrollan componentes o agregaciones donde cada uno tendrá su propio ciclo de vida, especificación, diseño, etc. El ciclo de vida fuente, igualmente orientado a objetos donde se contempla en concepto de piscina (donde reposan las clases del sistema). Cuenta con tres fases: la del negocio, construcción y entrega. El ciclo de vida rápido de aplicaciones donde se promueve el uso de programación visual y los generadores automáticos de aplicaciones donde se aumenta la productividad de los programadores y se disminuye su tiempo de desarrollo. El ciclo de vida en remolino donde se amplía la versión del ciclo de vida en cascada donde se lleva un proceso iterativo hasta que se alcance el nivel de detalle deseado siendo multi-cíclico semejante a la forma de un remolino. En 1990 la institución ISO, encargada de establecer estándares a nivel global, se estableció el 12207 donde el ciclo de vida del software está conformado por 5 procesos principales (adquisición, suministro, desarrollo, operación y mantenimiento que consiste a los cambios realizados sobre el software), 4 procesos organizacionales (gestión, infraestructura, mejora en los procesos y formación) y 8 de apoyo (documentación, gestión de la configuración, verificación, validación del cumplimiento de los requisitos , revisión conjunta, auditoría y resolución de problemas. IV. DESARROLLO DEL SOFTWARE EN LATINOAMÉRICA La ingeniería de Software puede ser considerada como una alternativa de consolidación económica y de desarrollo por lo que resulta ideal para Latino América donde es una industria en crecimiento para así poder tener más herramientas para competir a nivel global. Países como Costa Rica han mostrado interés en obtener certificaciones relacionadas con software como las normad de ISO 9000 y 2000, habiendo establecido igualmente un plan de desarrollo de software. También se han evidenciado avances en países como Argentina, Chile, Brasil, Uruguay, Perú, Venezuela y Bolivia donde se han establecido organismos específicos para ocuparse de esta área. En Colombia por su parte la industria del software es creciente contando con varias empresas certificadas en ISO y CMMI donde sin embargo falta inversión en dicha materia y en el área de tecnología. Así mismo, Colombia exporta servicios de consultoría, desarrollo e ingeniería de software que se ve limitado debido al nivel de bilingüismo. Por su parte en Colombia se encuentran instituciones como FEDESOFT, INDUSOFT y FEDECOLSOFT entre otras. Más recientemente se fundó el ministerio especializado en tecnologías de la información (min TIC). Así mismo tiene políticas de derechos de autor, reglamentación de inscripción de soporte lógico, entre otros. Contruir correctamente un producto de software implica que este sea fiable (resistente a fallos), de fácil mantenimiento, de acuerdo a los parámetros establecidos por el cliente (respecto a tiempo, costo, expectativas, etc.), ser portable y predecible al momento de estar en funcionamiento. V. INGENIERÍA DE SOFTWARE EN LATINOAMÉRICA Atribuyéndole a la crisis del software el inicio del estudio de la ingeniería de software como ciencia, el principal objetivo de la conferencia que se convocó en torno a ella fue el de usar principios de la ingeniería para producir software de manera económica y a su vez fiable y eficiente. Se buscó darle una caracterización más ingenieril al desarrollo y construcción de software, aunque también requiere de creatividad. Para poder estudiar el desarrollo de software en Latinoamérica se tomaron como referencia tres enfoques. El primer enfoque es la formación académica de profesionales en software debido a que la producción de software de calidad influencia de gran manera la capacidad técnico-académica de los profesionales que llevan a cabo proyectos, su actualización y profundización de su conocimiento para lo cual se recomienda proveer formación académica actualizada, crear condiciones necesarias para responder a la demanda de sorftware con el número de profesionales formados, actualizar constantemente los contenidos relacionados con control y gestión de proyectos, fomentar la creación de grupos de investigación, orientar especializaciones a la ingeniería de requisitos, fomentar y fortalecer la formación a nivel posgrado, promover beca, entre otras. El segundo trata el tema de los atributos de los productos de software, debido a que siempre se busca ofrecer una solución adecuada para los requerimientos del usuario, es necesario focalizarse en aspectos de calidad no relacionados con la funcionalidad del negocio como la confiabilidad que busca no generar inconvenientes al momento de ocurrir un fallo en el sistema (idealmente de funcionamiento ininterrumpido en el tiempo), seguridad que se refiere a la prevención de fraudes y ataques de diferentes tipos, la precisión que busca responder eficientemente a las necesidades que surjan alrededor del uso del software, usabilidad refiriéndose a que deben ser sencillos de entender para sus usuarios, y el mantenimiento que implica que la documentación debe actualizarse con la evolución del software. El tercer enfoque se refiere a la responsabilidad ética y profesional ya que estos aspectos son inherentes al proceso de desarrollo de software. A pesar de que organizaciones como la IEEE promulgan códigos de conducta, no se tienen las suficientes regulaciones en cuanto a las responsabilidades sociales y morales implicadas. Aspectos que se contemplan en cuanto a esto son la competencia que busca que un ingeniero de software no tome trabajos que superen su capacidad ni su área de especialización empresarial, confidencialidad que consiste en respetar la información intercambiada entre cliente y usuario así haya o no un acuerdo de confidencialidad en medio y que no se debe emplear habilidades técnicas para hacer uso inapropiado de hardware.
  • 3. INGENIERÍA DE SOFTWARE I – UNIVERSIDAD SERGIO ARBOLEDA VI. PROYECCIÓN Y RETOS DE LA INGENIERÍA DE SOFTWARE La proyección a futuro de la ingeniería de software no busca predecir sino analizar los cambios para enfrentar situaciones donde se puedan presentar fallos requiriendo creatividad y aplicación de elementos transformadores y de cambio. La primera problemática que se aborda al respecto es la calidad del software donde se requiere del cumplimiento de varios factores los cuales son esenciales en la determinación de las fases iniciales del ciclo de vida haciendo énfasis en requerimientos no funcionales donde se contemplan características como Seguridad (protección de información sensible susceptible a ataque), disponibilidad y confiabilidad (funcionamiento ininterrumpido) y la usabilidad (facilitar el acceso a todo tipo de usuario al software). La segunda se refiere a los servicios y modelos del negocio que involucra modelo de software como servicio, cambio y adaptación de la arquitectura y optimización de recursos para responder a las necesidades del cliente que cada vez se hacen más complejas haciendo que se orientar el software a componentes o frameworks para así incrementar la reutilización Una tercera problemática habla de la integración de sistemas y componentes debido al incremento en la demanda de software por componentes debe evitarse que se pierda el control sobre los mismos donde cada uno podría ser cambiado o actualizado; este inconveniente debe ser solucionado en corto plazo. Como cuarta problemática se tiene que gracias a la creciente demanda de dispositivos móviles deben replantearse las necesidades del usuario en campos como conectividad y diseño de aplicativo donde se busca responder a las necesidades de que el producto sea seguro y confiable. La última se refiere a la selección de recurso humano competente para la capacitación de personal y el desarrollo de proyectos Existen cuatro tendencias en el desarrollo de software: los métodos ágiles e incrementales (que ofrecen atención a modificaciones requeridas por el usuario, la integración de nuevas tecnologías y formación de grupos de desarrollo para lograr interacción y cohesión), dominio de los productos de software (que hacen referencia a su vida útil), ingeniería de requisitos en entornos globales (relacionada con la aplicación de metodologías de trabajo) y la prueba del software (propuesta de metodologías para probar su funcionamiento). En cuanto a las necesidades actuales se encuentra la gestión de conocimiento (planificar, coordinar y controlar el conocimiento que produce una organización de la realización de sus funciones para generar nuevas competencias para combinarlas con las existentes donde vienen asociados cuatro pilares: las personas, los procesos, los contenidos y la tecnología). La ingeniería de software es un proceso cognitivo, debido a que su materia prima es el conocimiento, se debe hacer gestión del mismo, este proceso tiene las siguientes características: requieren de conocimiento de múltiples dominios, el objetivo de un proyecto de software es dinámico, el proceso de obtención y transformación de conocimiento es continuo, la evolución del software es un proceso continuo y el software se orienta a diferentes grupos sociales y áreas geográficas. La gestión de software también se orienta a comprender el conocimiento existente en la aplicación, facilitar a los analistas, arquitectos y desarrolladores el acceso a la información, orientar una metodología para seguir el desarrollo de objetivos cumplidos o por cumplir y dar retroalimentación a cada uno de los miembros del equipo de desarrollo. Dentro de la gestión de los equipos de desarrollo se encuentra la gestión de datos (que incluye el modelo de datos, la administración de bases de datos, el data warehousing, la migración de datos, la minería de datos, entre otros) y la gestión y vigilancia de la información (que incluye la búsqueda de ventajas competitivas, niveles elevados de saturación y el control de la información). VII. CONCLUSIONES La ingeniería de software entró a normalizar, estandarizar y organizar el proceso de la elaboración de software proveyendo una serie de metodologías y paradigmas usando como materia prima el conocimiento y la información buscando dar a este proceso una caracterización más ingenieril buscando que las personas que participen en proyectos de software sean capacitadas y que haya una comprensión y dominio sobre el proceso evolutivo de la creación de software de tal manera que satisfaga las necesidades de los clientes que se van adaptando a un entorno de crecimiento progresivo. La aplicación de ingeniería de software hace que se eviten fallos de construcción de software sobre modelos poco sólidos susceptibles a tener baja seguridad, confiabilidad y ser difíciles de manipular por los usuarios finales que fueron las principales causas de que ocurriera la llamada “Crisis del Software”. Debido a que recientemente se han estado utilizando metodologías de desarrollo en torno a componentes o frameworks es esencial que se tenga control sobre los cambios que se realizan en cada uno de ellos y que tengan la cohesión suficiente para poder ser utilizados como una sola aplicación. La utilización de la Ingeniería de Software en los proyectos de elaboración del mismo puede servir como herramienta para que los países latinoamericanos avancen en materia de producción de software de tal manera que puedan competir con distintas alternativas ofrecidas a nivel internacional y así aportar a su proceso de crecimiento y desarrollo. Como la Ingeniería de Software ayuda a la comprensión y gestión de proyectos se vuelve una herramienta indispensable para los CIOs pudiendo así orientar los procesos de una organización bajo sus principios acercándola al concepto de organización inteligente. VIII. REFERENCIAS [1] Instituto Antioqueño de Investigación, LIBRO BLANCO DE LA INGENIERÍA DE SOFTWARE EN AMÉRICA LATINA 1st ed. Colombia. pp. 23-44, 81-94.