0% encontró este documento útil (0 votos)
43 vistas73 páginas

Elementos Clave en Algoritmos y Programación

Este documento describe los elementos fundamentales del entorno de algoritmos y programación, incluyendo las definiciones de computadora, sistema, hardware, software, datos, información, algoritmo y lenguajes de programación. Explica que para resolver problemas mediante computadoras se deben considerar cuatro fases: 1) analizar el problema, 2) diseñar un algoritmo, 3) traducir el algoritmo a un lenguaje de programación, y 4) depurar el programa.

Cargado por

carlos
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
43 vistas73 páginas

Elementos Clave en Algoritmos y Programación

Este documento describe los elementos fundamentales del entorno de algoritmos y programación, incluyendo las definiciones de computadora, sistema, hardware, software, datos, información, algoritmo y lenguajes de programación. Explica que para resolver problemas mediante computadoras se deben considerar cuatro fases: 1) analizar el problema, 2) diseñar un algoritmo, 3) traducir el algoritmo a un lenguaje de programación, y 4) depurar el programa.

Cargado por

carlos
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd

Elementos de Entorno de Algoritmos y Programación

 Una computadora: Es un procesador de datos, es un equipo que tiene valores de


entrada, valores de salida, pero en el medio se procesa todo tipo de información en
base a 0 y 1
 Un sistema: Es un conjunto de componentes conectados, interactivos, que tienen un
propósito y una unidad total
 Que es un Sistema de Procesamiento de Información: Es un sistema que
transforma los datos brutos en información organizada, significativa y útil.
 Para procesar la información se necesita de dos Componentes Principales que
son: El Hardware y Software
 Hardware: Es la parte tangible y Software la parte intangible
 Que es el Hardware (parte física - tangible): Es un conjunto de componentes físicos de
una computadora, se compone de un CPU (Unidad Central de Procesamiento), Memoria
Central, Dispositivos de Almacenamiento Secundario (Memoria Auxiliar) y Periféricos o
Dispositivos de Entrada y Salida (E/S)
 Que es el Software (Parte Lógica – Intangible): Es un conjunto de programas que
controlan el funcionamiento del hardware de una computadora
 Que es Dato: Es una representación simbólica (numérica, alfabética, algorítmica), un
atributo o característica de una entidad.
Un dato es la expresión general que describen los objetos con los cuales opera una
computadora y existen dos tipos de datos: Datos Simples y Compuestos
 Cuantos Tipos de Datos existen:
 Datos Simples (sin estructura)
 Numéricos (enteros, reales)
 Lógicos (Boolean)
 Carácter (char, string)
 Datos Compuestos (estructurados)
 Registros
 Arreglos (Vectores, matrices)
 Archivos
 Que es la Información: Es un conjunto de datos acerca de algún suceso, hecho,
fenómeno o situación, que organizados en un contexto determinado tiene su significado,
cuyo propósito puede ser el de reducir la incertidumbre o incrementar el conocimiento
acerca de algo.
 Que es Procesar Información: La información se introduce en la computadora como
datos de entrada, luego se procesa dicha información para producir una salida
 Estructura Base de Cualquier Sistema de Información:
Datos de Entrada > Un Proceso > Datos de Salida (Resultado)
 Que es un Algoritmo: Es un método para resolver un problema en específico, el cual tiene una serie
o secuencia ordenada de instrucciones, tiene un inicio y tiene un final.
 Características que tiene un Algoritmo: Todo algoritmo debe cumplir con las siguientes
características
 Tiene que ser preciso (solución exacta)
 Tiene que ser bien definido
 Tiene que ser finito
 Que debe describir un Algoritmo: Debe describir Entrada, Proceso y Salida.
Por ejemplo: algoritmo para llamar a un contacto personal por mi celular
 Entrada: Marcar el numero celular de este contacto
 Proceso: Enlace intercelular
 Salida: Contacto establecido – llamada Aceptada o Rechazada
 Tipos de Algoritmo: Cualitativos y Cuantitativos
 Que es un Algoritmos Cualitativos: Son aquello en los que se describen los
pasos utilizando palabras. Por ejemplo: usar una guía telefónica, buscar una
palabra en un diccionario, etc.
 Que es un Algoritmo Cuantitativo: Son aquello en los que se utilizan
cálculos numéricos para definir los pasos a procesar. Por ejemplo: resolver
una ecuación, sacar el área de un triángulo.
 Que son los Lenguajes Algorítmicos: Es una serie de símbolos y reglas que
se utilizan para describir de manera explícita un algoritmo
 Tipos de Lenguajes Algorítmicos:
 Los Gráficos: Es la representación gráfica de las operaciones que realiza un
algoritmo. Ejemplo: diagramas de flujo
 No Gráficos: Representan de forma descriptiva las operaciones que debe
realizar un algoritmo. Ejemplo: Pseudocódigo
 Que es un Programa: Es un conjunto de instrucciones escritas, de algún lenguaje de programación
y que ejecutadas secuencialmente resuelven un problema específico.
 Que es un Lenguaje de Programación: Es un conjunto de símbolos y reglas sintácticas y
semánticas que definen su estructura y el significado de sus elementos y expresiones, utilizado para
controlar el comportamiento físico y lógico de una computadora.
 Los lenguajes de programación tienen un conjunto de instrucciones que nos permiten realizar
operaciones de entrada salida, cálculos, comparación y almacenamiento/recuperación
 Tipos de Lenguajes de Programación:
 Según el nivel de Abstracción
 Según la forma de ejecución
 Según el Paradigma de Programación
 Usted dice que va a utilizar para su examen de grado C# (C Sharp) como lo
podría usted catalogar:
 Es abstracto, es complejo, es sencillo, como es su forma de ejecución, necesita
compilar, necesita algunos eventos previos y que paradigmas soporta este lenguaje
 R: Según el nivel de Abstracción Python es un lenguaje fácil o difícil de aprender, es
el más fácil de todos.
 Según su forma de Ejecución: necesita compilación, necesita algo? No generalmente
corre a la primera
 Según el Paradigma de Programación: es multi paradigma aguanta y soporta muchos
paradigmas que son utilizados en la actualidad
 Tipos de Lenguaje de Programación Según el Nivel de Abstracción:
 Lenguaje Maquina
 Lenguaje de Bajo Nivel
 Lenguaje de Alto Nivel
 Lenguaje Maquina: las instrucciones se expresan en términos de la unidad de memoria mas pequeña el bit
(digito binario 0 o 1)
 Ventaja: no necesita ser traducido, mayor adaptabilidad al equipo
 Inconveniente: difícil y lentitud en la codificación
 Lenguaje de Bajo Nivel (Asembler): se utiliza palabras o abreviaturas ejemplo: operaciones aritméticas ADD
(SUMAR), SUB (RESTAR), DIV (DIVIDIR), etc.
 Ventajas: no es difícil como el lenguaje maquina
 Inconveniente: cada máquina tiene su propio lenguaje, proceso de traducción
 Lenguaje de Alto Nivel: son aquellos en las que las instrucciones son escritas con palabras similares a los que
manejamos los humanos, en inglés, español, facilita la escritura y la comprensión
 Ventajas: Son independientes de cada máquina lo que los hace portables
 Inconvenientes: Proceso de traducción largo y consume más recursos
 Tipos de Lenguaje de Programación Según la Forma de Ejecución:
 Lenguajes Compilados
 Lenguajes Interpretados
 Lenguaje Compilado: Hace referencia a su nombre se compilan una vez y se utilizan
cuantas veces se desee sin necesidad de volver a utilizar el compilador.
Analizan todo el programa y no generan resultados si no está bien el código
 Lenguajes Interpretados: Son interpretados cada vez que se ejecutan y necesitan del
interprete
Los interpretes analizan las instrucciones según la necesidad.
 Tipos de Lenguaje de Programación Según el Paradigma de la Programación:
 Que es un Paradigma de Programación: Son estilos formas de programar o de desarrollar un sistema o software que ya están
documentados según la necesidad que se quiere resolver.
 Algorítmico Imperativo o por Procedimientos
 Declarativo o Predictivo
 Lógico
 Funcional
 Orientado a Objetos
 Algorítmico, Imperativo o por Procedimientos: Es el más común y está representado por lenguajes de programación como C o
BASIC
Los programas imperativos son un conjunto de instrucciones que se le indica a la computadora de cómo realizar una tarea
 Declarativo o Predicativo: Están basados en la utilización de predicados lógicos o funciones matemáticas, su objetivo es
conseguir lenguajes expresivos en los cuales no sea necesario especificar como resolver el problema
 Lógico: El mecanismo de inferencia genérico se basa den los procedimientos de deducción de fórmulas validas en un sistema
axiomático, ejemplo el PROLOG
 Funcional: Es representado por el lenguaje LISP, el mecanismo de inferencia genérico se basa en la reproducción de una expresión
funcional a otra equivalente simplificada
 Orientado a Objetos: son cada vez mas utilizados en combinación con el imperativo, permiten la programación imperativa
ejemplo de lenguaje orientado a objetos son: C++, Java, Python. Están basados en varias técnicas, herencia, modularidad,
polimorfismo y encapsulamiento
 Mencione cuales son los Tipos de Lenguaje de Programación: Principal mente se clasifican en tres
 Según el nivel de Abstracción
 Según la forma de Ejecución
 Según el Paradigma de Programación
 Elementos de Entorno de Algoritmos y Programación
 Metodologías para la solución de problemas por medio de computadoras
Desde el punto de vista educativo: la solución de problemas mediante la programación posibilita la
activación de una amplia variedad de estilos de aprendizaje.
Es por ello que debemos considerar 4 fases, para resolver problemas específicos mediante la programación
de computadores.
1. Analizar el problema
2. Diseñar un algoritmo
3. Traducir el algoritmo a un lenguaje de programación
4. Depurar el programa
 Que fases debemos considerar para resolver problemas mediante la programación de
computadoras:
1. Analizar el problema (el paso mas importante)
2. Diseñar el Algoritmo
3. Traducir el Algoritmo a un lenguaje de programación
4. Depurar el Programa (para verificar que no nos cause errores)
 Definición del Problema: Esta fase esta dada por el enunciado del problema, el cual
requiere un definición clara y precisa. Lo mas importante de programar es definir, analizar,
saber de que va el problema es el 80% de la solución, tener claro que queremos conseguir
y como lo podemos hacer.
 Cuando se hace el Análisis del Problema: Una ves que se ha comprendido lo que se
desea de la computadora, es necesario definir:
 Los Datos de Entrada
 Los Datos de Salida (cual es la información que se desea producir)
 Los Métodos y Formulas que se necesitan para procesar los datos.
 Cual es el Esquema Básico de cualquier programa:
 Diseño
 Procesamiento
 Salida
 Diseño del Algoritmo
 Las características de un buen Algoritmo son:
 Debe tener un punto de inicio
 Debe ser preciso e indicar el orden de cada paso
 Debe ser bien definido, no debe permitir doble interpretación (respuesta debe estar clara)
 Debe se general (es decir funcional para todos los casos en específicos que queramos probar)
 Debe ser finito en tamaño y tiempo de ejecución (es decir que tiene que tener un punto final )
 Que debe tener un Algoritmo: Tiene que tener un Punto Inicio, Punto Final y ser Secuencial y
Claro
 Que es la Codificación: Es la operación de escribir la solución del programa (lógica del
diagrama de flujo o pseudocódigo), en una serie de instrucciones detalladas, en un código
entendible para la computadora, la serie de instrucciones detalladas se le conoce como
código fuente, el cual se escribe en un lenguaje de programación
 A que se le conoce como Código Fuente: Es la serie de instrucciones detalladas el cual se
escribe en un lenguaje de programación.
 Pruebas y Depuración: Es el proceso de identificar y eliminar errores, para dar paso a
una solución sin errores a esto se le llama depuración
 Documentación: Es la guía o comunicación escrita en sus variadas formas, ya sean
enunciados, procedimientos, dibujos o diagramas. Sirve para ayudar a comprender o usar
un programa o facilitar futuras programaciones.
La documentación se divide en tres partes:
 Documentación Interna (Requisitos Funcionales y No Funcionales)
 Documentación Externa (Pruebas de Calidad)
 Manual de Usuario (Una ves que se hace desarrollado el programa)
 Mantenimiento: Se lo hace después de terminar el programa, cuando se detecta que es necesario
hacer algún cambio, ajuste o complementación al programa para que siga trabajando de manera
correcta. Para poder realizar este trabajo el programa debe estar correctamente documentado.
 Identificadores o Variables: Representan datos de un programa (constante o variable). Un
identificador es una secuencia de caracteres que sirven para identificar una posición en a memoria de
la computadora, nos permite acceder a su contenido. Una variable puede ir cambiando
constantemente, la constante como nace muere. Ejemplo de constante en la vida real es la gravedad
la constante no cambia
 Reglas para formar un Identificador: existen distintas normas o políticas
 Debe empezar con una letra (mayúsculas o minúsculas), y no debe contener espacios en blanco
 Letras, dígitos y caracteres deben estar unidos por un carácter subrayado “_”
 El primer carácter no puede ser un numero
 Tipos de Identificadores:
 Constantes
 Variables
 Constante: Es un dato numérico o alfa numérico que no cambia durante la ejecución del programa. Ejemplo
el valor de PI= 3,1416
 Variables: Es un espacio de memoria de la computadora que permite almacenar temporalmente un dato
durante la ejecución de un proceso, su contenido puede cambiar durante el proceso de ejecución del programa.
Ejemplo: área = (base*altura)/2
 Clasificación de Variables:
 Variables

1. Por su Contenido
 Numéricas
 Lógicas
 Alfanuméricas (String)

2. Por su Uso
 De trabajo
 Contadores
 Acumuladores
 Tipos de Datos: Los tipos de datos hacen referencia al tipo de información que se trabaja.
El tipo de datos determina el conjunto de valores que puede tomar una variable. Ejemplo:
entero, real, carácter, carácter (letra) y lógicos
 Estructuras condicionales (If): Las estructuras condicionales comparan una variable contra otros
valores, para que en base al resultado de esta comparación, se siga un curso de acción dentro del
programa. Existen 3 tipos:
 Simples,
 Dobles
 Multiples
 El tema de Excepciones Multiples: Se lo puede trabajar como un “if” y un “else” caso contrario si
o caso contrario si
 Excepción con el comando “raise ValueError”: con este comando podemos lanzar un error
manual personalizado basándose en las excepciones pasándole el identificador, es para mostrar un
mensaje de error generalmente la gente trabaja más con el “print”
 La Encapsulación: Consiste en denegar el acceso a los atributos y métodos internos de la clase
desde el exterior.
En Python no existe, pero se puede simular precediendo atributos y métodos con dos barras bajas__:
 Métodos especiales de clase Constructor y destructor: los métodos especiales de una clase
generalmente son dos:
 El método constructor
 El método destructor
Pregunta de Examen
 Como identifico en Python al método constructor y al método destructor:
 Al método constructor lo identificamos con una palabra o nombre especial (__init__)
que es llamado al momento en que se utiliza una clase para construir un objeto.
Generalmente se utiliza para determinar los valores iniciales del objeto.
 Al método destructor se lo puede identificar con un nombre especial (__del__) que es
llamado justo un momento antes de que un objeto sea destruido.
 Que es Polimorfismo: Se refiere a la capacidad de un objeto para adoptar múltiples formas. El
término se deriva de dos términos distintos: poli, que significa numerosos, y morfos, significa
formas.
 Ejemplo: Supongamos que hay una clase llamada animal, pero dentro de esa clase hay numerosas
formas, como perro, gato y vaca. Es decir, un animal de clase común consta de una variedad de
formas que vienen en una variedad de formas y tamaños y realizan una variedad de funciones. A
todo este fenómeno se define como: polimorfismo.
 Deme un ejemplo de Polimorfismo: Es una función que puede tomar varias formas, es el inicio de
la forma de trabajo
 Ejemplo de la vida diaria: hiciéramos un objeto que se denomine banda de rock y dentro de esta
banda generalmente hay varios músicos que se encargan de tocar en armonía para generar una
canción, al momento de un concierto todos tocan un instrumento o hacen algo, pero cada uno hace
algo distinto, puede ser uno que toque la guitarra y llama a la función tocar y recibe una guitarra por
lo tanto toca eso. Nueva mente llamamos a la función tocar en este caso recibirá el instrumento del
bajo y tocará el bajo de acuerdo a lo que corresponde, otro que dirá tocar y tocará la batería y aquí
vemos como una función que se denomina tocar puede tener distintas formas de ver o de hacer las
cosas
 Que es Herencia en Python y cuantos tipos de herencia hay: La herencia de clases es una técnica
de la programación orientada a objetos (POO) que permite primero crear una clase general (Clase
base o clase primaria) y luego crear “subclases” (Clases derivadas) más específicas que re-utilicen el
código de la clase general.
 Tenemos dos tipos de herencias: Herencia Simple y Herencia múltiple
 En la herencia simple todos los métodos o las clases hijas subclases tienen un solo padre
 En cambio, en la herencia múltiple: un método hijo puede tener dos o más padres
 La herencia simple: es cuando una clase hija o subclase hereda los atributos y métodos de una
única clase padre.
 Herencia múltiple: Es cuando una subclase herede atributos y métodos de más de una clase
principal es decir tenga varios padres
Pregunta de examen
 Hágame un ejemplo de una Herencia Simple y una Herencia Multiple:
 En la herencia simple una subclase tiene una sola súper clase es decir un solo padre.
 En cambio, en la herencia múltiple una subclase puede tener varias clases padres o
superclases
 Deme un ejemplo de Herencia de la vida diaria: ejemplo de la vida diaria, podríamos
tener una clase principal llamada Persona, que sea heredada por la clase Hombre y por la
clase Mujer.
Hombre y Mujer, tendrían los mismos atributos que Persona (extremidades superiores,
inferiores, órganos vitales), pero cada una tendría atributos propios que las distinguen
entre sí y a la vez extienden a Persona (órganos reproductores, genes). De la misma
manera, compartirían los mismos métodos que Persona (caminar, correr, comer), pero
cada una, tendrían sus propios métodos distintivos
Otro ejemplo:
 ejemplo de perros y animales. Vamos a definir una clase padre Animal que se heredaran por las sub clases
(perro, gato, caballo) que tendrá todos los atributos y métodos genéricos que los animales pueden tener.
 Entre los atributos podemos tener:
 Tenemos la especie ya que todos los animales pertenecen a una.
 Y la edad, ya que todo ser vivo nace, crece, se reproduce y muere.
 Y entre los métodos o funcionalidades:
 Tendremos el método hablar, cada animal tiene una forma. Los perros ladran, las abejas zumban y los caballos
relinchan.
 Un método moverse. Unos animales lo harán caminando, otros volando.
 Cada uno tiene sus métodos distintivos
 Programación Extrema PX
 Fuerzas que Influyen en los enfoques para el desarrollo del software: Existen 3 ramas principales que son:
 Los fundamentalistas o metodológicos
 La tendencia global
 Los libertarios
 Que es una Metodología Ágil : Es una forma una receta de cocina para hacer las cosas, que busca hacer lo mas
simple, lo mas sencillo y lo mas rápido posible.
 Diferencia entre Framework ágil y Metodología Ágil: La metodología se podría decir que es mucho mas
complejo, mas rígida en sus normas y el framework es mucho mas simple, no es tan estricta se da ciertas
libertades y son framework ágil por que se adaptan al proyecto y no el proyecto a la norma.
 Por que se dice Framework ágil: Por que se adaptan al proyecto y no el proyecto a la norma
 Diferencia entre lenguaje de programación y framework: El lenguaje de programación es mucho mas
complejo es la base, es la sintaxis, los paradigmas de programación, los patrones de diseños, son varias cosas. Y
el framework usa la base de lenguaje de programación es mas simple, donde todo esta organizado y estructurado,
tiene cosas predefinidas
 Que es Filosofía de Vida: Es una forma de pensamiento que tiene cada persona

 Diferencian Entre Metodología Agil y la Metodología Tradicional:
La metodología ágil es mas practica mas flexible, la metodología tradicional es mucho mas protocolar
es mas metodológica, y mas estricta
 Costo de cambio en el Software: La tradicional era muy alto el cambio por que no se tenia contacto
con el cliente el producto lo veía al final de la entrega y los cambios se aumentaban. En cambio la
metodología ágil es constante la entrega y se mantiene cierto equilibrio
 Cuales son las principales metodologías agiles:
 Crystal Methodologies
 Scrum
 DSDM(Dynamic Systems Development)
 Lean Programming
 Programación Extrema XP
 Que es XP:
 Es una metodología de desarrollo ligera, basada en una serie de valores y varias practicas que favorece un
aumento en la productividad a la hora de desarrollar software.
 XP también permite controlar los problemas de riesgos en los proyectos
 XP permite la participaciones de pequeños grupos de programadores
 XP requiere un variado equipo de desarrollo
 Características de XP:
 Las características generales de XP, es una metodología liviana pasa por alto la utilización de elaborados
casos de uso, la exhaustiva definición de requerimientos y la extensa documentación
 XP tiene asociado un ciclo de vida y es considerado a su vez un proceso
 La tendencia de entregar software en lapsos cada ves menores de tiempos y costos reducidos
 En relación del costo del cambio en XP se mantiene constante debido a que los avances se van mostrando en el
proceso al cliente y en el enfoque tradicional se dispara cuando vamos modificando
Principios Roles y Practicas de la Programación Extrema
 Que busca la programación extrema
1. Busca la retroalimentación rápida
2. Asumir la responsabilidad de las cosas
3. Cambio incremental (es decir vamos cambiando y este va incrementando a lo largo del tiempo)
4. Aceptar el cambio (que puede ver)
5. Hacer trabajo de calidad.
 Las practicas son:

1. El juego de la planificación 7. Programación por parejas

2. Pequeñas entregas 8. Propiedad colectiva

3. Establecer una Metáfora de trabajo 9. Integración Continua

4. Diseño Simple 10. 40 horas semanales

5. Pruebas 11. Cliente en casa

6. Refactorización 12. Estándares de codificación


 Objetivos de la Programación Extrema XP
Los objetivos de esta metodología XP son:
1. La satisfacción del cliente
2. Potenciar el trabajo en grupo, todos están involucrados en el desarrollo del software
 Interacción Entre las Cuatro Variables de Gestión de Proyecto:
 El Coste de Cambios
 El coste de cambios crese con el tiempo
 XP propone que los costos de los cambios no tienen que aumentar con el tiempo
 Cuales son los Cuatro Valores que Trabaja XP:
1. Comunicación
2. Sencillez
3. Retroalimentación
4. Valentía
 Por qué Programación Extrema XP: Porque tiene 4 valores principales:
La Comunicación (busca que constantemente estemos retroalimentando
ideas, retroalimentando al software), la Sencillez (practico, sencillo), La
Retroalimentación (que parte de la comunicación) y la Valentía (al momento
de desarrollar el proceso de software.
 Roles de XP:
 Cliente:
 Escribe las “Historias de Usuario” y especifica las Pruebas Funcionales
 Establece Prioridades, explica las Historias
 Puede ser o no un usuario final
 Tiene autoridad para decidir cuestiones relativas a las Historias
 Programador:
 Hace estimaciones sobre las Historias
 Define Tareas a partir de las Historias y hace estimaciones
 Implementa las Historias y las Pruebas Unitarias
 Tutor (Parecido al Proyect Manager ):
 Observa todo, identifica señales de peligro, se asegura que el proyecto se mantenga en curso.
 Ayuda en todo
 Da aviso cuando se necesita
 Perseguidor (Calidad – Parecido al Scrum Mater):
 Monitoriza el proceso de los programadores, toma acción si las cosas tienden a salirse de su senda.
 Las acciones incluyen reuniones con el cliente, solicitar ayuda al Tutor u otro Programador.
 Verificador (Tester)
 Implementa y corre las Pruebas Funcionales (no Pruebas Unitarias)
 Presenta grafica de los resultados y se asegura de que la gente conozca cuando los resultados empiezan a decaer.
 Agorero:
 Se asegura que todos conozcan los riesgos que existen
 Se asegura de que las malas noticias no se oculten, se disculpan o se reducen de proporción
 Gestor (Parecido al Product Owner):
 Planifica las reuniones (plan de iteraciones, plan de lanzamiento), anota los resultado de las reuniones y los pasa
al perseguidor
 Posiblemente responsable ante el “Propietario de Oro”
 Asiste a las reuniones, aporta información útil
 Propietario de Oro:
 La persona que paga el proyecto, que puede ser o no la misma que el cliente.
 Las cuatro Actividades Basicas de XP:
1. Codificar
2. Hacer pruebas
3. Escuchar
4. Diseñar

Proceso de Desarrollo
 Artefactos Esenciales en XP:
 Historias del Usuario
 Tareas de Ingeniería
 Pruebas de Aceptación
 Pruebas Unitarias de Integración
 Plan de la Entrega
 Código
 Escenarios en XP o Ciclo de Vida: Exploración
 Primero Definimos las Historias de Usuario, que pueden ser establecidos para
Elaborar los Spikes, los Bosquejos y Estimar el Esfuerzo y Riesgo, para poder
definir los Esfuerzos a Trabajar
 Planificación de la Entrega: Existen distintas historias de usuario, que se las
desglosa en reuniones, basadas en la velocidad del proyecto puntos por
semana y establece las iteraciones o los sprint
 Como Comenzar la Iteración XP: Se comienza la Iteración en base a las
Historias de Usuario, luego se define y ordena las Tareas de Ingeniería, para
ver las Tareas de Iteración
 Pruebas de Aceptación:
1. Primero Definimos las Pruebas de Aceptación
2. Establecemos las Pruebas en algo formal
3. Aplicar las pruebas de aceptación
4. Corregir errores y Definir nuevas Historias
 Entorno y Clima de Trabajo
 Espacio de Trabajo XP
 Son espacios abiertos
 Mesas centrales
 Cubículos en el espacio exterior
 Reuniones Diarias en XP
 Todo el equipo
 Establece los problemas y soluciones que tiene en la actualidad
 De pie en un circulo
 Evitar discusiones largas
 Sin conversaciones separadas
 Que es el Gantt de Pared (Parecido al Scrum Boart): Es como la pizarra de XP, es el centro del
universo del proyecto, es donde se hace todas las reuniones para establecer las historias de usuario
 Faces de la Metodología XP(Como hacemos funcionar la Metodología XP):
 Planificación: En esta parte tenemos las historias de usuario, valores, las pruebas de iteración y
el plan de iteración
 Diseño: Diseño simple, cartas CRC, Soluciones Pico, Prototipos
 Codificación: Programación en parejas, Integración Continua y la recodificación
 Prueba: Pruebas de Unidad y Pruebas de Aceptación
 Lanzamiento

También podría gustarte