Desarrollo profesional de software en la era del

Post on 21-Jul-2015

178 views 0 download

Tags:

Transcript of Desarrollo profesional de software en la era del

DESARROLLO PROFESIONAL DE SOFTWARE EN LA ERA DEL CONOCIMIENTO

“Aprendiendo a Aprender”

@leoduferleodufer.wordpress.com

About me

Entendiendo software de la manera correcta

Advertencia

Evolución

Open Source

Micro Kernel

O

Kernel Monolítico

No hagas cosas desnecesarias

No intentar adivinar el futuro

•Buscar tus propias soluciones

•No existe el big design up front

•Experimentación (Retro alimentación)

•Código abierto y licencia abierta

•Feedback rápido

•Lanzar rápido y frecuentemente.

•Peer Review (Showme Code)

•Gestión Descentralizada

Complejidad

Diversidad de Actores interactuando entre si.

Los agentes toman decisiones re adaptables de acuerdo a su interacción con los demás.

Cada agente tomo sus decisiones pero esas acciones afecta a todos los actores.

Consecuencias imprevisibles a largo plazo.

Cada agente solo tiene una visión parcial de todo lo que ocurre.

Sistemas Complejos

La forma en sistemas complejos surgen a partir de reglas simples formando comportamiento complejos que son difíciles de predecir

Emergencia

Tres reglas simples

Selección Natural de Código

-Se acumula

-Se crea nuevas varianzas

-Se reproduce – Distribuye

-Reproducción Animal

- Dos progenitores solo pueden generar más uno

-Reproducción de Código

- Múltiples progenitores que generan múltiples variaciones (forks)

El código es el rasgo genético en la evolución del software

Mecanismo de selección natural

“Show me the code”

“Descubra que se puede hacer y hazlo”

“Just do it”

Internet, comunicación, difusión

DESCENTRALIZACIÓN

Diagrama Train Wreck

Mucho de lo que llamamos gestión consiste en entorpecer

el trabajo de los demás

PROBLEMAS DE COORDINACIÓN

El Mito del Hombre – Mes

Equipos Quirúrgicos

Comunicación

Tirar una parte

Procesos Interactivos y

Procesos Incrementales

Como el cliente explico

Como el Gerente prometió

Como el Analista especificó

Como el Líder de proyecto entendió

Como el programador codificó

La documentación

Como se instaló

Lo que el Cliente pagó

El soporte al Usuario

Lo que el cliente necesitaba

PROCESOS Y METODOLOGÍAS

Analogía del Médico Loco

“Si funcionó para otros puede funcionar me a mi”

TRATAMOS DE ENCONTRAR PATRONES EN TODO

Superstición

Correlación no implica causalidad

Software es realizado por personas…!

Personas

El secreto para marcar el Gol Profesionalmente

Entrenamiento,Entrenamiento,Entrenamiento,Entrenamiento,

Mucho Entrenamiento

Programadores que no programan…

Escribir un algoritmo en el lenguaje de tu preferencia que imprima los números de 1 al 100.Si es múltiplo de 3 imprimir “Múltiplo de Tres”Si es múltiplo de 5 imprimir “Múltiplo de Tres”Si es múltiplo de 3 y 5 imprimir “Múltiplo de Tres y Cinco”

•Código real

•Criticas reales

•Intereses reales

Proyecto Open Source

Estamos descubriendo formas mejores de desarrollarsoftware tanto por nuestra propia experiencia comoayudando a terceros. A través de este trabajo hemos

aprendido a valorar

A los Individuos e interacciones sobre procesos y herramientas

Manifiesto Ágil