Software - Wikipedia, la enciclopedia libre

Software

De Wikipedia, la enciclopedia libre

Exposición de interfases y ventanas de Programas en la pantalla de una computadora
Exposición de interfases y ventanas de Programas en la pantalla de una computadora

Software[1] (pronunciación IPA:[ˈsɔft.wɛɻ]), palabra proveniente del inglés (literalmente: partes blandas o suaves), que en nuestro idioma no posee una traducción adecuada al contexto, por lo cual se la utiliza asíduamente sin traducir y fue adoptada por la RAE. Se refiere al equipamiento lógico o soporte lógico de un computador digital, comprende el conjunto de los componentes lógicos necesarios para hacer posible la realización de una tarea específica, en contraposición a los componentes físicos del sistema (hardware). Tales componentes lógicos incluyen, entre otras, aplicaciones informáticas tales como procesador de textos, que permite al usuario realizar todas las tareas concernientes a edición de textos; software de sistema, tal como un sistema operativo, el que, básicamente, permite al resto de los programas funcionar adecuadamente, facilitando la interacción con los componentes físicos y el resto de las aplicaciones, también provee una interface ante el usuario.

Tabla de contenidos

[editar] Definición de Software

Probablemente la definición más formal de software es la siguiente:

Es el conjunto de los programas de cómputo, procedimientos, reglas, documentación y datos asociados que forman parte de las operaciones de un sistema de computación.

Extraído del estándar 729 del IEEE[2]

Bajo esta definición, el concepto de software va más allá de los programas de cómputo en sus distintos estados: código fuente, binario o ejecutable; también su documentación, datos a procesar e información de usuario es parte del software: es decir, abarca todo lo intangible, todo lo "no físico" relacionado.

El término «software» fue usado por primera vez en este sentido por John W. Tukey en 1957. En las ciencias de la computación y la ingeniería de software, el software es toda la información procesada por los sistemas informáticos: programas y datos. El concepto de leer diferentes secuencias de instrucciones desde la memoria de un dispositivo para controlar los cálculos fue introducido por Charles Babbage como parte de su máquina diferencial. La teoría que forma la base de la mayor parte del software moderno fue propuesta por vez primera por Alan Turing en su ensayo de 1936, "Los números computables", con una aplicación al problema de decisión.

[editar] Clasificación del software

Si bien esta distinción es, en cierto modo, arbitraria, y a veces confusa, se puede clasificar al software de la siguiente forma:


angelica

[editar] El proceso de creación de software

El proceso de creación de software puede llegar a ser muy complejo, dependiendo de su porte, características y criticidad del mismo. Por ejemplo la creación de un sistema operativo es una tarea que requiere proyecto, gestión, numerosos recursos y todo un equipo disciplinado de trabajo. En el otro extremo, si se trata de un sencillo programa (ejemplo: resolución de una ecuación de segundo orden), ello puede ser realizado por un solo programador (incluso aficionado) fácilmente. Es así que normalmente se dividen en tres según su tamaño (líneas de código) y/o costo: de Pequeño, Mediano y Gran porte. Existem métodos para estimarlo, por ejemplo el sistema COCOMO.

Considerando los de gran porte, es necesario realizar tantas y complejas tareas, tanto técnicas, de gerenciamiento, fuerte gestión y análisis diversos (entre otras) que toda una ingeniería hace falta para su estudio y realización: la Ingeniería de Software.

Considerando los de mediano porte, pequeños equipos de trabajo (incluso un avesado analista-programador solitario) puede realizar la tarea. Aunque deben seguir ciertas etapas que son necesarias para la construcción del software. Ellas, si bien deben existir, son flexibles en su forma de aplicación, de acuerdo a la metodología o Proceso de Desarrollo escogido y utilizado.

Los "procesos de desarrollo de software", que poseen reglas preestablecidas, deben ser aplicados en la creación del software de mediano y gran porte, caso contrario normalmente el proyecto o no logra concluir o termina sin cumplir los objetivos previstos y con variedad de fallos inaceptables. Hay procesos rápidos o livianos (XP), pesados y lentos (RUP) y variantes intermedias; y se aplican de acuerdo al tipo y porte del software a desarrollar. Algunos esos procesos son Extreme Programming (XP), Rational Unified Process (RUP), Feature Driven Development (FDD), etc.).

Es común para el desarrollo de software de mdiano porte que los equipos humanos involucrados apliquen sus propias metodologías, normalmente un híbrido de los procesos anteriores.

El proceso de desarrollo puede involucrar numerosas y variadas tareas, desde lo administrativo, pasando por lo técnico y hasta la gestión y gerenciamiento. Pero casi rigurosamente siempre se cumplen ciertas etapas mínimas, las que se pueden resumir como sigue:

  • Captura (elicitación) y Especificación de requisitos (ERS)
  • Análisis
  • Codificación
  • Implementación
  • Pruebas (unitarias e integrales)
  • Paso a Producción
  • Mantenimiento

Para cada una de estas fases, existen sub-etapas (o tareas). El Modelo de Proceso o Modelo de Ciclo de Vida utilizado define el orden para las tareas o actividades involucradas en el desarrollo, también definen su coordinación, enlace y realimentación entre las mencionadas etapas. Los más conocidos son: Modelo Cascada o secuencial, Modelo Espiral, Modelo Iterativo Incremental.

[editar] Codificación del software

El software adopta varios estados durante su desarrollo y en las distintas etapas de su ciclo de vida:

  • Código fuente: el escrito por los programadores. Contiene el conjunto de instrucciones codificadas en algún lenguaje de alto nivel.
  • Código objeto: código binario o intermedio resultante de procesar con un compilador al código fuente. Consiste en una traducción completa de éste último. El código objeto no es directamente inteligible por el ser humano, pero tampoco es directamente ejecutable por la computadora. Se trata de una representación intermedia entre el código fuente y el código ejecutable, a los fines de un enlace final con las rutinas de librería o bien para su uso con un pequeño intérprete intermedio (a modo de distintos ejemplos véase EUPHORIA, FORTRAN y MSIL (Microsoft Intermediate Language)).
  • Código ejecutable: resultado de enlazar uno o varios fragmentos de código objeto con las rutinas y librerías necesarias. Constituye un archivo binario con un formato tal que el sistema operativo es capaz de cargarlo en la memoria de una computadora, y proceder a su ejecución directa. El código ejecutable es directamente inteligible por la computadora.

[editar] Referencias

  1. ↑ Real Academia Española. Significado de la palabra Software. Diccionario de la Lengua Española, XXIIº Edición. Consultado el 14 de marzo, 2008.
  2. ↑ IEEE Std, IEEE Software Engineering Standard: Glossary of Software Engineering Terminology. IEEE Computer Society Press, 1993

[editar] Véase también

[editar] Enlaces externos

Wikcionario

Sildenafil (w³. cytrynian sildenafilu, ang. i INN sildenafil citrate, ATC: G 04 BE 03, oryginalna nazwa handlowa: Viagra) - lek stosowany w leczeniu zaburzeñ erekcji oraz w pierwotnym nadciœnieniu p³ucnym (w tym wskazaniu pod nazw¹ Revatio). Zosta³ on opatentowany w 1996 roku przez firmê Pfizer i wprowadzony po raz pierwszy na rynek w 1998 roku. Szynaszyla - D³ugo¶æ cia³a 20-40 cm, Mieszkania Kraków ogona 7,5-20 cm, waga 0,5-1,0 kg. Srebrzyste, per³owoszare futro jest miêkkie i gêste, a ogon pokryty d³ugimi Motocykle w³osami. Oczy oraz uszy du¿e. Pozycjonowanie stron Po trwaj±cej prawie 4 miesi±ce (oko³o110 dni) ci±¿y rodzi siê od 1 do 6 zaawansowanych w rozwoju m³odych. ¯yje w koloniach zamieszkuj±cych meble tereny skaliste w górach Chile, Argentyny i Boliwii, gdzie ¿ywi siê ro¶linno¶ci± wysokogórsk±. Dawniej liczna, obecnie ze wzglêdu na cenione futerko zosta³a niemal zupe³nie wytrzebiona. Czêsto jest hodowana. Blacha – wyrób hutniczy, którego gruboœæ jest znacznie mniejsza od d³ugoœci i szerokoœci. Gruboœci blach le¿¹ w granicach od dziesi¹tych czêœci milimetra do kilkudziesiêciu milimetrów. mog¹ byæ g³adkie lub posiadaæ fakturê powierzchniow¹. Blachy dostarczane s¹ w postaci p³askich arkuszy lub taœm zwiniêtych w krêgi. suknie œlubne, odzyskiwanie danych, Kominki, Pozycjonowanie, opony torebki adwokat Muzyka wyniki na żywo Alberghi Amsterdam