SlideShare una empresa de Scribd logo
1 de 10
INTRODUCCIÓN
La Ingeniería del Software va a introducirse en la cuarta década de su existencia y sufre de los
muchos puntos fuertes y débiles. La Ingeniería del Software se va aproximando a su edad
media con muchos logros a sus espaldas, pero con un trabajo significativo todavía por hacer.
Hoy en día, está reconocida como una disciplina legítima, digna de tener una investigación
seria, un estudio concienzudo y un grande y tumultuoso debate. En la industria el Ingeniero
del software ha sustituido al programador como título de trabajo preferente. Los modelos de
procesos de software, métodos de ingeniería de software y herramientas se han adoptado con
éxito en el amplio espectro de las aplicaciones industriales. Los gestores y usuarios reconocen
la necesidad de un enfoque más disciplinado del software.
La búsqueda de técnicas que mejorasen la calidad y permitiesen reducir los costos de las
soluciones basadas en computadoras ha sido uno de los objetivos más perseguidos desde los
inicios de la informática. A mediados de los 60, la creación de un producto software se
convertía en una tarea angustiosa, se hizo por tanto necesario introducir una serie de
herramientas y procedimientos que facilitaran por un lado, la labor de creación de nuevo
software y por otro, la comprensión y el manejo del mismo. Estos fueron los inicios de la
Ingeniería del Software. Con el paso del tiempo, la evolución de estos métodos nos han
llevado a reconocer la Ingeniería del Software como una verdadera disciplina, derivada de una
investigación seriay de un estudio minucioso.
LA EVOLUCIÓN DEL SOFTWARE
Durante los primeros años de la era de la computadora, el software se contemplaba como un
añadido. La programación de computadoras era un "arte de andar por casa" para el que
existían pocos métodos sistemáticos. El desarrollo del software se realizaba virtualmente sin
ninguna planificación, hasta que los planes comenzaron a descalabrarse y los costes a correr.
Los programadores trataban de hacer las cosas bien, y con un esfuerzo heroico, a menudo
salían con éxito. El software se diseñaba a medida para cada aplicación y tenía una distribución
relativamente pequeña.
La mayoría del software se desarrollaba y era utilizado por la misma persona u organización.
La misma persona lo escribía, lo ejecutaba y, si fallaba, lo depuraba. Debido a este entorno
personalizado del software, el diseño era un proceso implícito, realizado en la mente de
alguien y, la documentación normalmente no existía.
La segunda era en la evolución de los sistemas de computadora se extienden desde la mitad
de la década de los sesenta hasta finales de los setenta. La multiprogramación y los sistemas
multiusuario introdujeron nuevos conceptos de interacción hombre - máquina. Las técnicas
interactivas abrieron un nuevo mundo de aplicaciones y nuevos niveles de sofisticación del
hardware y del software. Los sistemas de tiempo real podían recoger, analizar y transformar
datos de múltiples fuentes, controlando así los procesos y produciendo salidas en
milisegundos en lugar de minutos. Los avances en los dispositivos de almacenamiento en línea
condujeron a la primera generación de sistemas de gestión de bases de datos.
La segunda era se caracterizó también por el establecimiento del software como producto y la
llegada de las "casas del software". Los patronos de la industria, del gobierno y de la
universidad se aprestaban a "desarrollar el mejor paquete de software" y ganar así mucho
dinero.
Conforme crecía el número de sistemas informáticos, comenzaron a extenderse las bibliotecas
de software de computadora. Las casas desarrollaban proyectos en los que se producían
programas de decenas de miles de sentencia fuente. Todos esos programas, todas esas
sentencias fuente tenían que ser corregidos cuando se detectaban fallos, modificados cuando
cambiaban los requisitos de los usuarios o adaptados a nuevos dispositivos hardware que se
hubieran adquirido. Estas actividades se llamaron colectivamente mantenimiento del software.
La tercera era en la evolución de los sistemas de computadora comenzó a mediados de los
años setenta y continúo mas allá de una década. El sistema distribuido, múltiples
computadoras, cada una ejecutando funciones concurrentes y comunicándose con alguna otra,
incrementó notablemente la complejidad de los sistemas informáticos. Las redes de área local
y de área global, las comunicaciones digitales de alto ancho de banda y la creciente demanda
de acceso "instantáneo" a los datos, supusieron una fuerte presión sobre los desarrolladores
del software.
La conclusión de la tercera era se caracterizó por la llegada y amplio uso de los
microprocesadores. El microprocesador ha producido un extenso grupo de productos
inteligentes, desde automóviles hasta hornos microondas, desde robots industriales a equipos
de diagnósticos de suero sanguíneo.
La cuarta era de la evolución de los sistemas informáticos se aleja de las computadoras
individuales y de los programas de computadoras, dirigiéndose al impacto colectivo de las
computadoras y del software. Potentes maquinas personales controladas por sistemas
operativos sofisticados, en redes globales y locales, acompañadas por aplicaciones de software
avanzadas se han convertido en la norma.
La industria del software ya es la cuna de la economía del mundo. Las técnicas de la cuarta
generación para el desarrollo del software están cambiando en la forma en que la comunidad
del software construye programas informáticos. Las tecnologías orientadas a objetos están
desplazando rápidamente los enfoques de desarrollo de software más convencionales en
muchas áreas de aplicaciones.
Sin embargo, un conjunto de problemas relacionados con el software ha persistido a través de
la evolución de los sistemas basados en computadora, y estos problemas continúan
aumentando.
avances del software continúan dejando atrás nuestra habilidad de construir software
para alcanzar el potencial del hardware.
habilidad de construir nuevos programas no pueden ir al mismo ritmo de la
demanda de nuevos programas, ni podemos construir programas lo suficientemente rápido
como para cumplir las necesidades del mercado y de los negocios.
uso extenso de computadoras ha hecho de la sociedad cada vez más dependiente de la
operación fiable del software. Cuando el software falla, pueden ocurrir daños económicos
enormes y ocasionar sufrimiento humano.
por construir software informático que tengan fiabilidad y alta calidad.
habilidad de soportar y mejorar los programas existentes se ve amenazada por
diseños pobres y recursos inadecuados.
En respuesta a estos problemas, las prácticas de la Ingeniería del Software se están adoptando
en toda la industria.
QUE ES LA INGENIERÍA DEL SOFTWARE?
La Ingeniería del software es una disciplina o área de la Informática o Ciencias de la
Computación, que ofrece métodos y técnicas para desarrollar y mantener software de calidad
que resuelven problemas de todo tipo. Hoy día es cada vez mas frecuente la consideración de
la Ingeniería del Software como una nueva área de la Ingeniería, y el Ingeniero del Software
comienza a ser una profesión implantada en el mundo laboral internacional, con derechos,
deberes y responsabilidades que cumplir, junto a una, ya, reconocida consideración social en el
mundo empresarial y, por suerte, para esas personas con brillante futuro.
La ingeniería del software trata con áreas muy diversas de la Informática y de las Ciencias de la
Computación, tales como construcción de compiladores, sistemas operativos o desarrollos de
Intranet/Internet, abordando todas las fases del ciclo de vida del desarrollo de cualquier tipo
de sistemas de información y aplicables a una infinidad de áreas tales como: negocios,
investigación científica, medicina, producción, logística, banca, control de tráfico, meteorología,
el mundo del derecho, la red de redes Internet, redes Intranet y Extranet, etc.
DEFINICIÓN DEL TERMINO INGENIERÍA DEL SOFTWARE
El termino Ingeniería se define en el Diccionario de la Real Academia Española de la Lengua
como: "1. Conjunto de conocimientos y técnicas que permiten aplicar el saber científico a la
utilización de la materia y de las fuentes de energía. 2. Profesión y ejercicio del Ingeniero" y el
termino Ingeniero se define como: persona que profesa o ejerce la Ingeniería. De igual modo
la Real Academia de Ciencias Exactas, Físicas y Naturales de España define el termino
Ingeniería como: " Un conjunto de conocimientos y técnicas cuya aplicación permite la
utilización racional de los materiales y de los recursos naturales, mediante invenciones,
construcciones u otras realizaciones provechosas para el hombre".
Evidentemente, si la Ingeniería del Software es una nueva Ingeniería, parece lógico que reúna
las propiedades citadas en las definiciones anteriores. Sin embargo ni el DRAE(Diccionario de la
Real Academia Española de la Lengua), ni la Real Academia Española de Ciencias han incluido
todavía el termino en sus últimas ediciones; en consecuencia vamos a recurrir para su
definición más precisa a algunos de los autores más acreditados que comenzaron en su
momento a utilizar el término o bien en las definiciones dadas por organismos internacionales
profesionales de prestigio tales como IEEE o ACM, de los cuales se han seleccionado las
siguientes definiciones de Ingeniería del Software.
DEFINICIÓN 1:
Ingeniería del Software es el estudio de los principios y metodologías para desarrollo y
mantenimiento de sistemas de software [Zelkovits, 1978].
DEFINICIÓN 2:
Ingeniería del Software es la aplicación práctica del conocimiento científico en el diseño y
construcción de programas de computadora y la documentación necesaria requerida para
desarrollar, operar (funcionar) y mantenerlos [Bohem, 1976].
DEFINICIÓN 3:
Ingeniería del 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].
DEFINICIÓN 4:
La aplicación de un enfoque sistemático, disciplinado y cuantificable al desarrollo, operación
(funcionamiento) y mantenimiento del software; es decir, la aplicación de Ingeniería al software
[IEEE, 1993].
UNA PERSPECTIVA INDUSTRIAL
En los primeros días de la informática, los sistemas basados en computadora se desarrollaban
usando técnicas de gestión orientadas a hardware. Los gestores del proyecto se centraban en
el hardware, debido a que era el factor principal del presupuesto en el desarrollo del sistema.
Para controlar los costes del hardware, los gestores instituyeron controles formales y
estándares técnicos. Exigían un análisis y diseño completo antes de que algo se construyera.
Mediante el proceso para determinar donde podían hacerse mejoras. Dicho sencillamente,
aplicaban los controles, los métodos y las herramientas que reconocemos como Ingeniería del
Hardware. Desgraciadamente, el software no era normalmente más que un añadido.
En los primeros días, la programación se veía como un arte. Existían pocos métodos formales y
pocas personas los usaban.
Hoy, la distribución de costes en el desarrollo de sistemas informáticos ha cambiado
drásticamente. El software, en lugar del hardware, es normalmente el elemento principal del
coste.
En las décadas pasadas los ejecutivos y muchos aprendices técnicos se habían hecho las
siguientes preguntas:
¿Por qué lleva tanto tiempo terminar los programas?
¿Por qué es tan elevado el coste?
¿Por qué no podemos encontrar todos los errores antes de entregar el software a nuestros
clientes?
¿Por qué nos resulta difícil constatar el progreso conforme se desarrolla el software?
Estas y otras muchas cuestiones son una manifestación del carácter del software y de la forma
en que se desarrolla, un problema que ha llevado a la adopción de la Ingeniería del Software
como práctica.
COMPETITIVIDAD DEL SOFTWARE
Durante muchos años, los desarrolladores de software empleados por grandes y pequeñas
compañías eran los únicos en este campo. Como todos los programas se construían de forma
personalizada, los desarrolladores de este software domestico dictaban los costes, planificación
y calidad. Hoy, todo esto ha cambiado.
El software ahora es una empresa extremadamente competitiva. El software que se construía
internamente ahora se puede adquirir en tiendas. Muchas empresas que en su momento
pagaban legiones de programadores para crear aplicaciones especializadas ahora ofrecen a un
tercero mucho del trabajo del software.
EL SOFTWARE
La descripción de software en un libro de texto podría tomar la forma siguiente: el software es
(1) instrucciones que cuando se ejecutan proporcionan la función y el rendimiento deseados,
(2) estructuras de datos que permiten a los programas manipular adecuadamente la
información, y (3) documentos que describen la operación y el uso de programas.
CARACTERÍSTICAS DEL SOFTWARE
Para poder comprender lo que es el software (y consecuentemente la Ingeniería del Software),
es importante examinar las características del software que lo diferencian de otras cosas que
los hombres pueden construir.
El software es un elemento del sistema que es lógico, en lugar de físico. Por lo tanto el
software tiene unas características considerablemente distintas a las del hardware:
el desarrollo del software y la construcción del hardware, ambas actividades son
fundamentalmente diferentes. En ambas actividades la buena calidad se adquiere mediante un
buen diseño, pero la fase de construcción del hardware puede introducir problemas de calidad
que no existen (o son fácilmente corregibles) en el software. Ambas actividades dependen de
las personas, pero la relación entre las personas dedicadas y el trabajo realizado es
completamente diferente para el software. Ambas actividades requieren de la construcción de
un producto, pero los métodos son diferentes.
Los costes del software se encuentran en la ingeniería. Esto significa que los proyectos de
software no se pueden gestionar como si fueran proyectos de fabricación.
s del entorno que hacen
que el hardware se estropee. Otro aspecto de ese deterioro ilustra la diferencia entre el
hardware y el software. Cuando un componente se estropea, se sustituye por una pieza de
repuesto. No hay pieza de repuesto para el software. Cada fallo en el software indica un error
en el diseño o en el proceso mediante el que se tradujo el diseño a código maquina
ejecutable. Por tanto, el mantenimiento del software tiene una complejidad considerablemente
mayor que la del mantenimiento del hardware.
existentes. No existen catálogos de componentes de software. Se puede comprar software ya
desarrollado, pero solo como una unidad completa, no como componentes que pueden
reensamblarse en nuevos programas.
Importante para un componente de software de alta calidad. El componente debería diseñarse
COMPONENTES DEL SOFTWARE
La reutilización es una característica e implementarse para que pueda volver a ser reutilizado
en muchos programas diferentes.
Los componentes de software se construyen mediante un lenguaje de programación que tiene
un vocabulario limitado, una gramática definida explícitamente y reglas bien formadas de
sintaxis y semántica.
Aplicaciones del software
El software puede aplicarse en cualquier situación en la que se haya definido previamente un
conjunto especifico de pasos procedimentales (es decir, un algoritmo). (Excepciones notables a
esta regla son el software de los sistemas expertos y de redes neuronales).
Las siguientes áreas del software indican la amplitud de las aplicaciones potenciales:
escritos para servir a otros programas. El área del Software de Sistemas se caracteriza por una
fuerte interacción con el hardware de la computadora; una gran utilización por múltiples
usuarios; una operación concurrente que requiere una planificación, una compartición de
recursos y una sofisticada gestión de procesos; unas estructuras de datos complejas y múltiples
interfaces externas. (p. Ej.: compiladores, editores, utilidades, ciertos componentes del sistema
operativo, utilidades de manejo de periféricos, procesadores de telecomunicaciones).
tware que mide/analiza/controla sucesos del mundo real
conforme ocurren, se denomina de tiempo real. Entre los elementos del software de tiempo
real se incluyen: un componente de adquisición de datos que recolecta y da formato a la
información recibida del entorno externo, un componente de análisis que transforma la
información recibida del entorno externo, un componente de análisis que transforma la
información según lo requiera la aplicación, un componente de control/salida que responda al
entorno externo y un componente de monitorización que coordina todos los demás
componentes, de forma tal que pueda mantenerse la respuesta en tiempo real.
áreas de aplicación del software. Los sistemas discretos (p. Ej.: nominas, cuentas de
haberes/débitos, inventarios, etc.), han evolucionado hacia el software de sistemas de
información de gestión (SIG), que accede a una o más bases de datos grandes que contienen
información comercial. Las aplicaciones en esta área reestructuran los datos existentes para
facilitar las operaciones comerciales o gestionar la toma de decisiones. Además de las tareas
convencionales de procesamiento de datos, las aplicaciones de software de gestión también
realizan calculo interactivo (p. Ej. : el procesamiento de transacciones en puntos de ventas).
por los algoritmos de manejo de números. Las aplicaciones van desde la astronomía a la
vulcanología, desde el análisis de la presión de los automotores a la dinámica orbital de los
lanzadores espaciales y desde la biología molecular a la fabricación automática.
memoria de solo lectura y se utiliza
para controlar productos y sistemas de los mercados industriales y de consumo. El software
empotrado puede ejecutar funciones muy limitadas y curiosas (p. Ej.: el control de las teclas de
un horno de microondas) o suministrar una función significativa y con capacidad de control (p.
Ej.: funciones digitales en un automóvil, tales como control de la gasolina, indicaciones en el
salpicadero, sistemas de frenado, etc.).
oftware de computadoras personales
ha germinado en la pasada década. El procesamiento de textos, las hojas de cálculo, los
gráficos por computadora, multimedia, entretenimientos, gestión de bases de datos,
aplicaciones financieras de negocios y personales, y redes o acceso a bases de datos externas
son algunas de los cientos de aplicaciones.
algoritmos no numéricos para resolver problemas complejos para los que no son adecuados el
cálculo o el análisis directo. El área más activa de la IA es la de los sistemas expertos, también
llamados sistemas basados en el conocimiento.
Hoy en día el software tiene un doble papel. Es un producto y, al mismo tiempo, el vehículo
para hacer entrega de un producto. Como producto, hace entrega de la potencia informática
del hardware informático. Si reside dentro de un teléfono celular u opera dentro de una
computadora central, el software es un transformador de información, produciendo,
gestionando, adquiriendo, modificando, mostrando o transmitiendo información que puede ser
tan simple como un solo bit, o tan compleja como una simulación en multimedia. Como
vehículo utilizado para hacer entrega del producto, el software actúa como la base de control
de la computadora (sistemas operativos), la comunicación de información (redes), y la creación
y control de otros programas (herramientas de software y entornos).
El software de computadora, se ha convertido en el alma mater. Es la máquina que conduce a
la toma de decisiones comerciales. Sirve como la base de investigación científicamoderna y de
resolución de problemas de ingeniería. Es el factor clave que diferencia los productos y
servicios modernos. Está inmerso en sistemas de todo tipo: de transportes, médicos, de
telecomunicaciones, militares, procesos industriales, entretenimientos, productos de oficina, etc.
El software será el que nos lleve de la mano en los avances en todo desde la educación
elemental a la Ingeniería Genética.
EVOLUCIÓN DE LA INGENIERÍA DEL SOFTWARE
Inicialmente la programación de las computadoras era un arte que no disponía de métodos
sistemáticos en los que poder basarse para la realización de productos software. Se realizaban
sin ninguna planificación. Evolución y Perspectivas de la Ingeniería del Software
Posteriormente, desde mediados de los 60 hasta finales de los 70 se caracterizó por el
establecimiento del software como un producto que se desarrollaba para una distribución
general. En esta época nació lo que se conoce como el mantenimiento del software que se da
cuando cambian los requisitos de los usuarios y se hace necesaria la modificación del software.
El esfuerzo requerido para este mantenimiento era en la mayoría de los casos tan elevado que
se hacía imposible su mantenimiento. A continuación, surge una etapa que se caracteriza por
la aparición de una serie de técnicas como la Programación Estructurada y las Metodologías de
Diseño que solucionan los problemas anteriores. A finales de esta etapa aparecen las
herramientas CASE, aunque como podemos imaginar eran muy rudimentarias.
CONCLUSIÓN
El software se ha convertido en el elemento clave de la evolución de los sistemas y productos
informáticos. En las pasadas cuatro décadas, el software ha pasado de ser una resolución de
problemas especializadas y una herramienta de análisis de información, a ser una industria por
si misma. Pero la temprana cultura e historia de la programación ha creado un conjunto de
problemas que persisten todavía. El software se ha convertido en un factor que limita la
evolución de los sistemas informáticos. El software se compone de programas, datos y
documentos. Cada uno de estos elementos compone una configuración que se crea como
parte del proceso de la Ingeniería del Software. El intento de la Ingeniería del Software es
proporcionar un marco de trabajo para construir software con mayor calidad

Más contenido relacionado

La actualidad más candente

Guia 2 sexto introsoftware
Guia 2 sexto introsoftwareGuia 2 sexto introsoftware
Guia 2 sexto introsoftwarehgm2007
 
Repaso Sexto
Repaso SextoRepaso Sexto
Repaso Sextohgm2007
 
Guia 1 6 introprogramacion_4_p_2019
Guia 1 6 introprogramacion_4_p_2019Guia 1 6 introprogramacion_4_p_2019
Guia 1 6 introprogramacion_4_p_2019hgm2007
 
Guia 1 7 introprogramacion_4_p_2019
Guia 1 7 introprogramacion_4_p_2019Guia 1 7 introprogramacion_4_p_2019
Guia 1 7 introprogramacion_4_p_2019hgm2007
 
Tendencias en ingeniería de software e ingeniería web2
Tendencias en ingeniería de software e ingeniería web2Tendencias en ingeniería de software e ingeniería web2
Tendencias en ingeniería de software e ingeniería web2Julio Adrian
 
Guia 2 sexto introsoftware_periodo
Guia 2 sexto introsoftware_periodoGuia 2 sexto introsoftware_periodo
Guia 2 sexto introsoftware_periodohgm2007
 
00 presentación ingeniería_delsoftware_ii_conductadeentrada
00 presentación ingeniería_delsoftware_ii_conductadeentrada00 presentación ingeniería_delsoftware_ii_conductadeentrada
00 presentación ingeniería_delsoftware_ii_conductadeentradaLuis Eduardo Pelaez Valencia
 
Revoluciondigital
RevoluciondigitalRevoluciondigital
Revoluciondigitaljose moon
 

La actualidad más candente (15)

Guia 2 sexto introsoftware
Guia 2 sexto introsoftwareGuia 2 sexto introsoftware
Guia 2 sexto introsoftware
 
Repaso Sexto
Repaso SextoRepaso Sexto
Repaso Sexto
 
Guia 1 6 introprogramacion_4_p_2019
Guia 1 6 introprogramacion_4_p_2019Guia 1 6 introprogramacion_4_p_2019
Guia 1 6 introprogramacion_4_p_2019
 
Guia 1 7 introprogramacion_4_p_2019
Guia 1 7 introprogramacion_4_p_2019Guia 1 7 introprogramacion_4_p_2019
Guia 1 7 introprogramacion_4_p_2019
 
Tendencias en ingeniería de software e ingeniería web2
Tendencias en ingeniería de software e ingeniería web2Tendencias en ingeniería de software e ingeniería web2
Tendencias en ingeniería de software e ingeniería web2
 
Guia 2 sexto introsoftware_periodo
Guia 2 sexto introsoftware_periodoGuia 2 sexto introsoftware_periodo
Guia 2 sexto introsoftware_periodo
 
Software
SoftwareSoftware
Software
 
00 presentación ingeniería_delsoftware_ii_conductadeentrada
00 presentación ingeniería_delsoftware_ii_conductadeentrada00 presentación ingeniería_delsoftware_ii_conductadeentrada
00 presentación ingeniería_delsoftware_ii_conductadeentrada
 
La tecnología
La tecnologíaLa tecnología
La tecnología
 
Modulo Bata
Modulo BataModulo Bata
Modulo Bata
 
Tema ntic
Tema nticTema ntic
Tema ntic
 
Introduccion
IntroduccionIntroduccion
Introduccion
 
V2n2a1 (1)
V2n2a1 (1)V2n2a1 (1)
V2n2a1 (1)
 
El sofware
El sofwareEl sofware
El sofware
 
Revoluciondigital
RevoluciondigitalRevoluciondigital
Revoluciondigital
 

Destacado

Medial s flashcards
Medial s flashcardsMedial s flashcards
Medial s flashcardsmjpalandete1
 
Arquitectura del computador
Arquitectura del computadorArquitectura del computador
Arquitectura del computadorheidyveronica
 
Prezentacja polecane miejsca
Prezentacja polecane miejscaPrezentacja polecane miejsca
Prezentacja polecane miejscaewa84
 
Week 2: Storyboard
Week 2: StoryboardWeek 2: Storyboard
Week 2: StoryboardCourtney Lee
 
Final s flashcards
Final s flashcardsFinal s flashcards
Final s flashcardsmjpalandete1
 
Final z flashcards
Final z flashcardsFinal z flashcards
Final z flashcardsmjpalandete1
 
Initial s flashcards
Initial s flashcardsInitial s flashcards
Initial s flashcardsmjpalandete1
 
Initial z flashcards
Initial z flashcardsInitial z flashcards
Initial z flashcardsmjpalandete1
 
BearTek pitch 2014 05-20 - powermovesnola
BearTek pitch 2014 05-20 - powermovesnolaBearTek pitch 2014 05-20 - powermovesnola
BearTek pitch 2014 05-20 - powermovesnolaJason X.S. Peat
 

Destacado (10)

practica1
practica1practica1
practica1
 
Medial s flashcards
Medial s flashcardsMedial s flashcards
Medial s flashcards
 
Arquitectura del computador
Arquitectura del computadorArquitectura del computador
Arquitectura del computador
 
Prezentacja polecane miejsca
Prezentacja polecane miejscaPrezentacja polecane miejsca
Prezentacja polecane miejsca
 
Week 2: Storyboard
Week 2: StoryboardWeek 2: Storyboard
Week 2: Storyboard
 
Final s flashcards
Final s flashcardsFinal s flashcards
Final s flashcards
 
Final z flashcards
Final z flashcardsFinal z flashcards
Final z flashcards
 
Initial s flashcards
Initial s flashcardsInitial s flashcards
Initial s flashcards
 
Initial z flashcards
Initial z flashcardsInitial z flashcards
Initial z flashcards
 
BearTek pitch 2014 05-20 - powermovesnola
BearTek pitch 2014 05-20 - powermovesnolaBearTek pitch 2014 05-20 - powermovesnola
BearTek pitch 2014 05-20 - powermovesnola
 

Similar a Software

Guia 1 8 introprogramacion_4_periodo_2018
Guia 1 8 introprogramacion_4_periodo_2018Guia 1 8 introprogramacion_4_periodo_2018
Guia 1 8 introprogramacion_4_periodo_2018hgm2007
 
Barrerasa de los Elementos mmmmmmmmmmmmm
Barrerasa de los Elementos mmmmmmmmmmmmmBarrerasa de los Elementos mmmmmmmmmmmmm
Barrerasa de los Elementos mmmmmmmmmmmmmmargarita amante
 
Guia 2 sexto intro software 4 periodo
Guia 2 sexto intro software 4 periodoGuia 2 sexto intro software 4 periodo
Guia 2 sexto intro software 4 periodohgm2007
 
6. is construcción del software
6. is construcción del software6. is construcción del software
6. is construcción del softwareNagut
 
Software de ingeniería.diana.2ºc
Software de ingeniería.diana.2ºcSoftware de ingeniería.diana.2ºc
Software de ingeniería.diana.2ºcdianafani
 
Historia del software contable
Historia del software contableHistoria del software contable
Historia del software contablelinarodriguez16
 
Ingeniria del sofware
Ingeniria del sofwareIngeniria del sofware
Ingeniria del sofwareMario Correa
 
Ingenieria del software
Ingenieria del softwareIngenieria del software
Ingenieria del softwareleonelardila29
 
Software en la actualidad.
Software en la actualidad.Software en la actualidad.
Software en la actualidad.Absner Anaya
 
Software en la actualidad
Software en la actualidadSoftware en la actualidad
Software en la actualidadVictor Cones
 
Computacion e informatica
Computacion e informaticaComputacion e informatica
Computacion e informaticadeisyft
 

Similar a Software (20)

Guia 1 8 introprogramacion_4_periodo_2018
Guia 1 8 introprogramacion_4_periodo_2018Guia 1 8 introprogramacion_4_periodo_2018
Guia 1 8 introprogramacion_4_periodo_2018
 
Barrerasa de los Elementos mmmmmmmmmmmmm
Barrerasa de los Elementos mmmmmmmmmmmmmBarrerasa de los Elementos mmmmmmmmmmmmm
Barrerasa de los Elementos mmmmmmmmmmmmm
 
Guia 2 sexto intro software 4 periodo
Guia 2 sexto intro software 4 periodoGuia 2 sexto intro software 4 periodo
Guia 2 sexto intro software 4 periodo
 
6. is construcción del software
6. is construcción del software6. is construcción del software
6. is construcción del software
 
Software
SoftwareSoftware
Software
 
David valdiviezo ing.pdf
David valdiviezo ing.pdfDavid valdiviezo ing.pdf
David valdiviezo ing.pdf
 
Separata de metodologia desarrollo software
Separata de metodologia desarrollo softwareSeparata de metodologia desarrollo software
Separata de metodologia desarrollo software
 
Marcos mendoza ing
Marcos mendoza ingMarcos mendoza ing
Marcos mendoza ing
 
Marcos mendoza ing-2
Marcos mendoza ing-2Marcos mendoza ing-2
Marcos mendoza ing-2
 
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
 
Software de ingeniería.diana.2ºc
Software de ingeniería.diana.2ºcSoftware de ingeniería.diana.2ºc
Software de ingeniería.diana.2ºc
 
Estado del arte de la ingsw
Estado del arte de la ingswEstado del arte de la ingsw
Estado del arte de la ingsw
 
Historia del software contable
Historia del software contableHistoria del software contable
Historia del software contable
 
Ingeniria del sofware
Ingeniria del sofwareIngeniria del sofware
Ingeniria del sofware
 
Ingenieria del software
Ingenieria del softwareIngenieria del software
Ingenieria del software
 
Pattyyyyy
PattyyyyyPattyyyyy
Pattyyyyy
 
Cap 7 ingenieria del software
Cap 7 ingenieria del softwareCap 7 ingenieria del software
Cap 7 ingenieria del software
 
Software en la actualidad.
Software en la actualidad.Software en la actualidad.
Software en la actualidad.
 
Software en la actualidad
Software en la actualidadSoftware en la actualidad
Software en la actualidad
 
Computacion e informatica
Computacion e informaticaComputacion e informatica
Computacion e informatica
 

Último

COMPETENCIAS CIUDADANASadadadadadadada .pdf
COMPETENCIAS CIUDADANASadadadadadadada .pdfCOMPETENCIAS CIUDADANASadadadadadadada .pdf
COMPETENCIAS CIUDADANASadadadadadadada .pdfOscarBlas6
 
Guia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdfGuia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdflauradbernals
 
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdfNUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdfisrael garcia
 
Buscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la webBuscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la webDecaunlz
 
institucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalenainstitucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalenajuniorcuellargomez
 
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENAINSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENAdanielaerazok
 
12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdf12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdfedwinmelgarschlink2
 
Institucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalenaInstitucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalenadanielaerazok
 

Último (8)

COMPETENCIAS CIUDADANASadadadadadadada .pdf
COMPETENCIAS CIUDADANASadadadadadadada .pdfCOMPETENCIAS CIUDADANASadadadadadadada .pdf
COMPETENCIAS CIUDADANASadadadadadadada .pdf
 
Guia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdfGuia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdf
 
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdfNUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
 
Buscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la webBuscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la web
 
institucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalenainstitucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalena
 
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENAINSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
 
12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdf12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdf
 
Institucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalenaInstitucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalena
 

Software

  • 1. INTRODUCCIÓN La Ingeniería del Software va a introducirse en la cuarta década de su existencia y sufre de los muchos puntos fuertes y débiles. La Ingeniería del Software se va aproximando a su edad media con muchos logros a sus espaldas, pero con un trabajo significativo todavía por hacer. Hoy en día, está reconocida como una disciplina legítima, digna de tener una investigación seria, un estudio concienzudo y un grande y tumultuoso debate. En la industria el Ingeniero del software ha sustituido al programador como título de trabajo preferente. Los modelos de procesos de software, métodos de ingeniería de software y herramientas se han adoptado con éxito en el amplio espectro de las aplicaciones industriales. Los gestores y usuarios reconocen la necesidad de un enfoque más disciplinado del software. La búsqueda de técnicas que mejorasen la calidad y permitiesen reducir los costos de las soluciones basadas en computadoras ha sido uno de los objetivos más perseguidos desde los inicios de la informática. A mediados de los 60, la creación de un producto software se convertía en una tarea angustiosa, se hizo por tanto necesario introducir una serie de herramientas y procedimientos que facilitaran por un lado, la labor de creación de nuevo software y por otro, la comprensión y el manejo del mismo. Estos fueron los inicios de la Ingeniería del Software. Con el paso del tiempo, la evolución de estos métodos nos han llevado a reconocer la Ingeniería del Software como una verdadera disciplina, derivada de una investigación seriay de un estudio minucioso. LA EVOLUCIÓN DEL SOFTWARE Durante los primeros años de la era de la computadora, el software se contemplaba como un añadido. La programación de computadoras era un "arte de andar por casa" para el que existían pocos métodos sistemáticos. El desarrollo del software se realizaba virtualmente sin ninguna planificación, hasta que los planes comenzaron a descalabrarse y los costes a correr. Los programadores trataban de hacer las cosas bien, y con un esfuerzo heroico, a menudo salían con éxito. El software se diseñaba a medida para cada aplicación y tenía una distribución relativamente pequeña. La mayoría del software se desarrollaba y era utilizado por la misma persona u organización. La misma persona lo escribía, lo ejecutaba y, si fallaba, lo depuraba. Debido a este entorno personalizado del software, el diseño era un proceso implícito, realizado en la mente de alguien y, la documentación normalmente no existía. La segunda era en la evolución de los sistemas de computadora se extienden desde la mitad de la década de los sesenta hasta finales de los setenta. La multiprogramación y los sistemas
  • 2. multiusuario introdujeron nuevos conceptos de interacción hombre - máquina. Las técnicas interactivas abrieron un nuevo mundo de aplicaciones y nuevos niveles de sofisticación del hardware y del software. Los sistemas de tiempo real podían recoger, analizar y transformar datos de múltiples fuentes, controlando así los procesos y produciendo salidas en milisegundos en lugar de minutos. Los avances en los dispositivos de almacenamiento en línea condujeron a la primera generación de sistemas de gestión de bases de datos. La segunda era se caracterizó también por el establecimiento del software como producto y la llegada de las "casas del software". Los patronos de la industria, del gobierno y de la universidad se aprestaban a "desarrollar el mejor paquete de software" y ganar así mucho dinero. Conforme crecía el número de sistemas informáticos, comenzaron a extenderse las bibliotecas de software de computadora. Las casas desarrollaban proyectos en los que se producían programas de decenas de miles de sentencia fuente. Todos esos programas, todas esas sentencias fuente tenían que ser corregidos cuando se detectaban fallos, modificados cuando cambiaban los requisitos de los usuarios o adaptados a nuevos dispositivos hardware que se hubieran adquirido. Estas actividades se llamaron colectivamente mantenimiento del software. La tercera era en la evolución de los sistemas de computadora comenzó a mediados de los años setenta y continúo mas allá de una década. El sistema distribuido, múltiples computadoras, cada una ejecutando funciones concurrentes y comunicándose con alguna otra, incrementó notablemente la complejidad de los sistemas informáticos. Las redes de área local y de área global, las comunicaciones digitales de alto ancho de banda y la creciente demanda de acceso "instantáneo" a los datos, supusieron una fuerte presión sobre los desarrolladores del software. La conclusión de la tercera era se caracterizó por la llegada y amplio uso de los microprocesadores. El microprocesador ha producido un extenso grupo de productos inteligentes, desde automóviles hasta hornos microondas, desde robots industriales a equipos de diagnósticos de suero sanguíneo. La cuarta era de la evolución de los sistemas informáticos se aleja de las computadoras individuales y de los programas de computadoras, dirigiéndose al impacto colectivo de las computadoras y del software. Potentes maquinas personales controladas por sistemas operativos sofisticados, en redes globales y locales, acompañadas por aplicaciones de software avanzadas se han convertido en la norma.
  • 3. La industria del software ya es la cuna de la economía del mundo. Las técnicas de la cuarta generación para el desarrollo del software están cambiando en la forma en que la comunidad del software construye programas informáticos. Las tecnologías orientadas a objetos están desplazando rápidamente los enfoques de desarrollo de software más convencionales en muchas áreas de aplicaciones. Sin embargo, un conjunto de problemas relacionados con el software ha persistido a través de la evolución de los sistemas basados en computadora, y estos problemas continúan aumentando. avances del software continúan dejando atrás nuestra habilidad de construir software para alcanzar el potencial del hardware. habilidad de construir nuevos programas no pueden ir al mismo ritmo de la demanda de nuevos programas, ni podemos construir programas lo suficientemente rápido como para cumplir las necesidades del mercado y de los negocios. uso extenso de computadoras ha hecho de la sociedad cada vez más dependiente de la operación fiable del software. Cuando el software falla, pueden ocurrir daños económicos enormes y ocasionar sufrimiento humano. por construir software informático que tengan fiabilidad y alta calidad. habilidad de soportar y mejorar los programas existentes se ve amenazada por diseños pobres y recursos inadecuados. En respuesta a estos problemas, las prácticas de la Ingeniería del Software se están adoptando en toda la industria. QUE ES LA INGENIERÍA DEL SOFTWARE? La Ingeniería del software es una disciplina o área de la Informática o Ciencias de la Computación, que ofrece métodos y técnicas para desarrollar y mantener software de calidad que resuelven problemas de todo tipo. Hoy día es cada vez mas frecuente la consideración de la Ingeniería del Software como una nueva área de la Ingeniería, y el Ingeniero del Software comienza a ser una profesión implantada en el mundo laboral internacional, con derechos, deberes y responsabilidades que cumplir, junto a una, ya, reconocida consideración social en el mundo empresarial y, por suerte, para esas personas con brillante futuro. La ingeniería del software trata con áreas muy diversas de la Informática y de las Ciencias de la Computación, tales como construcción de compiladores, sistemas operativos o desarrollos de
  • 4. Intranet/Internet, abordando todas las fases del ciclo de vida del desarrollo de cualquier tipo de sistemas de información y aplicables a una infinidad de áreas tales como: negocios, investigación científica, medicina, producción, logística, banca, control de tráfico, meteorología, el mundo del derecho, la red de redes Internet, redes Intranet y Extranet, etc. DEFINICIÓN DEL TERMINO INGENIERÍA DEL SOFTWARE El termino Ingeniería se define en el Diccionario de la Real Academia Española de la Lengua como: "1. Conjunto de conocimientos y técnicas que permiten aplicar el saber científico a la utilización de la materia y de las fuentes de energía. 2. Profesión y ejercicio del Ingeniero" y el termino Ingeniero se define como: persona que profesa o ejerce la Ingeniería. De igual modo la Real Academia de Ciencias Exactas, Físicas y Naturales de España define el termino Ingeniería como: " Un conjunto de conocimientos y técnicas cuya aplicación permite la utilización racional de los materiales y de los recursos naturales, mediante invenciones, construcciones u otras realizaciones provechosas para el hombre". Evidentemente, si la Ingeniería del Software es una nueva Ingeniería, parece lógico que reúna las propiedades citadas en las definiciones anteriores. Sin embargo ni el DRAE(Diccionario de la Real Academia Española de la Lengua), ni la Real Academia Española de Ciencias han incluido todavía el termino en sus últimas ediciones; en consecuencia vamos a recurrir para su definición más precisa a algunos de los autores más acreditados que comenzaron en su momento a utilizar el término o bien en las definiciones dadas por organismos internacionales profesionales de prestigio tales como IEEE o ACM, de los cuales se han seleccionado las siguientes definiciones de Ingeniería del Software. DEFINICIÓN 1: Ingeniería del Software es el estudio de los principios y metodologías para desarrollo y mantenimiento de sistemas de software [Zelkovits, 1978]. DEFINICIÓN 2: Ingeniería del Software es la aplicación práctica del conocimiento científico en el diseño y construcción de programas de computadora y la documentación necesaria requerida para desarrollar, operar (funcionar) y mantenerlos [Bohem, 1976]. DEFINICIÓN 3: Ingeniería del 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].
  • 5. DEFINICIÓN 4: La aplicación de un enfoque sistemático, disciplinado y cuantificable al desarrollo, operación (funcionamiento) y mantenimiento del software; es decir, la aplicación de Ingeniería al software [IEEE, 1993]. UNA PERSPECTIVA INDUSTRIAL En los primeros días de la informática, los sistemas basados en computadora se desarrollaban usando técnicas de gestión orientadas a hardware. Los gestores del proyecto se centraban en el hardware, debido a que era el factor principal del presupuesto en el desarrollo del sistema. Para controlar los costes del hardware, los gestores instituyeron controles formales y estándares técnicos. Exigían un análisis y diseño completo antes de que algo se construyera. Mediante el proceso para determinar donde podían hacerse mejoras. Dicho sencillamente, aplicaban los controles, los métodos y las herramientas que reconocemos como Ingeniería del Hardware. Desgraciadamente, el software no era normalmente más que un añadido. En los primeros días, la programación se veía como un arte. Existían pocos métodos formales y pocas personas los usaban. Hoy, la distribución de costes en el desarrollo de sistemas informáticos ha cambiado drásticamente. El software, en lugar del hardware, es normalmente el elemento principal del coste. En las décadas pasadas los ejecutivos y muchos aprendices técnicos se habían hecho las siguientes preguntas: ¿Por qué lleva tanto tiempo terminar los programas? ¿Por qué es tan elevado el coste? ¿Por qué no podemos encontrar todos los errores antes de entregar el software a nuestros clientes? ¿Por qué nos resulta difícil constatar el progreso conforme se desarrolla el software? Estas y otras muchas cuestiones son una manifestación del carácter del software y de la forma en que se desarrolla, un problema que ha llevado a la adopción de la Ingeniería del Software como práctica. COMPETITIVIDAD DEL SOFTWARE
  • 6. Durante muchos años, los desarrolladores de software empleados por grandes y pequeñas compañías eran los únicos en este campo. Como todos los programas se construían de forma personalizada, los desarrolladores de este software domestico dictaban los costes, planificación y calidad. Hoy, todo esto ha cambiado. El software ahora es una empresa extremadamente competitiva. El software que se construía internamente ahora se puede adquirir en tiendas. Muchas empresas que en su momento pagaban legiones de programadores para crear aplicaciones especializadas ahora ofrecen a un tercero mucho del trabajo del software. EL SOFTWARE La descripción de software en un libro de texto podría tomar la forma siguiente: el software es (1) instrucciones que cuando se ejecutan proporcionan la función y el rendimiento deseados, (2) estructuras de datos que permiten a los programas manipular adecuadamente la información, y (3) documentos que describen la operación y el uso de programas. CARACTERÍSTICAS DEL SOFTWARE Para poder comprender lo que es el software (y consecuentemente la Ingeniería del Software), es importante examinar las características del software que lo diferencian de otras cosas que los hombres pueden construir. El software es un elemento del sistema que es lógico, en lugar de físico. Por lo tanto el software tiene unas características considerablemente distintas a las del hardware: el desarrollo del software y la construcción del hardware, ambas actividades son fundamentalmente diferentes. En ambas actividades la buena calidad se adquiere mediante un buen diseño, pero la fase de construcción del hardware puede introducir problemas de calidad que no existen (o son fácilmente corregibles) en el software. Ambas actividades dependen de las personas, pero la relación entre las personas dedicadas y el trabajo realizado es completamente diferente para el software. Ambas actividades requieren de la construcción de un producto, pero los métodos son diferentes. Los costes del software se encuentran en la ingeniería. Esto significa que los proyectos de software no se pueden gestionar como si fueran proyectos de fabricación. s del entorno que hacen que el hardware se estropee. Otro aspecto de ese deterioro ilustra la diferencia entre el hardware y el software. Cuando un componente se estropea, se sustituye por una pieza de
  • 7. repuesto. No hay pieza de repuesto para el software. Cada fallo en el software indica un error en el diseño o en el proceso mediante el que se tradujo el diseño a código maquina ejecutable. Por tanto, el mantenimiento del software tiene una complejidad considerablemente mayor que la del mantenimiento del hardware. existentes. No existen catálogos de componentes de software. Se puede comprar software ya desarrollado, pero solo como una unidad completa, no como componentes que pueden reensamblarse en nuevos programas. Importante para un componente de software de alta calidad. El componente debería diseñarse COMPONENTES DEL SOFTWARE La reutilización es una característica e implementarse para que pueda volver a ser reutilizado en muchos programas diferentes. Los componentes de software se construyen mediante un lenguaje de programación que tiene un vocabulario limitado, una gramática definida explícitamente y reglas bien formadas de sintaxis y semántica. Aplicaciones del software El software puede aplicarse en cualquier situación en la que se haya definido previamente un conjunto especifico de pasos procedimentales (es decir, un algoritmo). (Excepciones notables a esta regla son el software de los sistemas expertos y de redes neuronales). Las siguientes áreas del software indican la amplitud de las aplicaciones potenciales: escritos para servir a otros programas. El área del Software de Sistemas se caracteriza por una fuerte interacción con el hardware de la computadora; una gran utilización por múltiples usuarios; una operación concurrente que requiere una planificación, una compartición de recursos y una sofisticada gestión de procesos; unas estructuras de datos complejas y múltiples interfaces externas. (p. Ej.: compiladores, editores, utilidades, ciertos componentes del sistema operativo, utilidades de manejo de periféricos, procesadores de telecomunicaciones). tware que mide/analiza/controla sucesos del mundo real conforme ocurren, se denomina de tiempo real. Entre los elementos del software de tiempo real se incluyen: un componente de adquisición de datos que recolecta y da formato a la información recibida del entorno externo, un componente de análisis que transforma la
  • 8. información recibida del entorno externo, un componente de análisis que transforma la información según lo requiera la aplicación, un componente de control/salida que responda al entorno externo y un componente de monitorización que coordina todos los demás componentes, de forma tal que pueda mantenerse la respuesta en tiempo real. áreas de aplicación del software. Los sistemas discretos (p. Ej.: nominas, cuentas de haberes/débitos, inventarios, etc.), han evolucionado hacia el software de sistemas de información de gestión (SIG), que accede a una o más bases de datos grandes que contienen información comercial. Las aplicaciones en esta área reestructuran los datos existentes para facilitar las operaciones comerciales o gestionar la toma de decisiones. Además de las tareas convencionales de procesamiento de datos, las aplicaciones de software de gestión también realizan calculo interactivo (p. Ej. : el procesamiento de transacciones en puntos de ventas). por los algoritmos de manejo de números. Las aplicaciones van desde la astronomía a la vulcanología, desde el análisis de la presión de los automotores a la dinámica orbital de los lanzadores espaciales y desde la biología molecular a la fabricación automática. memoria de solo lectura y se utiliza para controlar productos y sistemas de los mercados industriales y de consumo. El software empotrado puede ejecutar funciones muy limitadas y curiosas (p. Ej.: el control de las teclas de un horno de microondas) o suministrar una función significativa y con capacidad de control (p. Ej.: funciones digitales en un automóvil, tales como control de la gasolina, indicaciones en el salpicadero, sistemas de frenado, etc.). oftware de computadoras personales ha germinado en la pasada década. El procesamiento de textos, las hojas de cálculo, los gráficos por computadora, multimedia, entretenimientos, gestión de bases de datos, aplicaciones financieras de negocios y personales, y redes o acceso a bases de datos externas son algunas de los cientos de aplicaciones. algoritmos no numéricos para resolver problemas complejos para los que no son adecuados el cálculo o el análisis directo. El área más activa de la IA es la de los sistemas expertos, también llamados sistemas basados en el conocimiento. Hoy en día el software tiene un doble papel. Es un producto y, al mismo tiempo, el vehículo para hacer entrega de un producto. Como producto, hace entrega de la potencia informática
  • 9. del hardware informático. Si reside dentro de un teléfono celular u opera dentro de una computadora central, el software es un transformador de información, produciendo, gestionando, adquiriendo, modificando, mostrando o transmitiendo información que puede ser tan simple como un solo bit, o tan compleja como una simulación en multimedia. Como vehículo utilizado para hacer entrega del producto, el software actúa como la base de control de la computadora (sistemas operativos), la comunicación de información (redes), y la creación y control de otros programas (herramientas de software y entornos). El software de computadora, se ha convertido en el alma mater. Es la máquina que conduce a la toma de decisiones comerciales. Sirve como la base de investigación científicamoderna y de resolución de problemas de ingeniería. Es el factor clave que diferencia los productos y servicios modernos. Está inmerso en sistemas de todo tipo: de transportes, médicos, de telecomunicaciones, militares, procesos industriales, entretenimientos, productos de oficina, etc. El software será el que nos lleve de la mano en los avances en todo desde la educación elemental a la Ingeniería Genética. EVOLUCIÓN DE LA INGENIERÍA DEL SOFTWARE Inicialmente la programación de las computadoras era un arte que no disponía de métodos sistemáticos en los que poder basarse para la realización de productos software. Se realizaban sin ninguna planificación. Evolución y Perspectivas de la Ingeniería del Software Posteriormente, desde mediados de los 60 hasta finales de los 70 se caracterizó por el establecimiento del software como un producto que se desarrollaba para una distribución general. En esta época nació lo que se conoce como el mantenimiento del software que se da cuando cambian los requisitos de los usuarios y se hace necesaria la modificación del software. El esfuerzo requerido para este mantenimiento era en la mayoría de los casos tan elevado que se hacía imposible su mantenimiento. A continuación, surge una etapa que se caracteriza por la aparición de una serie de técnicas como la Programación Estructurada y las Metodologías de Diseño que solucionan los problemas anteriores. A finales de esta etapa aparecen las herramientas CASE, aunque como podemos imaginar eran muy rudimentarias. CONCLUSIÓN El software se ha convertido en el elemento clave de la evolución de los sistemas y productos informáticos. En las pasadas cuatro décadas, el software ha pasado de ser una resolución de problemas especializadas y una herramienta de análisis de información, a ser una industria por si misma. Pero la temprana cultura e historia de la programación ha creado un conjunto de problemas que persisten todavía. El software se ha convertido en un factor que limita la
  • 10. evolución de los sistemas informáticos. El software se compone de programas, datos y documentos. Cada uno de estos elementos compone una configuración que se crea como parte del proceso de la Ingeniería del Software. El intento de la Ingeniería del Software es proporcionar un marco de trabajo para construir software con mayor calidad