martes, 26 de septiembre de 2017

GENERACIONES


GENERACIONES DE METODOLOGÍA DE DESARROLLO DE SOFTWARE

1.- Desarrollo Convencional (sin metodología):
1.1.- Características:
ØEn los años 50 no existía metodologías de desarrollo. El desarrollo estaba a cargo de programadores.
ØSe vio la importancia del análisis y diseño en el desarrollo de sistemas (aparecen los analistas programadores y analistas de sistemas).
ØNo hay forma de controlar lo que está sucediendo en el proyecto.
Ø Los cambios organizativos afectan negativamente al proceso de desarrollo.
Ø Los resultados finales son impredecibles.
1.2.- Modelo Jackson: Sus características son:
Ø Se basa en el principio de que la base inicial del diseño del programa son los datos del problema y no los requisitos funcionales exigidos.
Ø  Permite una mayor objetividad.
Ø Partir de una buena especificación del problema que queremos resolver: datos de entrada, datos de salida y algoritmo aplicables.

2.- Desarrollo de programación estructurada: El desarrollo estructurado se basa en la estructuración y descomposición funcional de problemas en unidades más pequeñas interrelacionadas entre sí. Representan los procesos, flujos y estructuras de datos, de una manera jerárquica y ven el sistema como entradas – proceso- salidas.
2.1 Características:
Ø  Se maneja como proyecto.
Ø  Gran volumen de datos y transacciones.
Ø  Abarca varias áreas organizativas de la empresa
Ø  Tiempo de desarrollo largo.
Ø  Requiere que se cumplan todas las etapas, para poder cumplir las siguientes (progresión lineal y secuencial de una fase a la otra).



3.- Programación orientada a objetos: La programación orientada a objetos (POO, u OOP según sus siglas en inglés) es un paradigma de programación que viene a innovar la forma de obtener resultados. Los objetos manipulan los datos de entrada para la obtención de datos de salida específicos, donde cada objeto ofrece una funcionalidad especial.
3.1 Características:
Ø  Abstracción: Denota las características esenciales de un objeto, donde se capturan sus comportamientos. Cada objeto en el sistema sirve como modelo de un "agente" abstracto que puede realizar trabajo, informar y cambiar su estado, y "comunicarse" con otros objetos en el sistema sin revelar "cómo" se implementan estas características.
Ø  Encapsulamiento: Significa reunir todos los elementos que pueden considerarse pertenecientes a una misma entidad, al mismo nivel de abstracción. Esto permite aumentar la cohesión (diseño estructurado) de los componentes del sistema.
Ø  Polimorfismo: Comportamientos diferentes, asociados a objetos distintos, pueden compartir el mismo nombre; al llamarlos por ese nombre se utilizará el comportamiento correspondiente al objeto que se esté usando.
Ø  Herencia: Las clases no se encuentran aisladas, sino que se relacionan entre sí, formando una jerarquía de clasificación. Los objetos heredan las propiedades y el comportamiento de todas las clases a las que pertenecen. La herencia organiza y facilita el polimorfismo y el encapsulamiento, permitiendo a los objetos ser definidos y creados como tipos especializados de objetos preexistentes.
Ø  Modularidad: Se denomina "modularidad" a la propiedad que permite subdividir una aplicación en partes más pequeñas (llamadas módulos), cada una de las cuales debe ser tan independiente como sea posible de la aplicación en sí y de las restantes partes.
Ø  Principio de ocultación: Cada objeto está aislado del exterior, es un módulo natural, y cada tipo de objeto expone una "interfaz" a otros objetos que específica cómo pueden interactuar con los objetos de la clase. 

Ø  Recolección de basura: La recolección de basura (garbage collection) es la técnica por la cual el entorno de objetos se encarga de destruir automáticamente, y por tanto desvincular la memoria asociada, los objetos que hayan quedado sin ninguna referencia a ellos. 


No hay comentarios:

Publicar un comentario