This was the slides that we used at the defense of our end of career project. This was about the development of a software prototype (called SwingImprover) that allows the analysis of a golf player swing movement (using personal videos). The software has to let the user study their moves during the various stages of the swing, allowing the comparison with theoretical measures and with movements of professional players.
This document provides a summary of key grammar concepts in Spanish, including:
1. It outlines different verb tenses and forms such as the preterite, imperfect, commands, and modal verbs.
2. It discusses various verb types like reflexive verbs, stem-changing verbs, and verbs like gustar.
3. It also covers topics such as object pronouns, demonstrative adjectives and pronouns, saber vs conocer, and using se for impersonal constructions.
The document serves as a grammar reference guide, summarizing essential rules and examples for numerous aspects of Spanish verb usage and grammar.
This 4 sentence document lists 4 major cities in India: Delhi, Agra, Jaipur, and Benares. It provides the names of the cities without additional context or details about each location.
Titulo: Construtora WBELM
Alunos:Marcus Vinícius Oliveira Araújo,eliomar vilela dos anjos,Wesley Fortes Alves,
Cidade:
Disciplina:
Turma:
Data:15-04-2014
Hora:21:30
Comentarios:Professor, nosso grupo não consegue inserir todos os componentes pois os nomes de todos os integrantes não aparecem em "Integrantes" para Upload. Assim enviaremos em duas partes.
Integrantes:
Bruno Guimarães Berbari
Leonardo Ferreira Santos
Wesley Fortes
Eliomar Vilela dos Anjos
Marcus Vinicius Oliveira Araujo
Publico até ápos a correção
This document provides a summary of key grammar concepts in Spanish, including:
1. It outlines different verb tenses and forms such as the preterite, imperfect, commands, and modal verbs.
2. It discusses various verb types like reflexive verbs, stem-changing verbs, and verbs like gustar.
3. It also covers topics such as object pronouns, demonstrative adjectives and pronouns, saber vs conocer, and using se for impersonal constructions.
The document serves as a grammar reference guide, summarizing essential rules and examples for numerous aspects of Spanish verb usage and grammar.
This 4 sentence document lists 4 major cities in India: Delhi, Agra, Jaipur, and Benares. It provides the names of the cities without additional context or details about each location.
Titulo: Construtora WBELM
Alunos:Marcus Vinícius Oliveira Araújo,eliomar vilela dos anjos,Wesley Fortes Alves,
Cidade:
Disciplina:
Turma:
Data:15-04-2014
Hora:21:30
Comentarios:Professor, nosso grupo não consegue inserir todos os componentes pois os nomes de todos os integrantes não aparecem em "Integrantes" para Upload. Assim enviaremos em duas partes.
Integrantes:
Bruno Guimarães Berbari
Leonardo Ferreira Santos
Wesley Fortes
Eliomar Vilela dos Anjos
Marcus Vinicius Oliveira Araujo
Publico até ápos a correção
A União Europeia está preocupada com o impacto da inteligência artificial no mercado de trabalho. Estudos mostram que muitos empregos podem ser automatizados nos próximos anos, mas também que novos empregos serão criados. A UE está trabalhando para garantir que os trabalhadores recebam treinamento e apoio para as transições necessárias no mercado de trabalho.
Teks memberi pesan untuk selalu bersyukur dan tidak mudah mengeluh dengan memikirkan kondisi orang lain yang lebih sulit. Sebelum mengeluh, ingatlah ada orang yang tidak bisa makan, tidak punya rumah, cacat, atau meninggal lebih awal. Hargailah kehidupan dan cintailah orang lain. Nikmatilah hidup sebagai anugerah.
Goiania gp17-gerenciamento de aquisições - pro+Marco Coghi
O documento apresenta o plano de gerenciamento de aquisições de uma empresa de gestão de projetos de exploração de recursos minerais. O plano descreve o processo de aquisições, incluindo objetivos, responsabilidades, critérios para comprar ou produzir internamente, mapeamento, riscos, critérios de avaliação e seleção de fornecedores, documentos e fluxos para conduzir, administrar e encerrar aquisições.
El documento describe la evolución de los teléfonos móviles desde el primer modelo DynaTAC 8000X de Motorola en 1983 hasta los modelos modernos. Explica cómo la tecnología de los teléfonos móviles ha avanzado para incorporar cámaras, música, internet y otras funciones, al tiempo que se han vuelto más pequeños y livianos. También discute cómo las compañías de telefonía están desarrollando nuevas aplicaciones para este dispositivo ubicuo.
Este documento describe los principios del aprendizaje basado en el constructivismo. Explica que los estudiantes construyen activamente su propio conocimiento a través de la asimilación y acomodación de nuevas experiencias. El aprendizaje es significativo cuando las tareas se relacionan con conocimientos previos del estudiante y cuando deciden aprender. El educador actúa como facilitador para guiar la colaboración y construcción compartida del conocimiento. La metodología debe incluir diversas actividades contextualizadas y la evaluación debe ser formativa para lograr
O documento discute a proposta de implementação de um Escritório de Gestão de Projetos (PMO) no governo de Angola para melhor gerenciar projetos internos de forma profissional. Ele identifica projetos em categorias, os avalia e prioriza usando critérios como retorno de investimento. Também aborda a criação e gestão de conhecimento organizacional com base no modelo SECI e a organização de ferramentas de groupware. Por fim, descreve a estrutura hierárquica proposta para o PMO e as etapas para sua implementação.
O documento reconhece a importância de acordos internacionais sobre desenvolvimento sustentável e direitos humanos. Defende que o desenvolvimento sustentável deve satisfazer as necessidades do presente sem comprometer o futuro e basear-se em inclusão social, trabalho decente e economia de baixo carbono.
O projeto Revita Pampulha tem como objetivo tornar a Lagoa da Pampulha limpa através de obras de desassoreamento e tratamento de esgoto, visando melhorar a qualidade da água e reintegrar a lagoa como local de lazer até julho de 2013. O projeto será gerido por uma equipe multidisciplinar e seguirá normas e leis ambientais, com um orçamento máximo de R$400 milhões a ser custeado majoritariamente pelo governo estadual.
O documento descreve um projeto para elaborar um guia de boas práticas urbanas para utilização de áreas verdes nas cidades, com o objetivo de melhorar a qualidade de vida dos habitantes e promover a biodiversidade. O projeto visa aumentar a permeabilidade e reduzir o efeito de ilhas de calor em 20% e 30% respectivamente em 4 anos, sem aumentar os custos públicos.
Este manual fornece diretrizes para a utilização da logomarca do Centro Universitário Brasília Star, definindo suas cores, formatos, reduções permitidas e áreas de segurança. O logotipo foi criado para representar a alma esportiva do bar por meio de elementos gráficos que transmitem entretenimento e lazer.
El documento describe las principales actividades involucradas en la construcción e implementación de sistemas de información, incluyendo el análisis de necesidades, diseño técnico, construcción del sistema, pruebas, capacitación, y puesta en marcha. También discute opciones como comprar versus desarrollar un sistema, y factores clave para el éxito o fracaso de la implementación.
A União Europeia está preocupada com o impacto da inteligência artificial no mercado de trabalho. Estudos mostram que muitos empregos podem ser automatizados nos próximos anos, mas também que novos empregos serão criados. A UE está trabalhando para garantir que os trabalhadores recebam treinamento e apoio para as transições necessárias no mercado de trabalho.
Teks memberi pesan untuk selalu bersyukur dan tidak mudah mengeluh dengan memikirkan kondisi orang lain yang lebih sulit. Sebelum mengeluh, ingatlah ada orang yang tidak bisa makan, tidak punya rumah, cacat, atau meninggal lebih awal. Hargailah kehidupan dan cintailah orang lain. Nikmatilah hidup sebagai anugerah.
Goiania gp17-gerenciamento de aquisições - pro+Marco Coghi
O documento apresenta o plano de gerenciamento de aquisições de uma empresa de gestão de projetos de exploração de recursos minerais. O plano descreve o processo de aquisições, incluindo objetivos, responsabilidades, critérios para comprar ou produzir internamente, mapeamento, riscos, critérios de avaliação e seleção de fornecedores, documentos e fluxos para conduzir, administrar e encerrar aquisições.
El documento describe la evolución de los teléfonos móviles desde el primer modelo DynaTAC 8000X de Motorola en 1983 hasta los modelos modernos. Explica cómo la tecnología de los teléfonos móviles ha avanzado para incorporar cámaras, música, internet y otras funciones, al tiempo que se han vuelto más pequeños y livianos. También discute cómo las compañías de telefonía están desarrollando nuevas aplicaciones para este dispositivo ubicuo.
Este documento describe los principios del aprendizaje basado en el constructivismo. Explica que los estudiantes construyen activamente su propio conocimiento a través de la asimilación y acomodación de nuevas experiencias. El aprendizaje es significativo cuando las tareas se relacionan con conocimientos previos del estudiante y cuando deciden aprender. El educador actúa como facilitador para guiar la colaboración y construcción compartida del conocimiento. La metodología debe incluir diversas actividades contextualizadas y la evaluación debe ser formativa para lograr
O documento discute a proposta de implementação de um Escritório de Gestão de Projetos (PMO) no governo de Angola para melhor gerenciar projetos internos de forma profissional. Ele identifica projetos em categorias, os avalia e prioriza usando critérios como retorno de investimento. Também aborda a criação e gestão de conhecimento organizacional com base no modelo SECI e a organização de ferramentas de groupware. Por fim, descreve a estrutura hierárquica proposta para o PMO e as etapas para sua implementação.
O documento reconhece a importância de acordos internacionais sobre desenvolvimento sustentável e direitos humanos. Defende que o desenvolvimento sustentável deve satisfazer as necessidades do presente sem comprometer o futuro e basear-se em inclusão social, trabalho decente e economia de baixo carbono.
O projeto Revita Pampulha tem como objetivo tornar a Lagoa da Pampulha limpa através de obras de desassoreamento e tratamento de esgoto, visando melhorar a qualidade da água e reintegrar a lagoa como local de lazer até julho de 2013. O projeto será gerido por uma equipe multidisciplinar e seguirá normas e leis ambientais, com um orçamento máximo de R$400 milhões a ser custeado majoritariamente pelo governo estadual.
O documento descreve um projeto para elaborar um guia de boas práticas urbanas para utilização de áreas verdes nas cidades, com o objetivo de melhorar a qualidade de vida dos habitantes e promover a biodiversidade. O projeto visa aumentar a permeabilidade e reduzir o efeito de ilhas de calor em 20% e 30% respectivamente em 4 anos, sem aumentar os custos públicos.
Este manual fornece diretrizes para a utilização da logomarca do Centro Universitário Brasília Star, definindo suas cores, formatos, reduções permitidas e áreas de segurança. O logotipo foi criado para representar a alma esportiva do bar por meio de elementos gráficos que transmitem entretenimento e lazer.
El documento describe las principales actividades involucradas en la construcción e implementación de sistemas de información, incluyendo el análisis de necesidades, diseño técnico, construcción del sistema, pruebas, capacitación, y puesta en marcha. También discute opciones como comprar versus desarrollar un sistema, y factores clave para el éxito o fracaso de la implementación.
Este documento resume una presentación sobre buenas prácticas para el desarrollo web en PHP. La presentación cubre temas como el uso de IDEs, estándares de codificación, documentación interna de código, control de versiones, seguimiento de incidencias, uso de wikis, metodologías ágiles, frameworks de PHP, bibliotecas, seguridad, depuración, pruebas unitarias, pruebas automatizadas, integración continua, métricas, rendimiento, despliegues, entornos, búsqueda y equipo.
Meetup TestingUY 2016 - Pruebas de Performance durante el desarrollo o al finalTestingUy
Expositor: Federico Toledo
Resumen: "Es mejor que empieces el testing desde el comienzo". Esta frase se ha repetido tantas veces últimamente gracias al auge y relevancia de las metodologías ágiles, que (por suerte) remarcan la importancia que tienen las pruebas en el proceso de desarrollo. ¿Cuál es la mejor forma de enfocar el esfuerzo en testing cuando hablamos de pruebas de performance? ¿Deberíamos comenzar desde el comienzo del desarrollo, acompañándolo, de acuerdo a lo planteado por las metodologías ágiles, o deberíamos seguir con un enfoque del tipo waterfall? Si alguien de la audiencia está pensando sobre pruebas de performance y tiene que decidir cómo enfocar sus esfuerzos, en esta presentación compartiremos cómo son ambos enfoques basándonos en proyectos reales, pudiendo así generar una mejor imagen de cada uno. Veremos los pros y contras de cada uno y después de la charla podrán llegar a la conclusión de cuál les conviene más en su contexto.
Este documento presenta una introducción a los conceptos clave de ingeniería de software como personas, producto, proyecto y proceso. Explica las fases genéricas de definición, desarrollo y mantenimiento de un proyecto de software, así como actividades de soporte como documentación y gestión de calidad. También describe los principales modelos de proceso como cascada, prototipado, evolutivo e espiral, destacando sus características, ventajas e inconvenientes.
El documento describe los conceptos fundamentales de la ingeniería de software, incluyendo las definiciones de ingeniería de software según la IEEE, los pasos típicos en el desarrollo de un sistema de software como el análisis de requisitos y pruebas, y los diferentes ciclos de vida del software como el ciclo de vida clásico y el desarrollo en espiral. También discute brevemente conceptos como prototipado, reutilización de software, y métodos formales e informales para el desarrollo de software.
El documento describe los conceptos fundamentales de la ingeniería de software. Explica que la ingeniería de software implica la aplicación sistemática y cuantificable del desarrollo, operación y mantenimiento del software. También describe los pasos típicos en el desarrollo de un sistema de software, incluyendo el análisis de requisitos, diseño, programación, pruebas y mantenimiento. Además, explica diferentes metodologías, ciclos de vida y niveles de madurez en el proceso de desarrollo de software.
El documento describe los conceptos fundamentales de la ingeniería de software. Explica que la ingeniería de software implica la aplicación sistemática y cuantificable del desarrollo, operación y mantenimiento del software. También describe los pasos típicos en el desarrollo de un sistema de software, incluyendo el análisis de requisitos, diseño, programación, pruebas y mantenimiento. Además, explica diferentes metodologías, ciclos de vida y niveles de madurez en el proceso de desarrollo de software.
El documento describe los conceptos fundamentales de la ingeniería de software. Explica que la ingeniería de software implica la aplicación sistemática y cuantificable del desarrollo, operación y mantenimiento del software. También describe los pasos típicos en el desarrollo de un sistema de software, como el análisis de requisitos, diseño, programación, pruebas y mantenimiento. Además, explica conceptos como los ciclos de vida del software, las metodologías de desarrollo y los niveles de madurez de los procesos
El documento describe los conceptos fundamentales de la ingeniería de software. Explica que la ingeniería de software implica la aplicación sistemática y cuantificable del desarrollo, operación y mantenimiento del software. También describe los pasos típicos en el desarrollo de un sistema de software, como el análisis de requisitos, diseño, programación, pruebas y mantenimiento. Además, explica conceptos como los ciclos de vida del software, las metodologías de desarrollo y los niveles de madurez de los procesos
El documento describe los conceptos fundamentales de la ingeniería de software. Explica que la ingeniería de software implica la aplicación sistemática y cuantificable del desarrollo, operación y mantenimiento del software. También describe los pasos típicos en el desarrollo de un sistema de software, incluyendo el análisis de requisitos, diseño, programación, pruebas y mantenimiento. Además, explica diferentes metodologías, ciclos de vida y niveles de madurez en el proceso de desarrollo de software.
El documento describe los conceptos fundamentales de la ingeniería de software. Explica que la ingeniería de software implica la aplicación sistemática y cuantificable del desarrollo, operación y mantenimiento del software. También describe los pasos típicos en el desarrollo de un sistema de software, incluyendo el análisis de requisitos, diseño, programación, pruebas y mantenimiento. Además, explica diferentes metodologías, ciclos de vida y niveles de madurez en el proceso de desarrollo de software.
El documento describe los conceptos fundamentales de la ingeniería de software, incluyendo las definiciones de ingeniería de software según la IEEE, los pasos típicos en el desarrollo de un sistema de software como el análisis de requisitos y pruebas, y los diferentes ciclos de vida del software como el ciclo de vida clásico y el desarrollo en espiral. También discute brevemente conceptos como prototipado, reutilización de software, y métodos formales e informales para el desarrollo de software.
Este documento trata sobre el proceso de desarrollo de software. Explica diferentes ciclos de vida del software como el ciclo de vida clásico o en cascada, la construcción rápida de prototipos desechables y el modelo en espiral. También describe metodologías como los métodos estructurados, orientados a objetos y formales. Finalmente, introduce conceptos como la madurez del proceso en una organización según el modelo CMM.
El documento describe los conceptos fundamentales de la ingeniería de software. Explica que la ingeniería de software implica un enfoque sistemático y cuantificable para el desarrollo, operación y mantenimiento del software. Luego detalla los pasos clave en el desarrollo de un sistema de software, incluyendo el análisis de requisitos, diseño, programación, pruebas y mantenimiento. También cubre temas como los ciclos de vida del software, la reutilización de software y los modelos de madurez para mejorar los procesos
Este documento describe las metodologías ágiles Scrum y técnicas de estimación ágil. Scrum utiliza iteraciones cortas llamadas sprints de un mes de duración, roles como Product Owner y Scrum Master, y backlogs de producto y sprint. Las historias de usuario describen requisitos en un formato sencillo. La estimación se realiza con puntos de historia y planning poker. El seguimiento incluye gráficos de quemadura y velocidad del equipo. Las técnicas ágiles enfatizan la excelencia técnica con pruebas automatiz
Este documento describe las metodologías ágiles Scrum y técnicas de estimación ágil. Scrum utiliza iteraciones cortas llamadas sprints de un mes de duración, roles como Product Owner y Scrum Master, y backlogs de producto y sprint. Las historias de usuario describen requisitos en un formato sencillo. La estimación se realiza con puntos de historia y planning poker. El seguimiento incluye gráficos de quemadura y velocidad del equipo. Las técnicas ágiles enfatizan la excelencia técnica con pruebas automatiz
La presentación trata sobre ingeniería de software para dispositivos móviles. Explica que el cómputo móvil ha evolucionado de computadoras múltiples usuarios a una computadora un usuario y ahora a un usuario con múltiples dispositivos. También describe los desafíos de desarrollar software para dispositivos heterogéneos con capacidades limitadas y propone soluciones como considerar las limitaciones de hardware, usar interfaces intuitivas, optimizar el tamaño y velocidad del código, y utilizar patrones de diseño como MVC.
El documento presenta información sobre desarrollo ágil y Scrum. Explica las responsabilidades de los miembros del equipo en un proyecto ágil, incluyendo comprender los principios ágiles, asegurar la excelencia técnica, probar el código, permitir el desarrollo evolutivo y reducir la deuda técnica. También describe conceptos como code smells, pruebas unitarias, TDD, patrones de diseño y arquitectura ágil.
Similar a SwingImprover - end of career project defense - 2006 (20)
Ofrecemos herramientas y metodologías para que las personas con ideas de negocio desarrollen un prototipo que pueda ser probado en un entorno real.
Cada miembro puede crear su perfil de acuerdo a sus intereses, habilidades y así montar sus proyectos de ideas de negocio, para recibir mentorías .
En la ciudad de Pasto, estamos revolucionando el acceso a microcréditos y la formalización de microempresarios informales con nuestra aplicación CrediAvanza. Nuestro objetivo es empoderar a los emprendedores locales proporcionándoles una plataforma integral que facilite el acceso a servicios financieros y asesoría profesional.
José Luis Jiménez Rodríguez
Junio 2024.
“La pedagogía es la metodología de la educación. Constituye una problemática de medios y fines, y en esa problemática estudia las situaciones educativas, las selecciona y luego organiza y asegura su explotación situacional”. Louis Not. 1993.
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
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
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
36. Tecnologías
DirectShow – VMR9
VMR9
• Integración con Direct3D
• Tecnología en crecimiento
• Complejidad muy alta
• Performance aceptable
• Salida por software
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
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
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
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)
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:
Transmitir la idea del producto a través de sus casos de uso.
- 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
Esto me parece que podría ir en las conclusiones del proyecto
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
Para DirectShow usamos DirectShowLib, componente de terceros.
La perdida de performance es en cuanto al redibujado. No afecta la performance del video.
La integración de lo hecho con TDD frente al resto fue perfecta.
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
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.
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.
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.
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.
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.
Metodología atípica: éxito Proyecto atípico: éxito Tenemos la cabeza abierta.