jueves, 18 de abril de 2013

2. Ciclo de Vida del Software.

El ciclo de vida del software es una estructura aplicada al desarrollo de un producto de software. Hay varios modelos a seguir para establecer este proceso, cada una de los cuales describe un enfoque diferente para diferentes actividades que tienen lugar durante el proceso. 

  • Modelo de Cascada: Muestra un proceso donde se debe seguir una serie de fases que siguiendo el modelo de cascada de forma estricta, solo cuando se finaliza una fase empieza la otra. La falta de flexibilidad de este modelo ha sido fuerte crítica de los defensores de modelos más flexibles.
  • Modelo en Espiral: Este modelo fue creado en 1988 por barry Boehm, combinando algunos aspectos clave de las metodologías del modelo de cascada, pero dando énfasis en un área que para muchos no jugó el papel que requiere en otros modelos: un análisis iterativo y concienzudo de los riesgos, especialmente en el caso de sistemas complejos a gran escala.
  • Desarrollo Iterativo e Incremental: Recomienda la construcción de secciones reducidas de software que irán ganando en tamaño para facilitar así la detección de problemas de importancia antes de que sea demasiado tarde.
  • Desarrollo Ágil: Utiliza un desarrollo iterativo como base para abogar por un punto de vista más centrado en las personas que en el caso de las soluciones tradicionales. Estos procesos utilizan retroalimentación en lugar de planificación, y esta se canaliza por medio de pruebas y frecuentes versiones del software.
  • Codificación y Corrección: Este proceso es más que una estrategia predeterminada. Sin dedicar tiempo para el diseño, los programadores comienzan de forma inmediata a producir código. Antes o después comienza la fase de prueba de software y los inevitables errores que se encuentran han de eliminarse antes de poder entregar el software.

1. Definición, Origen, Evolución, Características e Importancia del Software.

a) Definición: Es el equipamiento 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 tangibles que son llamados hardware.

b) Origen: Durante la primera generación de computadoras a finales de 1940, los programas se escribían de una manera en la que el concepto de software como una parte "independiente" del hardware se veía todavía muy lejano. En los años 40 y 50, no existían las licencias de software. El software era libre y los programas se intercambiaban como se hace con las recetas de cocina. Con el surgimiento del ARPANET (precursor del Internet) a finales de la década de los 60 empezó el surgimiento de la primera comunidad global que se alzaba sobre los valores y principios del software libre.

c) Evolución: El término "evolución" del software se utiliza desde los 60 para denominar la dinámica del crecimiento del software.

Durante los primeros años de la era de la computadora la mayoría del software se desarrollaba y era utilizado por la misma persona u organización. En la segunda era se contemplaba la multiprogramación y los sistemas multiusuarios, se introdujeron nuevos conceptos de interacción hombre-máquina. A mediados de los años 70 se presenta en esta tercera era: El sistema distribuido, múltiples computadoras, cada una ejecutando funciones concurrentes y comunicándose con alguna otra. La industria del software ya es la cuna de la economía del mundo. Las técnicas de la cuarta generación está cambiando en la forma en que la comunidad del software construye programas informáticos.

d) Características: El software no se estropea. No es susceptible a los males del entorno que hacen que el hardware se estropee. El software se desarrolla, no se fabrica en un sentido clásico. El software es un elemento del sistema que es lógico, en lugar de físico y puede aplicarse en cualquier situación en la que se haya definido un conjunto específico de pasos procedimentales, es decir, un algoritmo.

e) Importancia: La palabra software se refiere a las instrucciones que se incorporan a un sistema informático para que este lleve a cabo una determinada función. El software es imprescindible para cualquier sistema informático, puesto que sin el este no funcionaría. Por tal razón, la importancia del software radica en que permite una comunicación entre el sujeto y la máquina, e incluso una interacción entre ambos. Está tan presente en nuestra vida cotidiana   que a veces pasa desapercibido ya que no solo está en las aplicaciones de los ordenadores, sino que una gran parte de electrodomésticos, coches, etc... Llevan su propio software incorporado.