1.-EVOLUCION
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 tenia 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 - maquina. 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 caracterizo 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 continuomas
allá de una década. El sistema distribuido, múltiples computadoras, cada una
ejecutando funciones concurrente 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
caracterizo 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.
los avances del software continúan dejando atrás nuestra habilidad de
construir software para alcanzar el potencial del hardware.
Nuestra 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.
El 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.
Luchamos por construir software informático que tengan fiabilidad y alta
calidad.
Nuestra habilidad de soportar y mejorar los programas existentes se ve
amenazada por diseños pobres y recursos inadecuados.
En respuesta a estos problemas, las
practicas de la Ingeniería del Software se están adoptando en toda la
industria.
2.-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 trafico,
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 ultimas
ediciones; en consecuencia vamos a recurrir para su definición mas precisa a
algunos de los autores mas acreditados que comenzaron en su momento a utilizar
el termino 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 practica 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 [, 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].
3.-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. Median 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 mas 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 hechos 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
practica.
4.-COMPETITIVIDAD DEL SOFTWARE
Durante
muchos años, los desarrolladores de software eran 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.
5.-
SOFTWARE
El término software (partes suaves o blandas en
castellano) hace alusión a la
Sumatoria de aquellas reglas, programas, datos, documentación e
instrucciones
que permiten la ejecución de múltiples tareas en un ordenador. Es su
parte lógica
e intangible y actúa como nexo entre el usuario y el hardware (partes
duras), es
decir, la parte tangible de la computadora
5.1- HISTORIA DEL SOFTWARE
Durante las tres primeras décadas de la Informática , el principal desafío era el
desarrollo del hardware de las computadoras,
de forma que se redujera el costo de
Procesamiento y almacenamiento de datos.
La necesidad de enfoques sistemáticos para el
desarrollo y mantenimiento de
Productos de software se patentizó en la
década de 1960. En ésta década
aparecieron las computadoras de la tercera
generación y se desarrollaron técnicas
de programación como la multiprogramación y el
tiempo compartido. Y mientras
las computadoras estaban haciéndose más
complejas, resultó obvio que la
demanda por los productos de software creció
en mayor cantidad que la capacidad
de producir y mantener dicho software. Estas
nuevas capacidades aportaron la
tecnología necesaria para el establecimiento
de sistemas computacionales
interactivos, de multiusuario, en línea y en
tiempo real; surgiendo nuevas
aplicaciones para la computación, como las
reservaciones aéreas, bancos de
información médica, etc.
Fue hasta el año 1968 que se convocó una
reunión en Garmisch, Alemania
Oriental estimulándose el interés hacia los
aspectos técnicos y administrativos
utilizados en el desarrollo y mantenimiento de
software, y fue entonces donde se
utilizó el término "Ingeniería de
Software"
A lo largo de la década de los ochenta, los
avances en microelectrónica han dado
como resultado una mayor potencia de cálculo a
la vez que una reducción de
costo. Hoy el problema es diferente. El
principal desafío es mejorar la
calidad y reducir el costo.
5.2-ORIGEN DEL SOFTWARE
Las formas que preanunciaron el
surgimiento del software eran de carácter analógico: las cintas
perforadas que se utilizaban en los primeros ordenadores programables eran de
este tipo. En 1958 el matemático John Wilder acuñó el término “software”
para Turkey
referirse a los programas que permitían
el funcionamiento de las calculadora selectrónicas.
A partir de la década del 70, la producción
de software pasó a manos de las empresas dedicadas a esta actividad,
mientras que comenzaba a volverse más importante la habilidad de programar
códigos informáticos.Con el tiempo, los costos de producción del software (y
del hardware) comenzaron a reducirse, por lo cual los ordenadores se
masificaron entre la población. Así fue que se consolidó la industria
del software, que moviliza millones de dólares por año. En este proceso de
evolución del software se dieron hitos como el desarrollo del sistema operativo
Windows, que permitió la fundación de la empresa Microsoft en
el año 1975, propiedad de Bill Gates y Paul Allen.
El surgimiento de la ingeniería
del software aumentó en épocas recientes la cantidad de técnicas y
métodos disponibles para crear formas de software cada vez más complejas y
sofisticadas
6.-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
software se desarrolla, no se fabrica en un sentido clásico. Aunque
existen similitudes entre 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.
El
software no se estropea. El software no es susceptible a los males 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.
La
mayoría del software se construye a medida, en vez de ensamblar componentes
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 ensamblarse en nuevos programas.
Importante
para un componente de software de alta calidad. El componente debería diseñarse
7.-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).
8.-SOFTWARE DE SISTEMA: su objetivo es manejar el procesamiento
interno de información, aislándolo del usuario. De esta forma le brinda al
programador o al usuario una interfaz de manejo, controladores y
otras herramientas que le permiten mantener el sistema global. Esto incluye el
manejo de la memoria, los puertos y dispositivos de comunicación, los discos,
pantallas, teclados, etc. La forma más conocida de este tipo de software son
los sistemas operativos. Algunos ejemplos son Windows, iOS, Linux y
Solaris.
9-SOFTWARE DE PROGRAMACIÓN: consiste en las
herramientas que permiten a los
Programadores
desarrollar nuevos programas mediante los lenguajes de programación.
Algunos ejemplos son el Xcode de Apple, el Visual Studio de Microsoft o el
Android Studio de Google.
10.-SOFTWARE DE APLICACIÓN: es todo aquel que permite
realizar una tarea específica, en un campo de actividad que sea necesario
para el usuario y que pueda ser tratado mediante información digital. Ejemplos
de este tipo de software son los procesadores de texto, las planillas de
cálculo, y los editores de imágenes. Este tipo de software puede a su vez
clasificarse en:
10.1-Software ofimático: utilizado para facilitar tareas de
oficina.
10.2.-Software empresarial: para la gestión y administración
de empresas. 10.3.-Software
de comunicación: como los navegadores web y las aplicaciones de
redes sociales.
10.4.-Software de seguridad: como los antivirus informáticos. 10.5.-Software
malicioso: alteran y obstruyen el funcionamiento de otro programa
10.6.-Software de ocio: son aquellos que fueron diseñados para
sus usuarios ocupen su tiempo libre. 10.7.-10.7.-Software
educativo: esta clase de software permiten identificar nuevos
conocimientos.
PROCESADORES
DE PALABRAS.- Se trata de programas y aplicaciones diseñadas para
que se puedan crear (escribir), modificar, copiar y guardar documentos de
texto. :Son ejemplos de procesadores de
palabras:
Blog de notas
Word pad
Microsof Word
Writer de
OpenOffice
Bohem
KWord
Ejemplos de
software para ver y editar imágenes:
Editores de
imágenes.- Se trata de aplicaciones especialmente diseñadas
para que el usuario pueda crear y manejar imágenes, pudiendo modificarlas a su
arbitrio gracias a que cuentan con diversas herramientas para ello.
Photoshop
Paint
Paint Shop Pro
Corel draw
Flphoto
Mirage
Serif Photo Plus StarterEdition
Gimp
Net
PaintStar
Ejemplos de
software de contabilidad:
Contable.- Se trata de
programas y herramientas diseñadas para el manejo de datos contables,
estadísticos y matemáticos, es el caso de las diversas hojas de cálculo, que
poseen varias herramientas para la creación de documentos, modificación
guardado y copiado de diversos archivos del tipo contable, como tablas, gráficas
y bases de datos entre otras cosas que se maneja habitualmente en estos
programas.
Microsoft Excel.
OpenOfficeCalc
MarinerCalc
Papyrus Office
NeoOfficeCalc
Gnumeric
MacroCALC
Libre office
Apache Open Office
ThinkFreeCalc
Ejemplos de
software de comunicación:
De
comunicación.- Se trata de programas que permiten la interacción
tanto de una computadora u otro implemento tecnológico, con otros aparatos, y
que permiten que la computadora pueda comunicarse, por ejemplo por medio de
redes inalámbricas a otros dispositivos, así como aquellos enfocados a mejorar
la comunicación interna de los propios dispositivos internos y periféricos de
la computadora, como es el caso de los drivers para impresoras, y para otros
dispositivos. Otros programas de comunicación, son aquellos que permiten al
usuario comunicarse con otros usuarios.
Skype,
Gooogletalk
OoVoo,
MeetingBurner
WebEx
Huddle
Fuze
Meeting
TinyChat
VoipBuster
Ejemplos de
software de reparación y protección:
De
protección y reparación.- Se trata de aquellos que están diseñados a la
protección de la computadora, como antivirus, anti spiweres y programas para el
diagnóstico de problemas lógicos o de hardware en la computadora.
McAfee anti virus
CCleaner
PC Wizard
Smart Defrag
BootMed
Kaspersky Anti-Virus
AVG Free
Panda Antivirus
Microsoft Security Essentials
PC Tool
Internet Security
Ejemplos de
software de audio:
Para
decodificar audio.- Se trata de programas especializados en la
creación, modificación o para escuchar audio (generalmente música).
Adobe editor
Winamp
Audacity
Ocen Audio
Wavosaur
Nero Wave Editor
RoseGarden
Ardour
FileLab
Audio Editor
PowerSound
Editor
Ejemplos de
software para ver y editar video:
Para
decodificación de video.- Son aquellos que están diseñados para crear,
modificar o ver video (y audio).
Windows MovieMaker
VirtualDub
Avidemux
Movica
CinefxJahshaka
ZS4 Video
Editor
Total Video
converter
GOM Player
VLC Player Format Factory
Freemake
Video Converter
Ejemplos de
software malicioso (virus):
Malicioso.- Se trata de
programas diseñados para causar problemas lógicos en el sistema de la
computadora, así como para espiar, copiar, o colocar información, sin
autorización del usuario del hardware.
Elk cloner
Jerusalemfamily
Pakistanibrain
Micheangelo
Melissa
Code red
Kournikova
Mydoom
Virus
conficker
Stuxnet
CONCLUSIÓN
Amanera de
concluir podemos decir que el tema de clasificación de software ,nos enseño la
manera mas fácil de conocer que es software es todo que no se puede tocar que
intangible que el software tiene su clasificación: software de sistemas
,software de aplicación y software de programación y que cada uno de los
conceptos nos definió que ventajas ,el software tiene una gran variedad de usos
,dependiendo siempre utilidad se quiere dar .
El software
es utilizado para el control de los equipo de computación que habitualmente manejamos, este tipo de
software es llamado sistema operativos, otras aplicaciones del software son
para la realización de trabajos de
oficina, como la creación de cartas ,presentación, etc.
BIBLIOGRAFIA
software/#ixzz3a6nT5FtRftware http://www.tiposde.org/informatica/938-significado-de-software/#ixzz3a6nG0HHI