Sunteți pe pagina 1din 4

INGENIERÍA DE SOFTWARE

En la actualidad, la tecnología ha protagonizado un papel fundamental en el día a día de la


humanidad; avances increíbles en hardware y software que décadas atrás sonaban a ideas de
un futuro lejano, pero de estos dos términos hardware y software que funcionan como
complemento perfecto nos interesa uno en particular, el software. El papel que desempeña el
software en la actualidad no solamente es administrar los recursos físicos de una computadora
o gestionar una información. Pressman, 2010 afirma que:
“Es un producto y al mismo tiempo es el vehículo para entregar un producto. En su
forma de producto, brinda el potencial de cómputo incorporado en el hardware de
cómputo o, con más amplitud, en una red de computadoras a las que se accede por
medio de un hardware local” (Pressman, 2010, p.2)
Se puede discernir que el software es un servicio, que comprende los conjuntos de los
elementos lógicos necesarios para realizar una tarea específica. La interacción entre el
software y el hardware hace posible el funcionamiento de un dispositivo. Además, Pressman
asegura que “el software es un transformador de información —produce, administra,
adquiere, modifica, despliega o transmite” (Pressman, 2010, p.3). El software distribuye y
administra el recurso con mayor valor, la información. Este recurso es de vital importancia
para una compañía porque es allí donde reposa la productividad, oportunidades de negocio y
cifras, como resumen el término software es el administrador de información y procesos
dentro de un sistema.
El concepto de ingeniería de software surgió en 1968 en Alemania, tras discutir las posibles
soluciones que se les darían a las necesidades de estos tiempos. Fue entonces cuando surgió
la época conocida como la “crisis del software” que se originó a finales de los sesenta y
mediados de los ochenta, esta crisis fue causa principalmente por lo engorroso y complejo
que era desarrollar un software que fuera compatible para un hardware, la brecha que generó
el nuevo desarrollo de circuitos integrados ocasionó nuevos desarrollos para los cuales los
equipos de desarrollo no estaban preparados para sistemas tan robustos y complejos.
Estos nuevos proyectos de software no lograban entregarse bajo las fechas estipuladas, lo
cual generaba un costo adicional. Algunos de estos sistemas eran robustos, complejos y
críticos (sistemas contables, sistemas de control, etc.). Además, en muchos casos el producto
final no resultaba una verdadera solución a la necesidad del cliente, o el usuario debía ser un
experto para poder utilizarlo. A diferencia del hardware el software no se podía planificar en
su proceso de fabricación, es decir, no se contaba con unas etapas definidas por intervalos de
tiempo definido.
La década de los sesenta la evolución de los sistemas distribuidos, el acceso a redes de área
local y global, la creciente demanda de acceso instantáneo a los datos ocasionó una presión
sobre los desarrollos del software incrementó notablemente la complejidad, como reacción a
esta complejidad entonces se introduce la programación estructurada 1 , se identifican
principios de diseño, encapsulamiento y tipos de datos, métodos de verificación y validación.
La década de los ochenta se caracteriza por ser la década de la productividad y escalabilidad
de los sistemas, cambian las formas convencionales del desarrollo del software para
incrementar la productividad, se introduce la programación orientada a objetos 2 a través de
múltiples lenguajes de programación desplazando los conceptos tradicionales. Es esta década
surgió el primer modelo de madurez y de capacidad de procesos SW-CMM. También
lenguajes de programación como C++, MATLAB, Pearl; lenguajes que aún nos acompañan
en el siglo XXI.
En los noventa y el nuevo siglo, la concurrencia adquiere una mayor importancia, la
orientación a objetos se amplia a las fases de diseño y análisis, se implementa un lenguaje
dirigido exclusivamente al diseño y modelado del sistema (UML 3 ). La comunidad del
desarrollo de software inicia su experiencia en base a diseños y arquitectura del futuro
producto, Se define el modelo de desarrollo basado en el análisis de riesgo y el desarrollo de
software incremental. También surge una comunidad de software libre y de código abierto,
el “boom” de la informática y el desarrollo inicia su proceso de globalizar el mundo.
Bajo la necesidad de satisfacer los requerimientos en el software, surgió una disciplina
especializada en la creación de software conocida como ingeniería de software. Esta
disciplina de la ingeniería que comprende todos los aspectos de producción de software de
las etapas iniciales, intermedias, especificaciones del sistemas y mantenimiento.
La ingeniería de software tiene como objetivo identificar el problema crear una solución
aplicando métodos, teorías y las herramientas más convenientes para la solución, pero con
un uso selectivo, Además también se debe dar solución a la problemática con restricciones
financieras y organizacionales. La ingeniería de software no solamente comprende los
procesos y requerimientos técnicos necesarios para desarrollar una herramienta, sino que
además con actividades como gestión de proyecto.
Como lo señala Sommerville, “los ingenieros de software adoptan un enfoque sistemático y
organizado en su trabajo, ya que es la forma más efectiva de producir software de alta
calidad” (Sommerville, 2005). Con la cuarta revolución industrial la evolución del software
ha sido rápida y eficaz, la creación de un sistema requiere de un equipo totalmente
especializado.
Pero concretamente qué es ingeniería de software, la IEEE define la ingeniería de software
como “La aplicación de un enfoque sistemático, disciplinado y cuantificable al desarrollo,

1
Es un paradigma de la programación orientado a mejorar la claridad, calidad y tiempo de desarrollo de un
programa. Utilizando únicamente subrutinas (if, switch) y bucles.
2
Es un paradigma de la programación innovando la forma de obtener resultados, manipulando los datos de
entrada para la obtención de datos de salida específicos.
3
Lenguaje unificado de modelado, es un lenguaje gráfico para visualizar, especificar, construir y documentar
un sistema, incluyendo aspectos conceptuales como procesos, funciones del sistema
operación y mantenimiento de software; es decir, la aplicación de la ingeniería al software”,
pero se puede interpretar que el enfoque sistemático, disciplinado y cuantificable podría ser
vulgar para un equipo. Se requiere de adaptabilidad y agilidad para el desarrollo.
Se requiere de unas pautas concretas para obtener un producto de alta calidad en la ingeniería
de software, estas pautas son aplicables a todos los proyectos de software, sin importar su
tamaño o complejidad. Una estructura general para la ingeniería del software consta de cincos
ítems:
Comunicación. Es de critica importancia la comunicación entre el cliente y las personas que
colaboran en el desarrollo del proyecto, y reunir todos los requerimientos que busca
solucionar el proyecto, es decir, entender la problemática y dar la solución más objetiva.
Planeación. Para conseguir el producto final se debe tener una curva de crecimiento en el
proyecto a través de una ruta de navegación. Un diagrama que especifique las tareas a
realizar, posibles riesgos, recursos que se utilizaran y la programación de actividades.
Modelado. Un ingeniero de software debe modelar sus ideas, crear un bosquejo, plano. Se
debe conocer los cimientos de la estructura y las bifurcaciones de la estructura,
Construcción. Se hace uso de las herramientas técnicas, es aquí donde se realiza la creación
y realización de código, y pruebas para corregir errores
Despliegue. Se genera la retroalimentación a través del consumidor que lo evalúa, con el fin
de modificar un producto final eficaz.

La tecnología digital está transformando a las organizaciones de negocios, los sistemas


actuales afectan directamente sobre la decisión de un administrador, la forma en que las
compañías planean distintos recursos, el exponencial crecimiento de tecnología ha dado
origen a la interpretación de información para coordinar decisiones. Esta toma de decisiones
esta revolucionando el mundo de los negocios y la vida cotidiana de las personas.

REFERENCIAS
Pressman, R. (2010). Ingeniería del software un enfoque practico.7th ed., p. 2. México: Pablo
Roig Vázquez.
Sommerville, I. (2005). Ingeniería del Software. Ed 7th Madrid: Miguel Martin Romo.
Kenneth C. Laudon, Jane P. Laudon, Sistemas de información Gerencial, Administración de
la empresa digital, Pearson Prentice Hall, 2008
Irvin R (2012, May 28). ¿Qué es la ingeniería software? Recuperado de
https://social.technet.microsoft.com/Forums/es-ES/7dc2cf80-a6ad-4271-
b4dba1e3edb946fb/-que-es-la-ingenieria-software-?forum=ietechnetes

S-ar putea să vă placă și