Integración Continua con Team Foundation Server

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    2 Favorites

    Integración Continua con Team Foundation Server - Presentation Transcript

    1. INTEGRACIÓN CONTINUA CON TEAM FOUNDATION SERVER http://blogs.msdn.com/rido Conceptos Avanzados de compilación Madrid 20070628
    2. Introducción Trabajo en equipo  Integrar componentes  ¿Quien integra?   ¿Cuando se integra? Developer  ¿Cuánto tardo? Solution Infrastructure Architect  ¿Cómo se verifica? Architect Generar una versión  Compilación  Tester Probar una versión Project Manager  End User Visibilidad del progreso 
    3. Agenda ALM/SDLC  BUILD  Pruebas y Entornos  Herramientas  Integración Continua con TFS 
    4. ALM=Application Lifecycle Management Process/Governance Project Governance Dev Methodology (SDLC) Ent Arch Standards Architectural Governance Project Determination Dev Standards/Policies Secure Dev Lifecycle Compliance (SOX) Release Management Develop Mgmt Mgmt Project Mgmt Requirements SCM/Build Mgmt Test Mgmt PMO Enterprise P&P Requirements Elicitation Build Management Test Strategy Portfolio Mgmt Software Factories Requirements Mgmt SCM Management Test Cases Continuous Integration Risk Mgmt Coding Best Practices Business Archi (Motion) Unit Testing Task Management Code Review Process Business Analyst Test Deployment System Testing KPI and Scorecards Refactoring Gated Build Process Incremental Testing Communication Mgmt Documentation Best Prac Testing KPI’s Build Manager Project Manager User Acceptance Testing SCM Manager Secure Dev Best Prac DB Development Performance Testing Test Manager Developer DBA Install/Setup Workflow Engine ALM Platform Operations ALM Platform Monitoring Security Implementation ALM System Integration Operations Role Guidance Platform Capacity Mgmt Platform Design/Topology Migration/Integration Infrastructure/Operations
    5. ALM=Application Lifecycle Management Process/Governance Project Governance Dev Methodology (SDLC) Ent Arch Standards Architectural Governance Project Determination Dev Standards/Policies Secure Dev Lifecycle Compliance (SOX) Release Management Develop Mgmt Mgmt Project Mgmt Requirements SCM/Build Mgmt Test Mgmt PMO Enterprise P&P Requirements Elicitation Build Management Test Strategy Portfolio Mgmt Software Factories Requirements Mgmt SCM Management Test Cases Continuous Integration Risk Mgmt Coding Best Practices Business Archi (Motion) Unit Testing Task Management Code Review Process Business Analyst Test Deployment System Testing KPI and Scorecards Refactoring Gated Build Process Incremental Testing Communication Mgmt Documentation Best Prac Testing KPI’s Build Manager Project Manager User Acceptance Testing SCM Manager Secure Dev Best Prac DB Development Performance Testing Test Manager Developer DBA Install/Setup Workflow Engine ALM Platform Operations ALM Platform Monitoring Security Implementation ALM System Integration Operations Role Guidance Platform Capacity Mgmt Platform Design/Topology Migration/Integration Infrastructure/Operations
    6. SDLC=SoftwareDevelopmentLifeCycle ¿Cómo se construye el software?  Proceso continuo   Análisis, Diseño, Desarrollo, Pruebas Código Fuente   Esel entregable más importante  Gestionar el cambio  Repositorio Concepto de versión 
    7. Crear una versión
    8. Demo Aplicación de Ejemplo 
    9. Escenario Gestionar los usuarios de una aplicación web: Registro de usuarios (Nombre, contraseña, Email) Almacén en SQLServer Cifrar contraseñas Validar Credenciales Contraseñas Fuertes Validar email Comprobar que el email existe Si falla el registro indicar porqué Validación de usuarios Usuario/Contraseña
    10. Demo:FabrikamMembershipProvider
    11. CredentialsValidator
    12. Fabrikam.Web
    13. Agenda ALM/SDLC  BUILD  Pruebas y Entornos  Herramientas  Integración Continua con TFS 
    14. Pasos para crear una versión Obtener Compilar Analizar Probar Archivar Fuentes
    15. Obtener Fuentes Obtener Compilar Analizar Probar Archivar Fuentes No es sólo el código “compilable”  El árbol  lib,src,db,tools  Las referencias  internas, externas  La base de datos  esquema, datos  La configuración  Urls, Paths  El contenido  htm, img  Herramientas  extensiones a la build 
    16. Compilar Obtener Compilar Analizar Probar Archivar Fuentes Build  Clean  Code Binary Compile  Incremental Build Config  Debug/Release   CPUs 32, 64 Referencias Raise Grammar  Preproc Errors Link Build Numbers  Major.Minor.Build.Revision  IDE  Automation 
    17. Análisis Estático Obtener Compilar Analizar Probar Archivar Fuentes Buscar errores conocidos  Reglas de verificación  Información de los errores  Static Code Binary Compile Analysis Raise Check Analyze Errors Rules Code
    18. Probar Obtener Compilar Analizar Probar Archivar Fuentes Pruebas unitarias   Sólo prueban el código Pruebas de integración   Prueban parte del sistema Pruebas de rendimiento   Situaciones límite Pruebas de aceptación   El cliente acepta el producto
    19. Archivar Obtener Compilar Analizar Probar Archivar Fuentes Etiquetar  Build correcta  Fuentes   Binarios  Informes Análisis de código   Pruebas, tiempos Build incorrecta  Motivo del error   Detalle del error  Diferencias con la última build correcta
    20. Anatomía de una build Obtener Asociar Asociar UnitTest Instalable Fuentes Cambios Funcionalidad Definir Montar Árbol CodeMetrics Instalar Enviar Alertas Calidad Referencias CodeRules Configurar Etiquetar Compilar Integration Base de datos Archivar Release Test Compilar Versionar LoadTest Reports Debug
    21. Demo Compilar con MSBuild 
    22. Agenda ALM/SDLC  BUILD  Pruebas y Entornos  Herramientas  Integración Continua con TFS 
    23. La versión en los entornos
    24. Pruebas en el ciclo de vida Cada Cada Cada Cada Versión Iteración Día Hora
    25. Demo Descripción Entornos 
    26. Agenda ALM/SDLC  BUILD  Pruebas y Entornos  Herramientas  Integración Continua con TFS 
    27. Herramientas Objetivo Herramientas Comunidad Herramienta MS Compilar NAnt (csc.exe) MSbuild (csc.exe) / devenv Pruebas NUnit MSTest / TeamBuild Análisis Estático FxCop* FxCop Integración Continua CruiseControl.Net Team Foundation
    28. Visual Studio Team System Solución ALM (Application Lifecycle Management) Desarrollador Profesional de Diseñador Base de Datos Arquitecto Probador Analista de Jefe de Negocio Proyectos Incrementar la Facilitar la Mejorar la Transparecia en Colaboración en Calidad del Proyectos Equipo Software
    29. Visual Studio Team System Visual Studio Team Suite Software Software Database Software Guía y Proceso Microsoft Solution Framework (MSF) Visual Visual Architects Developers Professionals Testers Studio Studio Team Industry Modelado de Análisis de Código Pruebas Manuales Despliegue de BD Explorer Partners Aplicación Pruebas de Carga Gestión de Cambios Ajuste de Modelado de de BD Rendimiento Infraestructura Gestión de Casos de Pruebas de BD Prueba Modelado de Despliegue Pruebas Unitarias Cobertura de Código Modelado Clases Visio y Modelado UML Visual Studio Professional Edition Load Test Agent Code Control Proxy Visual Studio Team Foundation Server Gestión de Proyecto Control de Código Informes Servicio de Integración Gestión del Cambio (Team Build) Portal de Proyecto (Workitem Tracking)
    30. Arquitectura Técnica de TFS Team Foundation Client Tier Version Control Build Machine Proxy Server MS Project Visual Studio Packages Version Plug-In Build Control Process Proxy MS Excel Service Internet Explorer Plug-In SQL RS WSS VSTF Team Foundation Object Model Proxies Proxies Report Client Clients of VSTF VSTF Adjuncts Custom reporting Team Foundation App Tier tools Work Item Version Team Core SQL Windows Adapters Tracking Control Build Reporting SharePoint Services MS Excel Service Service Service Services Services SQL Windows Core Version Team Build Warehouse Work Items Reporting SharePoint Data Control Data Services Services Team Foundation Data Tier
    31. Configuraciones básicas de TFS 50 - 500 usuarios 2 Servidores Equipo Grande 2 - 50 usuarios Client 1 Servidor 1 usuario Equipo Pequeño 1 máquina Build Demo/Evaluación • Client (op.) • Build (op.) • Client • Build App Tier • App Tier • Data Tier • App Tier • Data Tier Version • Build (op.) Control Proxy (op.) Soporta: • Workgroup Data Tier • Active Directory (2003 or 2000) Requiere Active Directory (2003 or 2000)
    32. TeamBuild Extensiones sobre MSBuild  Todos los tipos de proyecto de VS añaden sus extensiones  Se instala por separado a TFS  Soporte a varias máquinas de build  Definición de pasos (BuildSteps)  Extensible  Override BuildSteps   Usar Tareas Msbuild MSbuildCommunityTasks   Microsoft.SDC
    33. TeamBuild::BuildSteps BeforeEndToEndIteration BeforeCompile BuildNumberOverrideTarget CoreCompile InitializeEndToEndIteration AfterCompile BeforeClean Compile CoreClean GetChangeSetsAndUpdateWorkItems AfterClean PostBuild Clean BeforeTest InitializeBuild CoreTest BeforeGet Test BeforeLabel AfterTest Label PackageBinaries AfterLabel TeamBuild InitializeWorkspace BeforeDropBuild CoreGet CoreDropBuild AfterGet CopyLogFiles PreBuild AfterDropBuild
    34. Demo Crear una BuildType con TFS 
    35. Agenda ALM/SDLC  BUILD  Pruebas y Entornos  Herramientas  Integración Continua con TFS 
    36. Integración Continua Se integra el trabajo de los desarrolladores  Se verifica la calidad   Análisis Estático  Pruebas unitarias ¿Cada cuanto tiempo lanzo el proceso¿   Cada semana, día, hora… Proceso desatendido  ¿Cuantas tareas incluyo en el proceso? 
    37. Mejoras en el SDLC Minimizar la entropía   Pero… si en mi máquina funciona !! Acelerar las pruebas de regresión  Facilitar la instalación de un puesto de desarrollo  Seguridad para afrontar los cambios  Los scripts de build y las pruebas unitarias sirven de  documentación
    38. El ritual de CheckIn Bajarse la última versión  Modificar/Añadir código  Ejecutar las pruebas en local  Bajarse la última versión  Ejecutar las pruebas en local  Hacer CheckIn  Ver los cambios en el servidor  Si se ha roto la build, arreglarla   Nunca dejar la build rota más de 24 horas
    39. Bases de datos Las bases de datos son código   Tablas, Vistas, Procedimientos  Se deben tratar como texto  Versionar todo (schema, data) Los DBA se deben implicar en el proceso  Una BBDD por desarrollador y por entorno  Gestión de datos de prueba  Usar VS4DB   Incluye scripts de MSBuild
    40. Pruebas en la integración continua Pruebas unitarias   Si ó Si Pruebas de integración   Puede… Pruebas de aceptación/rendmiento   Muy complicado hacerlo en el mismo flujo  Dependen de una instalación
    41. Gestión de proyecto con IC Obtener estadísticas de las builds  Transparencia   Si no hay checkIns algo va mal Negociar el mantenimiento de la build vs Nueva  funcionalidad Configurar la IC es la primera tarea del proyecto  Todo el equipos puede obtener la última versión  fácilmente (sobre todo los testers)
    42. Optimizar el tiempo de build Partir soluciones  El cuello de botella suelen ser las pruebas   Sino corren en segundos, no son unitarias  Desacoplar  MVC/MVP  Mocks y Stubs Varios tipos de build 
    43. Tipos de Build Build para integración continua (BVT)   Rápida, Sencilla Build diaria/nocturna (Nightly)   Incluir verificación, release, etc… Build de Pruebas   Run Test Code (Load, Acceptance) Completa   Generar versión definitiva (Alpha, Beta, RC, RTM)
    44. BVT Obtener Asociar Asociar UnitTest Instalable Fuentes Cambios Funcionalidad Definir Montar Árbol CodeMetrics Instalar Enviar Alertas Calidad Referencias CodeRules Configurar Etiquetar Compilar Integration Base de datos Archivar Release Test Compilar Versionar LoadTest Reports Debug
    45. Nightly Obtener Asociar Asociar UnitTest Instalable Fuentes Cambios Funcionalidad Definir Montar Árbol CodeMetrics Instalar Enviar Alertas Calidad Referencias CodeRules Configurar Etiquetar Compilar Integration Base de datos Archivar Release Test Compilar Versionar LoadTest Reports Debug
    46. Test Obtener Asociar Asociar UnitTest Instalable Fuentes Cambios Funcionalidad Definir Montar Árbol CodeMetrics Instalar Enviar Alertas Calidad Referencias CodeRules Configurar Etiquetar Compilar Integration Base de datos Archivar Release Test Compilar Versionar LoadTest Reports Debug
    47. Integración Continua con TFS MSBuild, TeamBuild (incluido en TFS)  V1 no incluye IC   Extensibilidad de TFS  Soluciones de terceros basadas en BisSuscribe  No se soportan builds en paralelo V2 si incluye IC   Configurar parámetros de build  Retention Policy  Encolar Builds
    48. RangersCI Compatible con Orcas 
    49. Demo Integración continua con TFS v1 (Rangers CI)  Integración continua con TFS v2 Orcas 
    50. Agenda ALM/SDLC  BUILD  Pruebas y Entornos  Herramientas  Integración Continua con TFS 
    51. Preguntas? Sugerencias para mejorar este contenido   http://blogs.msdn.com/rido

    + ridorido, 3 years ago

    custom

    5300 views, 2 favs, 0 embeds more stats

    Como implementar la integración continua con TFS v more

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 5300
      • 5300 on SlideShare
      • 0 from embeds
    • Comments 0
    • Favorites 2
    • Downloads 227
    Most viewed embeds

    more

    All embeds

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?