El documento habla sobre cómo ser listo en el desarrollo de software. Menciona que la industria siempre busca nuevas metodologías pero que lo más importante es aplicar principios sencillos como trabajar en equipos interdisciplinarios, diseñar para adaptarse a cambios futuros, y comenzar con sistemas esqueleto para luego agregar funcionalidad gradualmente. También enfatiza la importancia de pruebas exhaustivas y el uso de buenas metodologías probadas.
1. Trabajo de Investigación Operativa I Alumno: Juan Carlos Costilla Gárate Expositor: Ivar Jacobson Creador de UML
2. Sé Listo! Lo que no te enseñan sobre Software en la Universidad
3. Introducción Una Idea Un proceso Buen Software ¡Tu meta es siempre la misma! Buen Software, Rápido y a Bajo Costo
4. Introducción ¿Qué es lo que no te enseñan en la universidad? El desarrollo de software también tiene que ver con la moda y tendencias: Hace 15 años todo se trataba sobre Programación Orientada a Objetos Hace 10 años todo se trababa sobre UML (Lenguaje de Modelo Unificado) Hace 5 años todo se trataba sobre RUP y CMMI Hace 2 años todo se trataba sobre XP (Extreme Programming) Hoy se trata sobre SCRUM Todos son buenos, pero ninguno es todo lo que necesitas “La industria del software sigue buscando por la bala de plata” …pero nunca realmente la podremos encontrar, por lo tanto debemos trabajar siendo listos
5. ¿Qué significa ser listo? Significa que las cosas deben hacerse tan sencillas como se puedan, pero no simples.
6. ¿Listo e inteligente ? Ser listo no es lo mismo que ser inteligente. Tú puedes ser inteligente sin necesitada de ser listo y… Tú puedes ser muy listo sin necesidad de ser muy inteligente.
10. Caso: Ericsson Axe A pesar que esta empresa no tenía procesos definidos ni herramientas logró crearlos usando : Componentes Casos de Uso Un modelado de lenguaje llamado UML “ El software es desarrollado por procesos no herramientas”
11. Los equipos La mejor manera de realizar un software es en un equipo de 10 personas, que incluya analistas, desarrolladores, etc. Para hacer un software exitoso todos deben de unir sus competencias y capacidades. No dividirse en subgrupos.
12. Proyectos Listos Para demostrar que haz eliminado todos los riesgos críticos es mejor crear un sistema esqueleto. Luego ir añadiendo más capacidades al sistema. Debes pensar en grande y desarrollar en muchos pasos.
13. Diseña tu proyecto para que pueda adaptarse a requerimientos futuros Recuerda que los requerimientos y prioridades cambiarán con el tiempo. Diseña de acuerdo a las necesidades del empresario y juntos creen el mejor sistema al mejor precio.
14. IMPORTANCIA DE LA ARQUITECTURA Comienza construyendo un sistema esqueleto y luego en pasos posteriores añade más funciones. Pero también una arquitectura sin código ejecutable es una alucinación. Limpiar el código en versiones posteriores, pero limpiar el código a gran escala es muy costoso. “Empieza a construir sistemas esqueletos, agrega músculos en pasos posteriores”
15. Pruebas Listas Todos somos Testeadores Cada disciplina debe formar parte de las demás y hacer las pruebas respectivas del sistema. “Lo que tú hagas, no lo haz acabado, hasta que hayas verificado que hiciste lo que querías hacer”