2. INDICE
Software.
Software de sistema. (2 ejemplos desktop y 2
móviles)
Software de Aplicación (2 ejemplos desktop y
2 móviles)
Software de programación. (2 ejemplos
desktop y 2 móviles)
Etapas del proceso de desarrollo de software
Los tipos de licencias que existen en el
software.
Maquina virtual.
3. Se conoce como software1 al equipamiento lógico
o soporte lógico de un sistema informático, que
comprende el conjunto de los componentes
lógicos necesarios que hacen posible la realización de
tareas específicas, en contraposición a los
componentes físicos que son llamados hardware.
Los componentes lógicos incluyen, entre muchos
otros, las aplicaciones informáticas; tales como
el procesador de texto, que permite al usuario realizar
todas las tareas concernientes a la edición de textos;
el llamados Software de sistema, tal como el sistema
operativo, que básicamente permite al resto de los
programas funcionar adecuadamente, facilitando
también la interacción entre los componentes físicos
y el resto de las aplicaciones, y proporcionando
una interfaz con el usuario.
4. Su objetivo es desvincular adecuadamente al usuario
y al programador de los detalles del sistema
informático en particular que se use, aislándolo
especialmente del procesamiento referido a las
características internas de: memoria, discos, puertos
y dispositivos de comunicaciones, impresoras,
pantallas, teclados, etc. El software de sistema le
procura al usuario y programador
adecuadas interfaces de alto nivel, controladores,
herramientas y utilidades de apoyo que permiten el
mantenimiento del sistema global. Incluye entre
otros: Sistemas operativos
Controladores de dispositivos
Herramientas de diagnóstico
Herramientas de Corrección y Optimización
Servidores
Utilidades
6. Es aquel que permite a los usuarios llevar a cabo una o
varias tareas específicas, en cualquier campo de actividad
susceptible de ser automatizado o asistido, con especial
énfasis en los negocios. Incluye entre muchos otros:
Aplicaciones para Control de
sistemas y automatización industrial
Aplicaciones ofimáticas
Software educativo
Software empresarial
Bases de datos
Telecomunicaciones (por ejemplo Internet y toda su
estructura lógica)
Videojuegos
Software médico
Software de cálculo numérico y simbólico.
Software de diseño asistido (CAD)
Software de control numérico (CAM)
8. Es el conjunto de herramientas que permiten
al programador desarrollar programas informáticos,
usando diferentes alternativas y lenguajes de
programación, de una manera práctica. Incluyen
básicamente: Editores de texto
Compiladores
Intérpretes
Enlazadores
Depuradores
Entornos de Desarrollo Integrados (IDE): Agrupan las
anteriores herramientas, usualmente en un entorno
visual, de forma tal que el programador no necesite
introducir múltiples comandos para compilar,
interpretar, depurar, etc. Habitualmente cuentan con
una avanzada interfaz gráfica de usuario (GUI).
10. Captura, análisis y especificación de requisitos
Al inicio de un desarrollo (no de un proyecto), esta es la primera fase
que se realiza, y, según el modelo de proceso adoptado, puede casi
terminar para pasar a la próxima etapa (caso de Modelo Cascada
Realimentado) o puede hacerse parcialmente para luego retomarla
(caso Modelo Iterativo Incremental u otros de carácter evolutivo).
En simple palabras y básicamente, durante esta fase, se adquieren,
reúnen y especifican las características funcionales y no funcionales
que deberá cumplir el futuro programa o sistema a desarrollar.
Las bondades de las características, tanto del sistema o programa a
desarrollar, como de su entorno, parámetros no funcionales y
arquitectura dependen enormemente de lo bien lograda que esté esta
etapa. Esta es, probablemente, la de mayor importancia y una de las
fases más difíciles de lograr certeramente, pues no es automatizable,
no es muy técnica y depende en gran medida de la habilidad y
experiencia del analista que la realice.
11. Siendo que la captura, elicitación y especificación de
requisitos, es una parte crucial en el proceso de desarrollo
de software, ya que de esta etapa depende el logro de los
objetivos finales previstos, se han ideado modelos y
diversas metodologías de trabajo para estos fines.
También existen herramientas software que apoyan las
tareas relativas realizadas por el ingeniero en requisitos.
Universo de Discurso (UdeD): es el contexto general en el
cual el software deberá ser desarrollado y deberá operar.
El UdeD incluye todas las fuentes de información y todas
las personas relacionadas con el software. Esas personas
son conocidas también como actores de ese universo. El
UdeD es la realidad circunstanciada por el conjunto de
objetivos definidos por quienes demandaron el software.
12. La instalación del software es el proceso por el cual los
programas desarrollados son transferidos apropiadamente al
computador destino, inicializados, y,
eventualmente, configurados; todo ello con el propósito de ser
ya utilizados por el usuario final. Constituye la etapa final en el
desarrollo propiamente dicho del software. Luego de ésta el
producto entrará en la fase de funcionamiento y producción,
para el que fuera diseñado.
La instalación, dependiendo del sistema desarrollado, puede
consistir en una simple copia al disco rígido destino (casos raros
actualmente); o bien, más comúnmente, con una de complejidad
intermedia en la que los distintos archivos componentes del
software (ejecutables, bibliotecas, datos propios, etc.)
son descomprimidos y copiados a lugares específicos
preestablecidos del disco; incluso se crean vínculos con otros
productos, además del propio sistema operativo. Este último
caso, comúnmente es un proceso bastante automático que es
creado y guiado con herramientas software específicas
(empaquetado y distribución, instaladores).
13. software Libre o Free Software
Es un software disponible para cualquiera que desee utilizarlo, copiarlo y
distribuirlo, ya sea en su forma original o con modificaciones. La posibilidad de
modificaciones implica que el código fuente está disponible. Si un programa es
libre, puede ser potencialmente incluido en un sistema operativo también
libre. Es importante no confundir software libre con software gratis, porque la
libertad asociada al software libre de copiar, modificar y redistribuir, no significa
gratuidad. Existen programas gratuitos que no pueden ser modificados ni
redistribuidos. Y existen programas pagos.
Copyleft
La mayoría de las licencias usadas en la publicación de software libre permite
que los programas sean modificados y redistribuidos. Estas prácticas están
generalmente prohibidas por la legislación internacional de copyright, que
intenta impedir que alteraciones y copias sean efectuadas sin la autorización del
o los autores. Las licencias que acompañan al software libre hacen uso de la
legislación de copyright para impedir la utilización no autorizada, pero estas
licencias definen clara y explícitamente las condiciones bajo las cuales pueden
realizarse copias, modificaciones y redistribuciones, con el fin de garantizar las
libertades de modificar y redistribuir el software registrado. A esta versión de
copyright, se le da el nombre de Copyleft.
14. GPL
La Licencia Pública General GNU (GNU General Public License GPL) es
la licencia que acompaña los paquetes distribuidos por el Proyecto
GNU, más una gran variedad de software que incluye el núcleo del
sistema operativo Linux. La formulación de GPL es tal que en vez de
limitar la distribución del software que protege, llega hasta impedir que
este software sea integrado en software propietario. La GPL se basa en
la legislación internacional de copyright, lo que debe garantizar
cobertura legal para el software licenciado con GPL.
Debían
La licencia Debían es parte del contrato realizado entre Debían y la
comunidad de usuarios de software libre, y se denomina Debían Free
Software Guidelines (DFSG). En esencia, esta licencia contiene criterios
para la distribución que incluyen, además de la exigencia de
publicación del código fuente: (a) la redistribución libre ; (b) el código
fuente debe ser incluido y debe poder ser redistribuido; (c) todo trabajo
derivado debe poder ser redistribuido bajo la misma licencia del
original; (d) puede haber restricciones en cuanto a la redistribución del
código fuente, si el original fue modificado; (e) la licencia no puede
discriminar a ninguna persona o grupo de personas, así como tampoco
ninguna forma de utilización del software; (f) los derechos otorgados no
dependen del sitio en el que el software se encuentra; y (g) la licencia
no puede 'contaminar' a otro software.
15. Open Source
La licencia de Open Source Initiative deriva de Debían.
BSD
La licencia BSD cubre las distribuciones de software de
Berkeley Software Distribution, además de otros
programas. Ésta es una licencia considerada 'permisiva', ya que
impone pocas restricciones sobre la forma de uso, alteraciones
y redistribución del software. El software puede ser vendido y no
hay obligaciones de incluir el código fuente. Esta licencia
garantiza el crédito a los autores del software pero no intenta
garantizar que las modificaciones futuras permanezcan siendo
software libre.
X.org
El Consorcio X distribuye X Windows Sistema bajo una licencia
que lo hace software libre, aunque sin adherirse al Copyleft.
Existen distribuciones bajo la licencia de la X.org que son
software libre, y otras distribuciones que no lo son. Existen
algunas versiones no-libres del sistema de ventanas X11 para
estaciones de trabajo y ciertos dispositivos de IBM-PC que son
las únicas funciones disponibles, sin otros similares que sean
distribuidos como software libre.
16. Software con Dominio Público
El Software con dominio público es software sin
copyright. Algunos tipos de copia o versiones modificadas
pueden no ser libres si el autor impone restricciones adicionales
en la redistribución del original o de trabajos derivados.
Software Semi-libre
El Software semi-libre es un software que no es libre pero
permite que otros individuos lo usen, lo copien, lo distribuyan y
hasta lo modifiquen. Ejemplos de software semi-libre son las
primeras versiones de Internet Explorer de Microsoft, o algunas
versiones de browsers de Netscape, y StarOffice.
Freeware
El término freeware no posee una definición ampliamente
aceptada, pero es utilizada para programas que permiten la
redistribución pero no la modificación, y que incluyen su código
fuente. Estos programas no son software libre.
Es un programa gratuito. Sin embargo, no es libre. En este tipo
de licencia el autor puede restringir su programa al uso
empresarial, redistribución no autorizada, modificación por
usuarios y otro tipo de restricciones. (Ejemplos: Internet
Explorer, Adobe Flash Player, Windows Live Messenger)
17. Shareware
Shareware es el software disponible con el permiso
para que sea redistribuido, pero su utilización implica
el pago. Generalmente, el código fuente no se
encuentra disponible, y por lo tanto es imposible
realizar modificaciones.
Es un programa distribuido gratuitamente, pero por
tiempo limitado o con algunos recursos
restringidos. A través del pago de un valor definido
por el autor del programa, se puede obtener el
registro del programa o la versión integral con todos
los recursos. Abarca las licencias adware, trial y
demo.
Software Propietario
El Software propietario es aquel cuya copia,
redistribución o modificación están, en alguna
medida, prohibidos por su propietario. Para usar,
copiar o redistribuir, se debe solicitar permiso al
propietario o pagar.
18. Software Comercial
El Software comercial es el software desarrollado por una empresa con
el objetivo de lucrar con su utilización. Nótese que "comercial" y
"propietario" no son lo mismo. La mayor parte del software comercial
es propietario, pero existe software libre que es comercial, y existe
software no-libre que no es comercial.
Adware
Subprograma que descarga publicidad sobre otro programa principal.
Esto ocurre cuando un programa tiene versiones comerciales o más
avanzadas que necesitan ser compradas para poder ser utilizadas.
Pagando por la versión comercial, esos anuncios desaparecen. Es una
licencia muy poco usada. Un ejemplo es el Ashampoo Burning Studio
2009.
Trial
Versión de programa pago, distribuido gratuitamente con todos los
recursos activos, pero por un tiempo determinado. Es como un
programa freeware, que después de determinado tiempo deja de
funcionar. Para continuar con la utilización del programa, se debe
comprar la clave de registro e insertarla en el programa, para que
vuelva a ejecutarse. Ejemplo: Nero, Alcohol 120% y Photoshop.
19. Demo
Versión de demostración, liberada por el autor, que no
contiene todas las funciones del programa original. Es
distribuida gratuitamente, y no tiene plazo de validez, pero
también tiene pocos recursos y funciones. Ejemplo: Need
for Speed DEMO, Fifa 09 DEMO.
Crippleware
Es un programa con menos recursos y funciones. Muy
conocido como "versión lite". Ideal para ser usado
en computadoras viejas. Ejemplo: BurnAware Free.
Donationware
Versión de programa en la que el autor solicita una
donación, para cubrir los gastos del desarrollo del
programa. No es obligatoria, pero si solicitada. El
programa no sufre variantes por realizar o no la donación.
Ejemplo: FreeRapid Downloader, Linux Slax.
20. Abandonware
Programa cuyo desarrollo fue abandonado. El
autor debe anunciar públicamente el abandono
del programa para ser abandoware, mientras
tanto el programa está protegido contra los
derechos de copia (copyright). Si la
discontinuidad es anunciada, el programa puede
ser distribuido y modificado por cualquier usuario
o desarrollador.
"Queda asegurada la tutela de los derechos
relacionados a programas informáticos por el
plazo de cincuenta años, a partir del 1 de enero
del año siguiente de su publicación o, en la
ausencia de esta, de su creación."
21. máquina virtual es un software que simula a una computadora y
puede ejecutar programas como si fuese una computadora real.
Este software en un principio fue definido como "un duplicado
eficiente y aislado de una máquina física". La acepción del
término actualmente incluye a máquinas virtuales que no tienen
ninguna equivalencia directa con ningún hardware real.
Una característica esencial de las máquinas virtuales es que los
procesos que ejecutan están limitados por los recursos y
abstracciones proporcionados por ellas. Estos procesos no
pueden escaparse de esta "computadora virtual".
Uno de los usos domésticos más extendidos de las máquinas
virtuales es ejecutar sistemas operativos para "probarlos". De
esta forma podemos ejecutar un sistema operativo que
queramos probar (GNU/Linux, por ejemplo) desde nuestro
sistema operativo habitual (Mac OS X por ejemplo) sin necesidad
de instalarlo directamente en nuestra computadora y sin miedo
a que se desconfigure el sistema operativo primario.