SlideShare una empresa de Scribd logo
Autores: Ana Lucia Chávez
José Tenorio
Director: Ing. César Villacis
Codirector: Ing. Tatiana Gualotuña
Sangolqui, 06 Julio del 2012
Desarrollo de un Sistema de Control Escolar para la
Escuela Bilingüe Sangay combinando las metodologías
Scrum y Xtreme Programming.
 Introducción
 Objetivos
 Alcance
 Problema y solución
 Herramientas
 Arquitectura
 Metodología
 Desarrollo del Proyecto
 Presentación del sistema
 Conclusiones
 Recomendaciones
AGENDA
Introducción
INTRODUCCIÓN
Los avances tecnológicos que se han generado
a través de la informática han causado un
gran impacto social en las instituciones
educativas; es por ello que muchas de estas,
se han adaptado a los cambios y han visto la
necesidad de automatizar sus procesos.
El manejo de un sistema de control escolar es
importante para los planes de cualquier
institución educativa, actualmente se
considera un medio eficaz para agilizar los
procedimientos que en ella se desarrollan.
 Introducción
 Objetivos
 Alcance
 Problema y solución
 Herramientas
 Arquitectura
 Metodología
 Desarrollo del Proyecto
 Presentación del sistema
 Conclusiones
 Recomendaciones
AGENDA
Objetivos
 Desarrollar un Sistema de Control Escolar para la Escuela Bilingüe Sangay
combinando las metodologías SCRUM con Xtreme Programming, para administrar
y controlar la información de los estudiantes de forma automatizada por el usuario
final.
Objetivo general
OBJETIVOS
Objetivos específicos
OBJETIVOS
1
Revisar el marco teórico referente a las metodologías Scrum y
Xtreme Programming para el desarrollo de sistemas de
información.
2
Realizar la especificación de requerimientos del sistema de
control escolar aplicando la norma IEEE830.
3
Realizar la planificación del sistema utilizando la metodología
Scrum.
4
Aplicar las metodologías Scrum y Xtreme Programming para
el desarrollo e implementación del sistema.
 Introducción
 Objetivos
 Alcance
 Problema y solución
 Herramientas
 Arquitectura
 Metodología
 Desarrollo del Proyecto
 Presentación del sistema
 Conclusiones
 Recomendaciones
AGENDA
Alcance
ALCANCE
Administrativo – Seguridad
Alumnos
Docentes
Calendario y Horarios
Informes y Consultas
Módulos
 Introducción
 Objetivos
 Alcance
 Problema y solución
 Herramientas
 Arquitectura
 Metodología
 Desarrollo del Proyecto
 Presentación del sistema
 Conclusiones
 Recomendaciones
AGENDA
Problema y solución
 En la escuela Bilingüe Sangay no existe un registro digitalizado de notas, lista de
estudiantes, evaluaciones, exámenes finales, lo que ha generado un problema en
la obtención de la información, pues el manejo manual genera errores y malestar
en los estudiantes y padres de familia.
PROBLEMA
DEFINICIÓN DEL PROBLEMA
 SICOES SANGAY (Sistema de Control Escolar), es una solución integral que
permite a la institución optimizar las operaciones, con la finalidad de
simplificar procesos para una mejor labor dentro del plantel, cubriendo
las necesidades de información académica y administrativa. Su principal
objetivo es centralizar y automatizar los procesos de matriculación,
inscripción, registro de asistencia, registro de notas, etc.
SOLUCIÓN
 Introducción
 Objetivos
 Alcance
 Problema y solución
 Herramientas
 Arquitectura
 Metodología
 Desarrollo del Proyecto
 Presentación del sistema
 Conclusiones
 Recomendaciones
AGENDA
Herramientas
HERRAMIENTAS
Es un entorno de desarrollo integrado de
código abierto. Desarrollo de aplicaciones
Java.
Tiene pruebas unitarias con JUnit
Control de versiones con Subversion
Asistentes (wizards) para creación de
proyectos, clases, tests, etc
ID de Desarrollo
HERRAMIENTAS
Open Source
Velocidad al realizar las operaciones, lo
que le hace uno de los gestores con
mejor rendimiento.
Facilidad de configuración e instalación.
Base de Datos
HERRAMIENTAS
Servidor de aplicaciones J2EE
Se puede utilizar en
cualquier Sistema Operativos
Manejo y desempeño en la
utilización de EJB
Servidor de Aplicaciones
HERRAMIENTAS
Framework
Framework de interfaz de usuario para
aplicaciones JEE
Poderosa para diseñar y simplificar el
desarrollo de las aplicaciones web in
JAVA.
Brinda una separación clara entre el
comportamiento y la presentación.
HERRAMIENTAS
Framework
Objetivo facilitar la persistencia de
objetos.
Java Hibernate Annotations .
Permite a la aplicación manipular la
base de datos a través de los objetos.
 Introducción
 Objetivos
 Alcance
 Problema y solución
 Herramientas
 Arquitectura
 Metodología
 Desarrollo del Proyecto
 Presentación del sistema
 Conclusiones
 Recomendaciones
AGENDA
Arquitectura
ARQUITECTURA
 Introducción
 Objetivos
 Alcance
 Problema y solución
 Herramientas
 Arquitectura
 Metodología
 Desarrollo del Proyecto
 Presentación del sistema
 Conclusiones
 Recomendaciones
AGENDA
Metodología
METODOLOGÍA SCRUM
SCRUM es una
metodología
ágil de gestión
de proyectos.
Ideal para
proyectos con
un rápido
cambio de
requerimientos.
Desarrollo de
software es por
medio de
iteraciones
(Sprints).
Gran
protagonismo
de reuniones a
lo largo del
proyecto.
ROLES SCRUM
Solo existen tres roles dentro de Scrum
Product
Owner
ScrumMaster Scrum Team
Representa a todos los interesados en el producto final.
 Marca las prioridades del producto
 Lleva el control de las estimaciones
 Definir la funcionalidad del producto
 Decidir las fechas de liberación y el contenido (release)
 Aceptar o rechazar el producto
Dueño
del
Producto
1
Scrum
Master
2
Equipo
3
Dueño del Producto
Responsable del proceso de Scrum.
 Incorporación de Scrum en la cultura de la organización.
 Asegura el cumplimiento de los roles y responsabilidades.
 Formación y entrenamiento en el proceso.
Dueño
del
Producto
1
Equipo
3
Scrum
Master
2
Scrum Master
Debe transformar las tareas del Sprint Backlog en un
incremento de funcionalidad en el software.
 Desarrollar el producto con calidad.
 Auto-gestionado
 Auto-organizado.
 Multi-funcional
 No mayor a ocho elementos.
Dueño
del
Producto
1
Scrum
Master
2
Equipo
3
Scrum Team
Artefactos Scrum
Scrum define una pequeña cantidad de artefactos para el seguimiento del
proyecto y control de las actividades asociadas al sprint.
Product
Backlog
Sprint
Backlog
Gráfica de
progreso
 Reunión que se realiza al inicio del ciclo Sprint.
 Se hace conjuntamente con el Propietario del producto el
Scrum Master y el equipo Scrum.
 Seleccionar qué trabajo se hará.
Reunión
de
Planificación
del
Sprint
1
Reunión
Scrum
2
Reunión
de
Revisión
del
Sprint
3
Reunión de Planificación del Sprint
 Reunión diaria, informal, interactiva, ágil de no mas de 30
minutos.
 Primera actividad del día
 Todos los miembros del equipo acuden
1. Que trabajo se ha realizado desde la reunión anterior.
2. Trabajo que se va a hacer hasta la próxima reunión.
3. Impedimentos que deben solventarse para proseguir con
el trabajo.
Reunión
de
Planificación
del
Sprint
1
Reunión
Scrum
2
Reunión Scrum
Reunión
de
Revisión
del
Sprint
3
 Se realiza al final de cada Sprint.
 Revisar el trabajo que fue completado y no completado.
 Presentar el trabajo completado a los interesados
(“demo”).
Reunión
de
Planificación
del
Sprint
1
Reunión
Scrum
2
Reunión
de
Revisión
del
Sprint
3
Sprint Review
METODOLOGÍA XP
Esta orientado
hacia quien
produce y usa el
software (
retroalimentación
continua cliente y
desarrollador).
Reduce el costo
del cambio en
todas las etapas
del ciclo de vida
del sistema.
Desarrollo
incremental y
continuo para
responder a los
cambios.
Gran
protagonismo de
reuniones a lo
largo del proyecto.
PRACTICAS XP
Practicas XP que se usaron en el desarrollo del proyecto
Diseño Simple Pruebas Integración
Continua
Refactorización Programación
por Parejas
 Implementar la solución más simple que
pueda funcionar
 La complejidad innecesaria y el código extra
debe ser removido inmediatamente
 No agregar nuevas funcionalidades antes de
que sean agendadas
Diseño
Simple
1
Programación
por
Parejas
5
Diseño Simple
Pruebas
2
Integración
Continua
3
Refactorización
4
 La producción de código está dirigida por las
pruebas unitarias
 Las pruebas unitarias son establecidas antes
de escribir el código y son ejecutadas
constantemente ante cada modificación del
sistema
 Otros desarrolladores podrán ver cómo usar
el código observando las pruebas
Diseño
Simple
1
Pruebas
2
Pruebas - Tests
Programación
por
Parejas
5
Integración
Continua
3
Refactorización
4
 Cada pieza de código es integrada en el
sistema una vez que esté lista.
 Así, el sistema puede llegar a ser
integrado y construido varias veces en
un mismo día
 Es una forma de que todo el mundo
esté trabajando con casi la última
versión
 Evita o detecta antes los problemas de
compatibilidad
Diseño
Simple
1
Pruebas
2
Integración
Continua
3
Integración Continua
Programación
por
Parejas
5
Refactorización
4
 Es una actividad constante de
reestructuración del código con el objetivo
de remover duplicación de código,
mejorar su legibilidad, simplificarlo y
hacerlo más flexible para facilitar los
posteriores cambios
 Mejora la estructura interna del código sin
alterar su comportamiento externo
 Nos ahorra tiempo e incrementa la calidad
Refactorización
Diseño
Simple
1
Pruebas
2
Integración
Continua
3
Refactorización
4
Programación
por
Parejas
5
 Incrementa la calidad del software sin impactar el
tiempo para cumplir lo prometido
 Muchos errores son detectados conforme son
introducidos en el código
 Los diseños son mejores y el tamaño del código
menor
 Los problemas de programación se resuelven más
rápido
 Se posibilita la transferencia de conocimientos de
programación entre los miembros del equipo
 Varias personas entienden las diferentes partes
del sistema
 Los programadores conversan mejorando así el
flujo de información y la dinámica del equipo
Programación por Parejas
Diseño
Simple
1
Pruebas
2
Integración
Continua
3
Refactorización
4
Programación
por
Parejas
5
 Introducción
 Objetivos
 Alcance
 Problema y solución
 Herramientas
 Arquitectura
 Metodología
 Desarrollo del Proyecto
 Presentación del sistema
 Conclusiones
 Recomendaciones
AGENDA
Desarrollo del Proyecto
Historias de Usuario
Técnica para especificar los requerimientos.
Son tarjetas de papel.
Debe ser lo suficientemente comprensible y delimitada para que los
programadores puedan implementarla en unas semanas.
Pila del Producto
Desarrollo del Proyecto
Planificación del Sprint
Planificación del Sprint
 Analizar y evaluar la Pila de Producto
 Seleccionar el objetivo del Sprint
 Decidir cómo alcanzar el objetivo del Sprint
 Crear la Pila de Tareas en base a los temas
de la Pila de Producto (Historias de
usuarios)
 Estimar la Pila de Tareas en horas
Planificación
Priorización
Pila de
Producto
Capacidad
del Equipo
Tecnología
Objetivo del
Sprint
Pila de Tareas
Desarrollo del Proyecto
Pila del Producto Pila de Tareas
Desarrollo del Proyecto
Pila del Producto Pila de Tareas
2 a 4
Semanas
24
Horas
Diseño Simple
Testing
Refactorizar
Programación en
Parejas
Integración
Continua
Sprint
Desarrollo del Proyecto
Pruebas Test Driven Development
Desarrollo del Proyecto
Pila del Producto Pila de Tareas Incremento
Sprint
2 a 4
Semanas
24
Horas
Diseño Simple
Testing
Refactorizar
Programación en
Parejas
Integración
Continua
Desarrollo del Proyecto
Modelo entidad relación – Módulo de seguridad
 Introducción
 Objetivos
 Alcance
 Problema y solución
 Herramientas
 Arquitectura
 Metodología
 Desarrollo del Proyecto
 Presentación del sistema
 Conclusiones
 Recomendaciones
AGENDA
Presentación del sistema
PRESENTACIÓN DEL SISTEMA
El sistema ha sido desarrollado con el fin de automatizar,
optimizar e integrar los procesos administrativos como:
Ingreso de alumnos, inscripción, matriculación, ingreso
de notas y generación de reportes.
SICOES Sangay es una aplicación multiplataforma y está
orientada a la web.
Mejor Atención al Cliente (alumnos, padres de familia).
PRESENTACIÓN DEL SISTEMA
PRESENTACIÓN DEL SISTEMA
PRESENTACIÓN DEL SISTEMA
Creación de Horario
PRESENTACIÓN DEL SISTEMA
Reportes
 Introducción
 Objetivos
 Alcance
 Problema y solución
 Herramientas
 Arquitectura
 Metodología
 Desarrollo del Proyecto
 Presentación del sistema
 Conclusiones
 Recomendaciones
AGENDA
Conclusiones
CONCLUSIONES
1
El uso de la metodología Scrum conjuntamente con Extreme
Programming para el análisis, diseño y desarrollo del sistema de control
escolar, permitió obtener un producto de software que automatizó los
procesos manuales, dentro de los plazos previstos y cubriendo todas las
necesidades que exige la escuela bilingüe Sangay.
2
La especificación de requerimientos del sistema desarrollado se lo hizo
poco a poco a medida que se avanzaba con los diferentes prototipos del
sistema, lo cual permitió realizar correcciones y ajustes al producto de
software creado.
CONCLUSIONES
3
La implementación del sistema de control escolar para la escuela bilingüe
Sangay, permitió a los colaboradores del área académica reducir los
tiempos empleados en la administración y gestión de los procesos
académicos mejorando el desempeño de sus actividades en la realización
de tareas de planificación académica como asignar materias a profesores,
generar listas del alumnado e ingreso de notas, de esta manera la
institución brinda un mejor servicio a los estudiantes, profesores y
docentes. Además de permitir que la información grabada esté disponible
al usuario de manera automática, reduciendo los ingresos de datos
manuales que generan resultados de poca fiabilidad.
4
Existe un mayor control de la programación al desarrollar una aplicación
distribuida en capas usando patrones de diseño de J2EE, pues facilita el
mantenimiento de la aplicación al poder realizar modificaciones de una
manera rápida y sencilla.
CONCLUSIONES
5 Las herramientas utilizadas para el desarrollo del presente proyecto han
sido en su mayoría Open Source, economizando de esta manera los
costos de construcción y mantenimiento del sistema.
 Introducción
 Objetivos
 Alcance
 Problema y solución
 Herramientas
 Arquitectura
 Metodología
 Desarrollo del Proyecto
 Presentación del sistema
 Conclusiones
 Recomendaciones
AGENDA
Recomendaciones
RECOMENDACIONES
1
Para el desarrollo de aplicaciones web es recomendable usar
herramientas de software libre, para evitar los altos costos de
licenciamiento y la poca flexibilidad que presenta el software
propietario. Se recomienda el uso de software libre, pues la tendencia
actual es la utilización de estas herramientas que aparte de economizar
totalmente la construcción de un sistema, facilitan en gran manera la
misma, a más de que permiten reutilizar el código y optimizarlo, dando
con esto un buen mantenimiento al sistema que se haya construido.
2
Para la realización de un sistema que permita automatizar los procesos
de una institución educativa, es recomendable conocer y entender los
procesos, para poder recolectar los requerimientos de una manera más
fácil y rápida evitando errores en la fase de desarrollo.
RECOMENDACIONES
3
Para el desarrollo de proyectos pequeños es aconsejable combinar las
metodologías agiles Scrum con Extreme Programming ya que permite obtener
buenos resultados en cortos plazos de tiempos, y con un equipo de desarrollo no
muy extenso; la utilización de esta dos metodologías son exitosas siempre y
cuando exista una buena interacción con el usuario final.
4 Al departamento de ciencias de computación se recomienda que se use el
presente proyecto de tesis como un modelo para quienes se interesen más
por conocer sobre la utilización de las metodologías Scrum y Extreme
Programming, así como el uso de herramientas Open Source que pueden
ser aplicadas en proyectos orientados a la obtención rápida de resultados o
que tengan una gran cantidad de cambios en el transcurso del desarrollo.
5 Se recomienda a la escuela bilingüe Sangay utilizar el actual proyecto de
tesis como una guía para la automatización a futuro del proceso de gestión
de recursos económicos.
Gracias.
Preguntas???

Más contenido relacionado

PPTX
El-Proceso-del-Software-Una-Exploracion-de-Modelos-y-Patrones part 1.pptx
PPSX
Trabajo de desarrollo desoftware
PPT
2.- Introducción y Tipos de sistemas de información (2).ppt
PPTX
Trabajo de sistemas de software
PDF
Etapas del diseño .pdf
PPTX
Metodologia clasica en cascada
PPTX
PRESENTACION.pptx
PPTX
Presentacion Metodos de software
El-Proceso-del-Software-Una-Exploracion-de-Modelos-y-Patrones part 1.pptx
Trabajo de desarrollo desoftware
2.- Introducción y Tipos de sistemas de información (2).ppt
Trabajo de sistemas de software
Etapas del diseño .pdf
Metodologia clasica en cascada
PRESENTACION.pptx
Presentacion Metodos de software

Similar a T-ESPE-033705-P.pptx (20)

PPT
MetodologÍas Y Procesos De Desarrollo
PPTX
Fundamentos de ingenieria de Sosftware - Unidad 2 metodologias de desarrollo
PDF
Modelos del software
DOCX
PPT
Modelo Descrptivos Del Proceso Del Sofware
PDF
Methodologies in Software Development and IT
PPSX
Proceso para el desarrollo de software Ponencia M.C.Ivet Espinosa Conde
PPTX
Proceso unificado de desarrollo de software
PDF
GA1-220501093-AA1-EV02.pdf metodologías de desarrollo
PPTX
Metodologías de desarrollo de software
PPTX
Clase_iso12207.pptx
PPSX
s05 - paradigma de construcción de soluciones basado en desarrollo de código
PPTX
Herramientas para el desarrollo de aplicaciones
PDF
Proceso desarrollo software
PPT
Proceso Unificado de Desarrollo
PPTX
Metodología Procesos de Desarrollo de Software
PPTX
Modelos de Procesos del Software
PPTX
Gestión de proyectos
PPTX
METODOLOGIAS.pptx
DOCX
Desarrollo Agil de Software
MetodologÍas Y Procesos De Desarrollo
Fundamentos de ingenieria de Sosftware - Unidad 2 metodologias de desarrollo
Modelos del software
Modelo Descrptivos Del Proceso Del Sofware
Methodologies in Software Development and IT
Proceso para el desarrollo de software Ponencia M.C.Ivet Espinosa Conde
Proceso unificado de desarrollo de software
GA1-220501093-AA1-EV02.pdf metodologías de desarrollo
Metodologías de desarrollo de software
Clase_iso12207.pptx
s05 - paradigma de construcción de soluciones basado en desarrollo de código
Herramientas para el desarrollo de aplicaciones
Proceso desarrollo software
Proceso Unificado de Desarrollo
Metodología Procesos de Desarrollo de Software
Modelos de Procesos del Software
Gestión de proyectos
METODOLOGIAS.pptx
Desarrollo Agil de Software
Publicidad

Más de DerivadaseIntegrales (6)

PDF
TAREA 07 Dignidad del ser humano_usil.pdf
PDF
PORTAFOLIO__4__stuart-mill-john, fragmento Limites de la autoridad y el indiv...
PDF
Ética-ciudadana-y-modernidad- CORTINA (1).pdf
PDF
Rúbrica para exposición de portafolio digital.pdf
PPT
REDACCIÓN CIENTÍFICA CON NORMAS DE ESTILO APA 7.ppt
PPTX
Metod agiles_en la Educacion_______.pptx
TAREA 07 Dignidad del ser humano_usil.pdf
PORTAFOLIO__4__stuart-mill-john, fragmento Limites de la autoridad y el indiv...
Ética-ciudadana-y-modernidad- CORTINA (1).pdf
Rúbrica para exposición de portafolio digital.pdf
REDACCIÓN CIENTÍFICA CON NORMAS DE ESTILO APA 7.ppt
Metod agiles_en la Educacion_______.pptx
Publicidad

Último (20)

PPTX
1748538606_68389hhhhhhhhhhh4ee56ae5.pptx
PPT
Administración Financiera diapositivas.ppt
PPTX
Algunos aspectos fundamentales del Derecho Corporativo
PPT
RELACION DE MARKETING CON EL CLIENTE DE EXPE
PDF
03 - Unidad II - La Plataforma .NET y C# - 2. Tipos Primitivos y Expresiones.pdf
PPTX
Elementos del Entorno-Elementos del Entorno
PDF
alejandrobcjjjjjjjjjjjjjjjjjjjjjjjjjjj.pdf
PDF
Estrategias de orientación en facturación electrónica para grandes contribuye...
PPT
Teoria General de Sistemas empresariales
PDF
yarrownnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn.pdf
PPTX
ETAPAS DE LA AUDITORIA PERUUUUUUUU.pptx
PDF
DESARROLLO E IMPACTO DE LA INNOVACION.pdf
PDF
NIAS 250 ............................................
PPTX
CALIDAD TOTAL TRABAJO FULL DE LINA MARTINEZ
PDF
MODELO DE INNOVACION VERNE,HERRAMIENTAS Y METODO.pdf
PPTX
NIA 265-SANDOVAL MARIN FRANZ DANNY CODIGO.pptx
PDF
equipo auxiliar en el manejo de cargas 1
PDF
UP digital strategy v 2.2.pdf Marketing avanzado
PPTX
FORMATO DE PRESENTACION EMPRESARIAL.pptx
PDF
CV Carlos Lira Zalaquett_Agosto 2025 - Asesor Técnico Empresarial / Facilitador
1748538606_68389hhhhhhhhhhh4ee56ae5.pptx
Administración Financiera diapositivas.ppt
Algunos aspectos fundamentales del Derecho Corporativo
RELACION DE MARKETING CON EL CLIENTE DE EXPE
03 - Unidad II - La Plataforma .NET y C# - 2. Tipos Primitivos y Expresiones.pdf
Elementos del Entorno-Elementos del Entorno
alejandrobcjjjjjjjjjjjjjjjjjjjjjjjjjjj.pdf
Estrategias de orientación en facturación electrónica para grandes contribuye...
Teoria General de Sistemas empresariales
yarrownnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn.pdf
ETAPAS DE LA AUDITORIA PERUUUUUUUU.pptx
DESARROLLO E IMPACTO DE LA INNOVACION.pdf
NIAS 250 ............................................
CALIDAD TOTAL TRABAJO FULL DE LINA MARTINEZ
MODELO DE INNOVACION VERNE,HERRAMIENTAS Y METODO.pdf
NIA 265-SANDOVAL MARIN FRANZ DANNY CODIGO.pptx
equipo auxiliar en el manejo de cargas 1
UP digital strategy v 2.2.pdf Marketing avanzado
FORMATO DE PRESENTACION EMPRESARIAL.pptx
CV Carlos Lira Zalaquett_Agosto 2025 - Asesor Técnico Empresarial / Facilitador

T-ESPE-033705-P.pptx

  • 1. Autores: Ana Lucia Chávez José Tenorio Director: Ing. César Villacis Codirector: Ing. Tatiana Gualotuña Sangolqui, 06 Julio del 2012 Desarrollo de un Sistema de Control Escolar para la Escuela Bilingüe Sangay combinando las metodologías Scrum y Xtreme Programming.
  • 2.  Introducción  Objetivos  Alcance  Problema y solución  Herramientas  Arquitectura  Metodología  Desarrollo del Proyecto  Presentación del sistema  Conclusiones  Recomendaciones AGENDA Introducción
  • 3. INTRODUCCIÓN Los avances tecnológicos que se han generado a través de la informática han causado un gran impacto social en las instituciones educativas; es por ello que muchas de estas, se han adaptado a los cambios y han visto la necesidad de automatizar sus procesos. El manejo de un sistema de control escolar es importante para los planes de cualquier institución educativa, actualmente se considera un medio eficaz para agilizar los procedimientos que en ella se desarrollan.
  • 4.  Introducción  Objetivos  Alcance  Problema y solución  Herramientas  Arquitectura  Metodología  Desarrollo del Proyecto  Presentación del sistema  Conclusiones  Recomendaciones AGENDA Objetivos
  • 5.  Desarrollar un Sistema de Control Escolar para la Escuela Bilingüe Sangay combinando las metodologías SCRUM con Xtreme Programming, para administrar y controlar la información de los estudiantes de forma automatizada por el usuario final. Objetivo general OBJETIVOS
  • 6. Objetivos específicos OBJETIVOS 1 Revisar el marco teórico referente a las metodologías Scrum y Xtreme Programming para el desarrollo de sistemas de información. 2 Realizar la especificación de requerimientos del sistema de control escolar aplicando la norma IEEE830. 3 Realizar la planificación del sistema utilizando la metodología Scrum. 4 Aplicar las metodologías Scrum y Xtreme Programming para el desarrollo e implementación del sistema.
  • 7.  Introducción  Objetivos  Alcance  Problema y solución  Herramientas  Arquitectura  Metodología  Desarrollo del Proyecto  Presentación del sistema  Conclusiones  Recomendaciones AGENDA Alcance
  • 8. ALCANCE Administrativo – Seguridad Alumnos Docentes Calendario y Horarios Informes y Consultas Módulos
  • 9.  Introducción  Objetivos  Alcance  Problema y solución  Herramientas  Arquitectura  Metodología  Desarrollo del Proyecto  Presentación del sistema  Conclusiones  Recomendaciones AGENDA Problema y solución
  • 10.  En la escuela Bilingüe Sangay no existe un registro digitalizado de notas, lista de estudiantes, evaluaciones, exámenes finales, lo que ha generado un problema en la obtención de la información, pues el manejo manual genera errores y malestar en los estudiantes y padres de familia. PROBLEMA DEFINICIÓN DEL PROBLEMA
  • 11.  SICOES SANGAY (Sistema de Control Escolar), es una solución integral que permite a la institución optimizar las operaciones, con la finalidad de simplificar procesos para una mejor labor dentro del plantel, cubriendo las necesidades de información académica y administrativa. Su principal objetivo es centralizar y automatizar los procesos de matriculación, inscripción, registro de asistencia, registro de notas, etc. SOLUCIÓN
  • 12.  Introducción  Objetivos  Alcance  Problema y solución  Herramientas  Arquitectura  Metodología  Desarrollo del Proyecto  Presentación del sistema  Conclusiones  Recomendaciones AGENDA Herramientas
  • 13. HERRAMIENTAS Es un entorno de desarrollo integrado de código abierto. Desarrollo de aplicaciones Java. Tiene pruebas unitarias con JUnit Control de versiones con Subversion Asistentes (wizards) para creación de proyectos, clases, tests, etc ID de Desarrollo
  • 14. HERRAMIENTAS Open Source Velocidad al realizar las operaciones, lo que le hace uno de los gestores con mejor rendimiento. Facilidad de configuración e instalación. Base de Datos
  • 15. HERRAMIENTAS Servidor de aplicaciones J2EE Se puede utilizar en cualquier Sistema Operativos Manejo y desempeño en la utilización de EJB Servidor de Aplicaciones
  • 16. HERRAMIENTAS Framework Framework de interfaz de usuario para aplicaciones JEE Poderosa para diseñar y simplificar el desarrollo de las aplicaciones web in JAVA. Brinda una separación clara entre el comportamiento y la presentación.
  • 17. HERRAMIENTAS Framework Objetivo facilitar la persistencia de objetos. Java Hibernate Annotations . Permite a la aplicación manipular la base de datos a través de los objetos.
  • 18.  Introducción  Objetivos  Alcance  Problema y solución  Herramientas  Arquitectura  Metodología  Desarrollo del Proyecto  Presentación del sistema  Conclusiones  Recomendaciones AGENDA Arquitectura
  • 20.  Introducción  Objetivos  Alcance  Problema y solución  Herramientas  Arquitectura  Metodología  Desarrollo del Proyecto  Presentación del sistema  Conclusiones  Recomendaciones AGENDA Metodología
  • 21. METODOLOGÍA SCRUM SCRUM es una metodología ágil de gestión de proyectos. Ideal para proyectos con un rápido cambio de requerimientos. Desarrollo de software es por medio de iteraciones (Sprints). Gran protagonismo de reuniones a lo largo del proyecto.
  • 22. ROLES SCRUM Solo existen tres roles dentro de Scrum Product Owner ScrumMaster Scrum Team
  • 23. Representa a todos los interesados en el producto final.  Marca las prioridades del producto  Lleva el control de las estimaciones  Definir la funcionalidad del producto  Decidir las fechas de liberación y el contenido (release)  Aceptar o rechazar el producto Dueño del Producto 1 Scrum Master 2 Equipo 3 Dueño del Producto
  • 24. Responsable del proceso de Scrum.  Incorporación de Scrum en la cultura de la organización.  Asegura el cumplimiento de los roles y responsabilidades.  Formación y entrenamiento en el proceso. Dueño del Producto 1 Equipo 3 Scrum Master 2 Scrum Master
  • 25. Debe transformar las tareas del Sprint Backlog en un incremento de funcionalidad en el software.  Desarrollar el producto con calidad.  Auto-gestionado  Auto-organizado.  Multi-funcional  No mayor a ocho elementos. Dueño del Producto 1 Scrum Master 2 Equipo 3 Scrum Team
  • 26. Artefactos Scrum Scrum define una pequeña cantidad de artefactos para el seguimiento del proyecto y control de las actividades asociadas al sprint. Product Backlog Sprint Backlog Gráfica de progreso
  • 27.  Reunión que se realiza al inicio del ciclo Sprint.  Se hace conjuntamente con el Propietario del producto el Scrum Master y el equipo Scrum.  Seleccionar qué trabajo se hará. Reunión de Planificación del Sprint 1 Reunión Scrum 2 Reunión de Revisión del Sprint 3 Reunión de Planificación del Sprint
  • 28.  Reunión diaria, informal, interactiva, ágil de no mas de 30 minutos.  Primera actividad del día  Todos los miembros del equipo acuden 1. Que trabajo se ha realizado desde la reunión anterior. 2. Trabajo que se va a hacer hasta la próxima reunión. 3. Impedimentos que deben solventarse para proseguir con el trabajo. Reunión de Planificación del Sprint 1 Reunión Scrum 2 Reunión Scrum Reunión de Revisión del Sprint 3
  • 29.  Se realiza al final de cada Sprint.  Revisar el trabajo que fue completado y no completado.  Presentar el trabajo completado a los interesados (“demo”). Reunión de Planificación del Sprint 1 Reunión Scrum 2 Reunión de Revisión del Sprint 3 Sprint Review
  • 30. METODOLOGÍA XP Esta orientado hacia quien produce y usa el software ( retroalimentación continua cliente y desarrollador). Reduce el costo del cambio en todas las etapas del ciclo de vida del sistema. Desarrollo incremental y continuo para responder a los cambios. Gran protagonismo de reuniones a lo largo del proyecto.
  • 31. PRACTICAS XP Practicas XP que se usaron en el desarrollo del proyecto Diseño Simple Pruebas Integración Continua Refactorización Programación por Parejas
  • 32.  Implementar la solución más simple que pueda funcionar  La complejidad innecesaria y el código extra debe ser removido inmediatamente  No agregar nuevas funcionalidades antes de que sean agendadas Diseño Simple 1 Programación por Parejas 5 Diseño Simple Pruebas 2 Integración Continua 3 Refactorización 4
  • 33.  La producción de código está dirigida por las pruebas unitarias  Las pruebas unitarias son establecidas antes de escribir el código y son ejecutadas constantemente ante cada modificación del sistema  Otros desarrolladores podrán ver cómo usar el código observando las pruebas Diseño Simple 1 Pruebas 2 Pruebas - Tests Programación por Parejas 5 Integración Continua 3 Refactorización 4
  • 34.  Cada pieza de código es integrada en el sistema una vez que esté lista.  Así, el sistema puede llegar a ser integrado y construido varias veces en un mismo día  Es una forma de que todo el mundo esté trabajando con casi la última versión  Evita o detecta antes los problemas de compatibilidad Diseño Simple 1 Pruebas 2 Integración Continua 3 Integración Continua Programación por Parejas 5 Refactorización 4
  • 35.  Es una actividad constante de reestructuración del código con el objetivo de remover duplicación de código, mejorar su legibilidad, simplificarlo y hacerlo más flexible para facilitar los posteriores cambios  Mejora la estructura interna del código sin alterar su comportamiento externo  Nos ahorra tiempo e incrementa la calidad Refactorización Diseño Simple 1 Pruebas 2 Integración Continua 3 Refactorización 4 Programación por Parejas 5
  • 36.  Incrementa la calidad del software sin impactar el tiempo para cumplir lo prometido  Muchos errores son detectados conforme son introducidos en el código  Los diseños son mejores y el tamaño del código menor  Los problemas de programación se resuelven más rápido  Se posibilita la transferencia de conocimientos de programación entre los miembros del equipo  Varias personas entienden las diferentes partes del sistema  Los programadores conversan mejorando así el flujo de información y la dinámica del equipo Programación por Parejas Diseño Simple 1 Pruebas 2 Integración Continua 3 Refactorización 4 Programación por Parejas 5
  • 37.  Introducción  Objetivos  Alcance  Problema y solución  Herramientas  Arquitectura  Metodología  Desarrollo del Proyecto  Presentación del sistema  Conclusiones  Recomendaciones AGENDA Desarrollo del Proyecto
  • 38. Historias de Usuario Técnica para especificar los requerimientos. Son tarjetas de papel. Debe ser lo suficientemente comprensible y delimitada para que los programadores puedan implementarla en unas semanas.
  • 40. Planificación del Sprint Planificación del Sprint  Analizar y evaluar la Pila de Producto  Seleccionar el objetivo del Sprint  Decidir cómo alcanzar el objetivo del Sprint  Crear la Pila de Tareas en base a los temas de la Pila de Producto (Historias de usuarios)  Estimar la Pila de Tareas en horas Planificación Priorización Pila de Producto Capacidad del Equipo Tecnología Objetivo del Sprint Pila de Tareas
  • 41. Desarrollo del Proyecto Pila del Producto Pila de Tareas
  • 42. Desarrollo del Proyecto Pila del Producto Pila de Tareas 2 a 4 Semanas 24 Horas Diseño Simple Testing Refactorizar Programación en Parejas Integración Continua Sprint
  • 43. Desarrollo del Proyecto Pruebas Test Driven Development
  • 44. Desarrollo del Proyecto Pila del Producto Pila de Tareas Incremento Sprint 2 a 4 Semanas 24 Horas Diseño Simple Testing Refactorizar Programación en Parejas Integración Continua
  • 45. Desarrollo del Proyecto Modelo entidad relación – Módulo de seguridad
  • 46.  Introducción  Objetivos  Alcance  Problema y solución  Herramientas  Arquitectura  Metodología  Desarrollo del Proyecto  Presentación del sistema  Conclusiones  Recomendaciones AGENDA Presentación del sistema
  • 47. PRESENTACIÓN DEL SISTEMA El sistema ha sido desarrollado con el fin de automatizar, optimizar e integrar los procesos administrativos como: Ingreso de alumnos, inscripción, matriculación, ingreso de notas y generación de reportes. SICOES Sangay es una aplicación multiplataforma y está orientada a la web. Mejor Atención al Cliente (alumnos, padres de familia).
  • 52.  Introducción  Objetivos  Alcance  Problema y solución  Herramientas  Arquitectura  Metodología  Desarrollo del Proyecto  Presentación del sistema  Conclusiones  Recomendaciones AGENDA Conclusiones
  • 53. CONCLUSIONES 1 El uso de la metodología Scrum conjuntamente con Extreme Programming para el análisis, diseño y desarrollo del sistema de control escolar, permitió obtener un producto de software que automatizó los procesos manuales, dentro de los plazos previstos y cubriendo todas las necesidades que exige la escuela bilingüe Sangay. 2 La especificación de requerimientos del sistema desarrollado se lo hizo poco a poco a medida que se avanzaba con los diferentes prototipos del sistema, lo cual permitió realizar correcciones y ajustes al producto de software creado.
  • 54. CONCLUSIONES 3 La implementación del sistema de control escolar para la escuela bilingüe Sangay, permitió a los colaboradores del área académica reducir los tiempos empleados en la administración y gestión de los procesos académicos mejorando el desempeño de sus actividades en la realización de tareas de planificación académica como asignar materias a profesores, generar listas del alumnado e ingreso de notas, de esta manera la institución brinda un mejor servicio a los estudiantes, profesores y docentes. Además de permitir que la información grabada esté disponible al usuario de manera automática, reduciendo los ingresos de datos manuales que generan resultados de poca fiabilidad. 4 Existe un mayor control de la programación al desarrollar una aplicación distribuida en capas usando patrones de diseño de J2EE, pues facilita el mantenimiento de la aplicación al poder realizar modificaciones de una manera rápida y sencilla.
  • 55. CONCLUSIONES 5 Las herramientas utilizadas para el desarrollo del presente proyecto han sido en su mayoría Open Source, economizando de esta manera los costos de construcción y mantenimiento del sistema.
  • 56.  Introducción  Objetivos  Alcance  Problema y solución  Herramientas  Arquitectura  Metodología  Desarrollo del Proyecto  Presentación del sistema  Conclusiones  Recomendaciones AGENDA Recomendaciones
  • 57. RECOMENDACIONES 1 Para el desarrollo de aplicaciones web es recomendable usar herramientas de software libre, para evitar los altos costos de licenciamiento y la poca flexibilidad que presenta el software propietario. Se recomienda el uso de software libre, pues la tendencia actual es la utilización de estas herramientas que aparte de economizar totalmente la construcción de un sistema, facilitan en gran manera la misma, a más de que permiten reutilizar el código y optimizarlo, dando con esto un buen mantenimiento al sistema que se haya construido. 2 Para la realización de un sistema que permita automatizar los procesos de una institución educativa, es recomendable conocer y entender los procesos, para poder recolectar los requerimientos de una manera más fácil y rápida evitando errores en la fase de desarrollo.
  • 58. RECOMENDACIONES 3 Para el desarrollo de proyectos pequeños es aconsejable combinar las metodologías agiles Scrum con Extreme Programming ya que permite obtener buenos resultados en cortos plazos de tiempos, y con un equipo de desarrollo no muy extenso; la utilización de esta dos metodologías son exitosas siempre y cuando exista una buena interacción con el usuario final. 4 Al departamento de ciencias de computación se recomienda que se use el presente proyecto de tesis como un modelo para quienes se interesen más por conocer sobre la utilización de las metodologías Scrum y Extreme Programming, así como el uso de herramientas Open Source que pueden ser aplicadas en proyectos orientados a la obtención rápida de resultados o que tengan una gran cantidad de cambios en el transcurso del desarrollo. 5 Se recomienda a la escuela bilingüe Sangay utilizar el actual proyecto de tesis como una guía para la automatización a futuro del proceso de gestión de recursos económicos.