Está en la página 1de 9

METODOLIGIAS DE DESARROLLO DE SOFTWARE

Yilliam Ximena Romero Bustos.

Servicio nacional de aprendizaje

Análisis y desarrollo de software

Villavicencio

23 de octubre de 2023
EVIDENCIA A SOLUCIONAR

Actividad de aprendizaje: GA1-220501093-AA1 estructurar el plan de


actividades de análisis a partir de las características del proyecto y el modelo
de desarrollo seleccionado.

En esta actividad de aprendizaje se abordan las técnicas de validación de


requisitos: revisiones, los prototipos y los casos de prueba. Duración: 96
horas.

Materiales de formación: Para el desarrollo de esta actividad es importante


la lectura y análisis del material de formación: “Metodologías de desarrollo de
software”.

Evidencias:
A continuación, se describen las acciones y las correspondientes evidencias
que conforman la actividad de aprendizaje:

Evidencia conocimiento: GA1-220501093-AA1-EV01 taller sobre


metodologías de desarrollo de software

Las metodologías de desarrollo son indispensables en los grupos de trabajo


y organizaciones relacionadas con la industria de software, partiendo de la
información abordada en este componente desarrollar el taller sobre
metodologías de desarrollo de software propuesto.

Elementos para tener en cuenta en el taller:

• Seleccionar diferentes fuentes de información relacionadas con las


metodologías de desarrollo de software.
• Detallar las características que identifican a los marcos de trabajo
tradicionales y los marcos de trabajo ágiles.
• Utilizar imágenes de construcción propia o que tengan los derechos
respectivos de uso.

Lineamientos para la entrega del producto: Producto para entregar: •

• Documento con el desarrollo del taller propuesto.


• Formato: PDF o Word.
• Extensión: libre.

Para hacer el envío del producto remítase al área de la actividad


correspondiente y acceda al espacio para el envío de la evidencia: taller
sobre metodologías de desarrollo de software. GA1-220501093AA1-EV01.
INTRODUCCION

Se observa la gran habilidad que ha tenido la industria del software porque


desde su creación ha venido adoptando prácticas y tecnologías cada vez
más complejas con el fin de lograr satisfacer las necesidades de los usuarios
empleando cada vez menos tiempo.

Desde 1968 se logran plantear mecanismos que permitan a la industria del


software adaptarse a los cambios mejorando cada día su interface, agilidad,
procesamiento y la calidad de los productos y servicios desarrollados con
mejoras continuas de desarrollo.

Las metodologías de desarrollo de software tienen como objetivo presentar


un conjunto de técnicas tradicionales y modernas de modelado de sistemas
que permitan desarrollar software de calidad, incluyendo heurísticas de
construcción y criterios de comparación de modelos de sistemas.
METODOLOGIA DEL SOFTWARE

Parte de la lógica que se utiliza para estructurar, planificar y controlar el proceso de


desarrollo en sistemas de información dan claridad e indican que un conjunto de
procedimientos genéricos y lógicos que se utilizan para alcanzar un objetivo
particular usando un conjunto de habilidades y conocimiento.

Las metodologías de desarrollo de software siempre parten de un componente


teórico y cuando son usadas por los equipos de trabajo conllevan a la utilización de
un conjunto de técnicas y métodos que al final determinarán las tareas generales y
específicas que se deberían realizar para alcanzar un objetivo.
Los marcos de trabajo tradicionales o metodologías tradicionales se caracterizan
por centrar la mayor parte de su esfuerzo en la planeación y control del proceso, lo
que conlleva a una documentación exhaustiva y precisa de los artefactos que
describen los requisitos y los modelos del sistema en las etapas iniciales del
desarrollo del proyecto.

Metodologías que se enmarcan en los marcos tradicionales de desarrollo de


software.

Modelo en cascada es una metodología secuencial para la gestión de proyectos


que se divide en fases. Cada fase comienza cuando ha terminado la anterior.

Se compone de cinco (5) etapas principales que se asocian con actividades


fundamentales en el proceso de desarrollo de software, las cuales son:

• Implementación
• Funcionamiento y mantenimiento
• Verificación
• Diseño
• Análisis
VENTAJAS

• La definición clara de fases permite el desarrollo de una estructura sencilla


que es ideal para proyectos sencillos y cortos.
• Siguiendo este modelo se genera una muy buena documentación del
proceso y es posible definir hitos claros.
• Es más fácil realizar la estimación de costos al inicio del proyecto.
• Es fácil elaborar cronogramas de trabajo en base al desarrollo de las
actividades de cada fase.

DESVENTAJAS

• No se acopla muy bien a proyectos complejos con múltiples equipos


trabajando en paralelo ya que las fases normalmente se traslapan y es difícil
diferenciarlas.
• Es difícil introducir cambios en el transcurso del proyecto.
• Los usuarios finales y clientes normalmente son integrados al final del
proceso lo que impide tener realimentación y ajustes en etapas tempranas.
• Existen fallos que solo son detectados cuando el sistema entra en
funcionamiento, lo que puede ser desastroso para un proyecto que sigue este
modelo.

Existen metodologías que son un marco de trabajo tradicional sin embargo este
espacio muestra las características principales de los más reconocidos en las
empresas de software.

El modelo en cascada define cuatro grupos de roles típicos los cuales se mencionan
a continuación:

Desarrolladores: Es el rol más importante en la metodología cascada ya que son los


encargados directos de la creación de código.

Testers: Encargados de encontrar fallas en los productos finales y retornar el


software a los desarrolladores para arreglar todos los defectos.

Analista del negocio: Encargado de la realización de estrategias de negocio que le


permitan al producto software alcanzar popularidad en el mercado digital.

Administrador del proyecto: Es responsable de la calidad final del software.


Administra el proyecto y lo subdivide en tareas entre los miembros del equipo.

Proceso racional unificado RUP: es un proceso basado en la metodología de


cascada, diferenciándose en los tres enfoques principales de sus características, la
importancia del proyecto para el usuario, la arquitectura y organización y por último
la óptima ejecución del producto.

Igual que el método anterior, este también está dividido en fases. El inicio, en la cual
se establecen los criterios de reconocimiento de problemas y requerimientos y
también de la tecnología que se usará. La fase de elaboración donde se determina
la estructura del proyecto y el refinamiento de los requerimientos. La construcción
se centra en las actividades relacionadas con la estructura y aplicación del producto
final y por ultimo la fase de transición en la que se hacen las pruebas y verificaciones
de la calidad y garantía del producto final.

Modelos agiles Estos hacen énfasis en la comunicación del desarrollador con el


cliente para establecer las normas y requerimientos necesarios en el producto final,
por lo tanto, estos modelos no son de documentación sino en la importancia de la
estructura y diseño funcional del resultado.

Extreme Programming XP: Este modelo se basa en la relación comunicativa entre


el cliente y el desarrollado que busca el éxito del software dejando que durante el
tiempo de desarrollo este tenga cambios en los requerimientos, adhesiones de
nuevas funciones y el análisis de posibles riesgos en el producto.

Desarrollo rápido de aplicaciones RAD: se centra en el desarrollo de aplicaciones


mediante la realización de iteraciones frecuentes y la realimentación constante,
permitiendo desarrollarlo en menor tiempo, cumpliendo con los requerimientos de
los clientes y permitiendo la reutilización de códigos para realizar cambios
pertinentes. En sus fases primeramente está la definición y finalización de los
requerimientos del proyecto cunado ambas partes discuten sobre los objetivos usos
y necesidades para el programa. Mientras que en la fase de construcción de
prototipos los cuales son construidos, verificados y aprobados por la validación del
cliente llegando a una tercera fase de transformación a modelos totalmente
funcionales. Dejando que durante la cuarta fase se enfoca en la realización de
pruebas exhaustivas para garantizar que todos los elementos construidos funcionan
bien individualmente y también de forma colectiva. Por último, en esta fase se
realizan todas las actividades de lanzamiento del producto lo que involucra el cargue
inicial de datos y entrenamiento a los usuarios.

Scrum: Estos fomentan el trabajo y el concejo colectivo durante el desarrollo del


programa con el objetivo de conseguir los objetivos concretos de forma rápida.
Basado en tres pilares de construcción, la transparencia, haciendo referencia al
seguimiento del proceso mediante documentos o reuniones explicativas. La
Inspección que permite que cualquiera pueda estar enterado de las actividades
realizadas por otros y en general conocer el estado actual de los procesos y la
adaptación de las actividades de mejoras que permitan modificar todo tipo de
proceso para conseguir los más altos estándares de calidad
Hay otros roles dentro del marco del trabajo scrum:

Dueño del producto (Product Owner) :

persona con amplio conocimiento en el negocio del cliente, sus necesidades y las
tendencias del mercado para el área específica. Este rol está encargado de
maximizar el valor de negocio entregado al cliente y es el único responsable del
control del Product Backlog (requerimientos) y su priorización. Este también
representa al cliente en algunos procesos de demostración de avances y determina
cuándo aprobar o no una entrega.

Scrum Master

es un rol que se encarga de facilitar los procesos al interior del equipo de trabajo
removiendo cualquier impedimento y apoyando procesos de empoderamiento
personal, debe velar porque los elementos propios del marco de trabajo Scrum se
apliquen de manera correcta.

Equipo de desarrollo (Developer Team)

son los responsables de la transformación de los requerimientos en código


ejecutable a ser usado por el cliente, pero también son responsables de la
planificación de las iteraciones, establecimiento de características para tener en
cuenta en la verificación de un requerimiento terminado y presentación de avances
a los clientes. Generalmente es un equipo auto organizado y auto gestionado.
Planeación de proyectos de software

Información general de Scrum Un proyecto Scrum implica un esfuerzo de


colaboración para crear un nuevo Producto o, servicio, o cualquier otro resultado
como se define en el Declaración de la Visión del Proyecto. Los proyectos se ven
afectados por las limitaciones de tiempo, costo, alcance, calidad, recursos,
capacidades organizativas, y otras limitaciones que los hacen difíciles de planificar,
ejecutar, administrar y finalmente tener éxito. Sin embargo, la implementación
exitosa de los resultados de un proyecto acabado le proporciona ventajas
económicas significativas a una organización. Por lo tanto, es importante que las
organizaciones seleccionen y practiquen una metodología adecuada de gestión de
proyectos. Scrum es una de las metodologías ágiles más populares. Es una
metodología de adaptación, iterativa, rápida, flexible y eficaz, diseñada para ofrecer
un valor significativo de forma rápida en todo el proyecto.

Scrum garantiza transparencia en la comunicación y crea un ambiente de


responsabilidad colectiva y de progreso continuo. El marco de Scrum, tal como se
define en la Guía SBOK™, está estructurado de tal manera que es compatible con
los Producto os y el desarrollo de servicio en todo tipo de industrias y en cualquier
tipo de proyecto, independientemente de su complejidad.

Una fortaleza clave de Scrum radica en el uso de equipos multi-funcionales, auto-


organizados, y con poder que dividen su trabajo en ciclos de trabajo cortos y
concentrados llamados Sprints. Figura 1-1 proporciona una visión general de flujo
de un proyecto Scrum

También podría gustarte