¿Por qué es importante elegir el SDLC correcto al desarrollar un sistema?

Primero, es más que simplemente “elegir el SDLC correcto”. Es una cuestión más amplia de seleccionar la metodología correcta que podría ser “ágil” (adaptativa) o lo que muchas personas llaman libremente “cascada” (impulsada por el plan). La elección de una metodología debe ser apropiada para la naturaleza del proyecto y uno de los principales impulsores es el nivel de incertidumbre. Por ejemplo, si elige un modelo fuertemente planificado para un proyecto con un alto nivel de incertidumbre, probablemente será muy engorroso y no proporcionará el nivel de adaptabilidad que se necesita para adaptarse a la situación. Imagine tratar de desarrollar un plan detallado para “encontrar una cura para el cáncer” como ejemplo.

Los SDLC se asocian típicamente con metodologías basadas en planes que tienen fases discretas. En esa situación, un valor muy importante de un SDLC es que proporciona una “hoja de ruta” para que todos comprendan en qué fase se encuentra el proyecto. Elegir un SDLC que no sea apropiado para un proyecto impulsado por un plan probablemente introducirá innecesarios La burocracia en un extremo o no proporciona un nivel suficiente de gestión y control en el otro extremo.

Chuck Cobb
Autor de “La guía del administrador de proyectos para dominar Agile”
Echa un vistazo: Agile Project Management Academy (Agile Project Management Academy)

La elección del SDLC ágil frente al plan a menudo está limitada por ciertas verdades inconvenientes. Es importante considerar esto para tomar una decisión informada de SDLC, especialmente con entornos empresariales heredados que han experimentado un crecimiento incontrolado. Por ejemplo, en una organización global con cientos de aplicaciones monolíticas altamente interconectadas, puede ser muy difícil aplicar Agile. La noción de sprints de 2–4 semanas cada finalización con un incremento de producto transportable es difícil de comprender con un ecosistema tan difícil de manejar. Ahí es donde un enfoque basado en un plan es la mejor opción. En ecosistemas más pequeños que abarcan algunas zonas horarias, especialmente en aplicaciones monolíticas ausentes, Agile brilla. Eso es nirvana, pero con demasiada frecuencia no es realidad debido a las verdades inconvenientes.

More Interesting

¿Hay alguna forma de programar un documento de Google Drive para actualizar un documento de unidad existente y no romper el enlace?

¿Cuál es el mejor software de seguridad todo en uno?

¿Cuál es la mentalidad que todo desarrollador debe tener al desarrollar nuevas funciones y mantener las antiguas?

¿Deben todos los estudiantes de ingeniería aprender programación independientemente de su rama?

¿Lleva lo que aprendemos en la informática de B.Tech al trabajo?

¿Cómo pasar de ser programador a ser desarrollador? ¿Cómo puedo usar mi experiencia actual (proyectos personales o pequeñas tareas independientes en una variedad de idiomas y aplicaciones) para pasar a este rol?

¿Por qué crear más lenguajes de programación? ¿Cuáles son los lenguajes de programación más interesantes creados recientemente y cuáles son las ideas fundamentales que requieren su creación, en lugar de expresar las ideas como una parte nueva de un lenguaje existente?

¿Cuál es la diferencia entre refactoring y reingeniería?

¿Por qué podría uno elegir Java para un nuevo proyecto?

¿Es posible obtener un trabajo de ingeniería de software en Google sin un título de CS? ¿Cómo me puedo preparar?

Si he escrito una tarea pequeña y repetida (ligeramente diferente), ¿debería hacer que sea una función si requeriría 8 parámetros o repetir el código?

Cómo prepararse para un hackathon

¿Cuál podría ser el nombre de una empresa de desarrollo de software que se ocupa de desarrollo web, móvil y de juegos? ¿Solo una palabra?

¿Qué es un mejor software de protección, Malwarebytes o Avast?

¿Qué se entiende por implementación en etapas (producción / desarrollo)?