30 Oportunidades de mejora comunes en el Desarrollo de Software
Top 30 oportunidades de mejora en del desarrollo de software
El desarrollo del software se ha crecido grandemente desde los días de los binarios, de COBOL, etc. Todavía me fascina, sin embargo generalmente se cae en las mismas equivocaciones incurridas antes. Debajo están las top 30 en que se incurre dentro del proceso del desarrollo del software. Es asombroso ver que ningunos de éstos tienen nada que ver con el lenguaje en sí.
- No entender las necesidades del usuario. Carencia de información del usuario, o ni siquiera preguntar.
- Subestimar del tamaño del proyecto.
- Apresurar la etapa de planeamiento, o evitar el planeamiento. ¡Codear primero, planear más adelante! ¡MALO!
- ¡No probar suficientemente pronto, a menudo, o nunca! ¡Hazte el hábito!
- El elegir una "nueva y mejorada metodología" al comenzar, en vez de una que ya hayas trabajado en el pasado.
- No usar una metodología.
- Dejar a un desarrollador realizar el diseño del proyecto.
- Tener un equipo aburrido y desmotivado, ¡Tienes que motivar tus desarrolladores! Si no puedes motivar, no incomodes intentado conducirlos. Tu equipo literalmente se dormirá.
- El planear para más adelante. ¡Ni lo piensas!
- ¡No tener bajo configuración el proyecto! Ouch. No es de buenas personas, y no, solo instalarlo no es tenerlo.
- El cambiar las herramientas de desarrollo cuando ya estás dentro del proyecto.
- Permitir arrastramiento excesivo de características. Entre mas ligero de entender un código, sera mejor y todos estarán más felices al final.
- Omitir tareas necesarias para acortar el plan de proyecto. ¿Realmente, cuál es el punto de esto?
- Escasos controles del manejo del desarrollo del proyecto.
- Carencia de soporte de alto nivel del negocio.
- Agregar gente al final del proyecto "para acelerar las cosas". Retardarás solamente el desarrollo.
- No hacer ninguna prueba unitaria. Debes hacerlo, usa Visual Studio Team Foundation Server o instala alguna herramienta, automatizando las pruebas cada noche.
- Desarrolladores estresados. Si has caído en tu manejo del proyecto, en uno o más de estos issues en el desarrollo, tendrás un montón de programadores tensos con los cuales tratar!
- Carencia de una gestión de errores.
- "Echar la toalla" por un issue. Éstos suceden mucho durante el proceso de desarrollo del software. *Aguas*.
- Errores tipográficos. Usa términos explícitos por favor. Sobre todo si el lenguaje que usas no es "option explicit".
- No entender o saber el hardware en el que el software será instalado. Por ejemplo "Ahhhh era para Mac <_<".>
- Ningunas usar convenciones de nombramiento, de estilo o de código. No importa lo que utilizas, mientras seas congruente con el resto del equipo, y por lo menos contigo mismo.
- Usar variables globales por todas partes. Éstas no son tus amigas y consumen memoria como nada que hayas visto antes.
- No pedir ayuda durante el proceso del desarrollo del software. Si estas atorado, ¡no luches con éso por horas! ¡Pide ayuda!
- No comentar tu código, o comentarlo escuetamente.
- Almacenar todo el conocimiento o la información del negocio uno mismo. ¿Piensas que eres más valioso esta manera? Realmente no. Puedes salir del desarrollo del proyecto, y posiblemente de la compañía. Puede ser que quieras ir haciendo tu letrero de "Will code for food!".
- Realizar las operaciones de la base de datos en la capa de aplicacion, en vez de la capa de base de datos. No sólo es que se use el procesador en el cliente en vez del servidor, pones a tu base de datos en riesgo de integridad de datos, y pudieras tener datos erroneos! ¡No todo es bueno!
- ¡No validar tus datos! Upps. Sí, no asumamos que todos los datos son perfectos.
- No hacer ninguna prueba de carga. Esto es, por ejemplo suponer que debe de funcionar en 1.000 máquinas por Citrix. Esto no debe ser un issue.
¡El desarrollo del software ya es suficientemente difícil! Hazlo más fácil asegurándote no incurrir en ninguno de estas equivocaciones. ¡Aunque parece una lista simple de cosas que no hay que hacer, puede hacer tu vida más fácil!
Tomado de http://www.realsoftwaredevelopment.com/2006/10/software_develo.html
Comentarios