<- 01 Metodologia desarrollo de software pregunta profesor ¡Buen día estimados alumnos! De acuerdo al tema de esta semana 2 les pido por favor que desde su punto de vista complementen cada una de las preguntas que incluyo en este foro con el fin de que podamos entablar un dialogo a través de este medio, respetando los puntos de vista de cada uno de uno de nosotros y llegando a una posible conclusión general al final de esta semana. Fuente de consulta: dmds-sem2 material consulta Las preguntas que se establecen son las siguientes: 1.- ¿Cuales son las metodologías de programación mas importantes que existen en la actualidad? justifique su respuesta Una metodología de desarrollo de software se refiere a "un conjunto de técnicas y métodos organizativos que se aplican para diseñar soluciones de software informático." (Santander Universidades, 2023), en la actualidad las metodologías que han ganado importancia son las llamadas metodologías ágiles, pero en la en la actualidad, todas estas metodologías tienen sus propias características, ventajas y desventajas. Listando entonces las metodologías que son consideradas las más importantes se tienen: Metodología ágil que se enfocan en la entrega rápida y continua de software. Algunas que se pueden nombrar sería: Scrum, XP (Programación extrema), Kanban, Crystal Metodología de Cascada, es una metodología secuencial que se utiliza cuando los requisitos del sistema son bien conocidos y no se esperan grandes cambios durante el desarrollo, que sugiere un enfoque sistemático y secuencial, "que comienza con la especificación de los requerimientos por parte del cliente y avanza a través de planeación, modelado, construcción y despliegue" (Pressman, 2010, p. 34) Metodología DevOps orientada a la colaboración y coordinación entre el personal de desarrollo y el de operaciones, con el objetivo de mejorar la calidad y la velocidad de las entregas de software. (Solera, 2022) Metodología Lean que se basa en un enfoque iterativo e incremental para el desarrollo de software. Se divide en ciclos cortos de desarrollo y entrega. 2.- ¿Cual es la fase mas importante dentro de las metodologías de desarrollo de software que existen? No existe una fase que sea más importante que otra, debido a que cada metodología maneja sus fases correspondientes y cada una de estas es importante para su correcta implementación. Las fases que se suelen incluir en las diferentes metodologías son: Planeación Análisis Diseño Implementación Pruebas Mantenimiento Dependiendo de la empresa u organización deberán contemplar la fase que resulte más útil o reforzar la fase que presente más retrasos regularmente. Siendo esta la etapa más importante para ese empresa. 3.- Bajo su experiencia que opinión tiene de las metodologías de desarrollo de software, justifique su respuesta. Sobre las metodologías tradicionales como Modelo en Cascada, considero que son demasiado rígidas y secuenciales para muchos proyectos ágiles de hoy en día. Tienen el riesgo de entregar software que no cumple las necesidades actuales del usuario. Sobre todo en mi experiencia en SEMARNAT, donde los usuarios al no buscar un software que busque ganancia o tenga un riesgo de perdida de capital (el recurso es público), los objetivos no son claros y los cambios a los proyectos son muy constantes. Así las metodologías ágiles como Scrum y Kanban me parecen más eficientes, flexibles y centradas en el cliente y que han permitido en SEMARNAT realizar entregas de valor y la adaptación a cambios. Pero se tiene que tener en cuenta que al momento de la implementación, considero que no existe metodología que se aplique al 100%, si no, que a veces se busca adaptarla a la necesidad de la organización. REFERENCIAS Metodologías de desarrollo de software: ¿qué son?. (2023, Julio 31). Santander Universidades. https://www.becas-santander.com/es/blog/metodologias-desarrollosoftware.html Pressman, R., (2010). Ingeniería del software, un enfoque práctico. McGrawHill. Séptima Edición. México. Solera, S. (2022, April 27). Las mejores metodologías para un correcto desarrollo de software. Occamagenciadigital.com. https://www.occamagenciadigital.com/blog/las-mejores-metodologias-para-uncorrecto-desarrollo-de-software#post-index-3 Retroalimentación Retroalimentación 1 1.- ¿Cuáles son las metodologías de programación mas importantes que existen en la actualidad? justifique su respuesta Considero que cada metodología de desarrollo es importante, es cuestión de gustos y adaptación con base a las necesidades y requerimientos de cada organización o desarrollador, sin embargo, en la actualidad hay algunas que predominan más y que son comúnmente las que más se solicitan en la bolsa de trabajo, que son, la metodología agile, cascada, devOps, DRA, prototipado, cada una de ellas con sus derivadas. El objetivo principal de cada una de ellas, es organizar la forma de trabajo y el desarrollo de software, contando con un control y un mismo camino por cada parte del equipo de trabajo, por lo que aprender cada una de ellas sería de gran importancia para aplicarlas en el proyecto que necesitemos implementar. Hola buen día Edgar, He leído la participación que has realizado en foro la cual esta muy completa la cual pudiera complementar y enriquecer con los siguientes comentarios. Coincido con el estudiante en que no existe una metodología de desarrollo de software que sea la mejor o la más correcta en todos los casos, debido a que cada proyecto y organización tiene necesidades y contextos únicos que requieren adaptar una metodología específica o crear una. En ese sentido, estoy de acuerdo en que es cuestión de análisis y elección consciente de la metodología que mejor se adapte. Con respecto a las otras dos preguntas también coincidimos en lo respondido, debido a que la no existe una fase más importante y que son necesarias las metodologías de desarrollo de software para poder finalizar con calidad un producto. Y con respecto a la experiencia de trabajo, como mencionas, existe una diferencia entre aplicar o no aplicar alguna metodología. Buen trabajo, saludos! Fuentes de consultas Metodologías de desarrollo de software: ¿qué son?. (2023, Julio 31). Santander Universidades. https://www.becas-santander.com/es/blog/metodologias-desarrollosoftware.html Pressman, R., (2010). Ingeniería del software, un enfoque práctico. McGrawHill. Séptima Edición. México. Solera, S. (2022, April 27). Las mejores metodologías para un correcto desarrollo de software. Occamagenciadigital.com. https://www.occamagenciadigital.com/blog/las-mejoresmetodologias-para-un-correcto-desarrollo-de-software#post-index-3 Retroalimentación 2 1.- ¿Cuáles son las metodologías de programación más importantes que existen en la actualidad? justifique su respuesta En la actualidad considero que todas las metodologías en programación son importantes, ya que son herramientas que nos permiten mantener el orden el la vida del software, si bien desde hace algunos años las herramientas han sido muy útiles, también es bien sabido que estas van mejorando con el paso de los años al ver nuevas necesidades y áreas de oportunidad, entre las metodologías que tenemos están: Modelo de la cascada Modelos de proceso incremental Modelos de proceso evolutivo Prototipos Modelo espiral Modelos concurrentes Incremental RAR SCRUM KANBAN Cada una de estas metodologías tiene puntos a favor y en contra, desde una reducción considerable en los tiempos, hasta la comunicación que se tiene entre los equipos, claro está que las metodologías más recientes se centran en ser más productivos, reducir los tiempos, pero también no debemos olvidar que darle el tiempo suficiente para analizar las circunstancias que se presenten son puntos muy favorables que normalmente nos reducen los tiempos posteriores.El hecho de usar una u otra, radica en las necesidades del negocio y de lo que se establezca en un inicio, si bien puede haber metodologías populares en el momento como tal vez lo podría ser SCRUM, no significa que sea la mejor y la que mejor se adapte. RETROALIMENTACIÓN Hola buen día Yessica, he leído la participación que has realizado en foro la cual esta muy completa la cual pudiera complementar y enriquecer con los siguientes comentarios. Respecto a las metodologías más importantes, efectivamente como mencionas todas son importantes y que también estas han ido evolucionando, donde considero también debido al avance tecnológico y herramientas de colaboración en tiempo real. Pero en mi experiencia considero que aquellas que han tomado más relevancia durante los últimos años, son las mencionadas metodologías ágiles y aquella que ha tomado renombre y que solicitan conocer en algunas empresas sería SCRUM. Sobre las metodologías agiles en algunas páginas consultas la ponen arriba: https://es.linkedin.com/pulse/las-5-mejores-metodolog%C3%ADas-de-desarrollosoftware-sus-ventajashttps://www.occamagenciadigital.com/blog/las-mejores-metodologias-para-uncorrecto-desarrollo-de-software Aunque a pesar de que por tendencia ponen al "Agile", aunque se tiene que considerar que siempre se contemplan las metodologías que has mencionado en tu aportación en el foro. En general de acuerdo a los comentarios en el foro coincidimos en la importancia de aplicar las metodologías de desarrollo de software.