jueves, 24 de febrero de 2011

López Macay Eliabet Alejandra
Hernández Gloria Edgar
González Campos Rosalía
González Cortes Virginia

MESA: 2



Algoritmo
Los diagramas de flujo sirven para representar algoritmos de manera gráfica .En matemáticas, ciencias de la computación y disciplinas relacionadas, un algoritmo (del griego y latín, dixit algorithmus y éste a su vez del matemático persa Al Juarismi) es un conjunto preescrito de instrucciones o reglas bien definidas, ordenadas y finitas que permite realizar una actividad mediante pasos sucesivos que no generen dudas a quien deba realizar dicha actividad. Dados un estado inicial y una entrada, siguiendo los pasos sucesivos se llega a un estado final y se obtiene una solución. Los algoritmos son el objeto de estudio de la algoritmia.
En la vida cotidiana, se emplean algoritmos frecuentemente para resolver problemas. Algunos ejemplos son los manuales de usuario, que muestran algoritmos para usar un aparato, o las instrucciones que recibe un trabajador por parte de su patrón. Algunos ejemplos en matemática son el algoritmo de la división para calcular el cociente de dos números, el algoritmo de Euclides En general, no existe ningún consenso definitivo en cuanto a la definición formal de algoritmo. Muchos autores los señalan como listas de instrucciones para resolver un problema abstracto, es decir, que un número finito de pasos convierten los datos de un problema (entrada) en una solución (salida).  Sin embargo cabe notar que algunos algoritmos no necesariamente tienen que terminar o resolver un problema en particular. Por ejemplo, una versión modificada de la criba de Eratóstenes que nunca termine de calcular números primos no deja de ser un algoritmo.
A lo largo de la historia varios autores han tratado de definir formalmente a los algoritmos utilizando modelos matemáticos como máquinas de Turing entre otros. Sin embargo, estos modelos están sujetos a un tipo particular de datos como son números, símbolos o gráficas mientras que, en general, los algoritmos funcionan sobre una vasta cantidad de estructuras de datos. En general, la parte común en todas las definiciones se puede resumir en las siguientes tres propiedades siempre y cuando no consideremos algoritmos paralelos:
Tiempo secuencial. Un algoritmo funciona en tiempo discreteado –paso a paso–, definiendo así una secuencia de estados "computacionales" por cada entrada válida (la entrada son los datos que se le suministran al algoritmo antes de comenzar).
Estado abstracto. Cada estado computacional puede ser descrito formalmente utilizando una estructura de primer orden y cada algoritmo es independiente de su implementación (los algoritmos son objetos abstractos) de manera que en un algoritmo las estructuras de primer orden son invariantes bajo isomorfismo.
Exploración acotada. La transición de un estado al siguiente queda completamente determinada por una descripción fija y finita; es decir, entre cada estado y el siguiente solamente se puede tomar en cuenta una cantidad fija y limitada de términos del estado actual.
En resumen, un algoritmo es cualquier cosa que funcione paso a paso, donde cada paso se pueda describir sin ambigüedad y sin hacer referencia a una computadora en particular, y además tiene un límite fijo en cuanto a la cantidad de datos que se pueden leer/escribir en un solo paso. Esta amplia definición abarca tanto a algoritmos prácticos como aquellos que solo funcionan en teoría, por ejemplo el método de Newton y la eliminación de Gauss-Jordan funcionan, al menos en principio, con números de precisión infinita; sin embargo no es posible programar la precisión infinita en una computadora, y no por ello dejan de ser algoritmos. En particular es posible considerar una cuarta propiedad que puede ser usada para validar la tesis de Church-Turing de que toda función calculable se puede programar en una máquina de Turing (o equivalentemente, en un lenguaje de programación suficientemente general)
Aritmetizabilidad. Solamente operaciones innegablemente calculables están disponibles en el paso inicial para obtener el máximo común divisor de dos enteros positivos, o el método de Gauss para resolver un sistema lineal de ecuaciones.


EJEMPLO:
Un algoritmo se puede concebir como una función que transforma los datos de un problema (entrada) en los datos de una solución (salida). Más aún, los datos se pueden representar a su vez como secuencias de bits, y en general, de símbolos cualesquiera. Como cada secuencia de bits representa a un número natural (véase Sistema binario), entonces los algoritmos son en esencia funciones de los números naturales en los números naturales que sí se pueden calcular. Es decir que todo algoritmo calcula una función f:\mathbf N\to \mathbf N donde cada número natural es la codificación de un problema o de una solución.

miércoles, 23 de febrero de 2011

Diaz Zavala Itzel Verenice I-411

PROGRAMA INFORMATICO

Es un conjunto de instrucciones que una vez ejecutadas realizarán una o varias tareas en una computadora. Sin programas las máquinas no pueden funcionar.

Al conjunto general de programas, se le denomina software, que más genéricamente se refiere al equipamiento lógico o soporte lógico de una computadora digital.

se los denomina comúnmente binarios, (propio en sistemas unix, donde debido a la estructura de este último, los ficheros no necesitan hacer uso de extensiones) 
debido a que una vez que han pasado por el proceso de compilación y han sido creados, las instrucciones que se escribieron en un lenguaje de programación que los 
humanos usan para escribirlos con mayor facilidad, se han traducido al único idioma que la máquina comprende, combinaciones de ceros y unos llamada código máquina.

Generalmente el código fuente Se escribe en un lenguaje que sigue uno de los siguientes dos paradigmas: imperativo o declarativo y que posteriormente puede ser
convertido en una imagen ejecutable por un compilador.

De acuerdo a sus funciones, se clasifican en software de sistema y software de aplicación.

Al hecho de ejecutar varios programas de forma simultánea y eficiente, se le conoce como multitarea.

Una vez escritos, pueden ser ejecutados de diversas formas:

Mediante un programa que va adaptando las instrucciones conforme son encontradas. A este proceso se lo llama interpretar y a los programas que lo hacen se los 
conoce como intérpretes.

Traduciendo el código escrito del programa (lo que se denomina código fuente), a su equivalente en lenguaje máquina. A este proceso se le llama compilar y al
programa traductor se le denomina compilador.

ALGORITMO

Es un conjunto preescrito de instrucciones o reglas bien definidas, ordenadas y finitas que permite realizar una actividad mediante pasos sucesivos que no generen dudas a quien deba realizar dicha actividad.
Dados un estado inicial y una entrada, siguiendo los pasos sucesivos se llega a un estado final y se obtiene una solución. Los algoritmos son el objeto de estudio de la algoritmia.

En la vida cotidiana, se emplean algoritmos frecuentemente para resolver problemas.Algunos ejemplos son los manuales de usuario, que muestran algoritmos para usar un aparato, o las instrucciones que recibe un trabajador por parte de su patrón.

Los algoritmos pueden ser expresados de muchas maneras, incluyendo al lenguaje natural pseudocódigo, diagrama de flujo y lenguajes de programación entre otros.

La descripción de un algoritmo usualmente se hace en tres niveles:

  1. Descripción de alto nivel. Se establece el problema, se selecciona un modelo matemático y se explica el algoritmo de manera verbal, posiblemente con ilustraciones y omitiendo detalles.
  2. Descripción formal. Se usa pseudocódigo para describir la secuencia de pasos que encuentran la solución.
  3. Implementación. Se muestra el algoritmo expresado en un lenguaje de programación específico o algún objeto capaz de llevar a cabo instrucciones.

SOFTWARE

Se conoce como software al equipamiento lógico o soporte lógico de una computadora digital; 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 textos, que permite al usuario realizar todas las tareas concernientes a la edición de textos; el 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 para el usuario.

 

Si bien esta distinción es, en cierto modo, arbitraria, y a veces confusa, a los fines prácticos se puede clasificar al software en tres grandes tipos:

  Software de sistema: Su objetivo es desvincular adecuadamente al usuario y al programador de los detalles de la computadora 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, herramientas y utilidades de apoyo que permiten su mantenimiento. Incluye entre otros:

  Sistemas operativos

  Controladores de dispositivos

  Herramientas de diagnóstico

  Herramientas de Corrección y Optimización

  Servidores

  Utilidades

  Software de programación: 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. Incluye entre otros:

  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).

  Software de aplicación: 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 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)


 LENGUAJE DE 

PROGRAMACIÓN


Un lenguaje de programación es un idioma artificial diseñado para expresar computaciones que pueden ser llevadas a cabo por máquinas como las computadoras. Pueden usarse para crear programas que controlen el comportamiento físico y lógico de una máquina, para expresar algoritmos con precisión, o como modo de comunicación humana.1 Está formado por un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones. Al proceso por el cual se escribe, se prueba, se depura, se compila y se mantiene el código fuente de un programa informático se le llama programación.

También la palabra programación se define como el proceso de creación de un programa de computadora, mediante la aplicación de procedimientos lógicos, a través de los siguientes pasos:

§  El desarrollo lógico del programa para resolver un problema en particular.

§  Escritura de la lógica del programa empleando un lenguaje de programación específico (codificación del programa).

§  Ensamblaje o compilación del programa hasta convertirlo en lenguaje de máquina.

§  Prueba y depuración del programa.

§  Desarrollo de la documentación.

Existe un error común que trata por sinónimos los términos 'lenguaje de programación' y 'lenguaje informático'. Los lenguajes informáticos engloban a los lenguajes de programación y a otros más, como por ejemplo HTML (lenguaje para el marcado de páginas web que no es propiamente un lenguaje de programación, sino un conjunto de instrucciones que permiten diseñar el contenido de los documentos).

Permite especificar de manera precisa sobre qué datos debe operar una computadora, cómo deben ser almacenados o transmitidos y qué acciones debe tomar bajo una variada gama de circunstancias. Todo esto, a través de un lenguaje que intenta estar relativamente próximo al lenguaje humano o natural. Una característica relevante de los lenguajes de programación es precisamente que más de un programador pueda usar un conjunto común de instrucciones que sean comprendidas entre ellos para realizar la construcción de un programa de forma colaborativa.


CONSTANTES 


Constantes 

es un tipo especial de variable cuyo valor no puede normalmente ser alterado por el programa durante su ejecución. Muchos lenguajes de programación hacer una distinción explícita sintácticas entre los símbolos constantes y variables. 

A pesar de una constante de valor se especifica una sola vez, una constante puede hacer referencia muchas veces en un programa. Usando una constante en lugar de especificar un valor varias veces en el programa no sólo puede simplificar el mantenimiento del código, pero también puede suministrar un nombre significativo para él y la consolidación de tales enlaces constante para una ubicación de código estándar (por ejemplo, al principio).


Variable 

Es un espacio en la memoria de la computadora que permite almacenar temporalmente un dato durante la ejecución de un proceso, su contenido puede cambiar durante la ejecución del programa. 
Para poder reconocer una variable en la memoria de la computadora, es necesario darle un nombre con el cual podamos identificarla dentro de un algoritmo. 

 


Resumen

Luis Alberto Rojas Aguilar  I - 411


Principios de Programación

Programa

Un programa informático es un conjunto de instrucciones que una vez ejecutadas realizarán una o varias tareas en una computadora. Sin programas, estas máquinas no pueden funcionar. Al conjunto general de programas, se le denomina software, que más genéricamente se refiere al equipamiento lógico o soporte lógico de una computadora digital.
En infórmatica, se los denomina comúnmente binarios,  debido a que una vez que han pasado por el proceso de compilación y han sido creados, las instrucciones que se escribieron en un lenguaje de programación que los humanos usan para escribirlos con mayor facilidad, se han traducido al único idioma que la máquina comprende, combinaciones de ceros y unos llamada código máquina. El mismo término, puede referirse tanto a un programa ejecutable, como a su código fuente, el cual es transformado en un binario cuando es compilado.
Generalmente el código fuente lo escriben profesionales conocidos como programadores. Se escribe en un lenguaje que sigue uno de los siguientes dos paradigmas: imperativo o declarativo y que posteriormente puede ser convertido en una imagen ejecutable por un compilador. Cuando se pide que el programa sea ejecutado, el procesador ejecuta instrucción por instrucción.
De acuerdo a sus funciones, se clasifican en software de sistema y software de aplicación. En los computadores actuales, al hecho de ejecutar varios programas de forma simultánea y eficiente, se le conoce como multitarea.



Algoritmo

Un algoritmo, en informática, particularmente en programación, es un conjunto de pasos para lograr un resultado, por lo general, un algoritmo tiene datos de entrada, proceso de datos, y datos de salida.
En la vida cotidiana, se emplean algoritmos frecuentemente para resolver problemas. Algunos ejemplos son los manuales de usuario, que muestran algoritmos para usar un aparato, o las instrucciones que recibe un trabajador por parte de su patrón.




Software

Se conoce como software al equipamiento lógico o soporte lógico de una computadora digital; 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 textos, que permite al usuario realizar todas las tareas concernientes a la edición de textos; el 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 para el usuario.


Código, y Código de Programación


La programación es el proceso de diseñar, escribir, probar, depurar y mantener el código fuente de programas computacionales. El código fuente es escrito en un lenguaje de programación. El propósito de la programación es crear programas que exhiban un comportamiento deseado. El proceso de escribir código requiere frecuentemente conocimientos en varias áreas distintas, además del dominio del lenguaje a utilizar, algoritmos especializados y lógica formal. Programar no involucra necesariamente otras tareas tales como el análisis y diseño de la aplicación (pero si el diseño del código), aunque si suelen estar fusionadas en el desarrollo de pequeñas aplicaciones.


Lenguaje de Programación

Un lenguaje de programación es un idioma artificial diseñado para expresar computaciones que pueden ser llevadas a cabo por máquinas como las computadoras. Pueden usarse para crear programas que controlen el comportamiento físico y lógico de una máquina, para expresar algoritmos con precisión, o como modo de comunicación humana. Está formado por un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones. Al proceso por el cual se escribe,se prueba, se depura, se compila y se mantiene el código fuente de un programa infórmatico se le llama programación.

También la palabra programación se define como el proceso de creación de un programa de computadora, mediante la aplicación de procedimientos lógicos, a través de los siguientes pasos:
  • El desarrollo lógico del programa para resolver un problema en particular.
  • Escritura de la lógica del programa empleando un lenguaje de programación específico (codificación del programa).
  • Ensamblaje o compilación del programa hasta convertirlo en lenguaje de máquina.
  • Prueba y depuración de un programa
  • Desarrollo de la documentación.



Constantes y Variables dentro de Programación

Variables

En programación, las variables no son estructura de datos que, como su nombre indica, pueden cambiar de contenido a lo largo de la ejecución de un programa. Una variable corresponde a un área reservada en la memoria principal del ordenador pudiendo ser de longitud:
  • Fija.- Cuando el tamaño de la misma no variará a lo largo de la ejecución del programa. Todas las variables, sean del tipo que sean tienen longitud fija, salvo algunas excepciones  como las colecciones de otras variables  o las cadenas.
  • Variable.- Cuando el tamaño de la misma puede variar a lo largo de la ejecución. Típicamente colecciones de datos.


Constantes
En programación, una constante es un valor que no puede ser alterado durante la ejecución de un programa.
Una constante corresponde a una longitud fija de un área reservada en la memoria principal del ordenador, donde el programa almacena valores fijos.






Navarrete Fuentes Zaira Jocelyn Grupo: I . 411

 
LENGUAJE DE PROGRAMACION
 
Es un idioma artificial diseñado para expresar computaciones que pueden ser llevadas a cabo por máquinas como las computadoras. Pueden usarse para crear programas que controlen el comportamiento físico y lógico de una máquina, para expresar algoritmos con precisión, o como modo de comunicación humana. Está formado por un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones
lenguaje de programacion.
 
CODIGO
 
Término genérico para nombrar las instrucciones del programa, utilizadas en dos sentidos generales. El primero se refiere al código fuente, legible a simple vista, que son las instrucciones escritas por el programador en un lenguaje de programación. El segundo se refiere al código máquina ejecutable, que son las instrucciones convertidas de código fuente a instrucciones que el ordenador o computadora puede comprender.
 
SOFTWARE
 
Al equipamiento lógico o soporte lógico de una computadora digital; 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 textos, que permite al usuario realizar todas las tareas concernientes a la edición de textos; el 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 para el usuario.
 
PROGRAMADOR
 
Es aquella persona que escribe, depura y mantiene el código fuente de un programa informático, es decir, del conjunto de instrucciones que ejecuta el hardware de una computadora para realizar una tarea determinada. La programación es una de las principales disciplinas dentro de la informática. En la mayoría de los países, programador es también una categoría profesional reconocida.

Los programadores también reciben el nombre de desarrolladores de software, aunque estrictamente forman parte de un equipo de personas de distintas especialidades (mayormente informáticas), y siendo que el equipo es propiamente el desarrollador.

 

 

tarea (gonzalez flores eduardo jair)i411

que es un programa?

Un programa informático es un Conjunto de instrucciones que una vez ejecutadas realizarán una o varias tareas en una Computadora. Sin programas, estas máquinas no pueden funcionar

Que es un software?

y Al conjunto general de programas, se le denomina SoFtware, que más genéricamente se refiere al equipamiento lógico o soporte lógico de una computadora digital.


Lenguage de programacion.


Un lenguaje de programación es un idioma atificial diseñado para expresar computaciones que pueden ser llevadas a cabo por máquinas como las computadoras.
 

palabra programacion.

la palabra programación se define como el proceso de creación de un programa de computadora, mediante la aplicación de procedimientos lógicos.

resumen de variables y constantes


 

From: madnes_sindrome@hotmail.com
To: atm690616.prinprogramacio@blogger.com; torres_millan@yahoo.com.mx
Subject: resumen de
Date: Wed, 23 Feb 2011 10:05:52 -0600

EQUIPO NUMERO 6
 
GRUPO I-412
 
1- MENDEZ MARTINEZ ALFONSO EDUARDO
2-AGUILAR CARRILLO CECILIA
3-MOYA RIOS YANETH ABIGAIL
4-SALINAS MOLINA GUILLERMO
5-ANGELES CARDENAS ALEJANDRA
6-TORRES SANTILLAN KAREN CHANTAL
 
Variables y constantes dentro de programación
 
¿QUE ES UNA VARIABLE?
 
EN PROGRAMCIÒN LAS VARIABLES SON ESTRUCTURADAS DE DATOS,PUEDEN CAMBIAR CONSTANTEMENTE SU INFORMACION EN LA EJECUCION DEL PROGRAMA,Y ESTA INFORMACION ES RESERVADA EN UNA PARTE DE LA MEMORIA Y ESTA MISMA SE DIFERENCIA DEL ARCHIVO CON UN Algoritmo.
 
HAY TIPOS DE VARIABLES TALES COMO :
FIJAS:QUE SU INFORMACION NO CAMBIA EN  NINGUN MOMENTO
 
VARIABLES:QUE COMO SU NOMBRE LO MENCIONA SU INFORMACION SIEMPRE VA ESTAR CAMBIANDO Y SE ALMACENA TEMPORALMENTE
 
CONSTANTE:SON ELEMENTOS DE ALMACENAMIENTO DE DATOS O DIRECCIONES DE LA MEMORIA SU INFORMACION NO CAMBIA
 
HAY 4 TIPOS DE CONSTANTES:
 
CONSTANTE ENTERAS:PUEDEN ESATR ESCRITOS EN 3 TIPOS DE SISTEMA NUMERICOS, DECIMAL,OCTAGONAL O HEXADECIMAL
 
CONSTANTE FLOTANTE:DISTINGUE LA PARTE DECIMAL DEL ENTERO ESCRIBIENDO UNA LETRA "E"
 
CONSTANTE DE CARACTER:SE REPRESENTA CON EL VALOR CONSTANTE ENCERRADO ENTRE APOSTROFOS(SIGNO DE PUNTUACIÒN EN FORMA DE COMILLA")
 
CONTANTE DE CARACTERES:ALMACENA LAS CADENAS QUE ESTAN CERRADAS ENTRE COMILLAS
 
 

Equipo 4, I-412

CODIGO, CODIGO DE PROGRAMACION

 

Código puede referirse a:

El código fuente, en programación, el texto escrito en un lenguaje de programación que ha de ser compilado o interpretado para ejecutarse en una computadora.

 

CODIGO DE PROGRAMACION

El código fuente de un programa informático (o software) es un conjunto de líneas de texto que son las instrucciones que debe seguir la computadora para ejecutar dicho programa
El código fuente de un programa está escrito por un programador en algún lenguaje de programación, pero en este primer estado no es directamente ejecutable por la computadora, sino que debe ser traducido a otro lenguaje. Para esta traducción se usan los llamados compiladores, ensambladores, intérpretes y otros sistemas de traducción.
Por tanto, en el código fuente de un programa está descrito por completo su funcionamiento.
El término código fuente también se usa para hacer referencia al código fuente de otros elementos del software, como por ejemplo el código fuente de una página web que está escrito en el lenguaje de marcado HTML o en Javascript u otros lenguajes de programación web y que es posteriormente ejecutado por el navegador web para visualizar dicha página cuando es visitada.
 
 
 
INTEGRANTES:  Mesa 4, Grupo I-412
Sánchez Sánchez Alexa Nicole
Ayala Jaramillo José Manuel
Parra Guzmán Jesica Marlen
Castillo Martínez Edgar Efrén
Miranda Mendoza Marco Antonio
Cuellar Hernández Ricardo

equipo:3 I-412 actv.4

equipo:3 I-412 actv.4
GARCIA LUEVANO ILSE GABRIELA
ACUÑA PEREZ MARIA FERNANDA

AYALA GALLEGOS ILSE SELENE
RODRIGUEZ ELIZONDO CINTHIA
CRUZ SANCHEZ MIGUEL A.
HERNANDEZ LHOMAN KEVIN
BELLACETIN SOLANO ERIC
 
                                                          SOFTWARE
 

Definición de software

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.

Considerando esta definición, el concepto de software va más allá de los programas de computación en sus distintos estados: código fuente, binario o ejecutable; también su documentación, los datos a procesar e incluso la información de usuario forman 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 la ingeniería de software y las ciencias de la computación, el software es toda la información procesada por los sistemas informáticos: programas y datos.

El concepto de leer diferentes secuencias de instrucciones (programa) 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 Alan Turing en su ensayo de 1936, «Los números computables», con una aplicación al problema de decisión.

Clasificación del software

Si bien esta distinción es, en cierto modo, arbitraria, y a veces confusa, a los fines prácticos se puede clasificar al software en tres grandes tipos:

 

Proceso de creación del software

Proceso al conjunto ordenado de pasos a seguir para llegar a la solución de un problema u obtención de un producto, en este caso particular, para lograr la obtención de un producto software que resuelva un problema.
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.