SlideShare una empresa de Scribd logo
1 de 68
Proyecto Final




                 ORT – Software Factory 2006



Alejandro Charbonnier
Darío Macchi
Fernando Nicolet
•   Líneas Generales
•   Proceso de Desarrollo
•   Requerimientos
•   Arquitectura
•   Tecnologías
•   SQA
•   SCM
•   Gerencia
•   Métricas
•   Conclusiones
•   Líneas Generales
    Idea general, propuesta y dominio
•   Proceso de Desarrollo
•   Requerimientos
•   Arquitectura
•   Tecnologías
•   SQA
•   SCM
•   Gerencia
•   Métricas
•   Conclusiones
Líneas Generales


Idea Original
• Chuck Crawford, Presidente de Nujit.
   Nos presenta la idea del proyecto basándose en su
   experiencia como instructor de Golf, y
   conocimiento del mercado como empresario

• Detalle no menor: el cliente reside en Canadá. Esto dificulta
  comunicación debido a distancia y lenguaje
Líneas Generales


Propuesta
• Realizar un software capaz de ayudar a jugadores de golf a
  mejorar su swing
• También será utilizado por instructores de golf para mostrar
  los avances de sus alumnos
• Realizar comparaciones de swings de principiantes contra
  videos de profesionales
• Utilizar modelos teóricos para comparar las medidas tomadas
  para calificar el swing a los efectos de medir nivel de mejora
• Asistir al usuario a identificar elementos a medir
Líneas Generales
Propuesta
•   Debe poder medir ángulos, distancias y distintos indicadores en dos dimensiones




•   Crear el background necesario para generar un modelo 3D del swing
Líneas Generales


¿Qué es un Swing?
Es la base de la técnica del Golf. Consiste en rotar el
cuerpo de forma de acelerar el “clubhead” a gran
velocidad para efectuar el golpe a la bola.

    -   Cinco etapas:

            -   Setup
            -   Back Swing
            -   Top of the swing
            -   Down Swing
            -   Follow through
Líneas Generales


¿Qué es un Swing?
Es la base de la técnica del Golf. Consiste en rotar el
cuerpo de forma de acelerar el “clubhead” a gran
velocidad para efectuar el golpe a la bola.

    -   Cinco etapas:

            -   Setup
            -   Back Swing
            -   Top of the swing
            -   Down Swing
            -   Follow through
Líneas Generales


¿Qué es un Swing?
Es la base de la técnica del Golf. Consiste en rotar el
cuerpo de forma de acelerar el “clubhead” a gran
velocidad para efectuar el golpe a la bola.

    -   Cinco etapas:

            -   Setup
            -   Back Swing
            -   Top of the swing
            -   Down Swing
            -   Follow through
Líneas Generales


¿Qué es un Swing?
Es la base de la técnica del Golf. Consiste en rotar el
cuerpo de forma de acelerar el “clubhead” a gran
velocidad para efectuar el golpe a la bola.

    -   Cinco etapas:

            -   Setup
            -   Back Swing
            -   Top of the swing
            -   Down Swing
            -   Follow through
Líneas Generales


¿Qué es un Swing?
Es la base de la técnica del Golf. Consiste en rotar el
cuerpo de forma de acelerar el “clubhead” a gran
velocidad para efectuar el golpe a la bola.

    -   Cinco etapas:

            -   Setup
            -   Back Swing
            -   Top of the swing
            -   Down Swing
            -   Follow through
Líneas Generales


¿Qué se Puede Medir en un Swing?
Modelo teórico basado en investigaciones
científicas del swing (Dr. Ralph Mann)

   -   Posición inicial de la bola
   -   Inclinación de la columna
   -   Distancia del hombro al club
   -   Movimiento de brazos y hombros como
       unidad
   -   “Inside path”
   -   Etc
Producto
•   Líneas Generales
    Proceso de Desarrollo
    Metodología, adaptación y puesta en
    práctica
•   Requerimientos
•   Arquitectura
•   Tecnologías
•   SQA
•   SCM
•   Gerencia
•   Métricas
•   Conclusiones
Proceso de Desarrollo


-¿Por qué una Metodología Ágil?


  -   Alto riesgo tecnológico
  -   Colaboración del cliente
  -   Prototipo (alta probabilidad de cambio)
  -   Conformidad del cliente
  -   Gestión de la calidad
  -   Grupo pequeño
  -   Disposición de un lugar común de trabajo
Proceso de Desarrollo


- Adaptación de XP - 12 Practicas


  - Estudio de los beneficios de cada practica de XP
  - Adaptación y utilización de las mismas.
Proceso de Desarrollo


- Beneficios de XP                 - Desventajas de XP


   -   Uso de Spikes                 -   Riesgo de fracaso por falta de
   -   Mantener un diseño simple         compromiso de los integrantes
   -   Programación de a pares       -   Aprendizaje de la metodología
   -   Integración contínua.         -   Cliente reside en Canadá
   -   Uso de TDD
Proceso de Desarrollo
Roles


     •   Coach: Alejandro
     •   Manager: Darío
     •   Tracker: Fernando
     •   Customer: Chuck Crawford (Nujit)
     •   Programmer: Alejandro/Darío/Fernando
     •   Tester: Alejandro/Darío/Fernando/Chuck
•   Líneas Generales
•   Proceso de Desarrollo
    Requerimientos
    Cliente, historias. Estrategia y priorización
•   Arquitectura
•   Tecnologías
•   SQA
•   SCM
•   Gerencia
•   Métricas
•   Conclusiones
Requerimientos
Requerimientos Funcionales


•   Reproducción de video
•   Posiciones de distintas partes del cuerpo
•   Medición de distancias y ángulos
•   Dos videos en simultaneo para efectuar comparaciones
•   Modalidad de trabajo libre con ángulos, puntos y líneas
•   Asistencia al usuario en el marcado de elementos a medir
•   Permitir ingreso de coordenadas desde una fuente externa a
    la aplicación
Requerimientos
Requerimientos no Funcionales


• Requerimientos mínimos de sistema:
     Pentium III 800Mhz, 256MB, 32MB VGA
• Lenguaje de desarrollo: C# Framework .NET 1.1
• Plataforma: Windows (XP, 2000 y 98)
• Idioma de la GUI: Inglés
• Interfaz de usuario amigable
Requerimientos
Estrategia de Relevamiento


• Reuniones virtuales (MSN)
  - Construcción de historias en conjunto (equipo y cliente)
  - Priorización de las mismas según: Riesgo e Importancia
• Investigación: productos similares, sitios web, bibliografía
• Asesoramiento con expertos: tecnología, deporte
• Visitas del cliente (3 instancias durante el proyecto)
• Uso de prototipos: comunicación y mitigar riesgo
• Estudio de factibilidad: presentado a SF
Requerimientos


Estudio del Modelado 3D


- Contacto con Universidad en Singapur (criterion function)
  - Modelo con restricciones biomecánicas


- Standard ISO/IEC FCD 19774:200x (H-Anim)
  - Uso de humanoides para entornos virtuales vía web
•   Líneas Generales
•   Proceso de Desarrollo
•   Requerimientos
•   Arquitectura
    Diseño y patrones
•   Tecnologías
•   SQA
•   SCM
•   Gerencia
•   Métricas
•   Conclusiones
Arquitectura
                      SwinImproverCommon




                    Measures
                                           VideoPlayers
    GUI

                     Engine                Rendering



      Repositorio         Frames             Draw Objects
         XML
                      FrameRepository
Arquitectura
Measures

                                         <<Abstract>>
           MeasureFactory                  Measure
                                    + result(): string[]




                  RightKneeAngle                TeeToLeftFoot
                  + result(): string[]        + result(): string[]




                          Calc                             MeasureStep
Arquitectura
VideoPlayers

                                <<library>>
                           SwingImproverDomain


               IVideoPlayback               IVideoPlaybackTextured




                               <<library>>
                        SwingImproverVideoPlayers

                 TDDVideoPlayback      VMR9VideoPlayback


                DXAVPVideoPlayback
Arquitectura – Características de Calidad


Observables en T. de Ejecución   No Observables en T. de Ejecución
(producto)                       (prototipo)


      •   Eficiencia                   •    Modificabilidad
      •   Funcionalidad                •    Reusabilidad
      •   Usabilidad                   •    Facilidad de prueba.
•   Líneas Generales
•   Proceso de Desarrollo
•   Requerimientos
•   Arquitectura
•   Tecnologías
    Reproducción de video y controles
•   SQA
•   SCM
•   Gerencia
•   Métricas
•   Conclusiones
Tecnologías
Reproducción de Video


    • DirectX 9.0c
    • Windows Media Player
    • DirectShow
      - GDI / GDI+
      - DirectX 9.0c
Tecnologías
DirectX 9.0c - AudioVideoPlayback

Ventajas                               Desventajas


•   Facilidad de uso                   •   Cerrado
•   Integración directa con Direct3D   •   Libertad y control limitados
•   Manejo automático de distintos     •   Desconoce FPS
    formatos de video                  •   Bugs!!!
•   Obtención de los frames
•   Performance aceptable
•   Salida Hardware / Software
Tecnologías
DirectX 9.0c - AudioVideoPlayback

Funcionamiento
                                         2

• Abrir video
• Modos                                           1

  - Directo (Hardware)
  - Textured (Software)
• Control de reproducción                             0




                                             -1


                                    -2
Tecnologías
Windows MediaPlayer

Ventajas                             Desventajas


•   Facilidad de uso                 •   Cerrado
•   Compatibilidad directa con       •   Libertad y control excesivamente
    Windows                              limitados – No sirve
•   Manejo automático de distintos   •   Salida hardware-dependiente
    formatos de video
•   Performance aceptable
Tecnologías
DirectShow

Ventajas                                  Desventajas


•   Gran libertad                         •   Complejidad
•   Documentación                         •   Curva de aprendizaje lenta
•   Altamente performante                 •   Ausencia de una API managed
•   Salida Hardware / Software                oficial


    File Source
                  AVI Splitter   AVI Decompressor    Video Renderer
      (Async)


                                                          Default
                                                    DirectSound Device
Tecnologías
DirectShow – GDI/GDI+

Ventana transparente              SlideShow


•   Visualmente inaceptable       •   Visualmente aceptable
•   Altamente impredecible        •   Excelente Control
•   Buena performance             •   Extremadamente poco
•   Salida hardware-dependiente       performante
                                  •   Salida por software
Tecnologías
DirectShow – VMR9
                                VMR9


•   Integración con Direct3D
•   Tecnología en crecimiento
•   Complejidad muy alta
•   Performance aceptable
•   Salida por software
Tecnologías
Controles Personalizados


     •   Toolbars
     •   Trackbar
     •   Paneles
     •   Botones



                           8   4   1   1   4   8
Tecnologías
Controles Personalizados

Ventajas                         Desventajas


•   Visualización mejorada       •   Consumo de recursos
•   Globalmente modificables     •   Pérdida de performance
•   Funcionamiento deseado
•   Satisface requerimiento de
    usabilidad
Tecnologías
Controles Personalizados

Tecnología utilizada       Técnicas


   -   GDI                   -   Backbuffer
   -   GDI+                  -   Canal alfa
                             -   Código unsafe
•   Líneas Generales
•   Proceso de Desarrollo
•   Requerimientos
•   Arquitectura
•   Tecnologías
•   SQA
    Plan, aseguramiento de la calidad y
    pruebas
•   SCM
•   Gerencia
•   Métricas
•   Conclusiones
SQA
Plan de Calidad


     •   Programación de a pares, código compartido
     •   Estándar de codificación
     •   Integración continua
     •   Diseño Incremental
     •   Refactoreo
     •   Test Driven Development (TDD)
SQA
Test Driven Development (TDD)
                                Cálculos              Medidas


                                Calc         SpineAngle     InsidePath

   SwingImprover.
   Measures




                        AngleTest      DistanceTest       InsidePathTest
   SwingImprover.Test
SQA
Testing


Casos de Prueba Según su Tipo



                            Funcionales




          TDD                              Hardware
                                          dependiente
•   Líneas Generales
•   Proceso de Desarrollo
•   Requerimientos
•   Arquitectura
•   Tecnologías
•   SQA
•   SCM
    Herramientas, proceso y estrategia de
    backup
•   Gerencia
•   Métricas
•   Conclusiones
SCM
Herramientas


  -   Versionado de código y documentación
       - CVS NT como servidor de CVS
       - Tortoise CVS como cliente de CVS

  -   Versionado de documentos informales
       - Fitneese – Wiki
SCM
Proceso



  1. Realizar un update antes de realizar un commit de un
     cambio.
  2. En caso de ser necesario, solucionar los posibles
     conflictos de versiones.
  3. Realizar un Add content para agregar posibles elementos
     nuevos.
  4. Hacer un commit del proyecto.
•   Líneas Generales
•   Proceso de Desarrollo
•   Requerimientos
•   Arquitectura
•   Tecnologías
•   SQA
•   SCM
•   Gerencia
    Proceso, planificación y herramientas
•   Métricas
•   Conclusiones
Gerencia


Se apoyó en los siguientes principios

     •   Compromiso en la responsabilidad
     •   Adaptación Incremental
     •   No agregar overhead al programador (travel light)
     •   Mediciones Honestas
Gerencia
Planificación de Iteraciones

 Plan de
 Release    Historias




                Planificación
                de Iteración
Gerencia
Planificación de Iteraciones

 Plan de
 Release    Historias




                Planificación               Desarrollo
                de Iteración     Plan de
                                Iteración
Gerencia
Planificación de Iteraciones

                                  Nuevas Historias,
 Plan de                        Velocidad de Proyecto
 Release    Historias                           Comunicación y
                        Tereas Pendientes        Aprendizaje



                Planificación               Desarrollo
                de Iteración     Plan de
                                Iteración
Gerencia
Planificación de Iteraciones

                                  Nuevas Historias,
 Plan de                        Velocidad de Proyecto
 Release    Historias                           Comunicación y
                        Tereas Pendientes        Aprendizaje
                                                            Nuevas
                                                       Funcionalidades
                Planificación               Desarrollo               Última
                de Iteración     Plan de                             Versión
                                Iteración
Gerencia
Planificación de Iteraciones

                                      Nuevas Historias,
 Plan de                            Velocidad de Proyecto
 Release      Historias                             Comunicación y
                              Tereas Pendientes      Aprendizaje
                                                                Nuevas
       Velocidad                                           Funcionalidades
      de Proyecto   Planificación               Desarrollo                     Última
Iteración           de Iteración     Plan de                                   Versión
                                    Iteración                Bugs Corregidos
 Anterior
               Pruebas de                                        Dia a Dia
            Aceptación Fallidas


  Bugs
Gerencia
Planificación

Plan de proyecto
  - Versión 1
     •   R1: Octubre (final de it. 3)
     •   R2: Mitad de diciembre (final de it. 8)
     •   R3: Mitad de febrero (final de it. 12)
  - Versión 2
     •   R1: Mitad de diciembre (final de it. 8)
     •   R2: Mitad de febrero (final de it. 12)



• Velocidad = Puntos/Hrs. trabajadas
Gerencia


                                             Iteraciones
                 1       2       3   4   5    6       7     8    9     10      11       12




                     Release 1                             Release 2        Release 3
     Historias
Gerencia


                                     Iteraciones
                 1   2   3   4   5     6      7    8    9      10   11      12




                                                   Release 1    Release 2
     Historias
Gerencia
Planificación

Herramientas utilizadas


     • XPPlanner
     • ToDoList
     • Excel (evolución de planillas)   
Gerencia
Riesgos

• Riesgos tecnológicos
  - Spikes
• Otros riesgos
  - Compromiso con XP
  - Confianza con el cliente - Error

• Falta de un plan de riesgos y planes de contingencia
  - Soluciones espontáneas
•   Líneas Generales
•   Proceso de Desarrollo
•   Requerimientos
•   Arquitectura
•   Tecnologías
•   SQA
•   SCM
•   Gerencia
    Métricas
    De proceso, producto e interpretaciones
•   Conclusiones
Métricas
Al final del Proyecto


     •   Releases: 2
     •   Iteraciones: 11
     •   Historias: 63
     •   Puntos de complejidad: 455
     •   Hrs. Trabajadas: 1428
     •   Velocidad: 0.41 puntos/hora
     •   Hrs./persona/día: 4:00 (4 días a la semana)
Métricas - Proyecto
                                                     Historias / Puntos


                               10                                                                  70
                                                                                                   60
                                8
  Cantidad de Historias




                                                                                                   50
                                6                                                                  40




                                                                                                        Puntos
                                4                                                                  30
                                                                                                   20
                                2
                                                                                                   10
                                0                                                                  0
                                      1    2    3     4     5      6      7    8    9    10   11
                          Historias   6    5    9     2     5      5      5    8    4    3    3
                          Puntos      21   38   26    66    52    62      38   64   26   24   38
Métricas - Proyecto


                                     Velocidad / Hrs. trabajadas respecto a Hrs. estimadas

                    240:00                                                                                  0.60


                                                                                                            0.50
                    192:00
 Cantida de Horas




                                                                                                            0.40




                                                                                                                   Puntos/Hrs.
                    144:00
                                                                                                            0.30
                     96:00
                                                                                                            0.20

                     48:00
                                                                                                            0.10


                      0:00                                                                                  0.00
                             1   2        3      4        5      6          7      8          9   10   11

                                                Hrs. Estimadas   Hrs. trabajadas   Velocity
Métricas - Producto

60
     54

50

                                                    SwingImprover
40
                                                    SIDomain

           29                                       SICommon
30               27
                                                    SIControls
                      22
                                                    VideoInfo
20                               17
                                       15           SIVideoPlayers
                                                    SIToobar
10
                                            5       SITest
                                                0
0
                      Max Complexity
•   Líneas Generales
•   Proceso de Desarrollo
•   Requerimientos
•   Arquitectura
•   Tecnologías
•   SQA
•   SCM
•   Gerencia
•   Métricas
    Conclusiones
    De proyecto y personales
Conclusiones del Proyecto


Metas Alcanzadas                      Lecciones Aprendidas


•   Satisfacción del Cliente          •   No desviarse del proceso
•   Cumplimiento de alcance inicial   •   Necesidad de pruebas mas
•   Adaptación exitosa de XP              exhaustivas
                                      •   Ser concientes de potenciales
                                          riesgos y generar plan de
                                          contingencia (mas allá del uso de
                                          spikes)
                                      •   Llevar una bitácora de proyecto
Conclusiones Personales


Metas Alcanzadas                    Lecciones Aprendidas


•   Conocimiento de nuevas          •   Ventajas de programación a pares
    tecnologías                     •   Capacidad de afrontar desafíos
•   Uso de una metodología de           atípicos exitosamente
    desarrollo ágil (XP)            •   Necesidad de delegar actividades
•   Compromiso hacia el grupo por
    parte de sus integrantes
Estado Actual del Producto
http://www.nextgenerationsrt.com/




                                    Partner:


                                    Company:
FIN

Más contenido relacionado

Destacado

Исследование рынка веб-разработок в России 2010-2011
Исследование рынка веб-разработок в России 2010-2011Исследование рынка веб-разработок в России 2010-2011
Исследование рынка веб-разработок в России 2010-2011Kirill Smirnov
 
Serhat can
Serhat canSerhat can
Serhat cansasa4747
 
Sahana on Linux con Japan 20110531
Sahana on Linux con Japan 20110531Sahana on Linux con Japan 20110531
Sahana on Linux con Japan 20110531Satoshi Iida
 
Hereglegdehuun food
Hereglegdehuun foodHereglegdehuun food
Hereglegdehuun foodsukhbat79
 
Goiania gp17-gerenciamento de aquisições - pro+
Goiania gp17-gerenciamento de aquisições - pro+Goiania gp17-gerenciamento de aquisições - pro+
Goiania gp17-gerenciamento de aquisições - pro+Marco Coghi
 
Sãopaulo geep09-gep-maravista
Sãopaulo geep09-gep-maravistaSãopaulo geep09-gep-maravista
Sãopaulo geep09-gep-maravistaMarco Coghi
 
Constructivismo
ConstructivismoConstructivismo
Constructivismoremaria
 
Joaquim&arsénio gestão de conhecimento
Joaquim&arsénio gestão de conhecimentoJoaquim&arsénio gestão de conhecimento
Joaquim&arsénio gestão de conhecimentoMarco Coghi
 
Belo horizonte-gp41-ge-grupo7
Belo horizonte-gp41-ge-grupo7Belo horizonte-gp41-ge-grupo7
Belo horizonte-gp41-ge-grupo7Marco Coghi
 

Destacado (20)

Исследование рынка веб-разработок в России 2010-2011
Исследование рынка веб-разработок в России 2010-2011Исследование рынка веб-разработок в России 2010-2011
Исследование рынка веб-разработок в России 2010-2011
 
Ab sunus
Ab sunusAb sunus
Ab sunus
 
Amadoraeduca2011
Amadoraeduca2011Amadoraeduca2011
Amadoraeduca2011
 
Sebelum kamu mengeluh
Sebelum kamu mengeluhSebelum kamu mengeluh
Sebelum kamu mengeluh
 
目录
目录目录
目录
 
Serhat can
Serhat canSerhat can
Serhat can
 
Folleto Sap Hr
Folleto Sap HrFolleto Sap Hr
Folleto Sap Hr
 
iMeteo
iMeteoiMeteo
iMeteo
 
What do we_teach_tsunami_[1]
What do we_teach_tsunami_[1]What do we_teach_tsunami_[1]
What do we_teach_tsunami_[1]
 
Sahana on Linux con Japan 20110531
Sahana on Linux con Japan 20110531Sahana on Linux con Japan 20110531
Sahana on Linux con Japan 20110531
 
Hereglegdehuun food
Hereglegdehuun foodHereglegdehuun food
Hereglegdehuun food
 
Goiania gp17-gerenciamento de aquisições - pro+
Goiania gp17-gerenciamento de aquisições - pro+Goiania gp17-gerenciamento de aquisições - pro+
Goiania gp17-gerenciamento de aquisições - pro+
 
Diapositivas
DiapositivasDiapositivas
Diapositivas
 
Sãopaulo geep09-gep-maravista
Sãopaulo geep09-gep-maravistaSãopaulo geep09-gep-maravista
Sãopaulo geep09-gep-maravista
 
Constructivismo
ConstructivismoConstructivismo
Constructivismo
 
Joaquim&arsénio gestão de conhecimento
Joaquim&arsénio gestão de conhecimentoJoaquim&arsénio gestão de conhecimento
Joaquim&arsénio gestão de conhecimento
 
Pacto da Amazônia
Pacto da AmazôniaPacto da Amazônia
Pacto da Amazônia
 
Belo horizonte-gp41-ge-grupo7
Belo horizonte-gp41-ge-grupo7Belo horizonte-gp41-ge-grupo7
Belo horizonte-gp41-ge-grupo7
 
Verde Urbano
Verde UrbanoVerde Urbano
Verde Urbano
 
Brasília star sport bar & grill manual identidade
Brasília star sport bar & grill   manual identidadeBrasília star sport bar & grill   manual identidade
Brasília star sport bar & grill manual identidade
 

Similar a SwingImprover - end of career project defense - 2006

Clase 2 - Construccion de los SI.ppt
Clase 2 - Construccion de los SI.pptClase 2 - Construccion de los SI.ppt
Clase 2 - Construccion de los SI.pptrogergrefa1
 
Real World Agile Roadshow 2013 - Planificación y Arquitectura Ágil
Real World Agile Roadshow 2013 - Planificación y Arquitectura ÁgilReal World Agile Roadshow 2013 - Planificación y Arquitectura Ágil
Real World Agile Roadshow 2013 - Planificación y Arquitectura ÁgilJose Luis Soria
 
Desarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por PruebasDesarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por Pruebas.. ..
 
Meetup TestingUY 2016 - Pruebas de Performance durante el desarrollo o al final
Meetup TestingUY 2016 - Pruebas de Performance durante el desarrollo o al finalMeetup TestingUY 2016 - Pruebas de Performance durante el desarrollo o al final
Meetup TestingUY 2016 - Pruebas de Performance durante el desarrollo o al finalTestingUy
 
02 proceso ciclodevida
02 proceso ciclodevida02 proceso ciclodevida
02 proceso ciclodevidaclaudiappaez
 
Ingeniería de software
Ingeniería de softwareIngeniería de software
Ingeniería de softwaremat3matik
 
Ingeniería%20de%20 software[1], maryy
Ingeniería%20de%20 software[1], maryyIngeniería%20de%20 software[1], maryy
Ingeniería%20de%20 software[1], maryynelly
 
Ingeniería de software16
Ingeniería de software16Ingeniería de software16
Ingeniería de software16Ramon
 
Ingenier%c3%ada de software
Ingenier%c3%ada de softwareIngenier%c3%ada de software
Ingenier%c3%ada de softwareMarilupe
 
Ingen de software
Ingen de softwareIngen de software
Ingen de softwareerikapoh
 
Ingeniería de software
Ingeniería de softwareIngeniería de software
Ingeniería de softwaresamantha
 
Ingeniería de software
Ingeniería de softwareIngeniería de software
Ingeniería de software142918
 
Módulo 4. Desarrollador ágil
Módulo 4. Desarrollador ágilMódulo 4. Desarrollador ágil
Módulo 4. Desarrollador ágilJohnny Ordóñez
 

Similar a SwingImprover - end of career project defense - 2006 (20)

Clase 2 - Construccion de los SI.ppt
Clase 2 - Construccion de los SI.pptClase 2 - Construccion de los SI.ppt
Clase 2 - Construccion de los SI.ppt
 
Real World Agile Roadshow 2013 - Planificación y Arquitectura Ágil
Real World Agile Roadshow 2013 - Planificación y Arquitectura ÁgilReal World Agile Roadshow 2013 - Planificación y Arquitectura Ágil
Real World Agile Roadshow 2013 - Planificación y Arquitectura Ágil
 
"Al rico" PHP
"Al rico" PHP"Al rico" PHP
"Al rico" PHP
 
Desarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por PruebasDesarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por Pruebas
 
Meetup TestingUY 2016 - Pruebas de Performance durante el desarrollo o al final
Meetup TestingUY 2016 - Pruebas de Performance durante el desarrollo o al finalMeetup TestingUY 2016 - Pruebas de Performance durante el desarrollo o al final
Meetup TestingUY 2016 - Pruebas de Performance durante el desarrollo o al final
 
02 proceso ciclodevida
02 proceso ciclodevida02 proceso ciclodevida
02 proceso ciclodevida
 
Ingeniería de software
Ingeniería de softwareIngeniería de software
Ingeniería de software
 
Ingeniería%20de%20 software[1], maryy
Ingeniería%20de%20 software[1], maryyIngeniería%20de%20 software[1], maryy
Ingeniería%20de%20 software[1], maryy
 
Ingeniería de software16
Ingeniería de software16Ingeniería de software16
Ingeniería de software16
 
Ingenier%c3%ada de software
Ingenier%c3%ada de softwareIngenier%c3%ada de software
Ingenier%c3%ada de software
 
Ingen de software
Ingen de softwareIngen de software
Ingen de software
 
Ingeniería de software
Ingeniería de softwareIngeniería de software
Ingeniería de software
 
Clase 11
Clase 11Clase 11
Clase 11
 
Ingeniería de software
Ingeniería de softwareIngeniería de software
Ingeniería de software
 
Software
SoftwareSoftware
Software
 
Clase 11
Clase 11Clase 11
Clase 11
 
Estimacion agil proyectos Software Scrum
Estimacion agil proyectos Software ScrumEstimacion agil proyectos Software Scrum
Estimacion agil proyectos Software Scrum
 
Estimacion agil proyectos Software Scrum
Estimacion agil proyectos Software ScrumEstimacion agil proyectos Software Scrum
Estimacion agil proyectos Software Scrum
 
Iswmovil
IswmovilIswmovil
Iswmovil
 
Módulo 4. Desarrollador ágil
Módulo 4. Desarrollador ágilMódulo 4. Desarrollador ágil
Módulo 4. Desarrollador ágil
 

Último

4º SOY LECTOR PART2- MD EDUCATIVO.p df PARTE
4º SOY LECTOR PART2- MD  EDUCATIVO.p df PARTE4º SOY LECTOR PART2- MD  EDUCATIVO.p df PARTE
4º SOY LECTOR PART2- MD EDUCATIVO.p df PARTESaraNolasco4
 
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...fcastellanos3
 
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOweislaco
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas123yudy
 
libro para colorear de Peppa pig, ideal para educación inicial
libro para colorear de Peppa pig, ideal para educación iniciallibro para colorear de Peppa pig, ideal para educación inicial
libro para colorear de Peppa pig, ideal para educación inicialLorenaSanchez350426
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024gharce
 
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfTema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfDaniel Ángel Corral de la Mata, Ph.D.
 
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMALVOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMALEDUCCUniversidadCatl
 
Uses of simple past and time expressions
Uses of simple past and time expressionsUses of simple past and time expressions
Uses of simple past and time expressionsConsueloSantana3
 
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptxMonitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptxJUANCARLOSAPARCANARE
 
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDUFICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDUgustavorojas179704
 
Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...Angélica Soledad Vega Ramírez
 
EDUCACION FISICA 1° PROGRAMACIÓN ANUAL 2023.docx
EDUCACION FISICA 1°  PROGRAMACIÓN ANUAL 2023.docxEDUCACION FISICA 1°  PROGRAMACIÓN ANUAL 2023.docx
EDUCACION FISICA 1° PROGRAMACIÓN ANUAL 2023.docxLuisAndersonPachasto
 
3. Pedagogía de la Educación: Como objeto de la didáctica.ppsx
3. Pedagogía de la Educación: Como objeto de la didáctica.ppsx3. Pedagogía de la Educación: Como objeto de la didáctica.ppsx
3. Pedagogía de la Educación: Como objeto de la didáctica.ppsxJuanpm27
 
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfTarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfManuel Molina
 
Fichas de Matemática TERCERO DE SECUNDARIA.pdf
Fichas de Matemática TERCERO DE SECUNDARIA.pdfFichas de Matemática TERCERO DE SECUNDARIA.pdf
Fichas de Matemática TERCERO DE SECUNDARIA.pdfssuser50d1252
 
MODELO DE INFORME DE INDAGACION CIENTIFICA .docx
MODELO DE INFORME DE INDAGACION CIENTIFICA .docxMODELO DE INFORME DE INDAGACION CIENTIFICA .docx
MODELO DE INFORME DE INDAGACION CIENTIFICA .docxRAMON EUSTAQUIO CARO BAYONA
 
Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024Rosabel UA
 

Último (20)

4º SOY LECTOR PART2- MD EDUCATIVO.p df PARTE
4º SOY LECTOR PART2- MD  EDUCATIVO.p df PARTE4º SOY LECTOR PART2- MD  EDUCATIVO.p df PARTE
4º SOY LECTOR PART2- MD EDUCATIVO.p df PARTE
 
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
 
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas
 
libro para colorear de Peppa pig, ideal para educación inicial
libro para colorear de Peppa pig, ideal para educación iniciallibro para colorear de Peppa pig, ideal para educación inicial
libro para colorear de Peppa pig, ideal para educación inicial
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
 
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfTema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
 
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMALVOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
 
Uses of simple past and time expressions
Uses of simple past and time expressionsUses of simple past and time expressions
Uses of simple past and time expressions
 
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptxMonitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
 
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDUFICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
 
Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...
 
EDUCACION FISICA 1° PROGRAMACIÓN ANUAL 2023.docx
EDUCACION FISICA 1°  PROGRAMACIÓN ANUAL 2023.docxEDUCACION FISICA 1°  PROGRAMACIÓN ANUAL 2023.docx
EDUCACION FISICA 1° PROGRAMACIÓN ANUAL 2023.docx
 
PPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptxPPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptx
 
3. Pedagogía de la Educación: Como objeto de la didáctica.ppsx
3. Pedagogía de la Educación: Como objeto de la didáctica.ppsx3. Pedagogía de la Educación: Como objeto de la didáctica.ppsx
3. Pedagogía de la Educación: Como objeto de la didáctica.ppsx
 
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfTarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
 
Fichas de Matemática TERCERO DE SECUNDARIA.pdf
Fichas de Matemática TERCERO DE SECUNDARIA.pdfFichas de Matemática TERCERO DE SECUNDARIA.pdf
Fichas de Matemática TERCERO DE SECUNDARIA.pdf
 
MODELO DE INFORME DE INDAGACION CIENTIFICA .docx
MODELO DE INFORME DE INDAGACION CIENTIFICA .docxMODELO DE INFORME DE INDAGACION CIENTIFICA .docx
MODELO DE INFORME DE INDAGACION CIENTIFICA .docx
 
Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024
 
VISITA À PROTEÇÃO CIVIL _
VISITA À PROTEÇÃO CIVIL                  _VISITA À PROTEÇÃO CIVIL                  _
VISITA À PROTEÇÃO CIVIL _
 

SwingImprover - end of career project defense - 2006

  • 1. Proyecto Final ORT – Software Factory 2006 Alejandro Charbonnier Darío Macchi Fernando Nicolet
  • 2. Líneas Generales • Proceso de Desarrollo • Requerimientos • Arquitectura • Tecnologías • SQA • SCM • Gerencia • Métricas • Conclusiones
  • 3. Líneas Generales Idea general, propuesta y dominio • Proceso de Desarrollo • Requerimientos • Arquitectura • Tecnologías • SQA • SCM • Gerencia • Métricas • Conclusiones
  • 4. Líneas Generales Idea Original • Chuck Crawford, Presidente de Nujit. Nos presenta la idea del proyecto basándose en su experiencia como instructor de Golf, y conocimiento del mercado como empresario • Detalle no menor: el cliente reside en Canadá. Esto dificulta comunicación debido a distancia y lenguaje
  • 5. Líneas Generales Propuesta • Realizar un software capaz de ayudar a jugadores de golf a mejorar su swing • También será utilizado por instructores de golf para mostrar los avances de sus alumnos • Realizar comparaciones de swings de principiantes contra videos de profesionales • Utilizar modelos teóricos para comparar las medidas tomadas para calificar el swing a los efectos de medir nivel de mejora • Asistir al usuario a identificar elementos a medir
  • 6. Líneas Generales Propuesta • Debe poder medir ángulos, distancias y distintos indicadores en dos dimensiones • Crear el background necesario para generar un modelo 3D del swing
  • 7. Líneas Generales ¿Qué es un Swing? Es la base de la técnica del Golf. Consiste en rotar el cuerpo de forma de acelerar el “clubhead” a gran velocidad para efectuar el golpe a la bola. - Cinco etapas: - Setup - Back Swing - Top of the swing - Down Swing - Follow through
  • 8. Líneas Generales ¿Qué es un Swing? Es la base de la técnica del Golf. Consiste en rotar el cuerpo de forma de acelerar el “clubhead” a gran velocidad para efectuar el golpe a la bola. - Cinco etapas: - Setup - Back Swing - Top of the swing - Down Swing - Follow through
  • 9. Líneas Generales ¿Qué es un Swing? Es la base de la técnica del Golf. Consiste en rotar el cuerpo de forma de acelerar el “clubhead” a gran velocidad para efectuar el golpe a la bola. - Cinco etapas: - Setup - Back Swing - Top of the swing - Down Swing - Follow through
  • 10. Líneas Generales ¿Qué es un Swing? Es la base de la técnica del Golf. Consiste en rotar el cuerpo de forma de acelerar el “clubhead” a gran velocidad para efectuar el golpe a la bola. - Cinco etapas: - Setup - Back Swing - Top of the swing - Down Swing - Follow through
  • 11. Líneas Generales ¿Qué es un Swing? Es la base de la técnica del Golf. Consiste en rotar el cuerpo de forma de acelerar el “clubhead” a gran velocidad para efectuar el golpe a la bola. - Cinco etapas: - Setup - Back Swing - Top of the swing - Down Swing - Follow through
  • 12. Líneas Generales ¿Qué se Puede Medir en un Swing? Modelo teórico basado en investigaciones científicas del swing (Dr. Ralph Mann) - Posición inicial de la bola - Inclinación de la columna - Distancia del hombro al club - Movimiento de brazos y hombros como unidad - “Inside path” - Etc
  • 14. Líneas Generales Proceso de Desarrollo Metodología, adaptación y puesta en práctica • Requerimientos • Arquitectura • Tecnologías • SQA • SCM • Gerencia • Métricas • Conclusiones
  • 15. Proceso de Desarrollo -¿Por qué una Metodología Ágil? - Alto riesgo tecnológico - Colaboración del cliente - Prototipo (alta probabilidad de cambio) - Conformidad del cliente - Gestión de la calidad - Grupo pequeño - Disposición de un lugar común de trabajo
  • 16. Proceso de Desarrollo - Adaptación de XP - 12 Practicas - Estudio de los beneficios de cada practica de XP - Adaptación y utilización de las mismas.
  • 17. Proceso de Desarrollo - Beneficios de XP - Desventajas de XP - Uso de Spikes - Riesgo de fracaso por falta de - Mantener un diseño simple compromiso de los integrantes - Programación de a pares - Aprendizaje de la metodología - Integración contínua. - Cliente reside en Canadá - Uso de TDD
  • 18. Proceso de Desarrollo Roles • Coach: Alejandro • Manager: Darío • Tracker: Fernando • Customer: Chuck Crawford (Nujit) • Programmer: Alejandro/Darío/Fernando • Tester: Alejandro/Darío/Fernando/Chuck
  • 19. Líneas Generales • Proceso de Desarrollo Requerimientos Cliente, historias. Estrategia y priorización • Arquitectura • Tecnologías • SQA • SCM • Gerencia • Métricas • Conclusiones
  • 20. Requerimientos Requerimientos Funcionales • Reproducción de video • Posiciones de distintas partes del cuerpo • Medición de distancias y ángulos • Dos videos en simultaneo para efectuar comparaciones • Modalidad de trabajo libre con ángulos, puntos y líneas • Asistencia al usuario en el marcado de elementos a medir • Permitir ingreso de coordenadas desde una fuente externa a la aplicación
  • 21. Requerimientos Requerimientos no Funcionales • Requerimientos mínimos de sistema: Pentium III 800Mhz, 256MB, 32MB VGA • Lenguaje de desarrollo: C# Framework .NET 1.1 • Plataforma: Windows (XP, 2000 y 98) • Idioma de la GUI: Inglés • Interfaz de usuario amigable
  • 22. Requerimientos Estrategia de Relevamiento • Reuniones virtuales (MSN) - Construcción de historias en conjunto (equipo y cliente) - Priorización de las mismas según: Riesgo e Importancia • Investigación: productos similares, sitios web, bibliografía • Asesoramiento con expertos: tecnología, deporte • Visitas del cliente (3 instancias durante el proyecto) • Uso de prototipos: comunicación y mitigar riesgo • Estudio de factibilidad: presentado a SF
  • 23. Requerimientos Estudio del Modelado 3D - Contacto con Universidad en Singapur (criterion function) - Modelo con restricciones biomecánicas - Standard ISO/IEC FCD 19774:200x (H-Anim) - Uso de humanoides para entornos virtuales vía web
  • 24. Líneas Generales • Proceso de Desarrollo • Requerimientos • Arquitectura Diseño y patrones • Tecnologías • SQA • SCM • Gerencia • Métricas • Conclusiones
  • 25. Arquitectura SwinImproverCommon Measures VideoPlayers GUI Engine Rendering Repositorio Frames Draw Objects XML FrameRepository
  • 26. Arquitectura Measures <<Abstract>> MeasureFactory Measure + result(): string[] RightKneeAngle TeeToLeftFoot + result(): string[] + result(): string[] Calc MeasureStep
  • 27. Arquitectura VideoPlayers <<library>> SwingImproverDomain IVideoPlayback IVideoPlaybackTextured <<library>> SwingImproverVideoPlayers TDDVideoPlayback VMR9VideoPlayback DXAVPVideoPlayback
  • 28. Arquitectura – Características de Calidad Observables en T. de Ejecución No Observables en T. de Ejecución (producto) (prototipo) • Eficiencia • Modificabilidad • Funcionalidad • Reusabilidad • Usabilidad • Facilidad de prueba.
  • 29. Líneas Generales • Proceso de Desarrollo • Requerimientos • Arquitectura • Tecnologías Reproducción de video y controles • SQA • SCM • Gerencia • Métricas • Conclusiones
  • 30. Tecnologías Reproducción de Video • DirectX 9.0c • Windows Media Player • DirectShow - GDI / GDI+ - DirectX 9.0c
  • 31. Tecnologías DirectX 9.0c - AudioVideoPlayback Ventajas Desventajas • Facilidad de uso • Cerrado • Integración directa con Direct3D • Libertad y control limitados • Manejo automático de distintos • Desconoce FPS formatos de video • Bugs!!! • Obtención de los frames • Performance aceptable • Salida Hardware / Software
  • 32. Tecnologías DirectX 9.0c - AudioVideoPlayback Funcionamiento 2 • Abrir video • Modos 1 - Directo (Hardware) - Textured (Software) • Control de reproducción 0 -1 -2
  • 33. Tecnologías Windows MediaPlayer Ventajas Desventajas • Facilidad de uso • Cerrado • Compatibilidad directa con • Libertad y control excesivamente Windows limitados – No sirve • Manejo automático de distintos • Salida hardware-dependiente formatos de video • Performance aceptable
  • 34. Tecnologías DirectShow Ventajas Desventajas • Gran libertad • Complejidad • Documentación • Curva de aprendizaje lenta • Altamente performante • Ausencia de una API managed • Salida Hardware / Software oficial File Source AVI Splitter AVI Decompressor Video Renderer (Async) Default DirectSound Device
  • 35. Tecnologías DirectShow – GDI/GDI+ Ventana transparente SlideShow • Visualmente inaceptable • Visualmente aceptable • Altamente impredecible • Excelente Control • Buena performance • Extremadamente poco • Salida hardware-dependiente performante • Salida por software
  • 36. Tecnologías DirectShow – VMR9 VMR9 • Integración con Direct3D • Tecnología en crecimiento • Complejidad muy alta • Performance aceptable • Salida por software
  • 37. Tecnologías Controles Personalizados • Toolbars • Trackbar • Paneles • Botones 8 4 1 1 4 8
  • 38. Tecnologías Controles Personalizados Ventajas Desventajas • Visualización mejorada • Consumo de recursos • Globalmente modificables • Pérdida de performance • Funcionamiento deseado • Satisface requerimiento de usabilidad
  • 39. Tecnologías Controles Personalizados Tecnología utilizada Técnicas - GDI - Backbuffer - GDI+ - Canal alfa - Código unsafe
  • 40. Líneas Generales • Proceso de Desarrollo • Requerimientos • Arquitectura • Tecnologías • SQA Plan, aseguramiento de la calidad y pruebas • SCM • Gerencia • Métricas • Conclusiones
  • 41. SQA Plan de Calidad • Programación de a pares, código compartido • Estándar de codificación • Integración continua • Diseño Incremental • Refactoreo • Test Driven Development (TDD)
  • 42. SQA Test Driven Development (TDD) Cálculos Medidas Calc SpineAngle InsidePath SwingImprover. Measures AngleTest DistanceTest InsidePathTest SwingImprover.Test
  • 43. SQA Testing Casos de Prueba Según su Tipo Funcionales TDD Hardware dependiente
  • 44. Líneas Generales • Proceso de Desarrollo • Requerimientos • Arquitectura • Tecnologías • SQA • SCM Herramientas, proceso y estrategia de backup • Gerencia • Métricas • Conclusiones
  • 45. SCM Herramientas - Versionado de código y documentación - CVS NT como servidor de CVS - Tortoise CVS como cliente de CVS - Versionado de documentos informales - Fitneese – Wiki
  • 46. SCM Proceso 1. Realizar un update antes de realizar un commit de un cambio. 2. En caso de ser necesario, solucionar los posibles conflictos de versiones. 3. Realizar un Add content para agregar posibles elementos nuevos. 4. Hacer un commit del proyecto.
  • 47. Líneas Generales • Proceso de Desarrollo • Requerimientos • Arquitectura • Tecnologías • SQA • SCM • Gerencia Proceso, planificación y herramientas • Métricas • Conclusiones
  • 48. Gerencia Se apoyó en los siguientes principios • Compromiso en la responsabilidad • Adaptación Incremental • No agregar overhead al programador (travel light) • Mediciones Honestas
  • 49. Gerencia Planificación de Iteraciones Plan de Release Historias Planificación de Iteración
  • 50. Gerencia Planificación de Iteraciones Plan de Release Historias Planificación Desarrollo de Iteración Plan de Iteración
  • 51. Gerencia Planificación de Iteraciones Nuevas Historias, Plan de Velocidad de Proyecto Release Historias Comunicación y Tereas Pendientes Aprendizaje Planificación Desarrollo de Iteración Plan de Iteración
  • 52. Gerencia Planificación de Iteraciones Nuevas Historias, Plan de Velocidad de Proyecto Release Historias Comunicación y Tereas Pendientes Aprendizaje Nuevas Funcionalidades Planificación Desarrollo Última de Iteración Plan de Versión Iteración
  • 53. Gerencia Planificación de Iteraciones Nuevas Historias, Plan de Velocidad de Proyecto Release Historias Comunicación y Tereas Pendientes Aprendizaje Nuevas Velocidad Funcionalidades de Proyecto Planificación Desarrollo Última Iteración de Iteración Plan de Versión Iteración Bugs Corregidos Anterior Pruebas de Dia a Dia Aceptación Fallidas Bugs
  • 54. Gerencia Planificación Plan de proyecto - Versión 1 • R1: Octubre (final de it. 3) • R2: Mitad de diciembre (final de it. 8) • R3: Mitad de febrero (final de it. 12) - Versión 2 • R1: Mitad de diciembre (final de it. 8) • R2: Mitad de febrero (final de it. 12) • Velocidad = Puntos/Hrs. trabajadas
  • 55. Gerencia Iteraciones 1 2 3 4 5 6 7 8 9 10 11 12 Release 1 Release 2 Release 3 Historias
  • 56. Gerencia Iteraciones 1 2 3 4 5 6 7 8 9 10 11 12 Release 1 Release 2 Historias
  • 57. Gerencia Planificación Herramientas utilizadas • XPPlanner • ToDoList • Excel (evolución de planillas) 
  • 58. Gerencia Riesgos • Riesgos tecnológicos - Spikes • Otros riesgos - Compromiso con XP - Confianza con el cliente - Error • Falta de un plan de riesgos y planes de contingencia - Soluciones espontáneas
  • 59. Líneas Generales • Proceso de Desarrollo • Requerimientos • Arquitectura • Tecnologías • SQA • SCM • Gerencia Métricas De proceso, producto e interpretaciones • Conclusiones
  • 60. Métricas Al final del Proyecto • Releases: 2 • Iteraciones: 11 • Historias: 63 • Puntos de complejidad: 455 • Hrs. Trabajadas: 1428 • Velocidad: 0.41 puntos/hora • Hrs./persona/día: 4:00 (4 días a la semana)
  • 61. Métricas - Proyecto Historias / Puntos 10 70 60 8 Cantidad de Historias 50 6 40 Puntos 4 30 20 2 10 0 0 1 2 3 4 5 6 7 8 9 10 11 Historias 6 5 9 2 5 5 5 8 4 3 3 Puntos 21 38 26 66 52 62 38 64 26 24 38
  • 62. Métricas - Proyecto Velocidad / Hrs. trabajadas respecto a Hrs. estimadas 240:00 0.60 0.50 192:00 Cantida de Horas 0.40 Puntos/Hrs. 144:00 0.30 96:00 0.20 48:00 0.10 0:00 0.00 1 2 3 4 5 6 7 8 9 10 11 Hrs. Estimadas Hrs. trabajadas Velocity
  • 63. Métricas - Producto 60 54 50 SwingImprover 40 SIDomain 29 SICommon 30 27 SIControls 22 VideoInfo 20 17 15 SIVideoPlayers SIToobar 10 5 SITest 0 0 Max Complexity
  • 64. Líneas Generales • Proceso de Desarrollo • Requerimientos • Arquitectura • Tecnologías • SQA • SCM • Gerencia • Métricas Conclusiones De proyecto y personales
  • 65. Conclusiones del Proyecto Metas Alcanzadas Lecciones Aprendidas • Satisfacción del Cliente • No desviarse del proceso • Cumplimiento de alcance inicial • Necesidad de pruebas mas • Adaptación exitosa de XP exhaustivas • Ser concientes de potenciales riesgos y generar plan de contingencia (mas allá del uso de spikes) • Llevar una bitácora de proyecto
  • 66. Conclusiones Personales Metas Alcanzadas Lecciones Aprendidas • Conocimiento de nuevas • Ventajas de programación a pares tecnologías • Capacidad de afrontar desafíos • Uso de una metodología de atípicos exitosamente desarrollo ágil (XP) • Necesidad de delegar actividades • Compromiso hacia el grupo por parte de sus integrantes
  • 67. Estado Actual del Producto http://www.nextgenerationsrt.com/ Partner: Company:
  • 68. FIN

Notas del editor

  1. Transmitir la idea del producto a través de sus casos de uso.
  2. - equipo no está familiarizado con la tecnología a utilizar - utilizar el prototipo para seguir relevando requerimientos - pocos integrantes del equipo desempeñen mejor sus roles correspondientes
  3. Esto me parece que podría ir en las conclusiones del proyecto
  4. 2. Quién decidió como priorizar las historias? - En una primera instancia las priorizaron el equipo con el cliente según lo siguiente: - Incertidumbre y riesgo en la tecnología - Orden lógico - EL CLIENTE
  5. Para DirectShow usamos DirectShowLib, componente de terceros.
  6. La perdida de performance es en cuanto al redibujado. No afecta la performance del video.
  7. La integración de lo hecho con TDD frente al resto fue perfecta.
  8. Recordar que con los cambios de oficina y con los cambios de máquinas que se dieron durante el proyecto no se perdió información
  9. Accepted responsibility: La tarea del manager es la de indicar que es lo que se debe hacer pero no es el responsable que esta tarea sea cumplida. Por este motivo se asumió que cada integrante del equipo deberá saber cuales son sus responsabilidades. · Incremental Change Como se vio anteriormente, no se puede comenzar a utilizar las practicas de XP todas de una sola vez, sino que el proceso fue implementado en etapas determinando que es lo mejor para el equipo. Esta tarea será realizada sobre todo por el coach. · Travel Light El manager no debe agregar un overhead innecesario al trabajo de los programadores. En caso de necesitar algo de estos, dicha tarea debe ser organizada de forma que le quite el menor tiempo posible al programador. · Honest measurement Al momento de tomar métricas, estas debe ser realizadas con precisión y realismo.
  10. Plazo de dos semanas por iteración Cada iteración comienza con una breve reunión en la cual se priorizan las tareas Las historias eran puntuadas por los integrantes del equipo por separado; luego se mediaba y utilizando la vel. de la iteración anterior se calcula un estimado de lo que llevaría realizar la tarea.
  11. Plazo de dos semanas por iteración Cada iteración comienza con una breve reunión en la cual se priorizan las tareas Las historias eran puntuadas por los integrantes del equipo por separado; luego se mediaba y utilizando la vel. de la iteración anterior se calcula un estimado de lo que llevaría realizar la tarea.
  12. Debido a la falta de experiencia en la metodología de XP, el equipo estuvo unos meses en una etapa de conocimiento XP, investigación de tecnologías y desarrollo de prototipos. Por este motivo es que para algunos cálculos (ejemplo velocidad) se tomo como iteración 1 la correspondiente a la primera quincena de agosto. Si bien antes se venía trabajando en períodos de dos semanas, de igual duraciones que las iteraciones, las mismas solo serán tomadas en cuenta para las métricas de tiempo y no de esfuerzo . Hrs. comprometidas como base para estimar 1428 = 4*3*4*4*7 aprox.
  13. Para entender la complejidad de cada iteración sería bueno ver que cantidad de historias fueron implementadas en cada una de ellas y a su vez compararlo con la cantidad de puntos correspondientes a dichas historias.
  14. Metodología atípica: éxito Proyecto atípico: éxito Tenemos la cabeza abierta.