Lo más complejo sobre el desarrollo de software realmente no tiene nada que ver con el software, y es esto: tratar con las personas.
Con suficiente tiempo y recursos , se puede desarrollar cualquier cosa, y quiero decir cualquier cosa . Ni siquiera es tan difícil.
Sin embargo, cuando incluyes a otras personas en la mezcla que tienen interés en tu proyecto, las cosas se complican. Es muy difícil cumplir con las expectativas de las partes interesadas sobre el software, por varias razones:
- ¿Realmente crees que el discurso de "las compañías de software están predicando" hay muy pocos ingenieros de software calificados disponibles en los Estados Unidos? ¿Es este discurso de 'no tener suficientes ingenieros calificados' un farol para lograr que el gobierno dé más H1B?
- Cómo encontrar el correo electrónico masivo de un desarrollador de software de un país específico
- ¿Cuáles son los desafíos técnicos de construir una plataforma de mensajería en tiempo real?
- Como desarrollador de software de nivel medio que busca crecer, ¿cómo puedo mejorar mi capacidad de describir visualmente los diseños y procesos del sistema (diagramación)?
- Tengo menos de 18 años y quiero una cuenta de desarrollador de Apple. ¿Mis padres tendrían que inscribirse en el programa para desarrolladores de Apple y luego publicar mis aplicaciones?
- Los requisitos no están claramente definidos.
- Los requisitos están definidos por personas que no entienden el software.
- Los requisitos están claramente definidos, pero luego se modifican en medio del desarrollo.
- Los requisitos no están definidos en absoluto.
- Los requisitos están definidos, pero no se comunican correctamente.
- La gerencia te obliga a trabajar en más proyectos de los que tienes tiempo.
- La administración te obliga a usar un cierto conjunto de herramientas, incluso si sabes que no son las adecuadas para el trabajo.
Todas estas son razones por las cuales el software no resulta como la gente quiere. Y todos son muy comunes. Eso es lo que hace que el desarrollo de software sea complejo. Personas.