2da Entrega Proyecto Grupal
2da Entrega Proyecto Grupal
2da Entrega Proyecto Grupal
PRESENTADO POR:
PARA:
MODULO:
INGENIERIA DE SOFTWARE I
1
Contenido
1. INTRODUCCION. .................................................................................................... 1
2. PROPOSITO Y ALCANCE ....................................................................................... 2
2.1. Propósito ............................................................................................................. 2
2.2. Alcance ................................................................................................................ 2
3. OBJETIVOS .............................................................................................................. 3
3.1. Objetivo General ..................................................................................................... 3
3.2. Objetivos Específicos........................................................................................... 3
4. DESCRIPCION DEL PROBLEMA ........................................................................... 4
5. JUSTIFICACION ...................................................................................................... 5
6. MODELOS DE PROCESOS...................................................................................... 6
7.MODELO SELECCIONADO: MODELO DE PROCESOS INCREMENTAL ............... 8
7.1 Ventajas del modelo de proceso incremental .......................................................... 10
7.2 Desventajas del modelo de procesos incremental .................................................... 10
7.3 Riesgos asociados al aplicar el modelo de procesos incremental. ............................ 11
7.3.1 ¿Cómo mitigar los riesgos?.................................................................................. 12
7.3.2 ¿Por qué la elección del modelo de procesos incremental? ................................... 13
7.3.3¿Por qué no elegimos otros modelos de procesos de desarrollo? ........................... 14
8. ACTIVIDADES A DESAROLLAR ............................................................................ 15
8.1 Metodología Scrum ................................................................................................ 15
8.1.1 Roles ............................................................................................................... 15
8.1.2 Scrum Master – Líder del proyecto .................................................................. 15
8.1.3 ProductOwner – cliente ................................................................................... 15
8.1.4 Team – equipo de trabajo (desarrolladores) ...................................................... 16
8.1.5 Users – Usuarios finales .................................................................................. 16
8.2 Artefactos ............................................................................................................... 16
8.2.1 Product Backlog – Lista general de actividades del sistema ............................. 16
8.2.2 Sprint Backlog – Lista de actividades a desarrollar específicas en el Sprint ...... 16
8.2.3 Burndown – Incremento .................................................................................. 17
8.3 Ceremonias ............................................................................................................ 17
8.3.1 Sprint Planning ................................................................................................ 17
8.3.2 Daily Scrum .................................................................................................... 18
8.3.3 Sprint Review .................................................................................................. 18
8.3.4 Retrospective – Retrospectiva del sprint .......................................................... 18
8.4 Herramientas .......................................................................................................... 19
2
8.4.1 Diagrama de Gantt. .......................................................................................... 19
8.4.2 Herramienta Online Trello ............................................................................... 19
9. LEVANTAMIENTO DE REQUISITOS DEL SISTEMA ........................................ 20
9.2 Requerimientos funcionales.................................................................................... 20
9.2 Requerimientos no funcionales observables vía ejecución ...................................... 24
9.3 Especificación de los casos de uso de requerimientos funcionales........................... 29
9.3.1 Registrar profesional........................................................................................ 29
9.3.2 Registrar cliente a través del portal web. .......................................................... 29
9.3.3 Autenticación del usuario. ............................................................................... 30
9.3.4 Buscar profesional de la salud. ......................................................................... 30
9.3.5 Consultar agenda del profesional. .................................................................... 31
9.3.6 Seleccionar agenda disponible del profesional y reservar. ................................ 32
9.3.7 Pagar sesión en línea........................................................................................ 33
9.3.8 Cambiar fecha de la sesión............................................................................... 33
9.3.9 Registro de servicios y agenda del profesional. ................................................ 34
9.3.10 Consultar sesiones agendadas. ....................................................................... 35
9.3.11 Consulta información de clientes agendados. ................................................. 35
9.3.12 Genera reportes.............................................................................................. 36
10. DIAGRAMA DE CLASES .................................................................................... 38
CONCLUSIÓN................................................................................................................ 39
Bibliografía .................................................................................................................. 40
3
LISTA DE TABLAS
4
LISTA FIGURAS
5
1. INTRODUCCION.
Gracias a los diferentes aportes que se han dado para el mejoramiento en la calidad del
software, hoy en día se cuenta con diferentes modelos, metodologías, herramientas que
contar con una herramienta que le permita registrar una serie de profesionales de la salud
que ofrecen diferentes servicios de acuerdo con una agenda definida y permitir a los
usuarios en línea buscar el profesional que más se adapta a sus necesidades y agendar una
cita con esta profesional una vez ha realizado el respectivo pago del servicio.
el cual se mencionan algunas de sus características, sus desventajas al compararlo con otros
1
2. PROPOSITO Y ALCANCE
2.1. Propósito
podrá gestionar su agenda de acuerdo a su disponibilidad horaria del día a día, generar
reportes, administrar datos y realizar pagos de las consultas o servicios que se tomen con
cada profesional.
Adicional controlar sus tiempos de disponibilidad para prestar sus servicios de manera
autónoma en donde es el sistema el encargado de realizar estas labores, sin tener que
2.2. Alcance
El sistema deberá ser capaz de administrar toda la información que lo nutre y generar
Contará con filtros adecuados para mejorar la usabilidad del mismo, y así facilitar la
búsqueda de usuarios y profesionales. Gestionará la agenda del profesional para evitar que
2
3. OBJETIVOS
Investigar y profundizar acerca del modelo incremental para analizar sus beneficios y
contras con el fin de mitigar los problemas que este puede presentar a lo largo del proceso
del desarrollo del software buscando como solucionar y afrontar cada aspecto y/o caso que
3
4. DESCRIPCION DEL PROBLEMA
Se necesita una herramienta tecnológica que permita registrar una serie de profesionales de
la salud que ofrecen diferentes servicios de acuerdo con una agenda definida y permitir a
los usuarios en línea buscar el profesional que más se adapta a sus necesidades y agendar
una cita previa con esta profesional una vez realizado el respectivo pago del servicio, para
pasando desde un claro análisis con argumentos válidos para concluir cuál es el mejor
modelo a desarrollar y cómo este se relaciona con la metodología scrum para afrontar el
4
5. JUSTIFICACION
idea de negocio, en la que buscamos llegar a concluir y argumentar el por qué es el mejor,
analizará y se propondrá como mitigar estos problemas con el fin de encontrar las mejores
soluciones en caso de llegar a cruzarnos con estas falencias, sin embargo con este
para desarrollar, esto necesitará de bastante análisis antes de comenzar a programar ya que
futuro para lograr evidenciar con mayor facilidad que percances encontrará en el desarrollo.
metodología scrum esto para estar en constante comunicación, pero en una comunicación
asertiva para proponer sus ideas y unir cada una de ellas para tomar una decisión y concluir
cuál es el mejor modelo de procesos en otras palabras cuál es el más conveniente esto como
de un software ya que se cree que simplemente es comenzar a programar, sin pensar en que
puede llegar a pasar en un futuro y así mismo se busca hacer notar la importancia de un
5
6. MODELOS DE PROCESOS
Modelo Descripción
Modelo en ● Ordena exactamente las etapas del ciclo de vida del software, esto significa que
cascada en el inicio de una etapa debe esperar a la finalización de la anterior.
● Su desempeño es factible en proyectos con requisitos claros o cuando se trabaja
con herramientas técnicas.
Modelo en V ● Su representación gráfica que proviene del M. Cascada, solo que establece una
correlación entre los resultados de las actividades de especificación y las de
validación de las mismas.
Modelo Espiral ● Las etapas de este modelo se conforman en una espiral, en la que cada una
representa un conjunto de actividades.
Tabla No. 1 Descripción de los modelos de procesos. Elaboración propia.
En la siguiente tabla se puede analizar algunas ventajas y desventajas que presentan los
diferentes modelos tradicionales, por lo que una vez analizados se elegirá una de ellos para
Modelo en ● Se basa en la organización de las fases ● Al tener que pasar si o si por el proceso
cascada para que estas no se mezclen en el de prueba ponerle a operar es
ciclo de vida del. demorado ya que este debe estar
● la división de features se facilita en completo.
roles (Personas) independientes.
● Cuando se tienen la totalidad de los
requisitos específicos y las
herramientas a utilizar es totalmente
perfecto para el desarrollo.
6
ejecución inicial ya que su procesos de tiempo real, de un gran
Modelo implementación es parcial. nivel de seguridad y/o de alto índice de
Iterativo ● Los modelos iterativos e incrementales riesgos.
Incremental bajan en gran proporción los riesgos. ● Solicita una gran demanda de
Ya que se basan en la planificación, administrativa y técnica.
retroalimentación sobre los avances. ● Sus metas deben ser claras para poder
● Resulta más sencillo acomodar saber sobre el estado del proyecto.
cambios al acotar el tamaño de los
incrementos
7
7.MODELO SELECCIONADO: MODELO DE PROCESOS INCREMENTAL
Según el blog de programación estructurada dice: “El modelo incremental fue propuesto
por Harlan Mills en el año 1980. Surgió el enfoque incremental de desarrollo como una
retrasar la toma de decisiones en los requisitos hasta adquirir experiencia con el sistema.
Figura 1: Tomado de: Librado, Bonifacio. Gervacio. (Septiembre 2013). Sistema de seguimiento al crédito(Tesis). Santiago
de Queretaro: Tesis. www.uteq.edu.mx/tesis/ITIC/0303.pdf.
El modelo de procesos que se elegirá para el desarrollo del requerimiento del cliente es el
incremental, ya que se basa en varios ciclos de cascada, pero realimentados, es decir, con
equipo de desarrolladores tener un avance en la ejecución del proyecto, sino que permite al
algunas limitaciones.
8
Para que en el desarrollo de un proyecto en cual se utilice el modelo de proceso incremental
desarrollo.
Gracias a que el cliente utiliza partes básicas funcionales del software, este puede ir
que al principio permitirá solo almacenar datos en una tabla. En un segundo incremento
permitirá relacionar los datos de cada tabla, graficar datos, realizar operaciones básicas
como sumas, restas, filtros, insertar fórmulas, ecuaciones, por lo que en cada incremento se
Una de las cosas más importantes que nos llevó a tomar la decisión de trabajar con el
proceso incremental es el poder trabajar con la metodología Scrum ya que es uno de los
métodos ágiles más populares. ¿Pero qué es scrum? Es un framework adaptable, iterativo,
rápido, flexible y eficaz, diseñado para ofrecer un valor considerable en forma eficiente a lo
9
Partiendo de que el método seleccionado es el incremental, esta metodología nos permitirá
cumplir adecuadamente con los requerimientos y el mínimo valor producto para la entrega.
Al trabajar con esta metodología llevaremos un control de la gestión del proyecto, esto
Este modelo tradicional presenta las siguientes ventajas que lo hacen más robusto e
● Este modelo es muy útil cuando no se cuenta con buen personal para su desarrollo.
errores progresivamente.
cuenta con ciertos riesgos que vienen directamente asociados a las desventajas de este, y a
su vez, a las necesidades que el cliente describe con respecto al producto de software del
sector salud que él requiere, por lo tanto, teniendo en cuenta la necesidad descrita para este
● Al ser un modelo tan versátil, se puede incurrir en tiempos mayores a los esperados
● Al no contar con tiempos definidos se puede incrementar los costos previstos para el
proyecto.
● Teniendo en cuenta que, el alcance del proyecto es ambiguo con respecto a los
requisitos del cliente, y siendo que no se puede medir con exactitud, podría resultar
● El cliente no siempre está disponible para las reuniones agendadas, lo cual atrasaría
11
7.3.1 ¿Cómo mitigar los riesgos?
el impacto que este pueda generar en la ejecución del proyecto de software, por lo
cual las acciones propuestas para mitigar el impacto que estos riesgos podrían
1. Concertar una reunión con el equipo de trabajo, para exponer las necesidades del
2. Organizar entrevistas con las partes interesadas, contando con el aval del cliente,
3. Acordar una reunión con el cliente para despejar las dudas relacionadas al
Al tener claridad en el alcance, se puede ser más preciso en tiempos y costos del
proyecto de software.
4. Programar reuniones semanales siendo flexibles con el cliente, para que este
como contacto con el cliente, que esté disponible para reuniones extraordinarias.
También debe saber interpretar al cliente, para que con cada incremento no se
12
generen re-procesos.
6. Asignar el proyecto a un equipo de trabajo hábil, con experiencia y buena
comunicación, logrando así ser más precisos con los tiempos y costos que se
7. Aplicar una metodología ágil, como por ejemplo scrum, que, aplicada al modelo
La elección del modelo de procesos incremental, para este proyecto de software, se debe a
que este se ajusta más a la caracterización de la necesidad del cliente, y a nosotros como
empresa de software nos beneficia para brindar un mejor servicio. Este modelo también
aporta más ventajas que desventajas, puesto que de todas las desventajas que puede tener el
modelo, muy pocas afectan al proyecto, al contrario de las ventajas que sí aplican en su
mayoría e impactan de manera positiva, para que este sea exitoso. Además, las estrategias
que hemos analizado para mitigar los riesgos asociados a nuestra elección son efectivas,
para que el porcentaje de éxito sea mayor con relación al de fracaso, culminando así en un
producto funcional, ajustándose realmente a las necesidades del cliente, y siendo la mejor
Consideramos que, con relación a los otros modelos que deben tener todos los
requerimientos para empezar a desarrollar, este nos permite ser flexibles e iniciar sin la
a ambas partes.
13
7.3.3¿Por qué no elegimos otros modelos de procesos de desarrollo?
Los otros modelos, desde nuestro análisis, no tuvieron la viabilidad suficiente para
razón principal, es que los posibles riesgos serían mayores, y difíciles de mitigar, generando
poco específico al describir sus necesidades, en cambio el modelo tiende a ser muy rígido
en sus fases, podríamos incurrir en mayores tiempos y costos, al tener que realizar algún
El modelo de procesos por prototipos tampoco nos funcionaria al aplicarlo a este proyecto,
ya que este se basa en mostrar mockups (prototipos) sin funcionalidad al cliente, este podría
El modelo de procesos en espiral al ser basada en flujo de procesos evolutivos, tampoco nos
resultó como la mejor opción, ya que además de requerir prototipos, al igual que el modelo
con el cliente, esto podría ser molesto y poco eficiente, pues se debe contar con el tiempo
reuniones.
14
8. ACTIVIDADES A DESAROLLAR
administrar las citas médicas dentro de una clínica; se realizará una integración de algunos
aspectos de la metodología ágil de Scrum, junto con algunos aspectos de RUP, por lo que
se obtendrá un producto con de gran calidad al combinar estas dos metodologías dentro de
un mismo proyecto.
8.1.1 Roles
La metodología ágil Scrum dará como garantía una correcta planificación y gestión del
proyecto, usando esta metodología se pondrá un orden a las entregas y avances del
proyecto. Para sacar un producto de calidad es indispensable que cada persona tome foco
en sus actividades y así beneficiar el negocio, algunos de los roles que usaremos serán los
siguientes:
Será la persona encargada de agilizar el trabajo del equipo quitando bloqueos, negociando
con el cliente, esta persona mantendrá un buen ánimo al equipo y así mismo evitando que
un tercero pida cosas extras del scope inicial. A su vez deberá provocar que el equipo auto
gestione actividades.
Será el cliente, velará por sus beneficios de empresa, decidirá funcionalidades, será la
Serán las personas que usarán lo que se desarrolló o se está realizando. Básicamente sus
8.2 Artefactos
Los artefactos son aquellos que van a garantizar la transparencia y organización de las
Será el documento de alto nivel para todo el proyecto, contendrá descripciones genéricas de
todos los requerimientos, funcionalidades etc. Se hará una lista ordenada del proyecto
prioritaria, este será el único canal para incluir más actividades. En esta lista estarán todas
actividades que realizaremos durante el Sprint, haremos sprint de dos semanas, día a día
16
desmenuzamos estas actividades y así daremos una mayor garantía a terminar los ítems
especificados.
Se hará una gráfica que será mostrada públicamente en donde medirá la cantidad de
requisitos en el Backlog del proyecto, esta nos ayudará a identificar los requisitos
pendientes al comienzo de cada sprint, conectaremos los puntos de todos los Sprints
completados, y podremos ver el progreso del proyecto. Lo normal es que esta línea sea
terminado.
8.3 Ceremonias
Se hará un ciclo de 15 días 2 semanas por Sprint, el lunes de cada ciclo dará el lugar para
realizar esta reunión. En esta reunión se encargará de planificar el trabajo que se hará
durante el sprint, se analizará prioridades y se focalizará en estas. Una vez definidas las
actividades a realizar lo que se hará es puntuar estas actividades a nivel de equipo en donde
todos tendremos que estar de acuerdo para la asignación de tiempo a esa actividad en
concreto. Esto definirá la velocidad del sprint y lo que conseguiremos en ese ciclo. Se
tendrá un margen de contingencia por si algún integrante del equipo tiene alguna dificultad
para desarrollar la actividad no nos afecte la velocidad del sprint de cara al cliente.
17
8.3.2 Daily Scrum
estatus del trabajo a nivel equipo, se hará a modo rápido y se responderán las siguientes 3
preguntas:
Esta reunión deberá iniciar puntualmente en la mañana antes de empezar la labor será
Esta reunión tendrá una duración como máximo de 4 horas en donde se buscará un
se comentará las actividades realizadas y veremos los avances del proyecto. También se
analizarán las actividades que no fueron realizadas o completadas, las actividades que no
están totalmente terminadas o completadas no pueden ser mostradas en esta reunión hasta
culminarlas.
Se busca analizar cómo fue en el Sprint terminado para dar más agilidad a los que vienen.
Como propósito es realizar una mejora continua del proceso. El tiempo límite será de 4H.
18
8.4 Herramientas
El hacer un plan de proyecto basándonos en una metodología nos ha llevado a buscar las
mejores herramientas para el desarrollo del software por lo cual a nivel de gestión usaremos
lo siguiente:
Este servirá para controlar tiempos de cara al cliente, si seguimos un planning de inicio a
requerimientos extra scope este documento nos será clave para que el cliente se dé cuenta
que hay prioridades en tiempos y sólo si él lo decide será uno primero que otro, el diagrama
Este tablero será clave para el flujo del desarrollo ya que tendremos los diferentes artefactos
expresado en columnas y nos será fácil gestionarlo en cada daily scrum ya que asignaremos
actividades a cada integrante del equipo y podremos ver el tiempo estimado vs el tiempo de
ejecución. De esta manera controlaremos que todo el equipo vaya a una velocidad
adecuada.
19
9. LEVANTAMIENTO DE REQUISITOS DEL SISTEMA
ID Requerimiento Descripción
● Nombre completo.
● Dirección
● Teléfono
vez.
● Tipo Identificación,
● Número Identificación
● Número Identificación
20
El cliente ingresa al portal web y selecciona la
● Nombre completo.
● Género.
● Teléfono
● Dirección de residencia.
● Tipo de documento.
RF002 Registrar clientes.
● Número de documento.
● Correo electrónico.
correo.
21
después debería redirigirlo a la vista pertinente
según su rol.
● Nombres.
RF004 Buscar profesional
● Tipo de servicio.
● Ubicación.
22
confirma el pago en nuestro sistema.
el cliente.
cruce de fechas.
23
los detalles de esta.
descargar reporte.
minutos.
24
El sistema será desarrollado por un excelente equipo el cual aplicará
aplicación.
adecuadamente.
25
Se realizará una copia de seguridad constante de la información en
médicos.
discapacidad.
administrador de seguridad.
26
Atributo de calidad Descripción
ajustes en caliente.
información.
27
El sistema será desarrollado por profesionales en desarrollo de
similares.
futuro requiere algún ajuste por datos faltantes, o que a futuro sean
Escalabilidad
exigidos por ley, estos se pueden agregar si afectan el
29
2. Valide su mensaje para continuar con el registro.
Descripción El cliente crea su cuenta de registro al sistema.
30
Actores Cliente.
Flujo Básico Los datos del profesional de salud ingresados coincidieron con la
búsqueda.
1. Cliente registrado.
31
2. Inicio de sesión.
3. Que el cliente o usuario realice la búsqueda del profesional,
primeramente.
4. Coincidencias de búsqueda del profesional.
Precondición
Flujo N.A.
Alternativo
32
Alternativo
Tabla 10. Fuente de elaboración: Propia
33
Precondición 1. El usuario debe de estar registrado en el sistema
2. Iniciar sesión.
Postcondición N. A
34
Flujo N. A
Alternativo
Tabla 13. Fuente de elaboración: Propia
Flujo Básico Ver los detalles de las sesiones, consultar la agenda y organizar por
fecha.
Flujo N. A
Alternativo
Tabla 14. Fuente de elaboración: Propia
35
Actores Profesional de la salud – Administrador.
Postcondición N. A
36
2. El sistema presenta la opción de generar reporte dado por un
Flujo Básico rango de fecha.
3. El administrador generar el reporte.
4. El sistema solicita fecha de inicio y fecha final.
5. Genera el reporte del día, mes o años
Flujo 1. El administrador cancela la operación
Alternativo 2. El sistema muestra mensaje de error, por fechas no válidas.
Tabla 16. Fuente de elaboración: Propia
37
10. DIAGRAMA DE CLASES
38
CONCLUSIÓN
El análisis del proyecto que realizamos ha contribuido de manera muy importante para
identificar y resaltar los requerimientos que hay que cubrir y considerar para llevar a cabo
Nos deja muchas cosas importantes que reflexionar y muchas otras se han ido reforzando
con una buena identificación del problema para llevar a cabo una buena implementación.
Adicional consideramos que una de las cosas más importantes de todas es llevar a cabo
antes que nada una planeación de lo que se quiere realizar y que se espera obtener cuando
se lleve a cabo un proyecto, por ende, se debe desarrollar una evaluación correcta de las
posibles alternativas que se tengan antes de iniciar cualquier cosa, tanto del producto que se
va a adquirir así como también de los posibles caminos para hacer la implementación del
mismo.
39
Bibliografía
om.loginbiblio.poligran.edu.co/?il=686
2. https://sites.google.com/site/programacion1electronica/metodologias-de-desarrollo-
de-software/modelo-incremental-o-evolutivo
5. Características y fases del modelo incremental | OBS Business School. (2019). OBS
management/metodologias-agiles/caracteristicas-y-fases-del-modelo-incremental
6. Tabla comparativa modelos. (s. f.). [Tabla comparativa acerca de los modelos de
https://www.fing.edu.uy/tecnoinf/mvd/cursos/ingsoft/material/teorico/is02b-
Tabla%20Comparativa%20Modelos.pdf.
7. https://sites.google.com/site/programacion1electronica/metodologias-de-desarrollo-
40