Sei sulla pagina 1di 14

UNIVERSIDAD POLITÈCNICA AMAZÓNICA

ASIGNATURA: INGENIERÍA DE SOFTWARE

TEMA : PARADIGMAS

DOCENTE : Ing. LUIS MANUEL SANCHEZ FERNANDEZ

CARRERA : Ing. De Sistemas Y Telemática – CICLO – IX

ALUMNOS : Tapuy Torres Naum Llampol.


Dekentai Ujukam Gedioni
Chamik kayajuis Romel
Jaucito Mashigkash Jose

BAGUA GRANDE - 2020


Paradigma Estructurado
La programación estructurada es un paradigma de
programación orientado a mejorar la claridad, calidad y tiempo
de desarrollo de un programa de computadora, utilizando
únicamente subrutinas y tres estructuras:
• Secuencia: Sucesión simple de dos o mas operaciones.
• selección (if y switch).
• interacción (bucles for y while).
considerando y contraproducente el uso de la instrucción de
transferencia incondicional (GOTO), que podría conducir a
“código espagueti”, que es mucho más difícil de seguir y de
mantener, y era la causa de muchos errores de programación.

Solamente con estas tres estructuras se pueden escribir todos


los  programas y aplicaciones posibles. Si bien los lenguajes de
programación tienen un mayor repertorio de  estructuras de
control, éstas pueden ser construidas mediante las tres básicas
citadas.
Ventajas
• Los programas son más fáciles de entender, pueden ser
leídos de forma secuencial y no hay necesidad de hacer
engorrosos seguimientos en saltos de líneas (GOTO) dentro
de los bloques de código para intentar entender la lógica. La
estructura de los programas es clara, puesto que las
instrucciones están más ligadas o relacionadas entre sí.
• Reducción del esfuerzo en las pruebas y depuración. El
seguimiento de los fallos o errores del programa
("debugging") se facilita debido a su estructura más sencilla y
comprensible, por lo que los errores se pueden detectar y
corregir más fácilmente.
• Reducción de los costos de mantenimiento. Análogamente a
la depuración, durante la fase de mantenimiento, modificar o
extender los programas resulta más fácil.
• Los programas son más sencillos y más rápidos de
confeccionar.
• Se incrementa el rendimiento de los programadores,
comparado con la forma anterior que utiliza GOTO.
Paradigma Orientado Objetos

Es un paradigma de la programación de
computadores que tiene como objetivo el
desarrollo computacional basado en una
colección de objetos que están
interrelacionados y trabajan conjuntamente
para resolver un problema. Surge dentro de
los paradigmas de la programación como
un enfoque diferente al momento de
obtener soluciones computacionales.

Es un paradigma de programación que usa


objetos y sus interacciones, para diseñar
aplicaciones y programas de
computadoras. Está basado en varias
técnicas, incluyendo herencia, abstracción,
polimorfismo y encapsulamiento.
• En la POO las entidades centrales son los objetos,
que son tipos de datos que encapsulan con el mismo
nombre estructuras de datos, operaciones o
algoritmos que manipulan esos datos.
• Objeto: Entidad provista de un conjunto de
propiedades o atributos (datos) y de comportamiento
o funcionalidad (métodos) los mismos que
consecuentemente reaccionan a eventos. Se
corresponde con los objetos reales del mundo que
nos rodea, o a objetos internos del sistema (del
programa). Es una instancia a una clase.

ABSTRACCIÓN Es la propiedad que permite


representar las características esenciales de un objeto
sin preocuparse de las restantes características. Se
centra en la vista externa de un objeto de modo que
sirve para separar el comportamiento esencial de un
objeto, de su implementación.
ENCAPSULAMIENTO Es la propiedad que permite
asegurar que el contenido de la información de un
objeto esta oculta al mundo exterior, es decir el objeto
A no conoce lo que hace el objeto B y viceversa. La
encapsulación permite la división de un programa en
módulos, esos módulos se implementan mediante
clases, de forma que una clase representa la
encapsulación de una abstracción.

MODULARIDAD Es 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
si y de las partes restantes.

JERARQUIA Es la propiedad que permite una


ordenación de las abstracciones, las dos jerarquías
más importantes de un sistema complejo son:
• Estructuras de clases (jerarquía Es-Un:
Generalización/Especificación).
• Estructuras de objetos (jerarquía Parte-De:
Agregación)
 Arquitectura orientada al servicio

Es la primera arquitectura de Tecnologías


de Información (TI) que asume lo que los
negocios han sabido desde hace mucho
tiempo. Se trata esencialmente de un set
de servicios sueltos, donde cada uno es
relativamente económico para construirlo
o reemplazarlo si es necesario.

La arquitectura actual (TI) es vista como


una colección de aplicaciones, que dada
la relativa poca importancia que le presta
a los procesos de negocio, terminó
creando silos de aplicaciones segregados
dentro del mapa arquitectónico de la
empresa.
Lo anterior exige, poner especial atención
y cuidado al diseño de la arquitectura,
bajo la cual estará soportado el
funcionamiento de los sistemas.
SOA es una arquitectura de aplicación
en la cual todas las funciones están
definidas como servicios independientes
con interfaces invocables que pueden
ser llamados en secuencias bien
definidas para formar los procesos de
negocio.

Capas de software

Beneficios SOA
Diferencias con otras arquitecturas

• Al contrario de las arquitecturas orientado a


objetos, las SOA están formadas por servicios de
aplicación débilmente acoplados y altamente
interoperables.
• Para comunicarse entre sí, estos servicios se
basan en una definición formal independiente de
la plataforma subyacente y del lenguaje de
programación (p.ej., WSDL).
• un servicio C# podría ser usado por una
aplicación Java. En este sentido, ciertos autores
definen SOA como una SúperAbstracción
Paradigma orientado a componentes

El modelo de desarrollo basado en componentes


incorpora muchas de las características del
modelo espiral. Es evolutivo por naturaleza y
exige un enfoque interactivo para la creación del
software. Sin embargo, el modelo de desarrollo
basado en componentes configura aplicaciones
desde componentes preparados de software
(clases).

El desarrollo de software basado en


componentes se ha convertido actualmente en
uno de los mecanismos más efectivos para
la construcción de grandes sistemas y
aplicaciones de software.
El uso de este paradigma posee algunas ventajas: Ventajas

1. Reutilización del software. Nos lleva a alcanzar un El análisis del riesgo se hace de forma explícita y
mayor nivel de reutilización de software. clara. Une los mejores elementos de los
restantes modelos. - Reduce riesgos del proyecto -
2. Simplifica las pruebas. Permite que las pruebas sean Incorpora objetivos de calidad - Integra el
ejecutadas probando cada uno de los componentes desarrollo con el mantenimiento
antes de probar el conjunto completo de componentes
ensamblados. Desventajas:

3. Simplifica el mantenimiento del sistema. Cuando • Genera mucho tiempo en el desarrollo del
existe un débil acoplamiento entre componentes, el sistema - Modelo costoso –Requiere experiencia
desabollador es libre de actualizar y/o agregar en la identificación de riesgos
componentes según sea necesario, sin afectar otras
partes del sistema. • Inconvenientes

4. Mayor calidad. Dado que un componente puede ser • Genera mucho trabajo adicional. Cuando un
construido y luego mejorado continuamente por un sistema falla se pierde tiempo y coste dentro de la
experto u organización, la calidad de una aplicación empresa. Exige una cierta habilidad en los
basada en componentes mejorará con el paso del analistas (es bastante difícil).
tiempo
GRACIAS

Potrebbero piacerti anche