miércoles, julio 16, 2008

Development 2.0

La nueva generación de aplicaciones Web 2.0 nos vienen acostumbrando a que dichas aplicaciones están continuamente en un estado "beta". Esto obviamente ha generado un nuevo paradigma de desarrollo donde las actualizaciones del software son constantes y donde muchas veces se realizan varias veces durante un mismo día y donde hay un ida y vuelta constante con los usuarios de la aplicación los cuales ademá de reportar bugs generan nuevas ideas que permiten mejorar la aplicación. Es nuevo paradigma contrasta bastante con el método de desarrollo basado en el modelo waterfall (cascada) que nos enseñaron en la universidad o en cualquier curso de desarrollo de software tradicional. Donde todo es mucho más estructurado y secuencial.

Me llamó la atención este artículo de InfoWorld donde básicamente llaman a esta nuevo paradigma de desarrollo "Development 2.0" y donde resalta las cosas que podemos aprender para aplicarlas al desarrollo tradicional de software. Enumeran cinco puntos de este nuevo paradigma de desarrollo de los cuales podemos vernos beneficiados, los trascribo a continuación y resumo lo que entendí de cada punto:
  1. Break the barrier between developers and end-users and involve users in quality assurance processes
    1. Las quejas ó elogios directos de los usuarios de la aplicación son mucho mas efectivas en la motivación para que los desarrolladores mejoren la aplicación.
  2. Keep it simple
    1. Se podría decir que este es uno de los puntos donde la Web 2.0 ha puesto su foco y obviamente para que nuestras aplicaciones sean usables debemos hacerlas lo más simple posibles. Muchas veces menos es más.
  3. Stick to the script
    1. En general las compañías Web 2.0 tienden a usar lenguajes dinámicos como Ruby, PHP, Python y Perl. En este punto prefiero usar GeneXus X y luego generar mi aplicación en Ruby, Java o .NET según sea el caso :)
  4. Release early and often
    1. El hecho de estar liberando constantemente nuevas actualizaciones hace que sea más fácil ir depurando la aplicación en base al feedback que dan los usuarios. Además se va creciendo incrementalmente agregando nuevas funcionalidades y poniendolas disponibles mucho más rápido.
  5. Let users, not developers, determine new features
    1. Sin duda que si lograramos hacer todo lo que los usuarios nos piden que hagan nuestras aplicaciones tendríamos a casi todos contentos.
Otro dato interesante que surge del artículo es la referencia a una encuesta que se le hizo a desarrolladores donde el 57 % respondió que las habilidades de análisis y resolución de problemas serán requerimientos claves para los futuros desarrolladores, un 18 % dice que será necesario trabajar con comunidades online y un 24 % dice que la generación de código es una de las claves en los desarrollos futuros.

Este último dato no hace más que reafirmar que el mundo IT esta reconociendo que el paradigma de la programación "manual" no escala y es necesario apuntar a métodos que ofrezcan una productividad mayor. Si buscan productividad los invito a conocer GeneXus X
Blogged with the Flock Browser

No hay comentarios.: