Ingenieria Software
INGENIERIA SOFTWARE
Un ingeniero en software puede desarrollarse de manera independiente o laborar en organizaciones tanto públicas como privadas nacionales e internacionales. Así, puede trabajar en empresas de desarrollo de software, industria del transporte automotriz y aeronáutica, proyectos de instalación y mantenimiento de redes computacionales, bancos y más.
En el mundo de la ingeniería existen muchas ramas que permiten el desarrollo de la vida cotidiana, por ejemplo, gracias a la ingeniería civil es posible tener edificaciones donde vivir, trabajar y hacer vida social. Pero, en este caso nos enfocaremos en un ingeniería enfocada en la tecnología, que permite utilizar aplicaciones o otras páginas para el entretenimiento, el estudio y el trabajo. De modo que si te interesa conocerla, no dejes de leer esta nueva entrada.
La ingeniería de software hace parte de los diversos procesos que los profesionales de las áreas de la tecnología regulan, controlan y dominan. Para un experto en el área, tanto el desarrollo como el mantenimiento de un software es una parte completamente indispensable, y puede convertirse en una labor diaria. Por esta razón se hace necesario el conocer muy bien las características de la ingeniería de software, ya que son estas las que brindan la información actualizada sobre este campo en especifico.
Concepto de ingeniería
El concepto de ingeniería de software ha ido evolucionando con el tiempo. La primera vez de la cual se tiene constancia de su uso, fue entre los años de 1963 y 1964. Fue allí donde Margaret Hamilton, lo usó mientras trabajaba en el programa espacial Apollo y Skylab. Esto para diferenciar su trabajo, con respecto al de la ingeniería de hardware.
Aunque realmente el término empezó a hacerse más popular para octubre de 1968. Fue en la conferencia realizada por la Organización del Tratado del Atlántico Norte (OTAN). Allí se realizaron importantes exposiciones tratando de agrupar las diferentes disciplinas relacionadas con la “fabricación” o programación de productos de software y su arquitectura, con la expresión de “ingeniería de software”.
Para empezar, se debe tener claro lo que significa “software”. La idea que más predomina entre los informáticos es el conjunto de instrucciones, procedimientos, funciones y reglas. Estas son realizadas para lograr una tarea u objetivo específico y que se ejecutan en un dispositivo electrónico. Se puede tener un software desarrollado para un ordenador como para un reloj de pulsera o una camiseta inteligente, por lo que su ámbito de aplicación puede ser muy extenso.
Al principio el software se consideraba un “arte”. Aquí no existían métodos ni procedimientos concretos, sino que era considerado un componente más de la informática. Realizado por “gurús” u “artistas”, en donde plasmaban sus creaciones a través de cientos o miles líneas de código, en donde su “obra de arte final” era lo que se llamaba software o programa.
Con respecto a la ingeniería de software
Es una de las ramas de las ciencias que se encarga del diseño y fabricación del software. Esto cumpliendo estándares de calidad, mediante el uso técnicas, herramientas y métodos que se usan en el desarrollo de los programas informáticos. Asi ar un producto final comúnmente llamado software y que cumpla con las necesidades del usuario o del cliente.
El ingeniero de software
Para lograr el desarrollo de los programas informáticos, en donde se cumplan todos los requisitos, es necesario la participación del ingeniero de software. Este encarga de la correcta planificación, ejecución y gestión del proyecto de desarrollo. Para que el mismo, pueda ser completado en el plazo previsto con los estándares de calidad adecuada y el presupuesto establecido.
En algunos casos pueden presentarse variaciones no previstas. Oor lo tanto, el ingeniero de software debe tener la capacidad de ejecutar las medidas mitigadoras que hagan que estas desviaciones sean las menores posibles. Lamentablemente, muchos proyectos de software tienden a fallar por no seguir ninguna metodología. También por no llevar una técnica o no utilizar las herramientas adecuadas (incluidos los desarrolladores y líderes de proyectos en las herramientas o instrumentos de ejecución).
Para minimizar estos fallos es necesario realizar los desarrollos con un proceso claro. Por ende, el ingeniero de software debe de poseer los conocimientos precisos y dominar las técnicas y métodos necesarios. Durante todas las fases del desarrollo del software, para lograr un producto de calidad y que cumpla con las necesidades del cliente.
La crisis del software
A finales de los años 60, se empezó a percibir entre la comunidad de desarrolladores de software grandes problemas durante el desarrollo de los programas. Esto grosso modo debido a que, en estos años el poder de cómputo de los ordenadores aumentó de forma considerable. Por lo tanto, comenzó a aumentar la complejidad del software desarrollado, muy distante a los elaborados a finales de los años 50, en donde el software se caracterizaba por su baja complejidad, eran desarrollos rudimentarios (si se comparan con los software desarrollados actualmente), de estilo simple y/o sencillo.
Esto con poca o nula metodología durante su desarrollo, se priorizaba la ejecución de las instrucciones en ordenadores con bajo nivel de procesamiento y memoria muy limitada. Estos software eran desarrollados en lenguajes de bajo nivel (conocido popularmente como lenguaje de máquinas), las instrucciones que se ejecutaban ejercían un control directo sobre los recursos de los registros de memoria, las instrucciones al procesador o cualquier otro dispositivo físico del ordenador que se estaba utilizando. Su distribución era limitada y, normalmente, era usado por un solo usuario u organización (monousuario).
Características de la ingeniería de software: los diferentes lenguajes
Una vez que empieza aumentar de forma acelerada el poder de cómputo de los ordenadores, empiezan a aparecer los lenguajes de alto nivel para poder realizar programas más complejos y con mayores exigencias, surge la necesidad de software con multiprogramación, multiusuarios, manejo de base de datos, además aumenta la demanda para desarrollar nuevo software, sin embargo, este no pudo crecer de la forma exponencial como si lo estaba haciendo el hardware, es allí cuando comienza a hablarse de la crisis del software.
Se encuentra que existió la misma fuerza laboral, con los mismos procedimientos y métodos, asimismo, contaban con prácticamente las mismas herramientas, comenzó a atascarse los desarrollos, aumentaron los problemas, se dispararon los costos de producción y los tiempos estimados, los software desarrollados no cumplían con lo solicitado por el cliente o poseían poca o ninguna calidad, causando daños a la propiedad y a los procesos productivos de las empresas.
Comentarios
Publicar un comentario