integrantes

JUAN CARLOS SANCHEZ S. 181011
JOSE AMAYA OÑATE 181020
jjsanmay@gmail.com

jueves, 25 de abril de 2013

EVOLUCION DEL COMPUTADOR


EVOLUCIÓN DE LOS COMPUTADORES




PRIMERA GENERACIÓN DEL COMPUTADOR

La primera generación de computadoras comprende desde el año 1944 a 1956, en esta primera generación se da la creacion de la computadora MARK I que fue desarrollada por Howard Aiken, en este periodo se desarrolla la segunda guerra mundial motivo por el cual muchos proyectos quedaron inconclusos, pero también hubieron proyectos impulsados por este mismo motivo que fue la guerra, que hizo que se logren grandes desarrollos, es así como se crea la computadora ENIAC (Electronic Numerical Intregrator and Calculator) que era una enorme computadora la cual ocupaba mas de una habitación, pesaba mas de 30 toneladas y trabajaba con mas de 18 mil tubos de vacio, una de sus caracteristicas importantes fue que usaba el sistema binario en lugar del sistema decimal, luego fue construida por Eckert y Mauchley la computadora EDVAC (Electronic, Discrete Variable Automatic) que contaba con un programa, este programa le permitía al computador alternar las operaciones dependiendo de los resultados obtenidos previamente.

Es de mencionar que durante esta primera generacion lo mas importante de las computadoras que se crearon fue el uso de tubos al vacío, ademas cabe mencionar que despues de 1950 se crearon diversas maquinas cada una con un avance significativo, en 1951 se construyó la primera computadora para uso comercial la cual fue llamada UNIVAC I, esta computadora fue contruida para ser usada en la oficina de censos de  los Estados Unidos.

Una de las compañias que no dejo de producir computadoras fue IBM la cual en el año de 1953 contruyó su computador 701 y posteriormente el 752.




SEGUNDA GENERACIÓN DEL COMPUTADOR


La segunda generación comprende desde los años 1959 a 1964, lo mas destacable de esta segunda generación es el reemplazo del uso de tubos al vacío por los transistores lo que hizo que las computadoras sean mas pequeñas y más rápidas.

En esta segunda generacion se reemplazo el lenguaje de máquina por el lenguaje emsamblador, se crearon lenguajes de alto nivel como el COBOL y el FORTRAN. Además para el almacenamiento de la información se comenzaron a usar cintas magneticas.
 
Aunque en esta generacion se disminuyó el tamaño y se aumento la velocidad, aun las computadoras significaban un considerable costo para las empresas.



TERCERA GENERACIÓN DEL COMPUTADOR


Esta generación comprende desde 1964 a 1971 y el mayor logro de esta generación es el uso de cirucitos integrados (chips de silicio), esto hizo que las computadoras sean mas pequeñas y mas rápidas,  Con el uso del chip se dio un enorme paso en la era de la computación  ya que el chip contenía una serie de circuitos integrados los cuales almacenaban la información, esto permitió que las computadoras puedan hacer varias tareas a la vez como era la de procesamiento de información y calculo matemático.


En la tercera generacion comienzan a surgir los programas o software, la compañia que tuvo su apogeo en esta generación fue IBM la cual lanzó al mercado las minicomputadoras IBM 360 y 370.

Cabe mencionar que en esta epoca los sitemas operativos pasaron de ser monotarea a multitarea para permitir que las taras fueran ejecutadas continuamente.


En el año de 1970 IBM colocó una unidad de diskette a su computador modelo 3740 con esto se incrementó la capacidad de acceso y la velocidad de la informacion. 



CUARTA GENERACIÓN DEL COMPUTADOR

La cuarta generación de las computadoras se da desde 1971 a 1981, lo más importante en esta generacion es el invento del microprocesador el cual unía los circuitos integrados en un solo bloque. 


La creación del microprocesador hizo posible el desarrollo de las computadoras personales o PC, lo cual marcaría una revolucion en el mundo de la computación, esto cambiaría la forma de trabajar e incluso de vivir de muchas personas hasta la actualidad.

En el año de 1971 la compañía INTEL crea el primer chip de 4 bits, el cual contenía una gran cantidad de transistores.  
Esta generación de computadores aparecen las primeras microcomputadoras las cuales fueron fabricadas por la compañía APPLE e IBM.

Tambien se incorpora en esta generacion el desarrollo de sortware orientados tanto para adultos como para niños, es aqui donde se da inicio a MS-DOS (Microsoft Disk Operating System) o disco operativo de sistema, asimismo se da una revolución en el desarrollo del hardware.



QUINTA GENERACIÓN DEL COMPUTADOR


  Cabe mencionar que no se tiene muy definido cuando empieza la quinta generación y la sexta generación del computador, esto debido a que los avances en la tecnología de la computación se vienen dando de manera muy rapida, todo lo contrario con lo que sucedió en las primeras generaciones del computador.
  
Pero si queremos darle una fecha podemos decir que la quinta generación se situa entre los años 1982 a 1989, en estos años las empresas encargadas de construir computadoras contaron con grandes avances de microelectrónica y en avances de software, es en este periodo cuando surge la "red de redes" o Internet, y es ahí donde se dan los mas grandes avances, se da inicio a la inteligencia artificial, que tenia el propósito de equipar a las computadoras con la capacidad de razonar para encontrar soluciones a sus propios problemas siguiendo patrones y secuencias, estas computadoras podían operar en grandes compañias como es la construcción de automóviles, y otras que podrian hacer diversas tareas y a un ritmo impresionante.

Los dispositivos de almacenamiento de informacion surgen un cambio pudiendo ahora almacenar mayor cantidad de información, se lanza al mercado el CD como estandar para el almacenamiento de musica y vídeo.



SEXTA GENERACIÓN DEL COMPUTADOR

Como ya se sabe la sexta generación se viene dando a partir de 1990 hasta la fecha, en estos ultimos años hemos venido viendo que las computadoras ahora son mas pequeñas, son mas versatiles, ahora internet es una herramienta indispensable tanto en los centros de labores como en el hogar, casi el 90% de la población hace uso en algun momento de internet, y por consiguiente de una computadora. 

Ahora vemos que el costo de una PC es relativamente bajo así como el de una Laptop, las computadoras de ahora vienen trabajando con arquitecturas paralelas / vectoriales lo que hace que sean muy paridas, pueden almacenar una cantidad enorme de información hablamos de terabites, ahora las computadoras practicamente toman decisiones propias alcanzando casi la misma del ser humano, tenemos computadoras táctiles que casi no ocupan espacion en el hogar y el trabajo, también con diseño holográfico, lo cual ha revolucionado el mercado de la informática.

Estamos entrando a una era donde las computadoras pueden desarrollar capacidades casi similiares al ser humano, ya hemos visto robots que puden jugar un encuentro de futbol, esperamos que el avance tecnologico en el mundo de la informatica y la computación nos facilite más las cosas asi como hasta ahora lo viene haciendo.


En la actualidad la informatica utiliza satelites, fibra optica, inteligencia artificial lo cual hace que el desarrollo en este campo sea enorme, estamos frente a un avance sin precedentes, y pensar que todo esto comenzo con una simple tabla de Abaco en la antiguedad.





EL HARDWARE


HARDWARE




En computación, término inglés que hace referencia a cualquier componente físico tecnológico, que trabaja o interactúa de algún modo con la computadora. No sólo incluye elementos internos como el disco duro, CD-ROM, disquetera, sino que también hace referencia al cableado, circuitos, gabinete, etc. E incluso hace referencia a elementos externos como la impresora, el mouse, el teclado, el monitor y demás periféricos.

El hardware contrasta con el software, que es intangible y le da lógica al hardware (además de ejecutarse dentro de éste).

El hardware no es frecuentemente cambiado, en tanto el software puede ser creado, borrado y modificado sencillamente. (Excepto el firmware, que es un tipo de software que raramente es alterado).

Hardware típico de una computadora

El típico hardware que compone una computadora personal es el siguiente:



• Su chasis o gabinete
• La placa madre, que contiene: CPU, cooler, RAM, BIOS, buses (PCI, USB, HyperTransport, CSI, AGP, etc) 
• Fuente de alimentación
• Controladores de almacenamiento: IDE, SATA, SCSI
• Controlador de video
• Controladores del bus de la computadora (paralelo, serial, USB, FireWire), para conectarla a periféricos
• Almacenamiento: disco duro, CD-ROM, disquetera, ZIP driver y otros
• Tarjeta de sonido
• Redes: módem y tarjeta de red

El hardware también puede incluir componentes externos como:
• Teclado
• Mouse, trackballs
• Joystick, gamepad, volante
• Escáner, webcam
• Micrófono, parlante
• Monitor (LCD, o CRT)
• Impresora

Distintas clasificaciones del hardware

Clasificación por la funcionalidad del hardware

* Hardware básico: dispositivos necesarios para iniciar la computadora. Los más básicos son la placa madre, la fuente de alimentación, el microprocesador y la memoria. Se podrían incluir componentes como monitor y teclado, aunque no son estrictamente básicos.

* Hardware complementario: aquellos dispositivos que complementan a la computadora, pero que no son fundamentales para su funcionamiento, como ser, impresora, unidades de almacenamiento, etc.

Clasificación por la ubicación del hardware

* Periféricos (componentes externos): dispositivos externos a la computadora. Ver periférico
* Componentes internos: dispositivos que son internos al gabinete de la computadora
* Puertos: conectan los periféricos con los componentes internos




Clasificación por el flujo de información del hardware

* Periféricos de salida: monitor, impresora, etc.
* Periféricos de entrada: teclado, mouse, etc.
* Periféricos/dispositivos de almacenamiento: disco duro, memorias, etc.
* Periféricos de comunicación: módem, puertos, etc.
* Dispositivos de procesamiento: CPU, microprocesador, placa madre, etc.

EL SOFTWARE


SOFTWARE



En computación, el software -en sentido estricto- es todo programa o aplicación programado para realizar tareas específicas. El término "software" fue usado por primera vez por John W. Tukey en 1957.

Algunos autores prefieren ampliar la definición de software e incluir también en la definición todo lo que es producido en el desarrollo del mismo.

La palabra "software" es un contraste de "hardware"; el software se ejecuta dentro del hardware.

El software en sentido amplio

Una definición más amplia de software incluye mucho más que sólo los programas. Esta definición incluye:

- La representación del software: programas, detalles del diseño escritos en un lenguaje de descripción de programas, diseño de la arquitectura, especificaciones escritas en lenguaje formal, requerimientos del sistema, etc.

- El conocimiento de la ingeniería del software: Es toda la información relacionada al desarrollo de software (por ejemplo, cómo utilizar un método de diseño específico) o la información relacionada al desarrollo de un software específico (por ejemplo, el esquema de pruebas en un proyecto). Aquí se incluye información relacionada al proyecto, información sobre la tecnología de software, conocimiento acerca de sistemas similares y la información detallada relacionada a la identificación y solución de problemas técnicos.

- La información de la aplicación.

El software, como programa, consiste en un código en un lenguaje máquina específico para un procesador individual. El código es una secuencia de instrucciones ordenadas que cambian el estado del hardware de una computadora.

El software se suele escribir en un lenguaje de programación de alto nivel, que es más sencillo de escribir (pues es más cercano al lenguaje natural humano), pero debe convertirse a lenguaje máquina para ser ejecutado. 

El software puede distinguirse en tres categorías: software de sistema, software de programación y aplicación de software. De todas maneras esta distinción es arbitraria y muchas veces un software puede caer un varias categorías.

- Software de sistema: ayuda a funcionar al hardware y a la computadora. Incluye el sistema operativo, controladores de dispositivos, herramientas de diagnóstico, servidores, sistema de ventanas, utilidades y más. Su propósito es evitar lo más posible los detalles complejos de la computación, especialmente la memoria y el hardware.

- Software de programación: provee herramientas de asistencia al programador. Incluye editores de texto, compiladores, intérprete de instrucciones, enlazadores, debuggers, etc.

- Software de aplicación: permite a los usuarios finales hacer determinadas tareas. Algunos software de aplicación son los navegadores, editores de texto, editores gráficos, antivirus, mensajeros, etc.

SISTEMA OPERATIVO


SISTEMA OPERATIVO




El sistema operativo es el programa (o software) más importante de un ordenador. Para que funcionen los otros programas, cada ordenador de uso general debe tener un sistema operativo. Los sistemas operativos realizan tareas básicas, tales como reconocimiento de la conexión del teclado, enviar la información a la pantalla, no perder de vista archivos y directorios en el disco, y controlar los dispositivos periféricos tales como impresoras, escáner, etc.

En sistemas grandes, el sistema operativo tiene incluso mayor responsabilidad y poder, es como un policía de tráfico, se asegura de que los programas y usuarios que están funcionando al mismo tiempo no interfieran entre ellos. El sistema operativo también es responsable de la seguridad, asegurándose de que los usuarios no autorizados no tengan acceso al sistema.

Clasificación de los Sistemas Operativos

Los sistemas operativos pueden ser clasificados de la siguiente forma:

Multiusuario: Permite que dos o más usuarios utilicen sus programas al mismo tiempo. Algunos sistemas operativos permiten a centenares o millares de usuarios al mismo tiempo.
Multiprocesador: soporta el abrir un mismo programa en más de una CPU.
Multitarea: Permite que varios programas se ejecuten al mismo tiempo.
Multitramo: Permite que diversas partes de un solo programa funcionen al mismo tiempo.
Tiempo Real: Responde a las entradas inmediatamente. Los sistemas operativos como DOS y UNIX, no funcionan en tiempo real.
Cómo funciona un Sistema Operativo

Los sistemas operativos proporcionan una plataforma de software encima de la cual otros programas, llamados aplicaciones, puedan funcionar. Las aplicaciones se programan para que funcionen encima de un sistema operativo particular, por tanto, la elección del sistema operativo determina en gran medida las aplicaciones que puedes utilizar.

Los sistemas operativos más utilizados en los PC son DOS, OS/2, y Windows, pero hay otros que también se utilizan, como por ejemplo Linux.

Cómo se utiliza un Sistema Operativo

Un usuario normalmente interactúa con el sistema operativo a través de un sistema de comandos, por ejemplo, el sistema operativo DOS contiene comandos como copiar y pegar para copiar y pegar archivos respectivamente. Los comandos son aceptados y ejecutados por una parte del sistema operativo llamada procesador de comandos o intérprete de la línea de comandos. Las interfaces gráficas permiten que utilices los comandos señalando y pinchando en objetos que aparecen en la pantalla.


Ejemplos de Sistema Operativo

A continuación detallamos algunos ejemplos de sistemas operativos:

Familia Windows

Windows 95

Windows 98
Windows ME
Windows NT
Windows 2000
Windows 2000 server
Windows XP
Windows Server 2003
Windows CE
Windows Mobile
Windows XP 64 bits
Windows Vista (Longhorn)
Familia Macintosh

Mac OS 7
Mac OS 8
Mac OS 9
Mac OS X
Familia UNIX

AIX
AMIX
GNU/Linux
GNU / Hurd
HP-UX
Irix
Minix
System V
Solaris
UnixWare

BASE DE DATOS


BASE DE DATOS



Una base de datos es un “almacén” que nos permite guardar grandes cantidades de información de forma organizada para que luego podamos encontrar y utilizar fácilmente. A continuación te presentamos una guía que te explicará el concepto y características de las bases de datos.

El término de bases de datos fue escuchado por primera vez en 1963, en un simposio celebrado en California, USA. Una base de datos se puede definir como un conjunto de información relacionada que se encuentra agrupada ó estructurada.


Desde el punto de vista informático, la base de datos es un sistema formado por un conjunto de datos almacenados en discos que permiten el acceso directo a ellos y un conjunto de programas que manipulen ese conjunto de datos.

Cada base de datos se compone de una o más tablas que guarda un conjunto de datos. Cada tabla tiene una o más columnas y filas. Las columnas guardan una parte de la información sobre cada elemento que queramos guardar en la tabla, cada fila de la tabla conforma un registro.

Definición de base de datos
Se define una base de datos como una serie de datos organizados y relacionados entre sí, los cuales son recolectados y explotados por los sistemas de información de una empresa o negocio en particular.

Características
Entre las principales características de los sistemas de base de datos podemos mencionar:

Independencia lógica y física de los datos.
Redundancia mínima.
Acceso concurrente por parte de múltiples usuarios.
Integridad de los datos.
Consultas complejas optimizadas.
Seguridad de acceso y auditoría.
Respaldo y recuperación.
Acceso a través de lenguajes de programación estándar.
Sistema de Gestión de Base de Datos (SGBD)

Los Sistemas de Gestión de Base de Datos (en inglés DataBase Management System) son un tipo de software muy específico, dedicado a servir de interfaz entre la base de datos, el usuario y las aplicaciones que la utilizan. Se compone de un lenguaje de definición de datos, de un lenguaje de manipulación de datos y de un lenguaje de consulta.

Ventajas de las bases de datos
Control sobre la redundancia de datos:
Los sistemas de ficheros almacenan varias copias de los mismos datos en ficheros distintos. Esto hace que se desperdicie espacio de almacenamiento, además de provocar la falta de consistencia de datos.

En los sistemas de bases de datos todos estos ficheros están integrados, por lo que no se almacenan varias copias de los mismos datos. Sin embargo, en una base de datos no se puede eliminar la redundancia completamente, ya que en ocasiones es necesaria para modelar las relaciones entre los datos.

Consistencia de datos:
Eliminando o controlando las redundancias de datos se reduce en gran medida el riesgo de que haya inconsistencias. Si un dato está almacenado una sola vez, cualquier actualización se debe realizar sólo una vez, y está disponible para todos los usuarios inmediatamente. Si un dato está duplicado y el sistema conoce esta redundancia, el propio sistema puede encargarse de garantizar que todas las copias se mantienen consistentes.

Compartición de datos:
En los sistemas de ficheros, los ficheros pertenecen a las personas o a los departamentos que los utilizan. Pero en los sistemas de bases de datos, la base de datos pertenece a la empresa y puede ser compartida por todos los usuarios que estén autorizados.

Mantenimiento de estándares:
Gracias a la integración es más fácil respetar los estándares necesarios, tanto los establecidos a nivel de la empresa como los nacionales e internacionales. Estos estándares pueden establecerse sobre el formato de los datos para facilitar su intercambio, pueden ser estándares de documentación, procedimientos de actualización y también reglas de acceso.

Mejora en la integridad de datos:
La integridad de la base de datos se refiere a la validez y la consistencia de los datos almacenados. Normalmente, la integridad se expresa mediante restricciones o reglas que no se pueden violar. Estas restricciones se pueden aplicar tanto a los datos, como a sus relaciones, y es el SGBD quien se debe encargar de mantenerlas.

Mejora en la seguridad:
La seguridad de la base de datos es la protección de la base de datos frente a usuarios no autorizados. Sin unas buenas medidas de seguridad, la integración de datos en los sistemas de bases de datos hace que éstos sean más vulnerables que en los sistemas de ficheros.

Mejora en la accesibilidad a los datos:
Muchos SGBD proporcionan lenguajes de consultas o generadores de informes que permiten al usuario hacer cualquier tipo de consulta sobre los datos, sin que sea necesario que un programador escriba una aplicación que realice tal tarea.

Mejora en la productividad:
El SGBD proporciona muchas de las funciones estándar que el programador necesita escribir en un sistema de ficheros. A nivel básico, el SGBD proporciona todas las rutinas de manejo de ficheros típicas de los programas de aplicación.

El hecho de disponer de estas funciones permite al programador centrarse mejor en la función específica requerida por los usuarios, sin tener que preocuparse de los detalles de implementación de bajo nivel.

Mejora en el mantenimiento:
En los sistemas de ficheros, las descripciones de los datos se encuentran inmersas en los programas de aplicación que los manejan.

Esto hace que los programas sean dependientes de los datos, de modo que un cambio en su estructura, o un cambio en el modo en que se almacena en disco, requiere cambios importantes en los programas cuyos datos se ven afectados.

Sin embargo, los SGBD separan las descripciones de los datos de las aplicaciones. Esto es lo que se conoce como independencia de datos, gracias a la cual se simplifica el mantenimiento de las aplicaciones que acceden a la base de datos.

Aumento de la concurrencia:
En algunos sistemas de ficheros, si hay varios usuarios que pueden acceder simultáneamente a un mismo fichero, es posible que el acceso interfiera entre ellos de modo que se pierda información o se pierda la integridad. La mayoría de los SGBD gestionan el acceso concurrente a la base de datos y garantizan que no ocurran problemas de este tipo.

Mejora en los servicios de copias de seguridad:
Muchos sistemas de ficheros dejan que sea el usuario quien proporcione las medidas necesarias para proteger los datos ante fallos en el sistema o en las aplicaciones. Los usuarios tienen que hacer copias de seguridad cada día, y si se produce algún fallo, utilizar estas copias para restaurarlos.

En este caso, todo el trabajo realizado sobre los datos desde que se hizo la última copia de seguridad se pierde y se tiene que volver a realizar. Sin embargo, los SGBD actuales funcionan de modo que se minimiza la cantidad de trabajo perdido cuando se produce un fallo.

Desventajas de las bases de datos
Complejidad:
Los SGBD son conjuntos de programas que pueden llegar a ser complejos con una gran funcionalidad. Es preciso comprender muy bien esta funcionalidad para poder realizar un buen uso de ellos.

Coste del equipamiento adicional:
Tanto el SGBD, como la propia base de datos, pueden hacer que sea necesario adquirir más espacio de almacenamiento. Además, para alcanzar las prestaciones deseadas, es posible que sea necesario adquirir una máquina más grande o una máquina que se dedique solamente al SGBD. Todo esto hará que la implantación de un sistema de bases de datos sea más cara.

Vulnerable a los fallos:
El hecho de que todo esté centralizado en el SGBD hace que el sistema sea más vulnerable ante los fallos que puedan producirse. Es por ello que deben tenerse copias de seguridad (Backup).

Tipos de Campos
Cada Sistema de Base de Datos posee tipos de campos que pueden ser similares o diferentes. Entre los más comunes podemos nombrar:

Numérico: entre los diferentes tipos de campos numéricos podemos encontrar enteros “sin decimales” y reales “decimales”.
Booleanos: poseen dos estados: Verdadero “Si” y Falso “No”.
Memos: son campos alfanuméricos de longitud ilimitada. Presentan el inconveniente de no poder ser indexados.
Fechas: almacenan fechas facilitando posteriormente su explotación. Almacenar fechas de esta forma posibilita ordenar los registros por fechas o calcular los días entre una fecha y otra.
Alfanuméricos: contienen cifras y letras. Presentan una longitud limitada (255 caracteres).
Autoincrementables: son campos numéricos enteros que incrementan en una unidad su valor para cada registro incorporado. Su utilidad resulta: Servir de identificador ya que resultan exclusivos de un registro.
Tipos de Base de Datos
Entre los diferentes tipos de base de datos, podemos encontrar los siguientes:

MySql: es una base de datos con licencia GPL basada en un servidor. Se caracteriza por su rapidez. No es recomendable usar para grandes volúmenes de datos.
PostgreSql y Oracle: Son sistemas de base de datos poderosos. Administra muy bien grandes cantidades de datos, y suelen ser utilizadas en intranets y sistemas de gran calibre.
Access: Es una base de datos desarrollada por Microsoft. Esta base de datos, debe ser creada bajo el programa access, el cual crea un archivo .mdb con la estructura ya explicada.
Microsoft SQL Server: es una base de datos más potente que access desarrollada por Microsoft. Se utiliza para manejar grandes volúmenes de informaciones.

CICLO DE VIDA


CICLO DE VIDA DEL SOFTWARE


El término ciclo de vida del software describe el desarrollo de software, desde la fase inicial hasta la fase final. El propósito de este programa es definir las distintas fases intermedias que se requieren para validar el desarrollo de la aplicación, es decir, para garantizar que el software cumpla los requisitos para la aplicación y verificación de los procedimientos de desarrollo: se asegura de que los métodos utilizados son apropiados.

Estos programas se originan en el hecho de que es muy costoso rectificar los errores que se detectan tarde dentro de la fase de implementación. El ciclo de vida permite que los errores se detecten lo antes posible y por lo tanto, permite a los desarrolladores concentrarse en la calidad del software, en los plazos de implementación y en los costos asociados.

El ciclo de vida básico de un software consta de los siguientes procedimientos:

Definición de objetivos: definir el resultado del proyecto y su papel en la estrategia global.
Análisis de los requisitos y su viabilidad: recopilar, examinar y formular los requisitos del cliente y examinar cualquier restricción que se pueda aplicar.
Diseño general: requisitos generales de la arquitectura de la aplicación.
Diseño en detalle: definición precisa de cada subconjunto de la aplicación.
Programación (programación e implementación): es la implementación de un lenguaje de programación para crear las funciones definidas durante la etapa de diseño.
Prueba de unidad: prueba individual de cada subconjunto de la aplicación para garantizar que se implementaron de acuerdo con las especificaciones.
Integración: para garantizar que los diferentes módulos se integren con la aplicación. Éste es el propósito de la prueba de integración que está cuidadosamente documentada.
Prueba beta (o validación), para garantizar que el software cumple con las especificaciones originales.
Documentación: sirve para documentar información necesaria para los usuarios del software y para desarrollos futuros.
Implementación
Mantenimiento: para todos los procedimientos correctivos (mantenimiento correctivo) y las actualizaciones secundarias del software (mantenimiento continuo).
El orden y la presencia de cada uno de estos procedimientos en el ciclo de vida de una aplicación dependen del tipo de modelo de ciclo de vida acordado entre el cliente y el equipo de desarrolladores.

Modelos de ciclo de vida

Para facilitar una metodología común entre el cliente y la compañía de software, los modelos de ciclo de vida se han actualizado para reflejar las etapas de desarrollo involucradas y la documentación requerida, de manera que cada etapa se valide antes de continuar con la siguiente etapa. Al final de cada etapa se arreglan las revisiones de manera que (texto faltante).

Modelo en cascada

El modelo de ciclo de vida en cascada comenzó a diseñarse en 1966 y se terminó alrededor de 1970. Se define como una secuencia de fases en la que al final de cada una de ellas se reúne la documentación para garantizar que cumple las especificaciones y los requisitos antes de pasar a la fase siguiente:






CRITICAS:
/ No refleja realmente el proceso de desarrollo del  software
/ Se tarda mucho tiempo en pasar por todo el ciclo
/ Perpetua el fracaso de la industria del software en su comunicación con el usuario final
/ El mantenimiento se realiza en el código fuente
/ Las revisiones  de proyectos de gran complejidad son muy difíciles
/ Impone una estructura de gestión de proyectos



Modelo V

El modelo de ciclo de vida V proviene del principio que establece que los procedimientos utilizados para probar si la aplicación cumple las especificaciones ya deben haberse creado en la fase de diseño.