Documentos de Académico
Documentos de Profesional
Documentos de Cultura
NACIONAL
ESCUELA SUPERIOR DE INGENIERÍA
MECÁNICA Y ELÉCTRICA UNIDAD
CULHUACÁN
INGENIERÍA DE SOFTWARE
ACTIVIDAD INDIVIDUAL:
“TIPOS DE METODOLOGÍAS”
GRUPO: 6CM25
ALUMNO: Cruz Ponce Alexis Anadh
La Metodología es entendida como un concepto global referido al estudio del Método (o de los
métodos) desde un proceso sistemático en el cual se adquieren modos y formas de conocimiento;
el Método es considerado como el camino para obtener un fin de manera ordenada, desde un
conjunto de reglas.
Una metodología es un conjunto integrado de técnicas y métodos que permite abordar de forma
homogénea y abierta cada una de las actividades del ciclo de vida de un proyecto de desarrollo.
Es un proceso de software detallado y completo. (Autores varios).
Las metodologías se basan en una combinación de los modelos de proceso genéricos. Definen
artefactos, roles y actividades, junto con prácticas y técnicas recomendadas.
La metodología para el desarrollo de software es un modo sistemático de realizar, gestionar y
administrar un proyecto para llevarlo a cabo con altas posibilidades de éxito. Una metodología
para el desarrollo de software comprende los procesos a seguir sistemáticamente para idear,
implementar y mantener un producto software desde que surge la necesidad del producto hasta
que cumplimos el objetivo por el cual fue creado.
Clasificación
Metodologías tradicionales
Las metodologías ágiles son modelos de gestión de proyectos con origen en TI y creados en base
a insatisfacción de varios desarrolladores por la falta de fluidez de los modelos tradiciones que tal
como acabamos de ver, se caracterizan por ser rígidas y se recogieron en el Manifiesto para el
Desarrollo Ágil de Software (2001) estableció los valores fundamentales para el enfoque Ágil.
Hoy en día, la metodología ágil viene con diferentes métodos y marcos para la gestión de
proyectos.
Por lo general, las metodologías ágiles no son tan detalladas como la metodología tradicional.
Esto apoya la idea de "individuos e interacción sobre procesos y herramientas" contenida en el
manifiesto Agile. Si bien puede haber pautas generales en el enfoque ágil, no tiene los detalles
proporcionados con el enfoque tradicional. Habrá menos plantillas y pasos de procedimiento
menos específicos en la metodología Agile.
Los principios ágiles enfatizan un producto que funciona sobre la documentación. Debido a esto,
los enfoques ágiles cambian más rápidamente a la ejecución y dedican menos tiempo a la
planificación. No se incluyen planes complejos de gestión de proyectos, documentos detallados
de requisitos o documentación de roles y responsabilidades, que son documentos de planificación
clave de una metodología tradicional.
1. Dentro de las Metodologías Ágiles
Metodología Kanban
Se enfoca en la mejora del flujo de trabajo y en la entrega de software de alta calidad. Nació en
la industria automotriz japonesa en los años cuarenta y su nombre deriva de la palabra ‘tablero’,
que se utiliza para visualizar el flujo de trabajo.
Una de las principales características de la metodología Kanban es la limitación del trabajo en
progreso (WIP). Esto significa que no se puede comenzar nuevos trabajos hasta que se complete
el trabajo actual, lo que ayuda a evitar la sobrecarga y mejorar el flujo de trabajo. Si estás
buscando mejorar tu flujo de trabajo, la metodología Kanban puede ser la solución perfecta para
ti.
Ventajas:
1. Medición del rendimiento. Con el método Kanban podemos medir el rendimiento de los
trabajadores o equipos, así como detectar cualquier problema que se genere durante el
transcurso de la tarea.
2. Organización del flujo de trabajo. El flujo de trabajo queda claro en cada fase del
proyecto gracias a la organización de las tareas por estados y de la duración estimada que
se indica para cada una de ellas. Por ello, es posible prever una cantidad de trabajo
adecuada y asequible para el cumplimiento
3. Cumplir los tiempos de entrega. Ligado al segundo punto, gracias a la organización del
flujo de trabajo podremos medir y cumplir con los tiempos de entrega demandados por el
cliente.
4. Distribución de tareas. Poder ver las tareas que se han hecho, las que se están haciendo y
las que quedan por hacer ayuda a una correcta distribución: todo el equipo puede ver
cómo va el transcurso del trabajo y saber cuál es el siguiente paso.
5. Mejorar la calidad del producto. Con buena organización y con un buen control de los
tiempos, se podrán detectar posibles problemas y, por consecuencia, encontrar la solución.
6. Evitar la acumulación de trabajo. Al previsualizar todas las tareas previstas y el tiempo
estimado para su cumplimiento, el equipo podrá organizarse y asignar cada trabajo sin
sobrecargar.
Desventajas:
1. Coste. Si se usa este método para unidades muy grandes, el almacenamiento del sistema
de Kanban será muy costoso.
2. Es limitado. Al limitar el número de tareas, cuando se trata de trabajos inmensos no es
posible aplicar esta metodología ya que muchos de los trabajadores quedarían
desocupados.
3. Kanban no es óptimo para todo tipo de proyectos. Kanban asume sistemas de producción
repetitivos, es por eso que las variaciones o los eventos inesperados pueden afectar
negativamente al resultado final.
4. No permite anticiparse a grandes aumentos de la demanda. Con Kanban resulta difícil
manejar cambios de gestión provocados por la acumulación de nuevas tareas, lo que
podría provocar un desbordamiento de trabajo.
METODOLOGÍA SCRUM
Es una metodología de desarrollo de software orientada a la entrega de productos de alta calidad
a través de un proceso iterativo e incremental. En Scrum, un equipo de desarrollo se divide en
equipos de trabajo autónomos que se encargan de desarrollar una parte del producto. Cada equipo
se reúne regularmente para revisar el progreso y planificar el trabajo futuro.
El ciclo de vida de productos Scrum consta de cinco fases: product backlog (una lista de todos los
requisitos del producto que se va a desarrollar), sprint backlog (una lista de tareas a realizar
durante el sprint), desarrollo (se lleva a cabo el trabajo real de desarrollo del producto), prueba
(se comprueba el producto para asegurarnos de que cumple con todos los requisitos) e
implementación (se pone el producto en funcionamiento y se entrega al cliente).
Ventajas:
1. Gestión de las expectativas del usuario: Cada usuario puede participar en cada una de las
etapas del proceso y proponer soluciones. El proceso en su conjunto está pensado para un
tipo de evaluación conjunta, ya que en todas las etapas del proyecto los usuarios pueden
aportar ideas de mejora.
2. Resultados anticipados: Una de las ventajas de trabajar con Scrum es que cada etapa del
proceso arroja resultados parciales, por lo que no es necesario esperar al final para obtener
resultados del proyecto. Al cierre de cada Sprint o fase de trabajo, ya pueden visualizarse
ciertos logros. Esto permite disminuir el tiempo de los períodos de prueba y concluir el
trabajo más rápido.
3. Flexibilidad y adaptación a los contextos: Scrum puede adaptarse a cualquier área o sector
de la gestión, es decir, no es una técnica exclusiva de ninguna disciplina.
4. Gestión sistemática de riesgos: Trabajar con Scrum permite que los problemas que
pueden contrarrestar los progresos un proyecto pueden ser gestionados en el mismo
momento de su aparición. Es decir, la intervención de los equipos de trabajo puede ser
inmediata cuando surjan conflictos o dificultades en el transcurso del proyecto.
5. Sistema jerárquico de actividades: Plantear este sistema de actividades a ejecutar durante
el ciclo de vida del proyecto, permite que los colaboradores puedan darle prioridad a
aquello que se requiera con mayor urgencia frente a aquellas tareas que no son las más
demandantes.
6. Fechas realistas de entregas del proyecto: En Scrum, al trabajar con iteraciones, se
segmenta el objetivo a entregar lo que hace que los márgenes de error sean menores como
así también, que las entregas finales se ajusten a lo que fue planificado. Así, los Sprint o
iteraciones hacen más fácil de gestionar las tareas y un mejor manejo de los tiempos.
7. Feedbacks en el equipo: El trabajo de Scrum permite que el equipo establezca reuniones
diarias donde pueden fijar qué se hizo, qué se hará y qué impedimentos que hay para
realizarlo, pudiendo intercambiar opiniones e ideas acerca del proyecto.
8. Visión global: En Scrum, contar con una visión holística e integral del proyecto mientras
está en curso es posible, además de que esto fortalece el equipo de trabajo y sus
involucrados.
Desventajas:
1. Se aplica a equipos reducidos: Scrum es exitosa cuando se trabaja con grupos de pocos
colaboradores. En una empresa grande, por ejemplo, se debe sectorizar o dividir en
grupos que cuenten con objetivos concretos. De lo contrario, el efecto de la técnica no
será el mismo.
2. Requiere una exhaustiva definición de las tareas y sus plazos: Scrum funciona
correctamente cuando tanto las tareas como el tiempo en que se ejecutará cada una se
encuentran definidos. La esencia de esta metodología reside en la división del trabajo de
cada etapa y de sus tareas específicas.
3. Requiere de perfiles senior en su aplicación: Quienes aplican Scrum cuentan con una alta
cualificación, por lo que no es una modalidad de gestión propia de grupos junior o que
estén en formación. Podemos decir que el éxito de Scrum radica en la experiencia
profesional de equipos que cuentan con años de experiencia y se encuentran capacitados
para estas exigencias. El éxito de un proyecto que trabaje con metodología Scrum
dependerá en gran parte del liderazgo del Scrum Master.
4. Difícil escalabilidad: Aplicar un enfoque Scrum para grandes proyectos se establece un
reto ya que puede fallar la coordinación precisa, por lo que no garantiza que sea escalable
a largo plazo.
5. Puede necesitar de transformaciones dentro de la organización: En ocasiones, para
trabajar con Scrum la empresa debe pasar por ciertas transformaciones organizativas en
sus departamentos y áreas. Es la empresa quien debe gestionar y organizarse para que las
colaboraciones sean exitosas.
6. No se integra fácilmente con enfoque clásico de gestión de proyectos: El enfoque de
Scrum no suele ser el adecuado para proyectos que requieren previsibilidad y un plan bien
definido.
METODOLOGÍA DE CASCADA
Es una forma de desarrollo de software en la que se siguen una serie de pasos estrictos y en
orden. Esta metodología es muy detallada y deja poco margen de maniobra para el equipo de
desarrollo. A menudo, se usa en proyectos grandes y complejos en los que es importante que
todos los pasos se cumplan de forma estricta.
Se mantiene a lo largo de todo un ciclo de vida de un proyecto de software, y se caracteriza
porque suele emplearse cuando los requisitos del sistema son bien conocidos y no se esperan
grandes cambios durante el desarrollo. Aunque existen enfoques en cascada para varios tipos de
proyectos de software, esta metodología se adapta mejor a los proyectos estructurados, que se
caracterizan por tener una planificación detallada, un enfoque en etapas, un análisis y diseño
exhaustivos, un control de calidad y una fase de implementación en la que se usa un lenguaje de
programación muy estructurado.
Ventajas:
1. Una estructura sencilla gracias a unas fases de proyecto claramente diferenciadas.
2. Buena documentación del proceso de desarrollo a través de unos hitos bien definidos.
3. Los costes y la carga de trabajo se pueden estimar al comenzar el proyecto.
4. Aquellos proyectos que se estructuran en base al modelo en cascada se pueden representar
cronológicamente de forma sencilla.
Desventajas:
1. Por norma general, los proyectos más complejos o de varios niveles no permiten su
división en fases de proyecto claramente diferenciadas.
2. Poco margen para realizar ajustes a lo largo del proyecto debido a un cambio en las
exigencias.
3. El usuario final no se integra en el proceso de producción hasta que no termina la
programación.
4. En ocasiones, los fallos solo se detectan una vez finalizado el proceso de desarrollo.
Ventajas:
Se utiliza para poder aprender de los errores e iniciar nuevamente el ciclo de desarrollo.
Utiliza información disponible acerca de todos los cambios para poder mejorar el
comportamiento del Software.
Promulga la colaboración y la interacción de personas.
Apunta hacia el Rapid Application Development (RAD), el cual enfatiza velocidad de
desarrollo para crear un producto de alta calidad, bajo mantenimiento involucrando al
usuario lo más posible.
Desventajas:
Los errores y cambios que no son detectados con anterioridad afectan la calidad del
producto y su costo total.
Ya que esta es una metodología ágil, no permite realizar procesos que son requeridos en
las metodologías tradicionales.
MÉTODO DE DESARROLLO DE SISTEMAS DINÁMICOS “DSDM”
El resultado de todo esto es que los métodos ágiles cambian significativamente algunos de los
énfasis de los métodos ingenieriles. La diferencia inmediata es que son menos orientados al
documento, exigiendo una cantidad más pequeña de documentación para una tarea dada. De
muchas maneras son más bien orientados al código: siguiendo un camino que dice que la parte
importante de la documentación es el código fuente.
Características
Participación del usuario
Desarrollo iterativo y creciente
Frecuencia de entrega mejorada
Pruebas integradas en cada fase
La aceptación de los productos entregados depende directamente del cumplimiento de los
requisitos.
Funcionamiento
El marco DSDM consta de tres fases sucesivas, a saber, el pre-proyecto, el ciclo de vida del
proyecto y las fases posteriores a los proyectos. La fase del proyecto de DSDM es el más
elaborado de las tres fases. La fase del proyecto del ciclo de vida consiste en 5 etapas que forman
un método iterativo, paso a paso en el desarrollo de un SI. Las tres fases y etapas
correspondientes se explican ampliamente a continuación.
1. Fase 1 - El pre-proyecto
Representa 5 etapas de un proyecto que tendrá que pasar por la creación de un SI. Las dos
primeras etapas son, el estudio de viabilidad y estudio de negocios son las fases secuenciales que
se complementan el uno al otro. Después de estas fases, el sistema se desarrolla iterativo e
incremental en la iteración del modelo funcional, diseño y construcción de iteración y etapas de
ejecución.
Los cinco pasos de la DSDM proyecto del ciclo de vida
La fase posterior al proyecto asegura que el sistema funcione de manera eficaz y eficiente. Esto
se realiza por el mantenimiento, mejoras y correcciones de acuerdo a los principios de DSDM. El
mantenimiento puede ser visto como desarrollo continuo basado en el carácter iterativo e
incremental de DSDM. En lugar de terminar el proyecto en un ciclo por lo general el proyecto
puede volver a las fases o etapas previas para que el paso anterior y los productos a entregar se
puedan refinar.
Roles
Hay algunas funciones introducidas en el entorno de DSDM. Es importante que los miembros del
proyecto deben ser designados para diferentes funciones antes de comenzar a ejecutar el
proyecto. Cada función tiene su propia responsabilidad. Las funciones son:
Ventajas
La calidad del producto es mejorada a través de la participación de los usuarios a lo largo
del ciclo de vida del proyecto y la naturaleza iterativa del desarrollo.
DSDM asegura desarrollos rápidos.
Reduce los costos de proyectos a través de las ventajas mencionadas anteriormente
Permite realizar cambios de forma fácil.
Permite la reutilización de aplicación a través de los módulos existentes.
Desventajas
Se necesita una alta participación de los usuarios en el desarrollo, para evitar que los
desarrolladores asuman criterios que no son ciertos.
No es una metodología de desarrollo común. El proceso es un tanto difícil de comprender
METODOLOGÍA FDD (FEATURE DRIVEN DEVELOPMENT / DESARROLLO
BASADO EN FUNCIONES)
Desventajas:
Falta de documentación del diseño. El código no puede tomarse como una
documentación. En sistemas de tamaño grande se necesitar leer los cientos o miles de
páginas del listado de código fuente.
Problemas derivados de la comunicación oral. Este tipo de comunicación resulta difícil
de preservar cuando pasa el tiempo y está sujeta a muchas ambigüedades.
Fuerte dependencia de las personas. Como se evita en lo posible la documentación y los
diseños convencionales, los proyectos ágiles dependen críticamente de las personas.
Falta de reusabilidad. La falta de documentación hacen difícil que pueda reutilizarse el
código ágil.
DIAGRAMA CAUSA - EFECTO O DE ISHIKAWA (ESPINA DE PESCADO)
Ventajas:
Desventajas:
Su sencillez puede dificultar la representación de la naturaleza interdependiente de
problemas y causas en situaciones más complejas.
Requiere un espacio suficientemente grande para poder desarrollar un diagrama completo
y poder ahondar en las relaciones causa-efecto de la manera más deseable.
Se realizará desde 0. En una pagina para realizar mapas sinópticos
BIBLIOGRAFÍAS:
1. nForero, A. G. (2007). Metodología, método y propuestas metodológicas en
Trabajo Social. Revista Tendencia & Retos No 12: 119-135.
https://www.ts.ucr.ac.cr/binarios/tendencias/rev-co-tendencias-12-08.pdf