domingo, 27 de febrero de 2022

Ciclo de vida Iterativo e Incremental

 

¿ Cual es la diferencia entre el ciclo de vida Iterativo e Incremental?

El ciclo de vida iterativo e incremental es una de las buenas practicas de la ingeniería de Software, ademas el ciclo de vida iterativo e incremental es una de las bases de un proyecto ágil, mas concretamente con iteraciones cortas en el tiempo de pocas semanas, normalmente un mes, pero no mas de dos meses 

Incremental: Desarrollar por partes el producto de software para después integrarlas a medida que se completan, lo que puede ser la agregación de módulos en diferentes fases, agregar cada vez mas funcionalidad al sistema 

Iterativo: En cada ciclo, iteración, se revisa y mejora el producto, en cada ciclo se mejora mas la calidad del producto 

De la unión del ciclo de vida iterativo e incremental al fina de cada revisión se consigue una versión mas estable del software, de mas calidad y añadiendo 



domingo, 21 de noviembre de 2021

Consulta nuevas tendencias de BD


Consulta nuevas tendencias de BD 

 Recopilar datos es algo que la mayoría de las empresas modernas hacen sin pensarlo mucho. Utilizar el poder de estos datos solo es posible cuando se utilizan las últimas herramientas y tecnología de gestión de datos. Los estudios muestran que casi el 75 por ciento de los datos que las compañías recolectan no se utilizan. En lugar de desperdiciar estos valiosos datos, debes encontrar formas de usarlos correctamente. La recopilación, verificación, protección y utilización correcta de los datos es imprescindible para cualquier empresa que intente tener éxito. Sin las herramientas adecuadas, cometerás errores con los datos. Estos errores pueden terminar costándote posibles clientes potenciales y clientes existentes. “Las estructuras de procesamiento rígidas poco a poco quedan obsoletas ante el gran tamaño, complejidad y la nueva naturaleza de los datos. La supervivencia de las empresas dependerá de la adopción de nuevas estructuras cuya velocidad de acción e inteligencia aplicada en el procesamiento de datos les brinde a los empresarios la capacidad de responder a cambios continuos”



sábado, 20 de noviembre de 2021

Análisis BDOO y BDD

 

Análisis BDOO y BDD.

Análisis de Bases de datos Orientada a Objeto y Bases de datos Distribuidas.

Una base de datos orientada a objetos es una base de datos donde los elementos son objetos. Estos pueden ser bases de datos multimedia (videos, imágenes y sonidos), donde la herencia nos permita una mejor representación de la información, estas bases de datos tienen una identidad de ser un Todo, y no solo una parte de una gran base, por ejemplo, una base de secuencias de ADN.
El objetivo de una base de datos orientada a objetos son los mismos que los de las bases de datos tradicionales, pero con la ventaja de representar las modelos de datos con un marco mucho más eficiente, manteniendo la integridad y relación entre ellos.
Recordemos que un objeto es una estructura que tiene asociado un estado y un comportamiento (propiedades y métodos). Estas bases tienen las características de todo lo que es orientado a objeto que son Herencia, Polimorfismo, Abstracción y Encapsulamiento.
Un objeto puede heredar comportamiento de otro tipo de objetos (herencia) y puede adaptarse para responder de diferentes maneras ante la solicitud de una acción (polimorfismo), lo importante es que permite representar cosas de la vida real con relativa facilidad (abstracción) y que todo esto se puede implementar de manera que no nos importe el código, sino sólo la manera de comunicarnos con estos objetos pensando en ellos como una sola unidad (encapsulamiento).
Las bases de datos orientados a objetos han adoptado muchos de los objetos creados para los lenguajes de programación orientados a objetos.
La utilización de una BDOO simplifica la conceptualización ya que la utilización de objetos permite representar de una manera más natural la información que se quiere guardar.
Para modelar la estructura o vista lógica de la BD, se utiliza el Diagrama de clases que permite presentar las clases con sus respectivas relaciones estructurales y de herencia, además del Diagrama de Objetos cuando no está muy claro y preciso cómo serían las instancias de las clases o para especificar más el Diagrama de Clases.
Para modelar la parte dinámica, la interacción y comportamiento entre los objetos, se emplearía el Diagrama de Secuencia para presentar las interacciones entre los objetos organizados en una secuencia temporal y describir como estos objetos colaboran; así como también, el Diagrama de Estado para mostrar los posibles estados en que puede encontrarse un objeto y las transacciones que pueden causar un cambio de estado, luego que ocurre un evento.
En general, cada objeto está asociado con:
Un conjunto de variables que contiene los datos del objeto; las variables corresponden con los atributos del modelo E-R.
Un conjunto de mensajes a los que responde; cada mensaje puede o no tener parámetros o tener uno o varios.
Un conjunto de métodos, cada uno de los cuales es el código que implementa un mensaje; el método devuelve un valor como respuesta al mensaje.
Además, tienen un Nombre, Tiempo de vida pueden ser transitorios o persistentes, estado y comportamiento.
1.    Características de Base de Datos Orientada a Objetos

Mandatorias: son las que el Sistema debe satisfacer a orden de tener un sistema de BDOO y estos son: Objetos complejos, Identidad de Objetos, Encapsulación, Tipos o clases, Sobre paso con unión retardada, Extensibilidad, Completación Computacional, Persistencia y Manejador de almacenamiento secundario, Concurrencia, Recuperación y Facilidad de Query
Opcional: Son las que pueden ser añadidas para hacer el sistema mejor pero que no son Mandatorias, estas son de: herencia múltiple, chequeo de tipos e inferencia d e distribución y diseño de transacciones y versiones.
Abiertas: Son los puntos donde el diseñador puede hacer un número de opciones y estas son el paradigma de la programación, la representación del sistema ó el tipo de sistema y su uniformidad. Hemos tomado una posición no muy a la expectativa para tener una palabra final más bien para proveer un punto de orientación para un debate futuro.
Una Base de Datos Distribuida (BDD) es una colección de datos distribuidos en diferentes nodos de una red de computadoras. Cada sitio de la red es autónomo, puede ejecutar aplicaciones locales y al menos una aplicación global, lo cual requiere el acceso a datos, ubicados en varios sitios, usando un subsistema de comunicación.
Los Sistemas de Bases de Datos Distribuidas representan más naturalmente la estructura geográficamente descentralizada de una organización, aumentan la disponibilidad de los datos, reducen el tráfico de comunicación y es justificable, además, por el abaratamiento de los costos en el equipamiento y la infraestructura de comunicaciones de las redes de computadoras. El diseño de las Bases de Datos Distribuidas posee las fases del diseño centralizado y cuenta, además, con dos nuevos problemas que caracterizan el proceso de distribución de datos, e incluyen la determinación de: cómo dividir la base de datos en componentes para localizarlos en diferentes sitios, qué cantidad de datos debe ser replicados y cómo deben los fragmentos replicados ser localizados.
Existen varias definiciones sobre qué es un sistema distribuido pero hay divergencias entre ellas, para nuestros propósitos es suficiente expresar que un sistema distribuido es una colección de computadoras independientes interconectadas entre sí que aparecen ante los usuarios del sistema como una única computadora.

2.    Ventajas y Desventajas de los sistemas distribuidos

Ventajas
El acceso a los datos es más rápido debido a que los datos se localizan más cercanos al lugar donde se utilizan.
El procesamiento es rápido debido a que varios nodos intervienen en el procesamiento de una carga de trabajo,
Nuevos nodos se pueden agregar fácil y rápidamente.
La probabilidad de que una falla en un solo nodo afecte al sistema es baja y existe una autonomía e independencia entre los nodos.
Control local de los datos con que se interactúa.
Mayor tolerancia a los fallos


Desventajas
Es más complicado el control y la manipulación de los datos
Es compleja el aseguramiento de la integridad de la información en presencia de fallas no predecibles tanto de componentes de hardware como de software. La integridad se refiere a la consistencia, validez y exactitud de la información.
El control de concurrencia y los mecanismos de recuperación son mucho más complejos que en un sistema centralizado dado que los datos pueden estar replicados.

¿ En qué casos recomendaría el uso de una BDOO y en qué casos el uso de una BDD?

En el momento en el cual nos encontramos ante una necesidad empresarial que esté relacionada con datos complejos de alto rendimiento tenemos que considerar la opción de sacar partido a las bases de datos orientadas a objetos. Estas son una posibilidad más que recomendable en el caso de que contemos con un total de tres elementos determinados: alto rendimiento, necesidad de negocio y datos complejos. Recomendaría una base de datos distribuida cuando la misma base de datos con necesidades diferentes pero características en comun sean necesarias para el negocio en cuestión.

Diseño BDOO

 

Diagrama de Clases Bases de Datos Orientada a Objetos (BDOO)


Dentro del anterior diagrama podemos evidenciar las diferentes relaciones que existen entre las clases u objetos que conforman el proyecto que se desarrollo, en este caso la inmobiliaria. Podemos evidenciar el papel de cada actor, las funciones o metodos