Una lista de adyacencia es una representación de un grafo mediante una lista donde cada entrada contiene los vértices conectados por una arista. Si el grafo es no dirigido, cada entrada contiene un conjunto de dos vértices asociados a una arista. Si es dirigido, cada entrada contiene una tupla con el vértice de origen y destino de un arco.
Este documento presenta los conceptos fundamentales del análisis léxico y los diagramas de transición. Explica los objetivos del análisis léxico, los términos clave como token, lexema y atributos. Luego describe los pasos del análisis léxico y cómo especificar un diagrama de transición mediante expresiones regulares.
Programación Orientada a Objetos - constructores y destructoresAlvaro Enrique Ruano
Esta presentación es parte del contenido del curso de Programación Avanzada impartido en la Universidad Rafael Landívar durante el año 2015.
Incluye los temas:
• Constructores
• Destructores
Creado por Ing. Alvaro Enrique Ruano
Este documento describe varios métodos y técnicas de encriptación como el método Gronsfeld, métodos de transposición, el método César, RSA, DES, Chaffing&Winnowing, SKIPJACK, Bífido, WLBYKYAAOTB, cifrado exponencial, Blowfish y el método Vigenère. Explica cómo funcionan cada uno de estos métodos de cifrado y sus características principales.
Esta presentación le pertenece a Edisson Fernando Sigua Loja
En la vida real existen muchos problemas relacionados a conexiones entre dos o más entes (ejemplo: comunicación telefónica, circuitos eléctricos, comunicación entre calles, etc.). Este tipo de problemas se pueden modelar usando un tipo de representación simbólica llamada grafos.
¿Qué son los grafos?
Los grafos son un conjunto de nodos y aristas conectadas entre sí.
En el ámbito de las ciencias de la computación es un tipo abstracto de datos (TAD), que consiste en un conjunto de nodos (también llamados vértices) y un conjunto de arcos (aristas) que establecen relaciones entre los nodos.
JavaScript pilas (Stacks) y colas (Queues) 2Juan Astudillo
Presentación sobre Estructuras de datos, Pilas y Colas en JavaScript también presentando a JavaScript como lenguaje funcional, ejercicios y métodos propuestos, Algoritmos para soluciones complejas sobre mencionadas estructuras de datos.
Este documento presenta un informe sobre el proyecto académico "Problema del juego de las 8 Reinas e Implementación en Swi Prolog" realizado por el estudiante Zuñiga Joaquin, Cesar bajo la supervisión del profesor Ing. Arturo Díaz Pulido. El documento introduce el problema de las 8 reinas, explica conceptos como backtracking y búsqueda en profundidad, y detalla el planteamiento del problema, su historia, y la implementación de un algoritmo y programa en Prolog para resolverlo.
Una lista de adyacencia es una representación de un grafo mediante una lista donde cada entrada contiene los vértices conectados por una arista. Si el grafo es no dirigido, cada entrada contiene un conjunto de dos vértices asociados a una arista. Si es dirigido, cada entrada contiene una tupla con el vértice de origen y destino de un arco.
Este documento presenta los conceptos fundamentales del análisis léxico y los diagramas de transición. Explica los objetivos del análisis léxico, los términos clave como token, lexema y atributos. Luego describe los pasos del análisis léxico y cómo especificar un diagrama de transición mediante expresiones regulares.
Programación Orientada a Objetos - constructores y destructoresAlvaro Enrique Ruano
Esta presentación es parte del contenido del curso de Programación Avanzada impartido en la Universidad Rafael Landívar durante el año 2015.
Incluye los temas:
• Constructores
• Destructores
Creado por Ing. Alvaro Enrique Ruano
Este documento describe varios métodos y técnicas de encriptación como el método Gronsfeld, métodos de transposición, el método César, RSA, DES, Chaffing&Winnowing, SKIPJACK, Bífido, WLBYKYAAOTB, cifrado exponencial, Blowfish y el método Vigenère. Explica cómo funcionan cada uno de estos métodos de cifrado y sus características principales.
Esta presentación le pertenece a Edisson Fernando Sigua Loja
En la vida real existen muchos problemas relacionados a conexiones entre dos o más entes (ejemplo: comunicación telefónica, circuitos eléctricos, comunicación entre calles, etc.). Este tipo de problemas se pueden modelar usando un tipo de representación simbólica llamada grafos.
¿Qué son los grafos?
Los grafos son un conjunto de nodos y aristas conectadas entre sí.
En el ámbito de las ciencias de la computación es un tipo abstracto de datos (TAD), que consiste en un conjunto de nodos (también llamados vértices) y un conjunto de arcos (aristas) que establecen relaciones entre los nodos.
JavaScript pilas (Stacks) y colas (Queues) 2Juan Astudillo
Presentación sobre Estructuras de datos, Pilas y Colas en JavaScript también presentando a JavaScript como lenguaje funcional, ejercicios y métodos propuestos, Algoritmos para soluciones complejas sobre mencionadas estructuras de datos.
Este documento presenta un informe sobre el proyecto académico "Problema del juego de las 8 Reinas e Implementación en Swi Prolog" realizado por el estudiante Zuñiga Joaquin, Cesar bajo la supervisión del profesor Ing. Arturo Díaz Pulido. El documento introduce el problema de las 8 reinas, explica conceptos como backtracking y búsqueda en profundidad, y detalla el planteamiento del problema, su historia, y la implementación de un algoritmo y programa en Prolog para resolverlo.
Este documento presenta 10 ejercicios de programación en C para evaluar los conocimientos adquiridos sobre estructuras de control. Cada ejercicio incluye un análisis del problema, diagrama de flujo y pseudocódigo propuesto como solución. Los ejercicios abarcan temas como conversión de sistemas numéricos, cálculo de caída libre, y cálculo de comisiones según rangos de ventas.
Función Hash: metodos de división y de medio Cuadrado.Ana Castro
Este documento describe funciones hash y dos métodos para implementarlas: el método de división y el método del medio cuadrado. Una función hash mapea claves de entrada a valores hash de salida de tamaño fijo para usarlos como direcciones de almacenamiento. Estos métodos buscan minimizar colisiones cuando claves distintas generan el mismo valor hash. El método de división toma el residuo de dividir la clave entre un número, mientras que el método del medio cuadrado eleva la clave al cuadrado y toma dígitos centrales
El documento define conceptos básicos sobre bases de datos. Explica que una base de datos es un conjunto de información estructurada y no redundante accesible en tiempo real por usuarios concurrentes. Describe componentes clave como los sistemas gestores de bases de datos y lenguajes como SQL. Resalta ventajas como la integridad y disponibilidad de los datos.
Este documento describe el proceso de diseño de bases de datos y el modelo entidad-relación (E-R). Explica los siete pasos del proceso de diseño, incluyendo determinar la finalidad de la base de datos, organizar la información necesaria, dividir la información en tablas y definir las relaciones entre ellas. También describe los conceptos clave del modelo E-R, como entidades, atributos, relaciones, identificadores y jerarquías de generalización.
Este documento presenta una introducción al Rational Unified Process (RUP) y al Lenguaje Unificado de Modelado (UML). Explica que RUP es una metodología iterativa e incremental para el desarrollo de software que utiliza modelos UML. También describe los componentes clave de RUP como las fases, los flujos de trabajo y las iteraciones, y explica cómo se usa UML para modelar diferentes aspectos de un sistema, como el modelo de negocio y los requisitos.
Based on a prospective and creative approach, the method of personas attempts to complement the range of tools available to psychologists, ergonomists and designers to understand the users and customers. This paper presents personas, as archetypes to guide users understanding, but also to debate the strengths and limitations of this method which appears sometimes as controversial. To do this, we discusse several definitions of personas stressing that this is a simplified method of modeling users from real data in order to provide computer systems designers, marketing specialists or psychologists involved in organization, with valuable information, conveyed in a personalized and engaging way. Then, this article summarizes the theories (acting theory, empathy and theory of mind and the use of stereotypes) which can explain the psychological processes at work in the use of personas and presents a theoritical position in terms of creativity and cognitive mechanisms. Finally, this article outlines the main principles of developing personas. These principles cover the entire process, from collecting data about users to the use of personas within a project team.
Relevant d’une approche méthodologique prospective et créative, la méthode des personas complète la palette des outils à disposition des psychologues, ergonomes et concepteurs pour appréhender les personnes, les utilisateurs et les clients. L’objet de cet article est de faire le point sur cette méthode assez peu connue. Cet article présente et discute plusieurs définitions des personas en soulignant qu’il s’agit d’une méthode simplifiée de modélisation d’utilisateurs crées à partir de données réelles afin de fournir aux concepteurs de dispositifs techniques, aux spécialistes marketing ou encore aux psychologues du travail intervenant en organisation, des informations personnalisées et engageantes. Ensuite, cet article récapitule les théories (le jeu d’acteur, l’empathie et la théorie de l’esprit et le recours aux stéréotypes) à même d’expliquer les processus psychologiques en œuvre dans l’usage des personas et propose un positionnement théorique qui soutient que les personas fonctionnent comme des outils cognitifs renforcant la créativité. Finalement, les grands principes de l’élaboration des personas sont présentés - du recueil des données relatives aux utilisateurs à l’utilisation des personas- afin de donner au lecteur un cadre pour leur rédaction.
El documento describe diferentes tipos de grafos y sus características. Explica que un grafo es una estructura de datos que almacena vértices y aristas, y que los grafos pueden ser dirigidos o no dirigidos. También define términos como grafo completo, grafo con aristas múltiples, matriz de adyacencia, lista de adyacencia, y algoritmos como el recorrido en profundidad y anchura para explorar grafos.
El documento describe cómo crear y administrar una base de datos y tablas en MySQL usando lenguaje SQL. Inicialmente se crea una base de datos llamada "estudianteBD", luego se crea una tabla dentro de ella y se agregan campos. También se describen cómo insertar, actualizar y eliminar datos, así como eliminar la base de datos. Finalmente, se explica phpMyAdmin como una herramienta para administrar bases de datos MySQL a través de una interfaz web.
Este documento presenta los conceptos fundamentales de la programación orientada a objetos. Explica que un objeto posee atributos y métodos, y que las clases agrupan objetos similares. También describe conceptos como herencia, polimorfismo, modularidad, abstracción, y las relaciones entre clases como asociación y agregación.
Este documento describe el diseño de un data mart para la Unidad de Programación y Abastecimiento de Hidrocarburos de Petrocomercial. Se propone construir un data warehouse para almacenar y analizar datos sobre volúmenes de productos derivados del petróleo distribuidos por terminal y región. El data warehouse integrará datos de sistemas operacionales usando herramientas como Visual Warehouse y permitirá análisis OLAP y generación de informes.
This document provides an overview of the key concepts in data science including statistics, machine learning, data mining, and data analysis tools. It also discusses classification, regression, clustering, and data reduction techniques. Additionally, it defines what a data scientist is and how they work with data to understand patterns, ask questions, and solve problems as part of a team. The document demonstrates some examples of admissions data and analyses simpson's paradox to illustrate data science concepts.
El documento describe diferentes métodos de búsqueda de información, incluyendo búsquedas internas (en la memoria principal) y externas (en archivos de memoria secundaria). Entre los métodos internos se encuentran la búsqueda secuencial, binaria y hash, mientras que los métodos externos incluyen búsquedas secuenciales, binarias y mediante árboles binarios de búsqueda. El documento concluye que contar con estructuras de datos y métodos de búsqueda efectivos es crucial para el manejo y acceso
El documento describe los diagramas de colaboración, los cuales muestran la interacción organizada entre objetos para lograr un objetivo común. Explica que consisten en especificar contratos entre objetos mediante el paso de mensajes, modelando aspectos dinámicos del sistema. Finalmente, detalla los elementos clave de un diagrama de colaboración como objetos, enlaces, mensajes, anidamiento e iteración.
Este documento presenta una introducción a los patrones de diseño. Explica que los patrones describen soluciones probadas a problemas comunes de diseño de software que pueden ser reutilizadas. Cubre los patrones POSA y GOF, incluyendo ejemplos como Layers, Broker, MVC y los patrones de creación, estructura y comportamiento de GOF. Finaliza con una bibliografía sobre el tema.
Calidad de datos. Preparación y limpieza de los datosRoman Herrera
1) La calidad de los datos es fundamental para la toma de decisiones basadas en datos. Existen diversos tipos de datos de diferentes fuentes que requieren limpieza y preparación.
2) Las actividades de limpieza de datos incluyen corregir valores faltantes, ruidosos o inconsistentes, estandarizar valores y filtrar datos.
3) Existen dos enfoques principales para la integración de datos: ETL (Extract, Transform, Load) y ELT (Extract, Load, Transform). ELT permite tiempos de carga más rápidos al transformar los datos "s
13 tipos de diagramas uml, la metodología de desarrollo ágil de software y la...Uriel Herrera
El documento describe 13 tipos de diagramas UML, incluyendo diagramas de clases, componentes, objetos, estructura compuesta, despliegue, paquetes, actividades, casos de uso, estados, secuencia, comunicación, tiempos y de interacciones globales. También describe los principios y características del desarrollo ágil de software, como iteraciones cortas, colaboración con el cliente, respuesta al cambio y calidad desde el inicio.
El documento describe las tablas hash, incluyendo su historia, características y métodos de implementación. Se cree que H.P. Luhn fue el primero en utilizar el concepto de hash en 1953. Las tablas hash permiten búsquedas rápidas a tiempo constante mediante el mapeo de claves a posiciones de almacenamiento a través de funciones hash. Un método común es el plegamiento de hash, que divide la clave en partes y las combina para generar un índice. Las tablas hash se usan para búsqued
El documento describe la tienda de abarrotes "El Yo" propiedad de Miriam Esqueda Zepeda. La tienda vende una variedad de productos y cuenta con 2 empleadas, las hijas de la dueña, para atender cuando ella no está. La tienda tiene aproximadamente 12 proveedores y su sistema de control es manual. Se ubica en Prolongación México #128 sur y su competencia más cercana está a 2 cuadras. La tienda le da crédito a sus clientes habituales.
Tipos de Colas en Programación en C++ - PresentaciónFernando Solis
Este documento describe dos tipos de colas en C++: colas estáticas y dinámicas. Las colas estáticas tienen un tamaño fijo asignado durante la creación, mientras que las colas dinámicas pueden crecer o reducirse durante la ejecución. Ambos tipos de colas se implementan utilizando punteros de cabeza y cola para insertar y eliminar elementos de forma ordenada. La elección entre una cola estática o dinámica depende de los requisitos específicos del programa.
Este documento describe los requisitos para un sistema de reservación de puestos en cines de Colombia. El sistema permitirá a los usuarios hacer consultas y reservaciones de sillas, y comprar boletos de manera virtual sin ir a la taquilla. El documento explica el modelo de requisitos, casos de uso, diagramas de clases y presentación para el sistema.
Este documento presenta una introducción a los patrones de diseño. Explica conceptos clave como patrones, clasificaciones de patrones y plantillas de definición de patrones. Luego, analiza varios patrones importantes como Adaptador, Factoría, Singleton, Estrategia y su aplicación en un ejemplo de diseño de software para la gestión de ventas y servicios externos.
Este documento describe los diagramas de clases y objetos en UML. Explica que una clase representa un conjunto de objetos que comparten atributos, operaciones y relaciones, y que se representan gráficamente mediante cajas. También describe elementos clave de los diagramas de clases como atributos, operaciones, relaciones como generalización y asociación.
Este documento presenta 10 ejercicios de programación en C para evaluar los conocimientos adquiridos sobre estructuras de control. Cada ejercicio incluye un análisis del problema, diagrama de flujo y pseudocódigo propuesto como solución. Los ejercicios abarcan temas como conversión de sistemas numéricos, cálculo de caída libre, y cálculo de comisiones según rangos de ventas.
Función Hash: metodos de división y de medio Cuadrado.Ana Castro
Este documento describe funciones hash y dos métodos para implementarlas: el método de división y el método del medio cuadrado. Una función hash mapea claves de entrada a valores hash de salida de tamaño fijo para usarlos como direcciones de almacenamiento. Estos métodos buscan minimizar colisiones cuando claves distintas generan el mismo valor hash. El método de división toma el residuo de dividir la clave entre un número, mientras que el método del medio cuadrado eleva la clave al cuadrado y toma dígitos centrales
El documento define conceptos básicos sobre bases de datos. Explica que una base de datos es un conjunto de información estructurada y no redundante accesible en tiempo real por usuarios concurrentes. Describe componentes clave como los sistemas gestores de bases de datos y lenguajes como SQL. Resalta ventajas como la integridad y disponibilidad de los datos.
Este documento describe el proceso de diseño de bases de datos y el modelo entidad-relación (E-R). Explica los siete pasos del proceso de diseño, incluyendo determinar la finalidad de la base de datos, organizar la información necesaria, dividir la información en tablas y definir las relaciones entre ellas. También describe los conceptos clave del modelo E-R, como entidades, atributos, relaciones, identificadores y jerarquías de generalización.
Este documento presenta una introducción al Rational Unified Process (RUP) y al Lenguaje Unificado de Modelado (UML). Explica que RUP es una metodología iterativa e incremental para el desarrollo de software que utiliza modelos UML. También describe los componentes clave de RUP como las fases, los flujos de trabajo y las iteraciones, y explica cómo se usa UML para modelar diferentes aspectos de un sistema, como el modelo de negocio y los requisitos.
Based on a prospective and creative approach, the method of personas attempts to complement the range of tools available to psychologists, ergonomists and designers to understand the users and customers. This paper presents personas, as archetypes to guide users understanding, but also to debate the strengths and limitations of this method which appears sometimes as controversial. To do this, we discusse several definitions of personas stressing that this is a simplified method of modeling users from real data in order to provide computer systems designers, marketing specialists or psychologists involved in organization, with valuable information, conveyed in a personalized and engaging way. Then, this article summarizes the theories (acting theory, empathy and theory of mind and the use of stereotypes) which can explain the psychological processes at work in the use of personas and presents a theoritical position in terms of creativity and cognitive mechanisms. Finally, this article outlines the main principles of developing personas. These principles cover the entire process, from collecting data about users to the use of personas within a project team.
Relevant d’une approche méthodologique prospective et créative, la méthode des personas complète la palette des outils à disposition des psychologues, ergonomes et concepteurs pour appréhender les personnes, les utilisateurs et les clients. L’objet de cet article est de faire le point sur cette méthode assez peu connue. Cet article présente et discute plusieurs définitions des personas en soulignant qu’il s’agit d’une méthode simplifiée de modélisation d’utilisateurs crées à partir de données réelles afin de fournir aux concepteurs de dispositifs techniques, aux spécialistes marketing ou encore aux psychologues du travail intervenant en organisation, des informations personnalisées et engageantes. Ensuite, cet article récapitule les théories (le jeu d’acteur, l’empathie et la théorie de l’esprit et le recours aux stéréotypes) à même d’expliquer les processus psychologiques en œuvre dans l’usage des personas et propose un positionnement théorique qui soutient que les personas fonctionnent comme des outils cognitifs renforcant la créativité. Finalement, les grands principes de l’élaboration des personas sont présentés - du recueil des données relatives aux utilisateurs à l’utilisation des personas- afin de donner au lecteur un cadre pour leur rédaction.
El documento describe diferentes tipos de grafos y sus características. Explica que un grafo es una estructura de datos que almacena vértices y aristas, y que los grafos pueden ser dirigidos o no dirigidos. También define términos como grafo completo, grafo con aristas múltiples, matriz de adyacencia, lista de adyacencia, y algoritmos como el recorrido en profundidad y anchura para explorar grafos.
El documento describe cómo crear y administrar una base de datos y tablas en MySQL usando lenguaje SQL. Inicialmente se crea una base de datos llamada "estudianteBD", luego se crea una tabla dentro de ella y se agregan campos. También se describen cómo insertar, actualizar y eliminar datos, así como eliminar la base de datos. Finalmente, se explica phpMyAdmin como una herramienta para administrar bases de datos MySQL a través de una interfaz web.
Este documento presenta los conceptos fundamentales de la programación orientada a objetos. Explica que un objeto posee atributos y métodos, y que las clases agrupan objetos similares. También describe conceptos como herencia, polimorfismo, modularidad, abstracción, y las relaciones entre clases como asociación y agregación.
Este documento describe el diseño de un data mart para la Unidad de Programación y Abastecimiento de Hidrocarburos de Petrocomercial. Se propone construir un data warehouse para almacenar y analizar datos sobre volúmenes de productos derivados del petróleo distribuidos por terminal y región. El data warehouse integrará datos de sistemas operacionales usando herramientas como Visual Warehouse y permitirá análisis OLAP y generación de informes.
This document provides an overview of the key concepts in data science including statistics, machine learning, data mining, and data analysis tools. It also discusses classification, regression, clustering, and data reduction techniques. Additionally, it defines what a data scientist is and how they work with data to understand patterns, ask questions, and solve problems as part of a team. The document demonstrates some examples of admissions data and analyses simpson's paradox to illustrate data science concepts.
El documento describe diferentes métodos de búsqueda de información, incluyendo búsquedas internas (en la memoria principal) y externas (en archivos de memoria secundaria). Entre los métodos internos se encuentran la búsqueda secuencial, binaria y hash, mientras que los métodos externos incluyen búsquedas secuenciales, binarias y mediante árboles binarios de búsqueda. El documento concluye que contar con estructuras de datos y métodos de búsqueda efectivos es crucial para el manejo y acceso
El documento describe los diagramas de colaboración, los cuales muestran la interacción organizada entre objetos para lograr un objetivo común. Explica que consisten en especificar contratos entre objetos mediante el paso de mensajes, modelando aspectos dinámicos del sistema. Finalmente, detalla los elementos clave de un diagrama de colaboración como objetos, enlaces, mensajes, anidamiento e iteración.
Este documento presenta una introducción a los patrones de diseño. Explica que los patrones describen soluciones probadas a problemas comunes de diseño de software que pueden ser reutilizadas. Cubre los patrones POSA y GOF, incluyendo ejemplos como Layers, Broker, MVC y los patrones de creación, estructura y comportamiento de GOF. Finaliza con una bibliografía sobre el tema.
Calidad de datos. Preparación y limpieza de los datosRoman Herrera
1) La calidad de los datos es fundamental para la toma de decisiones basadas en datos. Existen diversos tipos de datos de diferentes fuentes que requieren limpieza y preparación.
2) Las actividades de limpieza de datos incluyen corregir valores faltantes, ruidosos o inconsistentes, estandarizar valores y filtrar datos.
3) Existen dos enfoques principales para la integración de datos: ETL (Extract, Transform, Load) y ELT (Extract, Load, Transform). ELT permite tiempos de carga más rápidos al transformar los datos "s
13 tipos de diagramas uml, la metodología de desarrollo ágil de software y la...Uriel Herrera
El documento describe 13 tipos de diagramas UML, incluyendo diagramas de clases, componentes, objetos, estructura compuesta, despliegue, paquetes, actividades, casos de uso, estados, secuencia, comunicación, tiempos y de interacciones globales. También describe los principios y características del desarrollo ágil de software, como iteraciones cortas, colaboración con el cliente, respuesta al cambio y calidad desde el inicio.
El documento describe las tablas hash, incluyendo su historia, características y métodos de implementación. Se cree que H.P. Luhn fue el primero en utilizar el concepto de hash en 1953. Las tablas hash permiten búsquedas rápidas a tiempo constante mediante el mapeo de claves a posiciones de almacenamiento a través de funciones hash. Un método común es el plegamiento de hash, que divide la clave en partes y las combina para generar un índice. Las tablas hash se usan para búsqued
El documento describe la tienda de abarrotes "El Yo" propiedad de Miriam Esqueda Zepeda. La tienda vende una variedad de productos y cuenta con 2 empleadas, las hijas de la dueña, para atender cuando ella no está. La tienda tiene aproximadamente 12 proveedores y su sistema de control es manual. Se ubica en Prolongación México #128 sur y su competencia más cercana está a 2 cuadras. La tienda le da crédito a sus clientes habituales.
Tipos de Colas en Programación en C++ - PresentaciónFernando Solis
Este documento describe dos tipos de colas en C++: colas estáticas y dinámicas. Las colas estáticas tienen un tamaño fijo asignado durante la creación, mientras que las colas dinámicas pueden crecer o reducirse durante la ejecución. Ambos tipos de colas se implementan utilizando punteros de cabeza y cola para insertar y eliminar elementos de forma ordenada. La elección entre una cola estática o dinámica depende de los requisitos específicos del programa.
Este documento describe los requisitos para un sistema de reservación de puestos en cines de Colombia. El sistema permitirá a los usuarios hacer consultas y reservaciones de sillas, y comprar boletos de manera virtual sin ir a la taquilla. El documento explica el modelo de requisitos, casos de uso, diagramas de clases y presentación para el sistema.
Este documento presenta una introducción a los patrones de diseño. Explica conceptos clave como patrones, clasificaciones de patrones y plantillas de definición de patrones. Luego, analiza varios patrones importantes como Adaptador, Factoría, Singleton, Estrategia y su aplicación en un ejemplo de diseño de software para la gestión de ventas y servicios externos.
Este documento describe los diagramas de clases y objetos en UML. Explica que una clase representa un conjunto de objetos que comparten atributos, operaciones y relaciones, y que se representan gráficamente mediante cajas. También describe elementos clave de los diagramas de clases como atributos, operaciones, relaciones como generalización y asociación.
Este documento describe los diagramas de clases y objetos en UML. Explica que una clase representa un conjunto de objetos que comparten atributos, operaciones y relaciones. Muestra ejemplos de cómo representar clases, atributos, operaciones, herencia y asociaciones entre clases. También cubre conceptos como interfaces, modelado de relaciones y responsabilidades de las clases.
Este documento describe los diagramas de clases y objetos en UML. Explica que una clase representa un conjunto de objetos que comparten atributos, operaciones y relaciones, y que se representan gráficamente mediante cajas. También describe elementos clave de los diagramas de clases como atributos, operaciones, relaciones como generalización y asociación.
Este documento describe diagramas de clases y objetos en UML. Explica que una clase representa un conjunto de objetos que comparten atributos, operaciones y relaciones, y que se representan gráficamente mediante cajas con compartimentos. También describe elementos básicos de diagramas de clases como atributos, operaciones, relaciones y notación.
Este documento describe los diagramas de clases y objetos en UML. Explica que una clase representa un conjunto de objetos que comparten atributos, operaciones y relaciones, y que se representan gráficamente mediante cajas. También describe elementos clave de los diagramas de clases como atributos, operaciones, relaciones como generalización y asociación.
Este documento describe los diagramas de clases y objetos en UML. Explica que una clase representa un conjunto de objetos que comparten atributos, operaciones y relaciones, y que se representan gráficamente mediante cajas. También describe elementos clave de los diagramas de clases como atributos, operaciones, relaciones como generalización y asociación.
Este documento describe los diagramas de clases y objetos en UML. Explica que una clase representa un conjunto de objetos que comparten atributos, operaciones y relaciones, y que se representan gráficamente mediante cajas. También describe elementos clave de los diagramas de clases como atributos, operaciones, relaciones como generalización y asociación.
Este documento describe los diagramas de clases y objetos en UML. Explica que una clase representa un conjunto de objetos que comparten atributos, operaciones y relaciones, y que se representan gráficamente mediante cajas. También describe elementos clave de los diagramas de clases como atributos, operaciones, relaciones como generalización y asociación.
Este documento describe los diagramas de clases y objetos en UML. Explica que una clase representa un conjunto de objetos que comparten atributos, operaciones y relaciones. Incluye ejemplos de cómo representar clases, atributos, operaciones, herencia, asociaciones y otros elementos en un diagrama de clases.
Este documento describe los diagramas de clases y objetos en UML. Explica que una clase representa un conjunto de objetos que comparten atributos, operaciones y relaciones. Muestra ejemplos de cómo representar clases, atributos, operaciones, herencia, asociaciones y otras relaciones. También cubre conceptos como interfaces, clases abstractas, notas y paquetes.
Este capítulo trata sobre el diseño de relaciones entre clases en el análisis y diseño de sistemas. Se describen conceptos como la navegación de relaciones, asociaciones y agregaciones. También se explican opciones para el diseño de la visibilidad, direccionalidad y multiplicidad de las relaciones. El objetivo es diseñar relaciones que modelen adecuadamente las interacciones entre objetos del mundo real.
Este documento presenta un resumen sobre diagramas de clases en UML. Explica que un diagrama de clases muestra las relaciones entre las clases de un sistema, incluyendo herencia, agregación y asociación. Luego define los elementos clave de un diagrama de clases como clases, atributos, métodos y las diferentes relaciones entre clases.
Este documento describe los conceptos básicos de la programación orientada a objetos. Explica que en la programación orientada a objetos se identifican los objetos abstractos que representan el problema y las operaciones abstractas que se pueden realizar con esos objetos. También define conceptos clave como clase, atributo, método y objeto.
El documento describe conceptos básicos de programación orientada a objetos en Java como constructores, creación de objetos, alcance, método main, normas de estilo, paquetes y control de acceso. Explica que los constructores inicializan los objetos, el alcance determina la visibilidad de variables y métodos, y los paquetes agrupan clases relacionadas controlando su accesibilidad.
Este documento trata sobre el diseño de software. Incluye varios diagramas que muestran ejemplos de vistas modulares, vistas de componentes y conectores, y vistas de despliegue de sistemas de software. También discute conceptos clave como módulos, componentes, conectores, descomposición, encapsulamiento e interfaz.
El documento presenta una introducción al diseño de objetos realizado por un grupo de estudiantes. Explica la diferencia entre objetos de aplicación y objetos de solución, y las actividades clave del diseño de objetos como la identificación de atributos, operaciones, tipos, visibilidad, restricciones y excepciones. También menciona temas como bibliotecas de clases, marcos de aplicación, asociaciones, reutilización, administración del diseño y asignación de responsabilidades.
1) El documento presenta un resumen breve de OOSE (Object-oriented Software Engineering) y describe sus cinco etapas principales: modelo de requerimientos, análisis, diseño, implementación y pruebas. 2) Se incluye un ejemplo de la aplicación del método OOSE a un caso de estudio de una biblioteca universitaria. 3) Finalmente, se realiza una comparativa entre OOSE y otras metodologías de desarrollo de software orientado a objetos contemporáneas como OMT y el método de Booch.
programacion orientada a objetos en visual basic netpp mm
Este documento presenta conceptos clave de programación orientada a objetos en Visual Basic .NET, incluyendo: (1) Las clases son estructuras que definen objetos mediante abstracción y encapsulamiento; (2) Los objetos son instancias de clases que tienen identidad, comportamiento y estado; (3) Las clases pueden contener miembros de datos, métodos, propiedades, constructores y destructores. También cubre herencia, polimorfismo y el uso de espacios de nombres.
El documento provee una introducción al análisis y diseño orientado a objetos, comparando este método con el análisis estructurado tradicional. Explica los conceptos históricos del análisis estructurado y cómo surgió el análisis basado en objetos. Luego describe el proceso de análisis y diseño orientado a objetos, incluyendo la identificación de objetos, definición de clases, organización de relaciones entre clases y construcción de jerarquías de clases. Finalmente, menciona algunas metod
Similar a Modelado Estrcutural, Modelado Estructural Casos De USO (20)
Modelo Entidad Relacion ,Base de datos,Modelo Entidad Relacion ,Base de datos,Modelo Entidad Relacion ,Base de datos,Modelo Entidad Relacion ,Base de datos
Diseño Logico - Diseño de bases de datos relacionalesRobert Rodriguez
Este documento describe el proceso de diseño lógico de bases de datos relacionales. Explica conceptos como el modelo relacional, las relaciones, atributos y tuplas. También cubre las restricciones de integridad y la transformación de un modelo entidad-relación a un esquema relacional, incluyendo la selección de claves primarias y la normalización.
Este documento describe la metodología para el diseño lógico de bases de datos relacionales. Explica cómo convertir un esquema conceptual en un esquema lógico mediante la transformación de entidades en tablas y relaciones en claves ajenas y tablas. También cubre la normalización, definición de restricciones y validación del diseño lógico con los usuarios.
Base de Datos, Diseño Comceptual , logico y FisicoRobert Rodriguez
Este documento presenta las etapas del modelado conceptual para el diseño de bases de datos relacionales. Incluye el análisis de requisitos, la generación del esquema conceptual mediante la transformación del esquema descriptivo al esquema conceptual utilizando el modelo entidad-relación, y las características deseables de un esquema conceptual como la claridad y coherencia.
Teoria del modelado de objetos otros diagramas actividad despliegueRobert Rodriguez
Teoria del modelado de objetos otros diagramas actividad despliegue,Teoria del modelado de objetos otros diagramas actividad despliegue,Teoria del modelado de objetos otros diagramas actividad despliegue,
Teoria del modelado de objetos modificado,Teoria del modelado de objetos modificado,Teoria del modelado de objetos modificado,Teoria del modelado de objetos modificado,
Modelado funcional casos de uso, Modelado funcional casos de uso, Modelado funcional casos de uso, Modelado funcional casos de uso,Modelado funcional casos de uso
Que es IIngenieria del Software?, Que es IIngenieria del Software?, Que es IIngenieria del Software?, Que es IIngenieria del Software?, Que es IIngenieria del Software?, Que es IIngenieria del Software?, Que es IIngenieria del Software?, Que es IIngenieria del Software?, Que es IIngenieria del Software?, Que es IIngenieria del Software?,
Casos de Uso - Juan Bernardo Quintero, Casos de Uso - Juan Bernardo Quintero, Casos de Uso - Juan Bernardo Quintero, Casos de Uso - Juan Bernardo Quintero
Que son los editores WYSIWYG ? , Que son los editores WYSIWYG ? , Que son los editores WYSIWYG ? , Que son los editores WYSIWYG ? , Que son los editores WYSIWYG ? , Que son los editores WYSIWYG ? , Que son los editores WYSIWYG ? , Que son los editores WYSIWYG ? , Que son los editores WYSIWYG ? , Que son los editores WYSIWYG ? ,
Diagrama de actividades inscripcion, evaluacion, AsistenciaRobert Rodriguez
Diagrama de actividades inscripcion, evaluacion, Asistencia, Diagrama de actividades inscripcion, evaluacion, Asistencia, Diagrama de actividades inscripcion, evaluacion, Asistencia
Las páginas web pueden contener varios recursos básicos como texto, enlaces, imágenes, formularios y etiquetas DIV. También pueden incluir recursos más avanzados como audio, video, animaciones Flash y códigos JavaScript. Las hojas de estilo en cascada (CSS) permiten separar la estructura del contenido de la presentación para dar mayor control y versatilidad a los documentos HTML. Las páginas dinámicas permiten mayor interactividad al permitir que el usuario altere parcialmente el diseño y contenido.
Programas para el mantenimiento preventivo y correctivo de software, Programas para el mantenimiento preventivo y correctivo de software, Programas para el mantenimiento preventivo y correctivo de software,Programas para el mantenimiento preventivo y correctivo de software,
Descripcion y analisis de los elementos del proyecto (desde el problema hasta...Robert Rodriguez
Descripcion y analisis de los elementos del proyecto (desde el problema hasta los antecedentes), Descripcion y analisis de los elementos del proyecto (desde el problema hasta los antecedentes)
El documento describe los pasos para instalar Microsoft SQL Server 2005, incluyendo descargar la versión de prueba gratuita, ejecutar el asistente de instalación, seleccionar la ruta y tamaño de instalación, configurar la autenticación, e instalar los componentes. Explica también cómo iniciar SQL Server Management Studio después de completar la instalación.
Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinaria). UCLMJuan Martín Martín
Examen de Selectividad de la EvAU de Geografía de junio de 2023 en Castilla La Mancha. UCLM . (Convocatoria ordinaria)
Más información en el Blog de Geografía de Juan Martín Martín
http://blogdegeografiadejuan.blogspot.com/
Este documento presenta un examen de geografía para el Acceso a la universidad (EVAU). Consta de cuatro secciones. La primera sección ofrece tres ejercicios prácticos sobre paisajes, mapas o hábitats. La segunda sección contiene preguntas teóricas sobre unidades de relieve, transporte o demografía. La tercera sección pide definir conceptos geográficos. La cuarta sección implica identificar elementos geográficos en un mapa. El examen evalúa conocimientos fundamentales de geografía.
José Luis Jiménez Rodríguez
Junio 2024.
“La pedagogía es la metodología de la educación. Constituye una problemática de medios y fines, y en esa problemática estudia las situaciones educativas, las selecciona y luego organiza y asegura su explotación situacional”. Louis Not. 1993.
Ofrecemos herramientas y metodologías para que las personas con ideas de negocio desarrollen un prototipo que pueda ser probado en un entorno real.
Cada miembro puede crear su perfil de acuerdo a sus intereses, habilidades y así montar sus proyectos de ideas de negocio, para recibir mentorías .
Soluciones Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinar...Juan Martín Martín
Criterios de corrección y soluciones al examen de Geografía de Selectividad (EvAU) Junio de 2024 en Castilla La Mancha.
Soluciones al examen.
Convocatoria Ordinaria.
Examen resuelto de Geografía
conocer el examen de geografía de julio 2024 en:
https://blogdegeografiadejuan.blogspot.com/2024/06/soluciones-examen-de-selectividad.html
http://blogdegeografiadejuan.blogspot.com/
Soluciones Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinar...
Modelado Estrcutural, Modelado Estructural Casos De USO
1. 1
Modelado estructural
• Se describen los tipos de objetos de un sistema y las
relaciones estáticas que existen entre ellos.
• Se expresa mediante los diagramas de clase.
• Normalmente contienen:
– Clases
– Interfaces
– Relaciones de dependencia, realización, generalización y
asociación (agregación, composición)
• También pueden incluir paquetes y colaboraciones.
2. 2
Diagramas de Clase
• Forman parte de la vista de diseño estática del sistema.
• Los diagramas de clase se usan para modelar:
– vocabulario del sistema
• identificar clases para abstracciones relevantes del dominio del
problema
– colaboraciones (parte estática)
• identificar clases e interfaces cuya interacción produce el
comportamiento deseado.
– esquema lógico de base de datos
4. Cliente
nombre
direccion
tipo:String()
Personal
tarjetaCredito
Pedido
info
pagoAdelantado? : Boolean
numero : String
precio : Dinero
entregar()
cerrar()
1..1* 1..1*
if Pedido.cliente.tipo="Pobre"
then Pedido.pagoAdelantado?
= true
LineaPedido
cantidad : Integer
precio : Dinero
esSatisfecho : Boolean
1..1
*
1..1
*
+linea items
Producto1..1
*
1..1
*
Empleado
Empresa
Nombre
tipo
creditoLimite
facturar()
avisar()
*
0..1
*
0..1
{ tipo()="pobre"}
+repr ventas
5. Orden de Trabajo
Cliente
Producto Especial
Pedido 0..*0..*genera
1..*1..*
Producto
1..*
0..*
1..*
0..*
Plantilla de Fabricacion
0..*0..*
basada en
Producto Catalogado Catalogo
tiene
7. 7
Colaboración (Parte dinámica)
: Interfaz Compra:
Cliente
: CarroCompra : Producto
iniciarCompra()
nuevoCarroCompra(cliente)
decremStoc k(cantidad)
seleccProducto(cantidad)
cargarProd(cliente,prod,cantidad)
obtenerDescripcionDe(prod)
confirmarCompra()
confirmarCompraDe(cliente)
Realizar para cada
producto incluido en
el carro de compra
8. 8
Patrón de diseño (Parte Estática)
Observer
Update()
Subject
subjectState
Attach()
Detach()
Notify()
1..*1..1 1..*
+observers
1..1
ConcreteSubject
subjectState
getState()
setState()
ConcreteObserver
observerState
update()
+subject
observerState=
subject->getState()
for all o in observers
{o->update}
9. 9
Patrón de diseño (Parte dinámica)
: Subject one : Observer
Update( )
SetState( )
Notify( )
GetState( )
another : Observer
Update( )
GetState( )
10. 10
Diagramas de Clase
Diferentes perspectivas:
Conceptual
Se representan los conceptos del dominio estudiado.
Especificación
Se representan los tipos que representan una interface la cual
puede tener cualquier implementación
Implementación
Se representan las clases tal y como serán implementadas
11. 11
Clases y asertos
• Posibilidad de incluir en la especificación:
– Precondiciones
– Postcondiciones
– Invariante
• Recomendación: Usar “Diseño por Contrato”
12. 12
Ingeniería directa e inversa
• Ingeniería directa
– Transformar modelos en código en un lenguaje de
programación determinado
• Ingeniería inversa
– Obtener un modelo a partir de código.
– Más difícil ya que hay pérdida de información al
pasar de los modelos al código.
13. 13
visibilidad
nombre: nombre del atributo
tipo: tipo del atributo
valor_inicial: valor inicial o por defecto
[visibilidad] nombre [: tipo] [= valor_inicial ] [{propiedades}]
+ = pública
# = protegida
- = privada
propiedades: {frozen} {addOnly}
Atributos
14. 14
Diagramas de Clase: Atributos
• Nivel Conceptual: “Los clientes tienen un nombre”
• Nivel de Especificación: “El cliente puede almacenar y
consultar su nombre”
• Nivel de Implementación: “Cliente tiene un campo de tipo
string que almacena su nombre y un método que lo devuelve”
Cliente
nombre : String
15. 15
visibilidad
nombre: nombre de la operación
lista_parámetros: lista de parámetros separados por comas
tipo retorno: tipo de valor devuelto por la operación
propiedades: {isQuery}, {sequential}, {concurrent}
+ = pública
# = protegida
- = privada
[visibilidad] nombre [(lista_parametros)] [: tipo_retorno]
[{propiedades}]
Operaciones
16. 16
Diagramas de clase: Operaciones
Cuenta
codigo
saldo
titular
$ UltimoCodigo
reintegro()
ingreso()
ultimasOperaciones()
saldo()
17. 17
Diagramas de Clase: Operaciones
• Nivel Conceptual
– Responsabilidades de la clase
– Tarjetas CRC: Descripción de alto nivel del propósito de la
clase
• Nivel Especificación
– Protocolo de la clase (operaciones públicas)
• Nivel Implementación
– Conjunto de métodos de la clase
22. 22
Diagramas de Clases: Relaciones
• Dependencia
Un cambio en la especificación de un elemento afecta a otro
Window
position
parent
children
size
open()
close()
move()
resize()
Clock
PlanDelCurso
añadir(c : Curso)
eliminar(c : Curso)
Curso
Nodo Lista
<<friend>>
23. 23
Estereotipos para dependencias
• bind: entre una clase genérica y una instanciación
• friend: dependencia de clase amiga
• refine: relación de refinamiento
• use: relación de uso
• import: un paquete importa los elementos de otro
• extend: para casos de uso
• include: para casos de uso
24. 24
Diagramas de Clases: Relaciones
• Generalización
– “Es-un-tipo-de”
Window
TextWindow BoxDialog
Cuenta
CuentaAhorro CuentaCorriente
25. 25
Diagramas de Clase: Generalización
• Nivel Conceptual
– “Todas las instancias de CuentaCorriente son instancias de
Cuenta”
• Nivel Especificación
– “La interface de CuentaCorriente incluye la interface de Cuenta”
– Principio Sustitución
• Nivel Implementación
– Herencia
26. 26
Adornos para la generalización
• implementation (estereotipo): herencia privada C++
• complete/incomplete (restricción):
– ¿se han especificado todos los descendientes?
• Disjoint/overlapping (restricción):
– clasificación estática vs. clasificación dinámica
27. 27
Restricciones semánticas entre las subclases
OVERLAPPING
Una nueva clase puede ser subclase de más de una
subclase
Una instancia puede ser instancia directa o indirecta
de dos más subclases
DISJOINT
Una nueva clase no puede ser subclase de más de
una subclase.
Instancias de una única clase.
30. 30
Clasificación Múltiple
• Un objeto puede ser instancia de más de una clase, no
necesariamente conectadas por la herencia
Persona
Paciente
Doctor
Enfermera
Masajista
Hombre
Mujer
role
paciente
sexo
{completo}
Discriminador
31. 31
Clasificación Dinámica
• Un objeto puede cambiar de clase dentro de la jerarquía de
subclases.
Persona Manager
Ingeniero
Vendedor
Hombre
Mujer
trabajo
«dynamic»
sexo
{completo}
32. 32
Diagramas de Clase: Asociación
• Asociación
– Relación estructural que especifica que los objetos de un tipo
están conectados con los de otro.
Persona Empresa
*1..*
+patron+empleado
1..* *
Curso Profesor
1..** 1..**
impartido
34. 34
Asociaciones
• Nivel Conceptual
– Muestran la relación conceptual entre dos clases.
“Un cliente tiene varios pedidos”
• Nivel de Especificación
– Representan responsabilidades
– Detectamos los mensajes del protocolo de una clase con
respecto a la otra
• Nivel de Implementación
– Establecer atributos: navegabilidad
35. 35
Asociaciones
• Especificación:
class Pedido {
public Cliente getCliente;
public Set getLineaPedido;... }
• Implementación
class Pedido {
private Cliente _cliente;
private Set _lineasPedido; …}
36. 36
Navegación
• Posibilidad de limitar la navegación a una sola dirección
• Determina si una clase de la asociación tiene “conocimiento” de la
otra.
• Nivel de especificación o implementación
Curso Profesor
1..** 1..**
impartido
38. 38
Asociaciones calificadas
• N. Conceptual: “Dentro del mismo pedido no pueden existir
dos líneas con el mismo producto”
• N. Especificación: “El acceso a lineaPedido es indexado por
productos”
• N. Implementación: “Se usa una tabla para almacenar las líneas
de pedido”
Pedido
Producto
LíneaPedido
Unidades: Integer
PrecioTotal: Integer
0..1
lineaPedido
39. 39
Asociaciones calificadas
Class Pedido {
private Tabla _lineasPedido;
public LineaPedido getLineaPedido(Producto unProducto);
public void addLineaPedido (Integer cantidad, Producto elProducto);
…
}
40. 40
Ejemplo
D e p a rta m e n to P ro fe s o r
0 ..1
1
d ire c to rd irig e
N ro . d e s p a c h o
1
1 ..*
p ro fe s o r
d e p to
41. 41
Agregación
• Dos criterios:
– Dependencia:
¿La existencia de una parte va ligada a la del agregado?
– Exclusividad:
¿Una parte puede pertenecer a más de un agregado?
• Cuatro posibles tipos de agregación
42. 42
Composición
• Es un caso particular de agregación:
exclusiva y dependiente
• Las partes pueden crearse después del agregado
compuesta al que pertenecen, pero una vez creadas
viven y mueren con ella.
• La parte sólo puede formar parte de un agregado.
• El agregado gestiona la creación y destrucción de las
partes.
• Las partes se pueden eliminar antes de eliminar el
agregado.
46. 46
Clases Asociación
• Una clase asociación añade una restricción:
“Sólo puede existir una instancia de la asociación
entre cualquiera par de objetos participantes”
• No podríamos modelar que una persona tiene diferentes
contratos para una misma compañía a lo largo del tiempo.
47. 47
Ejemplo
E m pleadoE m presa
trabajadore mp le ador
* 1..** 1..*
C argo
nom bre
sueldo
+superior
+subordina do
1..*
0..1
1..*
0..1
48. 48
Asociaciones n-arias
• Asociación entre tres o más clases.
– Cada instancia de la asociación es una n-tupla de valores de
cada una de las respectivas clases .
temporada *
Año
Equipo
Jugador
Registro
goles_a_favor
goles_en-contra
triunfos
*
equipo
* portero
54. 54
Diagramas de Clase: Realización
Relación entre clasificadores, un clasificador especifica
un contrato que otro clasificador garantiza que cumplirá.
IPila
push()
pop()
top()
<<Interface>>
Pila
IPila
Pila