Está en la página 1de 23

CORPORACION UNIFICADA NACIONAL DE EDUCACIÓN CUN

Aplicación de la metodología ágil scrum para el desarrollo de una aplicación web.

ASIGNATURA

Ingeniería web 50131.

DOCENTE

William Antonio Negrete Ramos.

ESTUDIANTES

Henry Andrés Jurgensen Alzate - Ingeniería de sistemas.

Corporación Unificada Nacional De Educación Superior - CUN


Ingeniería de sistemas - Facultad de ingeniería.
Bogotá D.C.
2023
Contenido
1 Introducción. ......................................................................................................................................... 4
1.1 Contexto y justificación. ................................................................................................................ 4
1.1.1 Justificación. .......................................................................................................................... 4
1.1.2 Alcance. ................................................................................................................................. 4
1.2 Objetivos del trabajo..................................................................................................................... 5
1.2.1 Objetivo general.................................................................................................................... 5
1.2.2 objetivos específicos ............................................................................................................. 5
1.3 Metodología de investigación. ...................................................................................................... 5
2 Fundamentos de scrum. ....................................................................................................................... 6
2.1 Origen y evolución. ....................................................................................................................... 6
2.1.1 Historia de scrum .................................................................................................................. 6
2.2 Principios y valores. ...................................................................................................................... 7
2.2.1 Cuáles son los valores scrum ................................................................................................ 7
2.3 Fases del proceso de scrum. ......................................................................................................... 8
2.4 Roles en scrum. ............................................................................................................................. 9
3 Aplicación de scrum al desarrollo de aplicaciones web...................................................................... 10
3.1 Ventajas de utilizar scrum en el desarrollo de una aplicación web. ........................................... 10
3.2 Adaptación de scrum al desarrollo de una aplicación web. ....................................................... 11
3.3 El papel de Asp.Net CORE 7 y angular 14 en el desarrollo de una aplicación web..................... 12
3.3.1 ¿Qué es ASP.NET Core?....................................................................................................... 12
3.3.2 ¿Por qué se debería usar ASP.NET CORE? .......................................................................... 12
3.3.3 ASP.NET Core ofrece las siguientes ventajas: ..................................................................... 12
3.3.4 ¿Qué es angular?................................................................................................................. 13
3.3.5 8 características de angular ................................................................................................ 13
4 Desarrollo de la tienda de artículos de tecnología con scrum. ........................................................... 15
4.1 Descripción del proyecto. ........................................................................................................... 15
4.2 Planificación del proyecto con scrum. ........................................................................................ 16
4.2.1 Sprint 1 ................................................................................................................................ 16
4.2.2 Sprint 2 ................................................................................................................................ 16
4.2.3 Sprint 3 ................................................................................................................................ 16
4.2.4 Sprint 4 ................................................................................................................................ 17
4.3 Ejecución del proyecto con Scrum. ............................................................................................. 17
4.3.1 Sprint 1 (Duración: 2 Semanas) ........................................................................................... 17
4.3.2 Sprint 2 (Duración: 2 Semanas) ........................................................................................... 17
4.3.3 Sprint 3 (Duración: 2 Semanas)........................................................................................... 18
4.3.4 Sprint 4 (Duración: 1 Semanas) ........................................................................................... 18
4.4 Monitoreo y control del proyecto con scrum. ............................................................................ 18
4.5 Entrega del proyecto con Scrum. ................................................................................................ 19
5 Análisis de los resultados. ................................................................................................................... 20
5.1 Evaluación del proceso de desarrollo con scrum........................................................................ 20
5.2 Lecciones aprendidas. ................................................................................................................. 21
6 Conclusiones. ...................................................................................................................................... 21
6.1 Conclusiones generales............................................................................................................... 21
6.2 Recomendaciones para el uso de scrum en el desarrollo de aplicaciones web. ........................ 21
7 Referencias.......................................................................................................................................... 23
7.1 LINKS DE APOYO NORMAS APA .................................................................................................. 23
7.2 Referencias.................................................................................................................................. 23
1 Introducción.
1.1 Contexto y justificación.
1.1.1 Justificación.
la metodología ágil scrum se ha convertido en una de las metodologías más populares y
efectivas para el desarrollo de software en la actualidad. Esta metodología se enfoca en
la colaboración, el trabajo en equipo y la entrega de valor continuo, lo que la hace ideal
para proyectos que requieren flexibilidad, adaptación y rapidez en la respuesta a los
cambios del entorno.

En este contexto, el desarrollo de aplicaciones web se ha convertido en un área crítica


para muchas empresas y organizaciones, ya que la presencia en línea se ha convertido
en un requisito indispensable para llegar a los clientes y competir en el mercado. Por
ello, el uso de metodologías ágiles como scrum en el desarrollo de aplicaciones web
puede resultar muy beneficioso, ya que permite una gestión más eficiente del proyecto,
una mayor calidad del producto final y una mayor satisfacción del cliente.

En este sentido, el objetivo de este trabajo es aplicar la metodología de scrum en el


desarrollo de una aplicación web para una tienda de artículos de tecnología utilizando
las tecnologías ASP.Net Core 7 y angular 14. de esta manera, se pretende demostrar
cómo la aplicación de esta metodología puede mejorar significativamente el proceso de
desarrollo de aplicaciones web, permitiendo una mayor colaboración y eficacia en la
entrega del producto final.

En conclusión, este trabajo relevante ya que el desarrollo de aplicaciones web es un


área en constante crecimiento coma y la aplicación de metodologías ágiles como scrum
puede proporcionar un enfoque más efectivo y colaborativo al proceso de desarrollo.
Por tanto este trabajo puede servir como un ejemplo práctico para aquellos que buscan
implementar metodologías ágiles en proyectos de desarrollo de aplicaciones web.

1.1.2 Alcance.
Scrum es una metodología ágil para la gestión de proyectos que se adapta bien al
desarrollo de aplicaciones web. Los aspectos clave de scrum, incluyendo las interacciones
cortas, los roles claros, las reuniones estructuradas, el enfoque en la entrega de valor y la
flexibilidad, permiten a los equipos de desarrollo de aplicaciones web trabajar de una
manera efectiva y eficiente para entregar productos de alta calidad.
1.2 Objetivos del trabajo.
1.2.1 Objetivo general
Aplicar la metodología ágil scrum en el desarrollo de una aplicación web para una
tienda de artículos de tecnología, utilizando ASP.NET Core 7 y angular 14, y analizar los
resultados obtenidos.

1.2.2 objetivos específicos


• Analizar los principios y valores fundamentales de la metodología scrum.
• Describir las fases del proceso de scrum y los roles que se involucran en cada una
de ellas.
• Adaptar la metodología scrum al desarrollo de una aplicación web, teniendo en
cuenta las especificidades del proyecto.
• Planificar y ejecutar el proyecto de desarrollo de la aplicación web utilizando
scrum.
• Monitorear y controlar el proyecto con el scrum, identificando posibles
desviaciones del plan y proponiendo soluciones.
• Analizar los resultados obtenidos en el desarrollo de la aplicación web, evaluando
la eficacia de la metodología scrum y las tecnologías utilizadas.
• Identificar lecciones aprendí a hacer el proceso de desarrollo y proponer
recomendaciones para el uso de scrum en el desarrollo de aplicaciones web.

1.3 Metodología de investigación.


Para el proceso de aplicación de scrum en el desarrollo de aplicaciones web, se está utilizando la
metodología de investigación documental. La aplicación de la metodología de investigación
documental se refiere al proceso de revisión análisis de documentación relacionada con la
metodología scrum, así como las tecnologías ASP.Net Core 7 y angular 14 permitiendo tener una
base sólida de conocimientos teóricos para aplicar la metodología scrum al desarrollo de la
aplicación web.

La metodología de investigación documental consiste:

• Identificar y recopilar información relevante sobre la metodología scrum y las


tecnologías a utilizar.
• Analizar y sintetizar la información recopilada.
• Utilizar los resultados de la investigación documental para fundamentar el trabajo
y aplicar la metodología scrum de manera efectiva en el desarrollo de la aplicación
web.
2 Fundamentos de scrum.
El término “scrum” originalmente surge un tipo de formación que se realiza en rugby, en la cual los
jugadores tienen que sacar la pelota sin tocar con las manos. (“Qué es Scrum: Origen y características |
OpenWebinars”)

Scrum, como gestión de proyectos, se puede definir como un modelo de desarrollo ágil y flexible, cuya
principal prioridad es maximizar el retorno de la investigación. (“Qué es Scrum: Origen y características |
OpenWebinars”)

scrum está formado por un conjunto de buenas prácticas que nos van a permitir, trabajando en equipo,
conseguir una agilidad que nos va a favorecer mucho durante el desarrollo, y que además nos va a
permitir obtener mejores resultados. (Abraham Requena Mesa, 2018)

2.1 Origen y evolución.


2.1.1 Historia de scrum
scrum aparece alrededor del año 1986, y fue creado por Ikujiro Nonaka e
Hirotaka Takeuchi, a partir de un estudio que realizaron a distintas empresas
que están viendo un nuevo enfoque de trabajo. (“Qué es Scrum: Origen y
características | OpenWebinars”)

Más tarde, en 1995, crearon un conjunto de reglas, o conjunto de buenas


prácticas, enfocadas al desarrollo del software y la bautizaron con el nombre de
scrum. (“Qué es Scrum: Origen y características | OpenWebinars”) En el 2001 un
grupo de personas muy relevantes en lo que empezaba a hacer el desarrollo ágil
escribieron los valores fundamentales de los procesos ágiles. (“¿Qué es la
metodología ‘Agile ‘? - Evaluando Software”) (MASTER EN METODOLOGIAS
AGILES, s.f.)

desde 1995 miles de proyectos en todo el mundo han utilizado el scrum para el
desarrollo de productos, tanto en empresas pequeñas, startups como tan solo 3
personas desarrollando un producto, como en multinacionales.

"Ken Schwaber presenta Por Primera Vez el proceso de desarrollo con scrum en
la conferencia OOPSLA en la cual expone las ventajas de este marco de trabajo."
(“Historia y evolución de Scrum”)

en el año 2001 es trascendental ya que Ken Schwaber escribe el primer libro


sobre desarrollo ágil de software con scrum, y junto a Sutherland y otros 15
agilistas firman el manifiesto ágil de desarrollo de software, que sienta las bases
del agilidad.
En el año 2010 es Schwaber y Sutherland hoy escribe la primera versión de la
guía de scrum y en noviembre del año 2020 se escribe la sexta y última edición,
que es más corta, concreta y menos prescriptiva que el anterior del año 2017.
(Varela, 2021)

2.2 Principios y valores.


En 2016, la guía es como fue actualizada para añadir los valores scrum. (“Proyecta UNI -
#SabíasQué | En 2016, la Guía Scrum... | Facebook”) No fue una adición
baladí, sino la respuesta de sus creadores, Ken Schwaber y Jeff Sutherland, al uso de scrum
de forma deshumanizada, mecanizada, que al final lleva a la aplicación de los viejos axiomas
del taylorismo, convenientemente re etiquetados con la nueva “cada vez menos nueva”
terminología ágil. (“Valores Scrum: cómo ponerlos en práctica”)

el problema es que muchos equipos scrum ni siquiera saben que esos valores existen y, sí
ignoramos su existencia, difícilmente podremos aplicarlos. (“Valores Scrum: cómo ponerlos
en práctica”) Otras veces, aun conociendo que forman parte de scrum, no se ponen en
práctica, dado su supuesto carácter abstracto o teórico.

2.2.1 Cuáles son los valores scrum


Los valores scrum son los 5 siguientes:

• Coraje: los miembros del equipo scrum tienen la valentía para hacer lo correcto y
trabajar en problemas complejos. (“ Los 5 VALORES SCRUM AGILE NOW 2021
Curso rápido de AGILE y SCRUM”) Sabemos que crear productos que nuestros clientes
utilicen y paguen por no es nada fácil, como tampoco lo es hacerlo con un proceso de
trabajo ágil. Ante los traspiés, que son oportunidades de mejora, nos levantamos.
• Foco: los compañeros del equipo scrum se centran en el trabajo del sprint y en la
consecución del objetivo del sprint, estrechamente conectado con el Product Goal.
(“ Los 5 VALORES SCRUM AGILE NOW 2021 Curso rápido de AGILE y SCRUM”)
Scrum nos da un cierto grado de certidumbre en forma de Sprint: nos permite dedicar
todos nuestros esfuerzos a una parte del Product backlog, dejando a un lado, si quiera
por un momento coma el ruido procedente de un entorno cambiante.
• Compromiso: todos hemos de comprometernos personalmente con lograr el objetivo
del sprint. El compromiso no se entiende como una suerte de contrato por el cual los
desarrolladores han de garantizar la entrega de todos los elementos del Product
backlog qué hayas seleccionado para el sprint, sino con dar lo mejor de nosotros
mismos para alcanzar las metas del equipo. La guía es scrum2020 enfatiza el significado
de este compromiso, hasta el punto de asociar un compromiso a cada uno de los
artefactos.
• Respeto: los integrantes del equipo scrum se tratan de una forma adecuada y se tienen
en consideración como profesionales capaces y autónomos. (“ Los 5 VALORES
SCRUM AGILE NOW 2021 Curso rápido de AGILE y SCRUM”)
• Sinceridad, apertura: el equipo scrum y los interesados o stakeholders han de ser
transparentes en cuanto al trabajo y las vicisitudes que surjan. (“ Los 5 VALORES
SCRUM AGILE NOW 2021 Curso rápido de AGILE y SCRUM”) (Rodríguez, 2020)

2.3 Fases del proceso de scrum.


La metodología scrum se divide en 5 fases:

• Planeación del esprint/sprint planning: todos los involucrados en el equipo se reúnen


para planificar el sprint. Durante este evento se decide qué requerimientos o tareas se
le asignará a cada uno de los elementos del equipo. Cada integrante deberá asignar el
tiempo que crea prudente para llevar a cabo sus requerimientos. (“¿Cómo funciona la
metodología Scrum? Qué es y sus 5 fases - Platzi”) De esta manera se define el tiempo
de duración del sprint.
• Reuniones de equipo de scrum/scrum team meeting: a estas reuniones se les debería
dedicar máximo 15 minutos diarios, y deberían ser siempre en el mismo horario y lugar.
En ellas cada miembro del equipo debería responder 3 simples preguntas:
o ¿Qué hiciste ayer?
o ¿Qué tienes planeado hacer hoy?
o ¿Qué obstáculos encontraste en el camino?
estas reuniones sirven para que todos los miembros del equipo se apoyen
entre ellos. Si alguno de ellos tiene algún inconveniente que obligue a
extender el encuentro, este debe tratarse más a fondo en una reunión
enfocada en buscar la mejor solución para ello.
• Refinamiento del backlog/backlog refinement: el Product Owner revisa cada uno de los
elementos dentro del Product backlog con el fin de esclarecer cualquier duda que
pueda surgir por parte del equipo de desarrolladores. "También sirve para volver a
estimar el tiempo y esfuerzo dedicado a cada uno de los requerimientos." (“¿Cómo
funciona la metodología Scrum? Qué es y sus 5 fases - Platzi”)
• Revisión del sprint/sprint review: los miembros del equipo y los clientes se reúnen para
mostrar el trabajo de desarrollo de software que se ha completado. "Se hace una
demostración de todos los requerimientos finalizados dentro del sprint." (“2. El Sprint –
Proyectos con Scrum”) En este punto no es necesario que todos los miembros del
equipo hablen, pueden simplemente estar presentes, pero la presentación está a cargo
del scrum master y el Product Owner.
• Retrospectiva del sprint/Retrospective: en este evento el Product Owner se reúne con
todo su equipo de trabajo y su scrum master para hablar sobre lo ocurrido durante el
sprint. Los puntos principales por tratar en esta reunión son:
o Qué se hizo mal durante el sprint para poder mejorar el próximo.
o Qué se hizo bien para seguir en la misma senda del éxito.
o Qué inconvenientes se encontraron y no permitieron poder avanzar como
se tenía planificado.

(walter.lara.37, HACE 8 AÑOS)

2.4 Roles en scrum.


Un equipo exclusivo al estar compuesto por grupos de trabajadores de entre 3 a 9 miembros del
equipo de desarrollo, más el scrum master y el Product Owner. "Cada uno de estos roles tiene
diferentes responsabilidades y debe de rendir cuentas de distinta manera, tanto entre ellos
como para el resto de la organización." (“Scrum: roles y responsabilidades | Deloitte España”)
"la suma de todos los roles es lo que llamamos equipo scrum." (“Conoce todo sobre Scrum |
Deloitte España | DXD”)

• Product Owner
"El Product Owner es el encargado de optimizar y maximizar el valor del
producto, siendo la persona encargada de gestionar el flujo de valor del
producto a través del Product backlog." (“Scrum un marco de trabajo ágil -
esieduc.org”) "Adicionalmente, es fundamental su labor como interlocutor
con los stakeholders y sponsors del proyecto, así como su faceta de altavoz
de las peticiones y requerimientos de los clientes." (“Scrum: roles y
responsabilidades | Deloitte España”) sí el Product Owner también juega el
rol de representante de negocio, su trabajo también aportará valor al
producto.

• Scrum Master
el scrum master tiene 2 funciones principales dentro del marco de trabajo:
gestionar el proceso scrum y ayudar a eliminar impedimentos que puedan
afectar a la entrega del producto. Además, se encarga de las labores de
Mentoring y formación, coaching y de facilitar reuniones y eventos si es
necesario. (“Scrum: roles y responsabilidades | Deloitte España”)
o "Gestionar el proceso scrum: el scrum master se encarga de gestionar y
asegurar que el proceso scrum se lleva a cabo correctamente, así como de
facilitar la ejecución del proceso y sus mecánicas." (“Scrum: roles y
responsabilidades | Deloitte España”) Siempre atendiendo a los 3 pilares
de control empírico de procesos y haciendo que la metodología sea una
fuente de generación de valor.
o Eliminar impedimentos: esta función del Scrum Master indica la necesidad
de ayudar a eliminar progresiva y constantemente impedimentos que
vayan surgiendo en la organización y que afectan a su capacidad para
entregar valor, así como a la integridad de esta metodología. el scrum
master debe ser el responsable de velar porque el scrum se lleve adelante,
transmitiendo sus beneficios a la organización facilitando su
implementación. (“Scrum: roles y responsabilidades | Deloitte España”)
Aplicación de Scrum al desarrollo de una aplicación web. (Roche, s.f.).

• Developer team members


Se traduce como miembros del equipo de desarrollo. Se trata del equipo de
profesionales encargados de la programación y ejecución del proyecto.
Están a cargo de las tareas establecidas por el Product Owner y se
componen por diversos elementos multidisciplinarios y auto organizados
qué evalúan las iniciativas del Product backlog, tenido toda la autonomía en
este aspecto.

3 Aplicación de scrum al desarrollo de aplicaciones web


3.1 Ventajas de utilizar scrum en el desarrollo de una aplicación web.
Entre los beneficios múltiples que puede tener utilizar la metodología ágil de scrum dentro del
desarrollo de una aplicación web, podemos encontrar uno de los siguientes beneficios.

• Calidad y competitividad gestión de expectativas del cliente basadas en resultados


tangibles
• flexibilidad cambios: adaptación a las necesidades del cliente coma a cambios en el
mercado, etc.
• gestión del rol
• soporte a la innovación
• resultados anticipados
• mantenibilidad y productividad
• mitigación de riesgos
• equipo motivado implicado, creativo y que disfruta.

Demostrando que puede haber muchas ventajas al utilizar la metodología scrum en el desarrollo
de aplicaciones web. Algunas de las más importantes ventajas son las siguientes:

• Flexibilidad: excluirse una metodología ágil que se adapta bien a los cambios constantes
en los requisitos de un proyecto de desarrollo de aplicación web. Los equipos de
desarrollo pueden ajustar rápidamente su enfoque para satisfacer las necesidades de
los usuarios y los cambios en el mercado.
• Entrega temprana de valor : scrum enfatiza la entrega temprana y frecuente de valor al
usuario, lo que significa que los equipos de desarrollo pueden obtener
retroalimentación valiosa de los usuarios temprano en el proceso y ajustar en
consecuencia.
• Mayor control del proyecto: scrum proporcionar herramientas y técnicas para que los
equipos de desarrollo gestión y control en su trabajo de manera efectiva los equipos
pueden seguir de cerca el progreso del proyecto y tomar medidas proactivas para
abordar cualquier problema que surja.
• Mejora en la calidad del producto: el enfoque de excluir en la entrega de valor y la
retroalimentación continua el usuario puede ayudar a garantizar que el producto final
cumpla con las necesidades del usuario y tenga una calidad alta.
• Colaboración efectiva: scrum fomenta la colaboración entre los miembros del equipo
de desarrollo, lo que puede ayudar a garantizar que el trabajo se realice de manera más
eficiente y efectiva.
• Mejora en la productividad: scrum puede ayudar a los equipos de desarrollo a ser más
productivos al fomentar la responsabilidad individual y el trabajo en equipo, y al
eliminar los obstáculos que pueden impedir el progreso.

3.2 Adaptación de scrum al desarrollo de una aplicación web.


para realizar una correcta adaptación de la tecnología exclusiva de desarrollo de aplicaciones
web de acuerdo con las fases del proceso de scrum, hoy es de vital importancia definir un
Product backlog, realizar reuniones de amplificación, celebrar reuniones diarias de equipo,
realizar reuniones de revisión y retrospectiva de sprint. estas prácticas pueden ayudar a los
equipos de desarrollo de trabajar de manera más efectiva y eficiente para entregar productos.

Aparte las fases anteriormente mencionadas y cómo se realiza su aplicación o cuál es la función
de cada fase dentro de la metodología scrum se debe tener en cuenta otras formas en que
scrum pueda afectarse específicamente al desarrollo de aplicaciones web:

• crear prototipos: los equipos de desarrollo pueden utilizar prototipos para validar
rápidamente las ideas y las funcionalidades clave de la aplicación web. Esto puede
ayudar a reducir el riesgo de que se invierta tiempo y recursos en una funcionalidad
que no se ajusta a las necesidades del usuario.
• enfocarse en la experiencia del usuario: el enfoque es en la entrega temprana hay
frecuente del valorar usuario puede ayudar a los equipos de desarrollo a centrarse en
las necesidades y expectativas del usuario. Al enfocarse en la experiencia del usuario,
los equipos pueden garantizar que la aplicación web sea más fácil de usar y satisfaga las
necesidades del usuario.
• Asegurar la calidad del código: el desarrollo de aplicaciones web implica una gran
cantidad de código, lo que puede hacer que sea difícil garantizar la calidad del mismo
punto scrum fomenta la integración continua y la revisión de código, lo que puede
ayudar a garantizar que el código de la aplicación web sea de alta calidad.
• Gestión de la complejidad: el desarrollo de aplicaciones web puede ser complejo y
puede implicar múltiples plataformas y tecnologías. Scrum puede ayudar a los equipos
de desarrollo a gestionar la complejidad al permitir trabajar en pequeñas
funcionalidades de forma interactiva y entregando valor temprano.

en general, escribir es una metodología altamente adaptable que se puede aplicar con
éxito al desarrollo de aplicaciones web.

3.3 El papel de Asp.Net CORE 7 y angular 14 en el desarrollo de una aplicación


web.
Primeramente, para poder entender el papel de asp.net Core 7 y angular 14 en el desarrollo de una
aplicación web hay que definir qué es cada uno de ellos.

3.3.1 ¿Qué es ASP.NET Core?


"ASP.NET Core es un marco multiplataforma de código abierto y de alto rendimiento que tiene
como finalidad compilar modernas aplicaciones conectadas a internet y basadas en la nube."
(“Como funciona ASP Net Core? – RespuestasCortas”) Con ASP.NET CORE puede hacer lo
siguiente:

• Compilar servicios y aplicaciones web aplicaciones de Lot y Back-End móviles.


• Usar sus herramientas de desarrollo favoritas en Windows, macOS y Linux.
• Efectuar implementaciones locales y en la nube.
• Ejecutar en .NET CORE o en .NET Framework

3.3.2 ¿Por qué se debería usar ASP.NET CORE?


Millones de desarrolladores han usado ASP.NET en sus distintas versiones y lo siguen usando
para para crear aplicaciones web. ASP.NET CORE es un nuevo diseño de ASP.NET que cuenta con
cambios en la arquitectura que dan como resultado un marco más sencillo y modular.
(“Información general de ASP.NET Core | Microsoft Learn”)

3.3.3 ASP.NET Core ofrece las siguientes ventajas:


- un caso unificado para crear una API web y una interfaz de usuario web. (“Desarrollar
aplicaciones web mediante ASP.NET - .NET Framework”)
- Diseñado para la capacidad de prueba.
- Razor Pages hace que las codificaciones de escenarios centrados en una página sean más
sencillos y productivos.
- capacidad para desarrollarse ejecutarse en Windows, macOS y Linux.
- De código abierto y centrado en la comunidad.
- integración de Marcos del lado cliente modernos y flujos de trabajo de desarrollo.
- un sistema de configuración basado en el entorno y preparado para la nube.
- inserción de dependencias integrada.
- "una canalización de solicitudes http ligera, modular y de alto rendimiento." (“¿Que es
ASP.NET Core? y ¿Como funciona? – Programa en Línea”)
- Capacidad de hospedarse en IIS, Nginx, Apache, Docker o de auto hospedarse en su propio
proceso.
- Control de versiones de aplicaciones en paralelo con .NET CORE cómo destino.
- herramientas que simplifican el desarrollo web moderno. (NGuerrero, 2022)

Como resumen de lo anteriormente expuesto podemos decir que ASP.NET CORE es un


framework de desarrollo de web de código abierto y multiplataforma que permite a los
desarrolladores crear aplicaciones web rápidas y escalables. ASP.NET CORE se ejecuta en
múltiples plataformas hoy coma incluyendo Windows, macos y Linux. Lo que lo hace un
software ideal para equipos de desarrollo que desean desarrollar aplicaciones web para
diferentes sistemas operativos. Ofreciendo también características avanzadas, como la
integración con servicios en la nube, seguridad y autentificación, y la capacidad de escalar
horizontalmente para manejar cargas de trabajo pesadas. (Carmona, 2022)

3.3.4 ¿Qué es angular?


Angular es un framework de JavaScript de código abierto escrito en, pero no pico desde
TypeScript. Su objetivo principal es desarrollar aplicaciones de una sola página. Google se
encarga del mantenimiento y constantes actualizaciones de mejoras para este framework.
(“¿Qué es Angular y para qué sirve? - Blog de Hiberus Tecnología”)

3.3.5 8 características de angular


para comprender de mejor forma que es angular, vamos a listar alguna de las características
principales del marco de trabajo que nos servirán para conocer mejor su funcionalidad y la
manera en que puede ser utilizado en el desarrollo de aplicaciones web.

- uso de DOM regular


un Document Object Model (DOM) es un documento XML o HTML que tiene una estructura de
árbol en la que cada no representa una parte del documento. Angular hace uso de DOM regular,
lo que permite una mejor organización conforme avanza el desarrollo web.

- Enlace de datos o data binding


el enlace de datos es un proceso con el que los usuarios pueden manipular elementos de una
página web a través de un navegador. "Entre sus principales ventajas es que no requiere
secuencias de comandos ni programaciones complejas, además de que emplea HTML
dinámico." (“¿Qué es Angular? Características y ventajas - HubSpot”) También permite una
mejora en la visualización de una página web, sobre todo cuando contiene una gran cantidad de
datos.
- Compatibilidad móvil y de escritorio
"Como ya lo mencionamos anteriormente, angular funciona tanto para el desarrollo de
aplicaciones móviles como de escritorio." (“¿Qué es Angular? Características y ventajas -
HubSpot”) Eso también significa que puede ejecutarse en la mayoría de los navegadores web.

- Velocidad y rendimiento
"Angular cuenta con código de generación que permite convertir tus plantillas en códigos
altamente optimizados." (“¿Qué es Angular? Características y ventajas - HubSpot”) Esto te
ofrece todos los beneficios del código escrito a mano con la productividad de un marco. "De
igual manera, allana el camino para los sitios que optimizan para SEO y sus aplicaciones
angulares se cargan rápidamente." (“¿Qué es Angular? Características y ventajas - HubSpot”)
Esto ofrece una división de código automática para que sólo cargues el código que necesitas
para representar la vista que requieres.

- Productividad
angular permite la creación rápida de vistas de interfaz de usuario con una sintaxis de plantilla
muy sencilla y eficaz. Además, con sus herramientas de líneas de comandos puedes comenzar a
construir en menor tiempo y agregar componentes, pruebas e implementaciones al instante.
(“¿Qué es Angular? Características y ventajas - HubSpot”)

- Enlace bidireccional de datos


angular en la sala JavaScript y HTML, y una de sus principales ventajas es que el código de
ambos está sincronizado, lo que ahorra mucho tiempo para el desarrollo web.

- Directivas
los archivos HTML se ven ampliados gracias a directivas habilitadas por los desarrolladores
cuando agregan el prefijo ng- a los atributos HTML punto existen diferentes tipos de directivas
muy útiles que puedes usar para diferentes acciones como vincular el contenido de un elemento
HTML a los datos de aplicación, o especificar que el contenido de un texto debe reemplazarse
con una plantilla. (“¿Qué es Angular? Características y ventajas - HubSpot”)

- Pruebas
angular hace uso del framework de pruebas llamado Jasmine, el cual proporciona diversas
funcionalidades para escribir diferentes tipos de casos de prueba punto de igual manera, el
marco admite pruebas unitarias y de integración. (“¿Qué es Angular? Características y ventajas -
HubSpot”) (Coppola, 2023)

Como resumen de las anteriores características mencionadas de angular podemos definir que
angular es un framework de JavaScript de código abierto que se utiliza para desarrollar
aplicaciones web de una sola página (SPA). Angular ofrece una arquitectura de aplicación
robusta que permite a los desarrolladores crear aplicaciones web altamente interactivas y
dinámicas. Con angular, los desarrolladores pueden crear componentes reutilizables, manejar el
enrutamiento de las aplicaciones, validar formularios y usar una variedad de herramientas de
prueba para garantizar la calidad de código.

En resumen de todo lo anteriormente dicho, el papel de ASP.NET CORE 7 es enfocarse al BACK-


END proporcionando una plataforma de BACK-END escalable y segura para servicios y api,
mientras que el papel de angular es dedicarse al FRONT-END, ofrece una arquitectura de
aplicación robusta para crear la interfaz de usuario. Cuando se utilizan juntos, pueden ayudar a
los desarrolladores a crear aplicaciones web.

4 Desarrollo de la tienda de artículos de tecnología con scrum.


4.1 Descripción del proyecto.
La aplicación web que se desarrollará para la tienda de artículos de tecnología tendrá como
objetivo ofrecer a los clientes una experiencia de compra en línea eficiente y segura, a través
de una interfaz moderna e intuitiva. Para ello, se utilizarán las tecnologías ASP.Net Core 7 y
Angular 14, así como una arquitectura en capas y una base de datos SQL server.

La aplicación contará con una interfaz gráfica de usuario desarrollada en angular 14, que
ofrecerá una navegación fluida y una experiencia de usuario atractiva. La página principal de
la tienda mostrará una selección de productos destacados así como opciones para buscar y
filtrar por categorías y características de los productos. En cuanto a la parte de funcionarios
contará con un que permitirá al dueño de la tienda llevar estadísticas claras sobre las ventas
y visitas que ha tenido su tienda también permitiendo administrar los usuarios creados en su
tienda para poder obtener los datos de sus clientes.

En cuanto a la arquitectura n capas, se implementará una estructura modular y escalable


que permita una fácil incorporación de nuevas funcionalidades y componentes en el futuro.
la arquitectura estará compuesta por las siguientes capas:

• capa de presentación: esta capa será la encargada de mostrar la información al usuario,


a través de la interfaz gráfica de usuario desarrollada en angular 14.
• Capa de aplicación: esta capa se encargará de la lógica de negocio de la aplicación,
como la gestión de los productos, las ventas y los clientes.
• Capa de acceso a datos: esta capa se encargará de la comunicación con la base de datos
SQL server, permitiendo la consulta y modificación de los datos.
• Capa de base de datos: esta capa contendrá la definición de la estructura y relaciones
de la base de datos SQL server, así como los procedimientos almacenados y las
funciones necesarias para su gestión.

En cuanto a la base de datos, se utilizará el SQL server para almacenar y gestionar la


información de los productos, clientes y las ventas de la tienda. Se diseñará una estructura
de base de datos eficiente y escalable, que permita la gestión de grandes volúmenes de
datos y asegure la integridad y la seguridad de la información.

En resumen, el proyecto consistirá en desarrollar una aplicación web de una tienda de


artículos de tecnología, utilizando las tecnologías ASP.Net Core 7 y Angular 14, una
arquitectura N capas y una base de datos SQL server. La aplicación ofrecerá una experiencia
de usuario moderna y eficiente, con una estructura modular y escalable que permitirá una
fácil incorporación de nuevas funciones y componentes en el futuro.

4.2 Planificación del proyecto con scrum.


La planificación del proyecto en el scrum se llevará de la siguiente forma:

4.2.1 Sprint 1
Duración: 2 semanas
objetivos:
• Definir las historias de usuario para el desarrollo de la interfaz gráfica de usuario en
angular 14.
• Crear el esquema de la base de datos en SQL server.
• Implementar las primeras funcionalidades de la capa de acceso a datos.

4.2.2 Sprint 2
Duración: 2 semanas
objetivos:
• Desarrollar la interfaz gráfica de usuario para la página principal de la tienda incluyendo
la selección de productos destacados y las opciones de búsqueda y filtrado.
• Implementar las funcionalidades de gestión de productos en la capa de aplicación,
incluyendo la creación, modificación y eliminación de productos.
• Refinar el esquema de la base de datos y los procedimientos almacenados para mejorar
la eficiencia y escalabilidad.

4.2.3 Sprint 3
Duración: 2 semanas
objetivos:
• Para la interfaz gráfica de usuario para la gestión de ventas y clientes.
• Implementar las funciones de gestión de ventas y clientes en la capa de aplicación,
incluyendo la creación, modificación y eliminación de ventas y clientes.
• Realizar pruebas de integración y de usuario para asegurar la funcionalidad y usabilidad
de la aplicación.
4.2.4 Sprint 4
Duración: 1 semanas
objetivos:
• Actualidad pruebas finales y correcciones de errores.
• Preparar la documentación técnica y de usuario.
• Realizar la entrega final del proyecto.
En cada sprint, Se llevará a cabo las siguientes actividades en el marco de scrum:
• Sprint planning: reunión al inicio de cada sprint para definir los objetivos y tareas del
sprint.
• Daily scrum: reunión diaria para actualizar el estado de las tareas e identificar posibles
problemas o riesgos.
• Sprint review: reunión al final de cada sprint para revisar el trabajo realizado y hacer
mejoras para el siguiente sprint.
• Sprint retrospective: reunión al final de cada sprint para analizar los procesos y
prácticas utilizadas y hacer ajustes para el siguiente sprint.
con esta planificación en scrum, se asegura una entrega constante y de alta calidad de la
aplicación, con una comunicación fluida y una adaptación continua a las necesidades y
requerimientos del proyecto.

4.3 Ejecución del proyecto con Scrum.


4.3.1 Sprint 1 (Duración: 2 Semanas)
• Reunión de planificación del sprint para definir objetivos y tareas.
• Diseño y creación de la arquitectura n capas de la aplicación.
• Configuración del entorno de desarrollo y herramientas necesarias para el proyecto.
• Creación de la base de datos SQL server y configuración de la conexión en la aplicación.
• Implementación de la capa de acceso de datos a la aplicación utilizando ASP.Net Core 7.
• Pruebas unitarias para validar la funcionalidad de la capa de acceso de datos.
• Revisión y ajustes de código mediante reuniones diarias de seguimiento.
• Reunión de revisión del sprint para demostrar la funcionalidad implementada y recibir
retroalimentación del cliente.
• Reunión retrospectiva del sprint para identificar mejoras y ajustes necesarios para el
próximo sprint.

4.3.2 Sprint 2 (Duración: 2 Semanas)


• Reunión planificación del sprint para definir objetivos y tareas.
• Desarrollo de la capa de servicios de la aplicación.
• Implementación de la lógica de negocio y servicios de la aplicación.
• Diseño y creación de los modelos de datos para base de datos SQL server.
• Creación de las migraciones y configuraciones de la base de datos en la aplicación.
• Pruebas unitarias para validar la funcionalidad de la capa de servicios.
• Revisión y ajustes de código mediante reuniones diarias de seguimiento.
• Reunión de revisión del sprint para demostrar la funcionalidad implementada y recibir
retroalimentación del cliente.
• Reunión retrospectiva del sprint para identificar mejoras y ajustes necesarios para el
próximo sprint.

4.3.3 Sprint 3 (Duración: 2 Semanas)


• reunión de la planificación del sprint para identificar objetivos y tareas.
• Desarrollar la capa de presentación de la aplicación en angular 14.
• integración de la capa de presentación con la capa de servicios de la aplicación.
• implementación de las funcionalidades de la tienda de tecnología en la aplicación.
• Diseño y desarrollo de la interfaz de usuario y experiencia de usuario en la aplicación.
• Pruebas de integración para validar el funcionamiento conjunto de las capas de
servicios y presentación.
• Revisión y ajustes de código mediante reuniones diarias de seguimiento.
• Reunión de revisión del sprint para demostrar la funcionalidad implementada y recibir
retroalimentación del cliente.
• Reunión retrospectiva del sprint para identificar mejoras y ajustes necesarios para el
próximo sprint.

4.3.4 Sprint 4 (Duración: 1 Semanas)


• Reunión de planificación del sprint para definir objetivos y tareas.
• Implementación de mejoras y ajustes necesarios para la funcionalidad implementada.
• Pruebas de aceptación por parte del cliente para validar la funcionalidad y corregir
errores.
• revisión y ajustes de código mediante reuniones diarias de seguimiento.
• Reunión de revisión del sprint para demostrar la funcionalidad implementada y recibir
retroalimentación del cliente.
• Reunión retrospectiva del sprint para identificar lecciones aprendidas y mejoras para
próximos proyectos.

4.4 Monitoreo y control del proyecto con scrum.


El monitoreo del proyecto es una fase importante de la metodología agile scrum porque ayuda a
desarrollar de una manera eficiente y en línea con los objetivos y metas establecidas, para lo
cual se propone el siguiente monitoreo y control de acuerdo con la planificación y ejecución del
proyecto.

• Reuniones diarias de Scrum: El equipo de desarrollo deberá realizar reuniones diarias


de Scrum, en las que se reporten los avances del día anterior, se discutan los
impedimentos y obstáculos que se presentaron y se establezcan los objetivos para el
día siguiente.
• Reuniones de Sprint Review: Al final de cada sprint, se realizará una reunión de revisión
de sprint para evaluar los resultados obtenidos durante el período y determinar si se
cumplieron los objetivos del sprint.
• Reuniones de Sprint Retrospective: Al final de cada sprint, se realizará una reunión de
retrospectiva de sprint para evaluar el proceso de trabajo y encontrar maneras de
mejorar la eficiencia y la calidad del trabajo.
• Análisis de métricas de desempeño: Se realizará un análisis de las métricas de
desempeño, incluyendo la velocidad de desarrollo, el tiempo de ciclo, la tasa de errores
y otros indicadores clave de desempeño, para evaluar el progreso del proyecto y
determinar áreas de mejora.
• Actualización constante del backlog del producto: El equipo de desarrollo deberá
mantener actualizado el backlog del producto, incluyendo nuevas historias de usuario y
tareas, para asegurar que el proyecto se mantenga en línea con los objetivos y
necesidades del cliente.
• Revisiones periódicas del progreso del proyecto: Se llevarán a cabo revisiones
periódicas del progreso del proyecto para determinar si se está avanzando en la
dirección correcta y si se están cumpliendo los objetivos a largo plazo.
• Manejo de riesgos y obstáculos: El equipo de desarrollo deberá estar preparado para
manejar los riesgos y obstáculos que puedan surgir durante el desarrollo del proyecto,
buscando soluciones rápidas y efectivas para minimizar el impacto en el progreso del
proyecto.
• Comunicación constante con el cliente: El equipo de desarrollo deberá mantener una
comunicación constante con el cliente, para asegurarse de que el proyecto está
alineado con sus necesidades y requerimientos y para obtener retroalimentación
constante sobre el progreso del proyecto.

4.5 Entrega del proyecto con Scrum.


Tengo en cuenta las fases del proyecto en el scrum, reconociendo que la entrega del producto
es una parte crucial de este proceso que se debe realizar a finalizar cada sprint. Durante la
reunión de revisión del sprint, el equipo de desarrollo presenta el trabajo completado durante el
sprint a los interesados y se evalúa si ha cumplido los objetivos del sprint. una vez revisado estos
objetivos y llegado a una conclusión aceptable de cumplimiento se realiza un acta de entrega al
usuario especificando punto por punto lo desplegado en este sprint.
Además se realiza una demostración de las funcionalidades de la aplicación para que los
interesados puedan visualizar y evaluar el trabajo realizado por el equipo de desarrollo también
se lleva a cabo una retrospectiva del sprint, donde el equipo analiza su desempeño y se
identifican oportunidades de mejora las cuales se dejan plasmadas en un acta para llevar a cabo
en el próximo sprint.

Después de la reunión de revisión del equipo comienza a prepararse para el siguiente sprint. Se
actualiza el Product backlog en función de la retroalimentación recibida durante la revisión y la
planificación del próximo sprint en la reunión de planificación del sprint.

En la última reunión de scrum, conocida como la reunión retrospectiva del proyecto, se realiza
una revisión final del proyecto en su conjunto y se discuten las lecciones aprendidas y las
oportunidades de mejora para futuros proyectos.

Finalmente, el equipo de desarrollo entrega el proyecto completo a los interesados para su uso y se
prepara para futuras actualizaciones y mejoras en función de las necesidades del cliente.

5 Análisis de los resultados.


5.1 Evaluación del proceso de desarrollo con scrum.
Como mi evaluación personal del proceso de desarrollo con scrum puedo poner como puntos
principales de la práctica de scrum el desarrollo de esta aplicación web teóricamente, la
retroalimentación del equipo siendo las mejores formas de evaluar el proceso de desarrollo y
preguntar al equipo como le ha ido durante el desarrollo del proyecto y qué oportunidades de
mejora han podido identificar.

También la revisión de la calidad del producto ya que él tiene reuniones constantes se puede
realizar una medida final sobre el éxito del desarrollo evaluando la calidad del producto a través
de las pruebas de usuario y pruebas de calidad que proporcionarán una valiosa información
sobre el proceso de desarrollo.

De esta forma se apoyó también llegar a medir la satisfacción del cliente de acuerdo a sus ideas
propuestas para el desarrollo de una aplicación web que su plan de necesidades de su tienda,
esta satisfacción pudo ser mi día mediante las reuniones realizadas en cada sprint frente al
cliente demostrando las funcionalidades nuevas que se han implementado en la aplicación
recibiendo la retrospectiva del cliente de acuerdo a su medida objetiva del éxito del proceso de
desarrollo.

Finalmente llevando a una revisión de un proceso en scrum el cual puede proporcionar una
valiosa información sobre el éxito de este proceso de desarrollo de una aplicación web para una
tienda de tecnología dejando como precepto las actividades aplicadas a este proyecto como
huella de planificación para los próximos proyectos que se deban implementar teniendo una
idea sólida de una planificación antes ya exitosa.

5.2 Lecciones aprendidas.


Como lesiones personales aprendidas durante el proceso de implementación de scrum en el proceso de
desarrollo de una aplicación web puedo identificar que esta metodología ágil ayuda a llevar una mejor
organización de los objetivos frente a un proyecto permitiendo tener una retroalimentación constante
del proceso de desarrollo si se está haciendo de acuerdo a las necesidades del cliente o no permitiendo
llevar correcciones rápidas y eficaces al proceso de desarrollo permitiendo también una
retroalimentación rápida al equipo de desarrollo.

6 Conclusiones.
6.1 Conclusiones generales.
• La metodología scrum resultó ser una herramienta efectiva para el desarrollo de la
aplicación web en la tienda de tecnología. La división del proyecto en Sprint y la
asignación de roles y responsabilidades claras permitió un enfoque ágil y una
adaptación rápida a los cambios de los requerimientos del proyecto.
• La elección de asp.net corchete y angular 14 para el desarrollo de la aplicación web
permitía una arquitectura n capas y una experiencia de usuario de alta calidad. La base
de datos es QL server proporciona una solución robusta y escalable para el
almacenamiento de datos de la aplicación.
• La planificación del proyecto y la ejecución de los sprint se llevaron a cabo según lo
previsto lo que permitió cumplir con los plazos establecidos y entregar una aplicación
web funcional y de alta calidad.
• La colaboración y comunicación efectiva dentro del equipo de desarrollo fue clave para
el éxito del proyecto. La asignación de roles y responsabilidades claras, así como las
reuniones diarias de scrum y la retroalimentación continua, permitieron una
colaboración efectiva y una solución eficiente de los problemas.
• en general la aplicación web de la tienda de tecnología fue un proyecto exitoso que
cumplió con los objetivos establecidos. la metodología es scrum permitió una
planificación y ejecución efectiva del proyecto, mientras que la elección de tecnologías
modernas y la colaboración efectiva dentro del equipo de desarrollo permitieron la
creación de una aplicación web funcional y de alta calidad.

6.2 Recomendaciones para el uso de scrum en el desarrollo de aplicaciones web.


Dentro de todo este proceso del uso de scrum en el desarrollo de una aplicación web, mis
recomendaciones personales para poder aplicar esta metodología ágil efectivamente podrían
ser las siguientes:
• realizar una planificación detallada de cada sprint, incluyendo los objetivos específicos y
los entregables esperados.
• Asignar roles y responsabilidades claras dentro del equipo de desarrollo, asegurándose
de que cada miembro del equipo comprenda su papel y su responsabilidad dentro de
este proyecto.
• programar reuniones diarias para mantener a todo el equipo de desarrollo actualizado
sobre el proceso del proyecto.
• realizar una retrospectiva al final de cada sprint para evaluar el desempeño del equipo
de desarrollo y hacer mejoras en la planificación y ejecución en el próximo sprint. Esto
permitirá una mejora continua del proceso de desarrollo.
• elegir tecnologías modernas y adecuadas para el desarrollo de la aplicación web, y
asegurarse de que el equipo de desarrollo tenga la capacitación y la experiencia
necesaria para trabajar con estas tecnologías. Esto permitirá una arquitectura de alta
calidad y una experiencia de usuario satisfactoria.
• Mantener dentro del equipo una actitud flexible y adaptable durante todo el proceso
de desarrollo, para poder realizar los ajustes necesarios para cumplir con los objetivos
del proyecto. Permitiendo una adaptación rápida a los cambios de los requerimientos
del proyecto y una solución efectiva a los problemas.
7 Referencias.
7.1 LINKS DE APOYO NORMAS APA

https://revistas.uexternado.edu.co/index.php/ecoins/article/view/5971/7695
https://veeduriadistrital.gov.co/archivos
https://normas-apa.org/

7.2 Referencias
Abraham Requena Mesa. (17 de 12 de 2018). Openwebinars. Obtenido de
https://openwebinars.net/blog/que-es-scrum/

Carmona, J. G. (18 de Marzo de 2022). openwebinars. Obtenido de https://openwebinars.net/blog/que-


es-aspnet-y-cuales-son-sus-puntos-fuertes/

Coppola, M. (20 de Enero de 2023). blog.hubspot. Obtenido de https://blog.hubspot.es/website/que-es-


angular

MASTER EN METODOLOGIAS AGILES. (s.f.). proyectosagiles. Obtenido de


https://proyectosagiles.org/historia-de-
scrum/#:~:text=El%20concepto%20de%20Scrum%20tiene,ordenadores%20de%20HP%20y%20o
tros).

NGuerrero. (26 de septiembre de 2022). programaenlinea. Obtenido de


https://www.programaenlinea.net/asp-net-core/

Roche, J. (s.f.). Deloitte. Obtenido de https://www2.deloitte.com/es/es/pages/technology/articles/roles-


y-responsabilidades-scrum.html

Rodríguez, S. (17 de Mayo de 2020). SCRUMIA. Obtenido de https://www.scrumio.com/blog/valores-


scrum-como-ponerlos-en-
practica/#:~:text=La%20guía%20Scrum%20propone%20cinco,nunca%20deben%20quebrantar%
20tales%20valores.

Varela, A. (19 de Febrero de 2021). LINKEDIN. Obtenido de https://www.linkedin.com/pulse/historia-y-


evolución-de-scrum-agustin-varela/?originalSubdomain=es

walter.lara.37. (HACE 8 AÑOS). PLATZI. Obtenido de https://platzi.com/blog/metodologia-scrum-


fases/#:~:text=Scrum%20es%20un%20framework%20que,su%20responsabilidad%20en%20el%2
0proyecto.

También podría gustarte