sábado, 7 de diciembre de 2019

Clase 6

Diagrama de Pareto

El diagrama de Pareto, también llamado curva cerrada o Distribución A-B-C, es una gráfica para organizar datos de forma que estos queden en orden descendente, de izquierda a derecha y separados por barras. Permite asignar un orden de prioridades. El diagrama permite mostrar gráficamente el principio de Pareto (pocos vitales, muchos triviales), es decir, que hay muchos problemas sin importancia frente a unos pocos muy importantes. Mediante la gráfica colocamos los "pocos que son vitales" a la izquierda y los "muchos triviales" a la derecha. El diagrama facilita el estudio de las fallas en las industrias o empresas comerciales, así como fenómenos sociales o naturales psicosomáticos, como se puede ver en el ejemplo de la gráfica al principio del artículo.
Hay que tener en cuenta que tanto la distribución de los efectos como sus posibles causas no es un proceso lineal sino que el 20% de las causas totales hace que sean originados el 80% de los efectos y rebotes internos del pronosticado. El principal uso que tiene el elaborar este tipo de diagrama es para poder establecer un orden de prioridades en la toma de decisiones dentro de una organización. Evaluar todas las fallas, saber si se pueden resolver o mejor evitarla.
Estas gráficas se pueden generar por programas sencillas de hoja de cálculo como Apache OpenOffice  /LibreOffice Calc ​ y Microsoft Excel,​ o con herramientas de visualización como Tableau Software

Aplicaciones del principio de Pareto en la empresa

Algunas aplicaciones del principio de Pareto son:
Producción: el 20% de los procesos generan el 80% de los productos, tanto en tiempo como en cantidades.
Ventas: el 20 % de los productos generan el 80% de las ventas
Gestión de almacenes:  el 20% de los productos representan al 80% del coste del inventario. La mayor parte del inventario lo tenemos en una cantidad muy pequeña de productos
Control de calidad: el 20% de los defectos afectan al 80% de los procesos. Muy pocos defectos tienen su mayor impacto en todos los procesos de la empresa
Ingeniería de software: el 80% de esfuerzo en tiempo y dinero produce el 20% del código crítico.
Al analizar diversos expertos en cada una de las áreas, nos damos cuenta que el principio de Pareto se aplica básicamente en todos de manera muy similar.
Las proporciones, 80-20 no tienen por qué ser exactas.
¿Por qué es importante el diagrama de Pareto, teniendo en cuenta el principio?
Por un lado nos permite asignar un orden de prioridades y algo muy importante para que tú puedas ser más productivo y más eficaz es que puedes asignar las prioridades de una manera correcta.
Nos permite también mostrar la esencia del principio de Pareto. Esto significa que de una gran cantidad de actividades, recursos o resultados que tenemos pocos son los que realmente valen. Si nos enfocamos en los que son vitales, el resultado puede ser todavía mucho mejor.
Por último, el diagrama de Pareto facilita el estudio de los errores en las empresas.
Como he comentado antes, las cifras del principio de Pareto, 80-20, son arbitrarias no son exactas y pueden variar. El principio solamente nos da una idea nos da una orientación, pero realmente el diagrama lo que nos ayuda es a ver exactamente dónde caen esas proporciones.
Por eso se desarrolló el diagrama. De hecho el diagrama no lo hizo Pareto. Él estableció el principio y el diagrama se hizo después, para ayudar de alguna manera aplicar el principio y poder facilitar el análisis.
Por lo tanto su aplicación reside una descripción de un fenómeno y como tal, es aproximada y adaptable en cada caso particular.

¿Cómo realizar un diagrama de Pareto?

Vamos a empezar con la construcción del diagrama  de Pareto.
Vamos a asumir que queremos desarrollar un diagrama de Pareto para tratar de encontrar cuál es la causa raíz más importante, de una serie de causas identificadas de un problema determinado.
Por tanto, lo primero que tenemos que hacer es una tabla con esas causas, donde registremos la frecuencia con la que ocurren esas causas:
Después Añadimos otras dos columnas donde introducimos el porcentaje individual y el porcentaje acumulado de cada una de las causas:

Una vez tenemos esta tabla, nos vamos a enfocar en dos columnas principalmente para la construcción del diagrama de Pareto: la columna de porcentaje individual y la columna de porcentaje acumulado.
Vamos a hacer la construcción del diagrama.
En el eje x, colocaremos las causas ordenadas de mayor a menor y vez de trazar solamente un eje «y», vamos a trazar 2 ejes «y»: el izquierdo o eje principal, para medir la el porcentaje individual y el derecho o eje secundario para medir el porcentaje acumulado. Cada eje queda graduado en función a sus datos:

Análisis del diagrama de Pareto

En el diagrama de Pareto podemos ver cuál es la causa más importante y aunque esta información ya la teníamos en la tabla, puede ser que tu tabla se componga por cientos de filas y sea más difícil identificarlo. Además, aquí lo tenemos de una forma más visual y más rápida, al mismo tiempo que vemos cuáles son las que tienen peso similar.
En el análisis del diagrama de Pareto tenemos que ver dónde se concentra el 80% de las causas, que aproximadamente en nuestro caso corresponde con las 4 primeras causas (puedes observarlo en el diagrama anterior).
Esto quiere decir que el 80% de los problemas están generados por 4 causas principales, por lo que hay que enfocar todos los esfuerzos de la empresa para solucionar esas 4 causas, ya sea aplicando herramientas lean facturing o realizando otras acciones de mejora.
Si quieres profundizar mas en el análisis Pareto, puedes consultar este curso de UDEMY Análisis Pareto en Industria y Negocios.

A continuacion pondre la foto de una ficha de esta clase con su resolucion:






Y para finalizar un video que te muestra como realizar este diagrama:

Clase 5


Estructura Repetitiva  en PHP

¿Qué es una estructura repetitiva?
Las estructuras repetitivas se utilizan cuando se quiere que un conjunto de instrucciones se ejecuten un cierto número finito de veces, por ejemplo, escribir algo en pantalla cierta cantidad de veces, mover un objeto de un punto a otro cierta cantidad de pasos, o hacer una operación matemática cierta cantidad de veces. Se les llama bucle o ciclo a todo proceso que se repite cierto número de veces dentro de un pseudocódigo o un programa y las estructuras repetitivas nos permiten hacerlo de forma sencilla.
Existen diferentes tipos de estructuras que veremos una a una.


Desde o para (for)

Esta estructura ejecuta las acciones del cuerpo del bucle un número especificado de veces, y de modo automático controla el número de iteraciones o pasos.


Desde i=0 hasta 100
    Acción_1
    Acción_2
    Acción_3
    Acción_n

Fin_desde


Mientras (while)
Repite el cuerpo del bucle mientras se cumpla una determinada condición.
Mientras condición
    Acción_1
    Acción_2
    Acción_3
    Acción_n
Fin_mientras


Repetir hasta (do while)
La estructura repetir cumple la misma función que la estructura mientras. La diferencia está en que la estructura mientras comprueba la condición al inicio y repetir lo hace al final. Es por ello que la estructura repetir se ejecuta por lo menos una vez.
Hacer
Acción_1
Acción_2
Acción_3
Acción_n
Mientras condición


Traduzcámoslo a pseudocódigo
Ahora representaremos en pseudocódigo el juego con cada una de las estructuras repetitivas que vimos anteriormente para entender  mejor la cómo se compone cada una y ver que es posible visualizar un mismo problema con las tres.
Inicio
    Desde i=1 hasta 5
        Disparar con el cañón hacia el árbol negro
    Fin_desde
Fin

Inicio
    Indice i = 1
    Mientras i <= 5
        Disparar con el cañón hacia el árbol negro
        Incrementar i
    Fin_mientras
Fin

Inicio
    Indice i = 1
    Repetir
        Disparar con el cañón hacia el árbol negro
        Incrementar i
    Mientras i<=5
Fin

Aca hay un ejemplo mas claro sobre el tema: 

Resultado de imagen para estructura repetitiva ejemplos

Tambien una foto de la ficha sobre ese tema con su 

resolucion:




Y por ultimo un video que nos explica como crear estas 

estructuras:

Clase 4

Metodos y Eventos Jquery

jQuery es una biblioteca multiplataforma de JavaScript, creada inicialmente por John Resig, que permite simplificar la manera de interactuar con los documentos HTML, manipular el árbol DOM, manejar eventos, desarrollar animaciones y agregar interacción con la técnica AJAX a paginas web.​ Fue presentada el 14 de enero de 2006 en el BarCamp NYC. De acuerdo a un análisis de la Web (realizado en 2017) JQuery es la biblioteca de JavaScript más utilizada, por un amplio margen.
La sintaxis de JQuery está diseñada para facilitar la navegación por un documento, seleccionar elementos DOM, crear animaciones, manejar eventos y desarrollar aplicaciones AJAX. JQuery también proporciona capacidades para que los desarrolladores creen complementos en la parte superior de la biblioteca de JavaScript. Esto permite a los desarrolladores crear abstracciones para interacción y animación de bajo nivel, efectos avanzados y widgets temáticos de alto nivel. El enfoque modular de la biblioteca jQuery permite la creación de poderosas paginas web dinamicas y aplicaciones web.

Resultado de imagen para jquery

Vision General:
jQuery, en su núcleo, es una biblioteca de manipulación de Modelo de Objetos del Documento (DOM). El DOM es una representación en estructura de árbol de todos los elementos de una página web. JQuery simplifica la sintaxis para buscar, seleccionar y manipular estos elementos DOM. Por ejemplo, JQuery se puede usar para encontrar un elemento en el documento con una determinada propiedad (por ejemplo, todos los elementos con una etiqueta h1), cambiar uno o más de sus atributos (por ejemplo, color, visibilidad) o hacer que responda a un evento (por ejemplo, un clic del ratón).
jQuery también proporciona un paradigma para el manejo de eventos que va más allá de la selección y manipulación básicas de elementos DOM. La asignación de eventos y la definición de la función de devolución de llamada de eventos se realizan en un solo paso en una única ubicación en el código. JQuery también pretende incorporar otra funcionalidad de JavaScript muy utilizada (por ejemplo, entradas y salidas de fundido cuando se ocultan elementos, animaciones mediante la manipulación de las propiedades de CSS).
Los principios de desarrollo con JQuery son:
  • La separación de JavaScript y HTML: La biblioteca jQuery proporciona la sintaxis simple para añadir eventos manipuladores a la DOM utilizando JavaScript, en lugar de añadir eventos atributos HTML para llamar a funciones de JavaScript. Por lo tanto, alienta a los desarrolladores a separar completamente el código JavaScript del marcado HTML.
  • Brevedad y claridad: JQuery promueve la brevedad y la claridad con funciones como funciones "chainable" y nombres de funciones abreviados.
  • Eliminación de incompatibilidades entre navegadores: Los motores de JavaScript de diferentes navegadores difieren ligeramente, por lo que el código JavaScript que funciona para un navegador puede no funcionar para otro. Al igual que otros kits de herramientas de JavaScript, jQuery maneja todas estas inconsistencias en varios navegadores y proporciona una interfaz consistente que funciona en diferentes navegadores.
  • Extensibilidad: Los nuevos eventos, elementos y métodos pueden agregarse fácilmente y luego reutilizarse como un complemento.
Historia:

JQuery fue creado originalmente en enero de 2006 en BarCamp NYC por John Resig, influenciado por la anterior biblioteca cssQuery de Dean Edwards.​ Actualmente lo mantiene un equipo de desarrolladores liderado por Timmy Willison (con el motor de selección de jQuery, Sizzle, liderado por Richard Gibson).
JQuery fue originalmente licenciada bajo el CC BY-SA 2.5 , y se le otorgo la licencia MIT en 2006.​ A fines de 2006, tenía doble licencia bajo las licencias GPL y MIT. Como esto llevó a cierta confusión, en 2012 se eliminó la GPL y ahora solo está autorizada bajo la licencia MIT.
En 2015, JQuery se utilizó en el 63% del millón de sitios web principales (según BuiltWith) y en el 17% de todos los sitios web de Internet.​ A partir de junio de 2018, JQuery se usa en el 73% del millón de sitios web más importantes y en el 22,4% de todos los sitios web (según Builtwith).
Desde el año 2019, JQuery se usa en el 79,47% del millón de sitios web más importantes y en el 86% de todos los sitios web (según BuiltWith), siendo la biblioteca de JavaScript más popular hasta el momento.

DOM
¿Que es el DOM?
-Antes que nada, sin embargo, es importante que hablemos de DOM, acrónimo de «Modelo de Objetos del Documento», un  interfaz de programación de aplicaciones (API) para trabajar con los lenguajes estructurados, como XML o HTML.
Dicho de otra forma menos enrevesada, DOM es un estándar que permite acceder y manipular los elementos de una página web mediante algún lenguaje de programación web, como JavaScript o su librería jQuery. Bueno, es probable que con esta definición sigamos sin haber entendido un pimiento, pero ahora no importa. Vamos a seguir y luego resultará todo más claro.


Resultado de imagen para DOM

Árboles y nodos:


-Un árbol tiene muchas ramas y algunas ramas se dividen a su vez en otras ramas con más ramas y así hasta las hojas. Con un documento web sucede lo mismo. Es un árbol que se va ramificando hasta llegar a los datos. Por ejemplo, una rama principal es el <head> y otra el <body>. Dentro de la rama del <head> está la subrama del <title> y dentro del <body> una montonera de tags que incluyen otros tags que... Para hacernos una idea vamos a pensar en una web muy sencilla, una en la que solo se vean dos párrafos, uno que dice «tempus fugit» y en otro «carpe diem».
En HTML esa página se ramificaría en este árbol:

<html>
<head>
<title>
página de ejemplo
</title>
</head>
<body>
<p> Tempus fuggit </p>
<p>Carpe diem</p>
</body>
</html>

Si lo pusiéramos en un esquema quedaría algo así:
1. documento (html)
1.1. Head
1.1.1. Title
1.2. Body
1.2.1. Párrafo 1
1.2.2. Párrafo 2
Esas ramas son lo que en DOM se entiende por nodos. El párrafo 1 y el 2 son dos nodos hermanos, pues no existe jerarquía entre ellos y ambos depende del mismo nodo padre, que es body.
Hay varios tipos de nodos, pero de momento solo es importante que conozcamos dos:
  • Document: es el nodo raíz del documento DOM, el padre de todos los nodos o, dicho de forma más friki, el nodo para dominarlos a todos.  😆
  • Element (elementos): en HTML, son las etiquetas, ya sean pares de apertura y cierre —<p></p>,<b></b>,<quote></quote>— o las que funcionan de forma individual, como <img>, <meta>, etcétera.

Como sabemos, las etiquetas de HTML, que de aquí en adelante vamos a llamar elementos, pueden incluir distintos atributos. Por ejemplo, en el elemento imagen <img> se pueden especificar el atributo alto y el atributo ancho.

<img src="imagen.jpg" height="100" width="100">

El ancho y el alto no son atributos válidos para cualquier elemento. Por ejemplo, no se pueden aplicar para el elemento <a>, con el que se marca un enlace. Sin embargo, hay un tipo especial de atributos, llamados «globales», que se pueden incluir en todos los elementos. De estos, hay dos que se usan con frecuencia:

  • id: identifica de forma única un elemento. Es como ponerle nombre y apellidos. Solo puede haber un elemento con ese identificador.
  • class: define la clase a la que pertenece un elemento.
Y lo bueno es que se puede acceder y manipular cada elemento a partir de sus atributos. Así, se podría programar un script para que, al pulsarse un botón, todos los elementos de determinada clase se hicieran visibles, lo que permitiría hacer un menú desplegable, o para ampliar una imagen, para desplazarla... incluso para eliminar o añadir nodos.
De hecho, hay varias funciones de JavaScript muy habituales en cualquier página dinámica que permiten seleccionar los elementos por tipo, id o clase:
<script>
// Seleccionamos todos los elementos del tipo <p>
document.getElementsByTagName("p");
// Selecciona el elemento cuyo id se llama monglonfillos
document.getElementById("monglonfillos");
// Seleccionamos todos los elementos cuya clase es "rejurti"
document.getElementsByClassName("rejurti");
</script>

A continuacion una ficha que nos dieron en clase, con su resolucion:








Y para finalizar un video que habla mas sobre este tema:


Espero les haya gustado y hasta otra oportunidad ;D

Clase 3

Diagrama de Pert

¿Que es el diagrama de Pert?
-El término PERT  es el acrónimo en inglés de Técnica de Revisión y Evaluación de Programas, y es una forma visual de representar las tareas que forman el proyecto y las relaciones entre ellas.  Esta representación visual es lo que se llama el diagrama de PERT del proyecto, y suele usarse junto con el método de camino crítico, o CPM,  para planificar los proyectos. De esta forma, este diagrama permite planificar el proyecto, identificar el camino crítico del proyecto, las tareas críticas por no tener holgura, y calcular su plazo mínimo de ejecución.

Pasos para crear el diagrama PERT:

El punto de partida, para crear el diagrama PERT es disponer de las tareas que forman el proyecto, su duración, y las relaciones entre ellas. Esto puede representarse en forma de tabla, como se muestra a continuación.
Diagrama PERT de un proyecto

1- Ordenar las tareas

El primer paso es representar las tareas de forma ordenada entre los los hitos de inicio y final del proyecto, indicando mediante flechas su orden de ejecución, y su duración dentro de cada recuadro.
Representación del diagrama PERT de un proyecto
Incluir estos dos hitos es importante para facilitar la comprensión y realización del diagrama, ya que conceptualmente las primeras tareas (tareas sin precedentes) deben ejecutarse después de iniciarse el proyecto. Y el proyecto finaliza cuando se han completado todas las tareas que no tienen una tarea posterior.
Al realizar esta representación se rellenan las dos área superiores: el nombre de la tarea y su duración.

2- Calcular la primera fecha de inicio

La primera fecha de inicio es la fecha más cercana al inicio en que la tarea puede empezar a ejecutarse, considerando las relaciones con las tareas precedentes. En el diagrama de PERT se muestra en el área inferior derecha de las casillas de cada tarea.
Diagrama PERT de un proyecto con primeras fechas de inicio
Su cálculo es simple, solo es necesario ser metódico. Para ello empezamos asigndo un 0 como primera fecha de inicio al hito INICIO, lo que indica que el proyecto empieza en el día 0. A partir de aquí, la primera fecha de inicio de una tarea sale de sumar la fecha de inicio y duración de la tarea precedente.  Si hay más de una tarea precedente, como ocurre en el hito de fin, se hace el cálculo con todas las tareas precedentes y se muestra el valor mayor.

3- Calcular la última fecha de inicio

Una vez lleguemos al final del diagrama PERT, se procede a calcular la última fecha de inicio empezando por el hito de fin. Este valor se muestra en el área inferior izquierda de cada casilla.
Diagrama PERT de un proyecto con últimas fechas de inicio
Para realizar este cálculo se asigna al hito de FIN una última fecha de inicio igual a su primera fecha de inicio, y se procede con una operación similar a la anterior. En este caso de izquierda a derecha, restando a la última fecha de inicio de la tarea posterior la duración de la tarea donde estemos realizando el cálculo. Si hay más de una tarea posterior, se hace el cálculo con todas las tareas posteriores y se muestra el valor menor.
Aca hay un ejemplo de un diagrama de Pert terminado :/
Resultado de imagen para diagrama de pert

Y a continuacion una ficha que nos dieron en clase con su resolucion:







Clase 2

Diagrama de Gantt

El diagrama de Gantt es una herramienta gráfica cuyo objetivo es exponer el tiempo de dedicación previsto para diferentes tareas o actividades a lo largo de un tiempo total determinado. A pesar de esto, el diagrama de Gantt no indica las relaciones existentes entre actividades.

Creando Diagramas de Gantt con herramientas informaticas:
Se puede elaborar un diagrama de Gantt con una hoja de cálculo de una manera muy sencilla, marcando determinadas celdas para formar la representación de cada tarea. Existen macros que automatizan esta elaboración en MS Excel y Libre/OpenOffice Calc.
Sin embargo, existen herramientas de gestion de proyectos dedicadas a la planificación y seguimiento de tareas que utilizan el diagrama de Gantt como pantalla principal. Se introducen las tareas y sus procesos son capaces de producir una representación de dichas tareas en el tiempo en el formato del gráfico de Gantt. También existen herramientas de licencia libre y software gratis, capaces de llevar a cabo dicho tipo de operación. Se deben valorar, por último, el uso de herramientas que usan una página web y el navegador para realizar el seguimiento de proyectos.

Resultado de imagen para diagrama de gantt

Software libre o gratis para trabajar con diagramas de Gantt:


  • Calligra Suite
  • Sinnaps
  • DotProject
  • NavalPlan
  • OpenProj
  • Planner
  • ProjectLibre
  • GanttProject
  • Asakaa
  • Paint

Marco Teorico:


En 1896 Karol Adamiecki desarrolló un nuevo medio de representación gráfica de procesos interdependientes que se diseñan con el fin de mejorar la visibilidad de los programas de producción. Dada la posición de cada tarea a lo largo del tiempo hace que se puedan identificar las relaciones e interdependencias. En 1931 se publicó un artículo conocido más ampliamente para describir el diagrama de Karol Adamiecki, quien lo llamó el harmonogram o harmonograf. Adamiecki, sin embargo, publicó sus obras en polaco y ruso, idiomas poco conocidos en el mundo de habla inglesa. En ese momento, un método similar se había popularizado en occidente por Henry Gantt (quien había publicado artículos sobre el mismo en 1910 y 1915). Con modificaciones menores, la carta de Adamiecki es ahora más comúnmente conocida en inglés como el diagrama de Gantt, ya que fue Henry Laurence Gantt quien, entre 1910 y 1915, modificó y divulgó este tipo de diagrama en occidente.

Por esta razón, para la planificacion del desarrollo de proyectos complejos (superiores a 25 actividades) se requiere además el uso de técnicas basadas en redes de precedencia como CPM o los diagramas PERT. Estas redes relacionan las actividades de manera que se pueda visualizar el camino crítico del proyecto (es decir, la actividad más compleja o la que demandará más tiempo) y permiten reflejar una escala de tiempos para facilitar la asignación de recursos y la determinación del presupuesto. El diagrama de Gantt, con todo, sí resulta útil para establecer una relación básica entre tiempo y carga de trabajo.

En gestion de proyectos, el diagrama de Gantt muestra el origen y el final de las diferentes unidades minimas de trabajo y los grupos de tareas (llamados summary elements en la imagen) o las dependencias entre unidades mínimas de trabajo (no mostradas en la imagen).
Resultado de imagen para diagrama de gantt

Para finalizar un video que explica, como crear este diagrama: