sábado, 13 de septiembre de 2014

Investigación 1

¿Qué es ingeniería de software?

Ingeniería de software es la aplicación de un enfoque sistemático, disciplinado y cuantifica ble al desarrollo, operación y mantenimiento de software, y el estudio de estos enfoques, es decir, la aplicación de la ingeniería al software. Es la aplicación de la ingeniería al software, ya que integra matemáticas, ciencias de la computación y prácticas cuyos orígenes se encuentran en la ingeniería.

Se pueden citar otras definiciones enunciadas por prestigiosos autores:
Ingeniería de software es el estudio de los principios y metodologías para el desarrollo y mantenimiento de sistemas software (Zelkovitz, 1978).

Ingeniería de software es la aplicación práctica del conocimiento científico al diseño y construcción de programas de computadora y a la documentación asociada requerida para desarrollar, operar y mantenerlos. Se conoce también como desarrollo de software o producción de software (Bohem, 1976).

La ingeniería de software trata del establecimiento de los principios y métodos de la ingeniería a fin de obtener software de modo rentable, que sea fiable y trabaje en máquinas reales (Bauer, 1972).

En 2004, la U. S. Bureau of Labor Statistics (Oficina de Estadísticas del Trabajo de Estados Unidos) contó 760 840 ingenieros de software de computadora. El término "ingeniero de software", sin embargo, se utiliza de manera genérica en el ambiente empresarial, y no todos los que se desempeñan en el puesto de ingeniero de software poseen realmente títulos de ingeniería de universidades reconocidas.

Algunos autores consideran que "desarrollo de software" es un término más apropiado que "ingeniería de software" para el proceso de crear software. Personas como Pete McBreen (autor de "Software Craftmanship") cree que el término IS implica niveles de rigor y prueba de procesos que no son apropiados para todo tipo de desarrollo de software.
Indistintamente se utilizan los términos "ingeniería de software" o "ingeniería del software"; aunque menos común también se suele referencia como "ingeniería en software". En Hispanoamérica los términos más comúnmente usados son los dos primeros.
La creación del software es un proceso intrínsecamente creativo y la ingeniería del software trata de sistematizar este proceso con el fin de acotar el riesgo del fracaso en la consecución del objetivo, por medio de diversas técnicas que se han demostrado adecuadas en base a la experiencia previa.

La IS se puede considerar como la ingeniería aplicada al software, esto es, por medios sistematizados y con herramientas preestablecidas, la aplicación de ellos de la manera más eficiente para la obtención de resultados óptimos; objetivos que siempre busca la ingeniería. No es sólo de la resolución de problemas, sino más bien teniendo en cuenta las diferentes soluciones, elegir la más apropiada.

El papel evolutivo del software

Hoy en día, el software tiene un papel dual. Es producto y canal de distribución de este. Como producto, ofrece la potencia de cómputo presentada como hardware de una computadora o, de manera más global por una red de computadoras accesible mediante hardware local y de acceso físico. Sin importar el lugar en que resida el software, ya sea en un celular o dentro de una computadora central, éste es un transformador de información; realiza la producción, el manejo, la adquisición, la modificación, el despliegue o la transmisión de la información que puede ser tan simple como un solo bit o tan compleja como una presentación multimedia. En su papel de vehículo para la entrega de un producto, el software actúa como la base para el control de la computadora (Sistemas Operativos), la comunicación de información (redes), y la relación y el control de otros programas (utilerías de software y ambientes).
El software entrega el producto más importante de nuestro tiempo: información. Transforma los datos personales (por ejemplo, las transacciones financieras de un individuo) de forma que los datos sean más útiles en un contexto local; maneja información alrededor del mundo (Internet) y proporciona los medios para adquirir información en todas sus formas.
El papel del software de computadora ha experimentado un cambio significativo en un periodo un poco mayor a 50 años. La mejorías sustanciales en el desempeño del hardware, los cambios profundos en las arquitecturas de cómputo, los enormes incrementos en las capacidades de memoria y almacenamiento, y la amplia variedad de opciones de salida y entrada han propiciado el surgimiento de sistemas más elaborados y complejos basados en computadoras.

En la actualidad una enorme industria del software se ha convertido en un factor dominante en la economía del mundo industrializado. El programador solitario de la era inicial ha sido sustituido por equipos de especialistas en software, en los que cada uno se enfoca en una parte de la tecnología requerida para desarrollar una ampliación compleja. Hasta ahora, las preguntas formuladas al programador solitario son las mismas que se hacen cuando se construyen los sistemas basados en computadoras modernas.

PRIMERA ERA (1950 / 1965)

1.    Se trabajaba con la idea de “Codificar y Corregir”.
2.    No existía un planteamiento previo.
3.    No existía documentación de ningún tipo.
4.    Existencia de pocos métodos formales y pocos creyentes en ellos.
5.    Desarrollado  a base de prueba y error.

SEGUNDO ERA (1965 – 1972)

1.    Se busca simplificar código.
2.    Aparición de Multiprogramación y Sistemas Multiusuarios.
3.Sistemas de Tiempo Real apoyan la toma de decisiones. Aparición de Software como producto. (Casas de Software).
4.    Se buscan procedimientos para el desarrollo del Software.

TERCERA ERA (1972 – 1985)

1.    Nuevo Concepto: Sistemas Distribuidos.
2.    Complejidad en los Sistemas de Información.
3.    Aparecen: Redes de área local y global, y Comunicadores Digitales.
4.    Uso de Microprocesadores.

 CUARTA  ERA (1985 - 1995)

1.    Impacto Colectivo de Software.
2.    Aparecen: Las  Redes de Información, Tecnologías Orientadas a Objetos.
3.    Aparecen: Redes Neuronales, Sistemas Expertos y SW de Inteligencia Artificial.
4.    La información como valor preponderante dentro de las Organizaciones.

QUINTA ERA (2000 hasta hoy en día)

1.    Utiliza algunos requisitos de las eras anteriores solo que aumenta la omnipresencia de la web, la reutilización de información y componentes de software. Codificar: Transformar mediante las reglas de un código la formulación de un mensaje.
2.    Hardware: Componente físico de la computadora. Por ejemplo: el monitor, la impresora o el disco rígido. El hardware por sí mismo no hace que una máquina funcione.

3. Multiprogramación: Se denomina programación a la técnica que permite que dos o más procesos ocupen la misma unidad de memoria principal y que sean ejecutados al "mismo tiempo“.

No hay comentarios:

Publicar un comentario