¿Cuál es / son las mejores filosofías de desarrollo de software?

Diría que en el contexto de la actual anarquía de producción (parece que cuanto más grande es la empresa, menos compatibles son con la planificación y con la posibilidad de esperar el retorno de las ganancias; y como corolario, cuanto más delirantes y mal informados sus “expertos” y las partes interesadas son) un enfoque ágil como SCRUM es absolutamente necesario, de lo contrario no lo hará.

Agile y SCRUM nacen de contextos de crisis “Just in Time” (diez años de recesión en Japón), y son realmente geniales para la crisis: vamos con Mike Cohn:

http: //www.mountaingoatsoftware….

En un contexto en el que la planificación en profundidad es posible (cuyo contexto es el tema de otro hilo), un enfoque más rico en ingeniería sería excelente. En esos contextos más equilibrados, vamos con el proceso unificado ágil:

http://www.ambysoft.com/unifiedp…

Felicitaciones a Scott W. Ambler, que es razonable.

No existe una metodología de “bala de plata” que funcione perfectamente en todas las situaciones. El enfoque correcto es ajustar la metodología a la naturaleza del problema en lugar de intentar forzar todos los proyectos a una metodología de “bala de plata”. A veces eso requiere combinar las mejores características de más de una metodología para adaptarse a la situación.

En mi libro utilizo la analogía de un “cocinero” versus un “chef” …

  • Un “cocinero” sabe cómo preparar un número limitado de recetas “por libro”
  • Un “chef” sabe cómo preparar una gama mucho más amplia de recetas más exóticas y sabe cómo combinarlas y / o crear sus propias recetas.

Se requiere un mayor nivel de habilidad para ser un “chef” en lugar de un “cocinero”. Requiere el conocimiento de una gama más amplia de metodologías y un conocimiento más profundo de los principios detrás de las metodologías para saber cómo podría tener sentido combinarlas.

Nos hemos metido en la “locura de la metodología” donde todos intentan crear la “mejor metodología que resolverá cualquier problema que alguien pueda tener”. Esa es una búsqueda inútil, en mi opinión.

Chuck Cobb
Autor de “La guía del administrador de proyectos para dominar Agile”
Echa un vistazo: Capacitación ágil de gestión de proyectos en línea para gerentes de proyectos

No hay respuestas globales a este tipo de preguntas, solo respuestas locales y contextuales.

Esto es cierto bajo cualquier sentido de “global”: ya sea que se refiera a una filosofía general (ya sea ágil, ingeniería de software, artesanía, software como bellas artes), o si se refiere a “mejores prácticas” individuales que se aplican a todas las situaciones posibles donde las personas desarrollan software: integrado, web, juegos, comercial, interno, científico, etc.

Hay algunas regularidades que son más profundas que otras. Impulsado por eventos versus pub-sub es una distinción superficial; la corrección es una preocupación profunda contra la cual las dos puntas principales de ataque, prueba y prueba, han generado una serie de estrategias, algunas de ellas bastante robustas (pruebas automatizadas, sistemas de tipo).

Lo mejor que puede hacer es asegurarse de que su entusiasmo por una respuesta particular o el sabor de la respuesta no sea mayor que la generalidad de la respuesta merece.

More Interesting

¿Qué hace que un desarrollador quiera utilizar la tecnología de Twilio y ser miembro de la comunidad de desarrolladores de la compañía?

¿Qué pasos han tomado los desarrolladores de software en las startups con un "Monorail" (una aplicación grande y monolítica de Ruby on Rails) para dividirlo con éxito en los servicios?

Cómo encontrar el correo electrónico masivo de un desarrollador de software de un país específico

Tengo mi aplicación ejecutándose en 10 tomcats separados y están accediendo a la misma base de datos. ¿Cómo puedo lograr la concurrencia en la modificación de filas, para que no haya dos servidores que puedan modificar la misma fila simultáneamente?

¿Cómo aprenden los desarrolladores las mejores prácticas de creación de software?

¿Por qué la vida es tan difícil ya que no importa cuánto aprenda, todavía no puedo convertirme en un buen desarrollador de software?

Cómo salir de un trabajo de mantenimiento de software heredado

¿Qué piensan los desarrolladores de software de mediana edad si están trabajando en los mismos lenguajes de programación, marcos y pila de software que un nuevo graduado?

¿Para qué lenguaje de programación hay más trabajos de desarrollador o programador junior en la costa este de Estados Unidos?

¿Por qué a menudo se ignoran los probadores de software y no se los trata a la par con los desarrolladores?

¿En qué debería centrarme, ser un desarrollador de software desempleado?

Cómo calcular salarios y precios al iniciar una empresa de desarrollo de software

¿Cuál es la mejor manera de entrevistar a un posible desarrollador de software externo?

¿Cómo se hace el software?

¿Qué tan pronto AI y ML harán que los desarrolladores de software sean obsoletos?