Desarrollar un sistema de biblioteca que atienda las necesidades de los bibliotecarios y los usuarios de la biblioteca puede ser una tarea desafiante. Para garantizar que el sistema cumpla con los requisitos de todos los interesados y se entregue dentro del plazo esperado, se puede adoptar un enfoque de desarrollo ágil. En este artículo presentamos un plan de desarrollo ágil para un sistema de biblioteca que puede completarse en 10 sprints durante un período de 100 días laborables.
Escenario de problema – Un sistema de biblioteca
La biblioteca pública local está experimentando problemas con su sistema de catálogo en línea. El sistema ha estado caído de forma intermitente durante la semana pasada, causando frustración tanto para el personal de la biblioteca como para los usuarios. Algunos usuarios han informado que no pueden buscar libros, mientras que otros han reportado que no pueden renovar sus materiales prestados en línea.
El personal de la biblioteca ha estado recibiendo un alto volumen de llamadas telefónicas e consultas presenciales sobre la interrupción del sistema, lo que está causando retrasos en otros servicios de la biblioteca. Además, los miembros del personal han notado que el sistema funciona lentamente incluso cuando está operativo, lo que genera más frustración tanto para el personal como para los usuarios.
El departamento de TI de la biblioteca ha estado trabajando para identificar y solucionar el problema, pero hasta ahora no han tenido éxito en restaurar el sistema a su plena funcionalidad. Mientras tanto, el personal de la biblioteca ha estado realizando manualmente los préstamos y renovaciones de materiales para los usuarios, lo que está ocupando una cantidad significativa de tiempo y causando retrasos en otras tareas.
La directora de la biblioteca ha solicitado al departamento de TI que proporcione una cronología sobre cuándo el sistema volverá a funcionar plenamente, así como un plan para prevenir problemas similares en el futuro. La directora también está considerando contratar a un consultor para evaluar la infraestructura tecnológica general de la biblioteca y ofrecer recomendaciones para mejoras.
Identificar casos de uso candidatos a partir de un escenario de problema
Para identificar una lista de casos de uso candidatos a partir de un escenario de problema, puede seguir estos pasos:
- Identifique los actores principales en el escenario de problema. Los actores son las personas, organizaciones o sistemas que interactúan con el sistema que se está desarrollando.
- Para cada actor, identifique sus objetivos o metas. ¿Qué quiere lograr el actor al usar el sistema?
- Identifique las diferentes formas en que el actor interactúa con el sistema para alcanzar sus objetivos. Esto puede incluir las acciones que realiza, la información que proporciona o la información que recibe del sistema.
- Para cada interacción, identifique el caso de uso específico que lo describe. Un caso de uso es una descripción de una interacción específica entre un actor y el sistema, y generalmente incluye un conjunto de pasos o acciones que el actor realiza para alcanzar su objetivo.
- Revise y refine la lista de casos de uso candidatos para asegurarse de que sean completos, relevantes y no redundantes. Es posible que deba combinar o dividir casos de uso, o eliminar aquellos que no son esenciales para el sistema.
En general, el objetivo de identificar una lista de casos de uso candidatos es garantizar que el sistema que se está desarrollando satisfaga las necesidades y requisitos de todos los interesados, y que ofrezca un conjunto claro y completo de funciones y características que les permitan alcanzar sus objetivos.
A continuación se presentan algunos casos de uso candidatos para un sistema de biblioteca:
- Buscar en el catálogo: Los usuarios pueden buscar libros, DVDs y otros materiales en el catálogo de la biblioteca.
- Colocar una reserva: Los usuarios pueden reservar un material que actualmente está prestado o aún no está disponible.
- Prestar materiales: Los usuarios pueden retirar libros, DVDs y otros materiales de la biblioteca.
- Renovar materiales: Los usuarios pueden renovar sus materiales prestados en línea o presencialmente.
- Pagar multas: Los usuarios pueden pagar cualquier multa o cargo que adeuden a la biblioteca.
- Solicitar préstamo interbibliotecario: Los usuarios pueden solicitar prestar materiales de otra biblioteca fuera de su sistema local.
- Gestionar la información de la cuenta: Los usuarios pueden gestionar su información personal, como actualizar su dirección o número de teléfono.
- Gestionar el historial de lectura: Los usuarios pueden rastrear los libros que han leído y dejar comentarios o calificaciones.
- Gestionar lista de deseos: Los usuarios pueden crear una lista de deseos con los libros que desean leer y recibir notificaciones cuando estén disponibles.
- Recibir alertas: Los usuarios pueden recibir alertas cuando sus reservas estén disponibles o cuando sus materiales prestados estén a punto de vencer.
Cómo identificar actores
Para identificar actores y vincularlos a los casos de uso como actores primarios y secundarios, puede seguir estos pasos:
- Identifique a los principales interesados que interactuarán con el sistema. Estos interesados pueden incluir usuarios, administradores, clientes y otras partes que utilizarán o se verán afectadas por el sistema.
- Para cada interesado, identifique sus objetivos principales y metas al usar el sistema. ¿Qué están tratando de lograr al usar el sistema? Esto le ayudará a identificar los casos de uso primarios para cada interesado.
- Identifique cualquier objetivo adicional o objetivo que el interesado pueda tener, pero que no sea central para sus casos de uso principales. Estos objetivos pueden implicar interactuar con otros interesados o subsistemas dentro del sistema, o pueden estar relacionados con la administración o mantenimiento del sistema. Esto le ayudará a identificar cualquier actor secundario y sus casos de uso correspondientes.
- Identifique cualquier interacción entre los actores principales y secundarios, y entre los actores y el sistema. Estas interacciones pueden implicar compartir datos, comunicar información o desencadenar acciones dentro del sistema. Esto le ayudará a definir los límites y el alcance de los casos de uso.
- Cree una lista de casos de uso y actores, y vincule cada caso de uso a sus actores principales y secundarios. Esto le ayudará a asegurarse de que todos los interesados estén considerados en el modelo de casos de uso, y de que el sistema se diseñe para satisfacer las necesidades de todos los usuarios y administradores.
El objetivo de identificar actores y vincularlos a los casos de uso es crear una imagen clara y completa de la funcionalidad del sistema, y asegurarse de que todos los interesados se consideren en el proceso de diseño y desarrollo. Esto ayudará a garantizar que el sistema final satisfaga las necesidades y requisitos de todos los usuarios y administradores.
Aquí tiene una tabla que resume la lista de casos de uso candidatos para un sistema de biblioteca, junto con sus actores y objetivos asociados:
| Casos de uso | Actor principal | Actor(es) secundario(s) | Objetivo del caso de uso |
|---|---|---|---|
| Buscar en el catálogo | Usuario | Ninguno | Permitir a los usuarios buscar libros, DVDs y otros materiales en el catálogo de la biblioteca. |
| Colocar una reserva | Usuario | Ninguno | Permitir a los usuarios reservar un elemento que actualmente está prestado o aún no está disponible. |
| Prestar materiales | Usuario | Personal de la biblioteca | Permitir a los usuarios tomar prestados libros, DVDs y otros materiales de la biblioteca. |
| Renovar materiales | Usuario | Personal de la biblioteca | Permitir a los usuarios prorrogar la fecha de devolución de sus elementos prestados. |
| Pagar multas | Usuario | Ninguno | Permitir a los usuarios pagar cualquier multa o cargo que adeuden a la biblioteca. |
| Solicitar préstamo entre bibliotecas | Usuario | Personal de préstamo entre bibliotecas | Permitir a los usuarios solicitar prestamos de materiales de otra biblioteca fuera de su sistema local. |
| Gestionar la información de la cuenta | Usuario | Ninguno | Permitir a los usuarios gestionar su información personal, como actualizar su dirección o número de teléfono. |
| Gestionar el historial de lectura | Usuario | Ninguno | Permitir a los usuarios rastrear los libros que han leído y dejar reseñas o calificaciones. |
| Gestionar la lista de deseos | Usuario | Ninguno | Permitir a los usuarios crear una lista de deseos de libros que desean leer y recibir notificaciones cuando estén disponibles. |
| Recibir alertas | Usuario | Ninguno | Permitir a los usuarios recibir alertas cuando sus reservas estén disponibles o cuando sus artículos prestados estén a punto de vencer. |
Priorizar casos de uso
Priorizar los casos de uso es un paso importante en el proceso de desarrollo de software porque ayuda a garantizar que las características más importantes y valiosas del sistema se desarrollen primero. La priorización ayuda a enfocar los esfuerzos y recursos del equipo de desarrollo en las características que brindarán más valor a los usuarios finales y a los interesados del sistema.
Aquí tiene una lista priorizada de los casos de uso, del más importante al menos importante, junto con un campo de prioridad:
| Casos de uso | Actor principal | Actor(es) secundario(s) | Objetivo del caso de uso | Prioridad |
|---|---|---|---|---|
| Prestar materiales | Usuario | Personal de biblioteca | Permita a los usuarios tomar prestados libros, DVDs y otros materiales de la biblioteca. | 1 |
| Buscar en el catálogo | Usuario | Ninguno | Permita a los usuarios buscar libros, DVDs y otros materiales en el catálogo de la biblioteca. | 2 |
| Colocar una reserva | Usuario | Ninguno | Habilite a los usuarios para reservar un artículo que actualmente está prestado o aún no está disponible. | 3 |
| Renovar materiales | Usuario | Personal de la biblioteca | Permita a los usuarios prorrogar la fecha de devolución de sus artículos prestados. | 4 |
| Solicitar préstamo entre bibliotecas | Usuario | Personal de préstamos entre bibliotecas | Habilite a los usuarios para solicitar préstamos de materiales de otra biblioteca fuera de su sistema local. | 5 |
| Pagar multas | Usuario | Ninguno | Permita a los usuarios pagar cualquier multa o cargo que adeuden a la biblioteca. | 6 |
| Recibir alertas | Usuario | Ninguno | Permita a los usuarios recibir alertas cuando sus reservas estén disponibles o cuando sus artículos prestados estén a punto de vencer. | 7 |
| Gestionar la información de la cuenta | Usuario | Ninguno | Permita a los usuarios gestionar su información personal, como actualizar su dirección o número de teléfono. | 8 |
| Gestionar la lista de deseos | Usuario | Ninguno | Habilite a los usuarios para crear una lista de deseos de libros que desean leer y recibir notificaciones cuando estén disponibles. | 9 |
| Gestionar el historial de lectura | Usuario | Ninguno | Permita a los usuarios rastrear los libros que han leído y dejar reseñas o calificaciones. | 10 |
Observe que el orden de prioridad puede variar según las necesidades y objetivos específicos del sistema de biblioteca, y esta es solo una posible priorización basada en las necesidades generales de los usuarios de bibliotecas.
Formar el equipo y estimar el costo
Por ejemplo,
Para estimar el costo de los recursos humanos durante un período de 6 meses en Hong Kong, debemos considerar los roles y los rangos salariales mínimos y promedio para cada rol.
A continuación se presenta una estimación del costo para un equipo de 10 personas, asumiendo el requisito mínimo de personal y el punto medio del rango salarial promedio:
- Gerente de proyecto:
- Salario mensual mínimo: HKD 35.000
- Salario mensual promedio: HKD 60.000
- Costo estimado para 6 meses (salario mínimo): HKD 210.000
- Costo estimado para 6 meses (salario promedio): HKD 360.000
- Propietario del producto:
- Salario mensual mínimo: HKD 25.000
- Salario mensual promedio: HKD 45.000
- Costo estimado para 6 meses (salario mínimo): HKD 150.000
- Costo estimado para 6 meses (salario promedio): HKD 270.000
- Scrum Master:
- Salario mensual mínimo: HKD 25.000
- Salario mensual promedio: HKD 45.000
- Costo estimado para 6 meses (salario mínimo): HKD 150.000
- Costo estimado para 6 meses (salario promedio): HKD 270.000
- Diseñador UX/UI:
- Salario mensual mínimo: HKD 20.000
- Salario mensual promedio: HKD 35.000
- Costo estimado para 6 meses (salario mínimo): HKD 120.000
- Costo estimado para 6 meses (salario promedio): HKD 210.000
- Desarrolladores:
- Salario mensual mínimo: HKD 18.000
- Salario mensual promedio: HKD 30.000
- Costo estimado para 6 meses (salario mínimo): HKD 540.000 (asumiendo 6 desarrolladores)
- Costo estimado para 6 meses (salario promedio): HKD 900.000 (asumiendo 6 desarrolladores)
- Ingeniero de Pruebas/Calidad:
- Salario mensual mínimo: HKD 18.000
- Salario mensual promedio: HKD 30.000
- Costo estimado para 6 meses (salario mínimo): HKD 108.000
- Costo estimado para 6 meses (salario promedio): HKD 180.000
- Ingeniero DevOps:
- Salario mensual mínimo: HKD 20.000
- Salario mensual promedio: HKD 35.000
- Costo estimado para 6 meses (salario mínimo): HKD 120.000
- Costo estimado para 6 meses (salario promedio): HKD 210.000
Asumiendo el rango salarial mínimo, el costo total para un equipo de 10 durante 6 meses sería aproximadamente HKD 1.308.000. Asumiendo el punto medio del rango salarial promedio, el costo total sería aproximadamente HKD 2.400.000. Tenga en cuenta que esto es solo una estimación, y el costo real puede variar según los detalles específicos del proyecto y la compensación acordada con cada miembro del equipo.
Crear un plan de desarrollo ágil
Aquí tiene un plan de desarrollo ágil para el sistema de biblioteca con el equipo propuesto anteriormente, asumiendo 10 sprints con cada uno de 10 días laborables:
Sprint 1 (Días 1-10):
- Realizar la reunión de lanzamiento del proyecto
- Desarrollar historias de usuario y priorizar el backlog
- Crear prototipos de las pantallas principales
- Configurar el entorno de desarrollo
- Comenzar el desarrollo del sistema de autenticación y autorización de usuarios
Sprint 2 (Días 11-20):
- Completar el desarrollo del sistema de autenticación y autorización de usuarios
- Comenzar el desarrollo de la funcionalidad de búsqueda de libros
- Comenzar el desarrollo de la funcionalidad de préstamo de libros
- Revisar los prototipos con los interesados y realizar los cambios necesarios
Sprint 3 (Días 21-30):
- Completar el desarrollo de la funcionalidad de búsqueda de libros
- Completar el desarrollo de la funcionalidad de préstamo de libros
- Comenzar el desarrollo de la funcionalidad de devolución de libros
- Comenzar el desarrollo de la funcionalidad de reserva de libros
Sprint 4 (Días 31-40):
- Completar el desarrollo de la funcionalidad de devolución de libros
- Completar el desarrollo de la funcionalidad de reserva de libros
- Comenzar el desarrollo de la funcionalidad de perfil de usuario
- Comenzar el desarrollo de la funcionalidad de recomendación de libros
Sprint 5 (Días 41-50):
- Completar el desarrollo de la funcionalidad de perfil de usuario
- Completar el desarrollo de la funcionalidad de recomendación de libros
- Comenzar el desarrollo de la funcionalidad de reseñas y calificaciones de libros
- Comenzar el desarrollo del panel administrativo para bibliotecarios
Sprint 6 (Días 51-60):
- Completar el desarrollo de la funcionalidad de reseñas y calificaciones de libros
- Completar el desarrollo del panel administrativo para bibliotecarios
- Comenzar el desarrollo de la funcionalidad de compra y gestión de inventario de libros
- Comenzar el desarrollo de la funcionalidad de gestión de multas
Sprint 7 (Días 61-70):
- Completar el desarrollo de la funcionalidad de compra de libros y gestión de inventario
- Completar el desarrollo de la funcionalidad de gestión de multas
- Comenzar el desarrollo de la funcionalidad de informes y análisis
- Comenzar el desarrollo de la aplicación móvil
Sprint 8 (Días 71-80):
- Completar el desarrollo de la funcionalidad de informes y análisis
- Completar el desarrollo de la aplicación móvil
- Comenzar el desarrollo de la integración con sistemas externos (por ejemplo, pasarela de pagos)
Sprint 9 (Días 81-90):
- Completar el desarrollo de la integración con sistemas externos
- Comenzar las pruebas y corrección de errores
- Comenzar las pruebas de aceptación del usuario
- Comenzar el desarrollo de documentación y materiales de capacitación
Sprint 10 (Días 91-100):
- Completar las pruebas y corrección de errores
- Completar las pruebas de aceptación del usuario
- Completar el desarrollo de documentación y materiales de capacitación
- Realizar la implementación del sistema
- Realizar la revisión final y el retrospectivo
Este es solo un ejemplo de un plan de desarrollo ágil para el sistema de biblioteca, y el plan real puede variar según las necesidades específicas del proyecto y el avance del equipo durante cada sprint.
Propuesta de proyecto de ejemplo – Sistema de biblioteca
Propuesta de proyecto: Desarrollo ágil para un sistema de biblioteca
Introducción: Estamos entusiasmados por proponer un proyecto de desarrollo ágil para un sistema de biblioteca integral que atienda las necesidades tanto de los bibliotecarios como de los usuarios de la biblioteca. Nuestro sistema propuesto ofrecerá una experiencia fluida de búsqueda de libros, préstamo, devolución, reserva, compra, gestión de inventario y gestión de multas a los usuarios, mientras que proporcionará a los bibliotecarios un panel administrativo, capacidades de informes y análisis. El proyecto ágil propuesto garantizará que el sistema satisfaga las necesidades de todos los interesados y se entregue dentro del plazo esperado.
Objetivos del proyecto: El objetivo de este proyecto es desarrollar un sistema de biblioteca que sea fácil de usar, eficiente y efectivo para gestionar las operaciones de la biblioteca. El sistema ofrecerá las siguientes características y funcionalidades:
- Funcionalidades de búsqueda de libros, préstamo, devolución, reserva, compra, gestión de inventario y gestión de multas para los usuarios.
- Un panel administrativo, capacidades de informes y análisis para los bibliotecarios.
- Integración fluida con sistemas y bases de datos de bibliotecas.
- Interfaz de usuario personalizable para usuarios y bibliotecarios.
Metodología del proyecto: Para alcanzar los objetivos del proyecto, utilizaremos metodologías de desarrollo ágil. El desarrollo ágil es un enfoque iterativo y colaborativo que enfatiza la retroalimentación continua, la planificación flexible y la entrega rápida. Es especialmente adecuado para proyectos complejos con requisitos en evolución, como el sistema de biblioteca.
La metodología de desarrollo ágil se implementará mediante una serie de sprints, cada uno de ellos de duración de 10 días laborables. Utilizaremos un marco Scrum, que es una metodología ágil popular que enfatiza reuniones regulares, comunicación clara y desarrollo incremental.
Cronograma del proyecto: El proyecto se completará en 10 sprints, cada uno de ellos de 10 días laborables. El cronograma es el siguiente:
- Sprint 1: Desarrollo de prototipos, autenticación de usuarios.
- Sprint 2: Funcionalidades de búsqueda y navegación de libros.
- Sprint 3: Funcionalidades de préstamo y devolución de libros.
- Sprint 4: Funcionalidades de reserva y compra de libros.
- Sprint 5: Funcionalidades de gestión de inventario y reportes.
- Sprint 6: Funcionalidades de gestión de multas.
- Sprint 7: Funcionalidades del panel administrativo.
- Sprint 8: Funcionalidades de reportes y análisis.
- Sprint 9: Pruebas, documentación y despliegue.
- Sprint 10: Pruebas finales, documentación y despliegue.
Equipo del proyecto: El equipo del proyecto estará compuesto por los siguientes roles:
- Gerente de proyecto
- Scrum Master
- Propietario del producto
- Desarrolladores (2-3)
- Ingeniero de garantía de calidad
- Redactor técnico
El equipo del proyecto será responsable del desarrollo, pruebas, documentación y despliegue del sistema de biblioteca. El gerente de proyecto supervisará el proyecto, mientras que el Scrum Master se encargará de garantizar que se siga el marco Scrum. El propietario del producto representará a los interesados y asegurará que sus necesidades se satisfagan, mientras que los desarrolladores construirán el sistema. El ingeniero de garantía de calidad se encargará de asegurar que el sistema cumpla con los estándares de calidad, y el redactor técnico documentará el sistema.
Presupuesto: El costo total del proyecto será de 2.000.000 HKD. Esto incluye el costo de los recursos humanos, la infraestructura de hardware y software, y cualquier servicio de terceros necesario para el proyecto.
Conclusión: Creemos que el proyecto propuesto de desarrollo ágil para un sistema de biblioteca dará como resultado un sistema eficiente, efectivo y de fácil uso que satisfaga las necesidades tanto de los usuarios como de los bibliotecarios. Quedamos a la espera de discutir esta propuesta con usted y estamos entusiasmados por trabajar con usted para desarrollar un sistema de biblioteca exitoso.
Ejemplo – Cronograma de pagos
A continuación se presenta un cronograma de pagos para el proyecto propuesto de sistema de biblioteca:
- El 20% del costo total (400.000 HKD) al inicio del proyecto y firma del contrato.
- El 30% del costo total (600.000 HKD) al completar el Sprint 5 y la aceptación por parte del cliente de las funcionalidades entregadas.
- El 30% del costo total (600.000 HKD) al completar el Sprint 8 y la aceptación por parte del cliente de las funcionalidades entregadas.
- El 20% del costo total (400.000 HKD) al desplegar con éxito el sistema en el entorno del cliente y la aceptación del producto final por parte del cliente.
Por favor, háganos saber si tiene alguna pregunta o inquietud respecto a este cronograma de pagos.
Gracias por considerar nuestra propuesta.
Atentamente, [Su nombre]
Ejemplo – Carta de presentación de ejemplo para solicitud de aprobación de proyecto
Estimado [Cliente],
Estamos entusiasmados por presentar nuestra propuesta para el desarrollo de un sistema integral de biblioteca. Nuestro proyecto Agile propuesto ofrecerá a los usuarios una experiencia intuitiva y eficiente en la búsqueda de libros, préstamo, devolución, reservas, compras, gestión de inventario y gestión de multas, al tiempo que brindará a los bibliotecarios un panel administrativo, informes y capacidades de análisis.
Nuestro método propuesto de desarrollo Agile garantizará que el sistema satisfaga las necesidades de todos los interesados y se entregue dentro del plazo previsto. Utilizaremos un marco Scrum para asegurar reuniones regulares, una comunicación clara y un desarrollo incremental. El equipo del proyecto estará compuesto por un Gerente de Proyecto, un Scrum Master, un Propietario del Producto, Desarrolladores, un Ingeniero de Garantía de Calidad y un Escritor Técnico.
El proyecto se completará en 10 sprints, cada uno de ellos con una duración de 10 días laborables. El costo total del proyecto será de 2.000.000 HKD.
Creemos que nuestro sistema de biblioteca propuesto mejorará significativamente la eficiencia y efectividad de sus operaciones de biblioteca, y esperamos con interés discutir nuestra propuesta con usted más a fondo.
Gracias por considerar nuestra propuesta. Estamos entusiasmados por trabajar con usted para desarrollar un sistema de biblioteca exitoso.
Atentamente, [Su nombre]
Resumen
El sistema de biblioteca descrito en este artículo es una plataforma integral que ofrece a los usuarios funciones de búsqueda de libros, préstamo, devolución, reservas, compras, gestión de inventario y gestión de multas, al tiempo que proporciona a los bibliotecarios un panel administrativo, informes y capacidades de análisis. El plan de desarrollo se divide en 10 sprints, cada uno con una duración de 10 días laborables, y abarca todo, desde el desarrollo de prototipos y autenticación de usuarios hasta pruebas, documentación y despliegue. Al seguir este plan de desarrollo Agile, el sistema de biblioteca podrá completarse de manera eficiente y efectiva, asegurando que todos los interesados queden satisfechos con el producto final.











