escribiendo código con visual studio team system
DESCRIPTION
How to take advantage of the new developer tools included in Visual Studio Team System.TRANSCRIPT
![Page 1: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/1.jpg)
Los requerimientos listos…Ahora a escribir código!!!
Sesión 2day
Technology
Julio CasalSoftware DeveloperJohn Galt [email protected]://msguayaquil.com/blogs/julioc
![Page 2: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/2.jpg)
AGENDA
La Importancia de la CalidadAnálisis EstáticoPruebas UnitariasCode CoverageManejo del Código FuenteCode Profiling
![Page 3: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/3.jpg)
Por qué la Calidad es Importante para Ti
Las tasas de detección de defectos rara vez pasan el 75% cuando se usa una única técnica
Las técnicas detectan un promedio de 40%
Si deseas lograr una alta tasa de detección de defectos, necesitas usar una combinación de técnicasEs decir:No puedes simplemente depender de tu equipo de pruebas—la calidad empieza contigo!Steve McConnell, Code Complete 2nd Ed., p470
![Page 4: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/4.jpg)
Visual Studio Team System
Admón. de CambiosVisual Studio
Team Foundation
Analiz. de Código Dinámico
Visual StudioTeam Architect
Analiz. de Código Estático
Perfilador de Código
Unit Testing
Código administrado y no administrado
Modelamiento de Visio y UML
Team Foundation Client (incluye CAL)
Visual Studio Professional Edition
Pruebas de Carga
Pruebas Manuales
Admón. Casos de Prueba
Diseño de Aplicaciones
Diseño de Infra. Lógica
Diseño de Implementación
Visual StudioTeam Developer
Visual StudioTeam Test
Construcción de Builds
Diseñador de Clases
Reportes
Seguim. de WorkItems
Portal de Proyectos
Servicios de Integración
Admón. de Proyectos
Visual StudioTeam Database
ProfessionalAdmon. cambios DB
Pruebas de BD (Tunning)
Implementación DB
![Page 5: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/5.jpg)
VSTE for Software Developers
Vis
ual S
tud
io In
du
stry
Part
ners
Visual Studio Team Edition
Software Developer
Static Code Analyzer
Code Profiler
Work Item Tracking
ReportingVisual Studio
Team FoundationBig Build
Unit Testing
Code Coverage
Team Foundation Client
VS Professional Edition
![Page 6: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/6.jpg)
ANALISIS ESTATICO
![Page 7: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/7.jpg)
Análisis de Código
Encontrar errores en el código antes de ejecutarse o de hacer una entregaChequeos que van desde el estilo de codificación hasta correcciones para evitar problemas de seguridadIntegrado en el ambiente de Team System Build
![Page 8: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/8.jpg)
Ananlisis EstáticoEl proceso de desarrollo sin analisis estático
CompileCode Binary
PreprocGrammar
LinkRaiseErrors
![Page 9: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/9.jpg)
Análisis EstáticoEl proceso de desarrollo con Analisis Estático
Code Compile
StaticAnalysis
AnalyzeCode
CheckRules
RaiseErrors
Binary
![Page 10: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/10.jpg)
Análisis EstáticoEjemplo código manejado
Compila
El análisis estático emite
advertencias
![Page 11: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/11.jpg)
Análisis EstáticoEjemplo código manejado
C:\logger.cs(38): ‘Logger.inicializar(System.string)#System.void’Replace all calls to “”.Equals or string.Empty.Equals In ‘Logger.inicializar(System.string)’ with checks for length == 0.
![Page 12: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/12.jpg)
Análisis EstáticoEjemplo código manejado
CódigoMejorad
o
![Page 13: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/13.jpg)
PRUEBAS UNITARIAS
![Page 14: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/14.jpg)
Pruebas Unitarias
El proceso de correr pruebas repetibles y programáticas, generalmente escritas por un desarrollador, para algún código (una clase, conjunto de métodos, etc)Formaliza el proceso de test rigsTodo está orientado a pruebas —Test Driven Development (TDD)
![Page 15: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/15.jpg)
Pruebas Unitarias en VSTESD
Tipo de proyecto específico para pruebasPuedes crearlo tú o Visual StudioEl lenguaje a utilizar puede ser C#, Visual Basic, ó C++ Administrado
Soporte con clic derecho paraProyecto de prueba y generación de miembros desde la mayoría de tipos de proyectos (Librerías de Clase, Windows Forms, etc.)Generación de miembros desde proyectos de pruebas
Se puede ejecutar pruebas en cualquier objetivo administrado y en la mayoría de objetivos no administrados (puede requerir código y esfuerzo de tu parte)
![Page 16: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/16.jpg)
Integración con Team Foundation Server
Work items—bugs, tasks, etc.—pueden ser creados desde la ventana de Resultados de las PruebasLos resultados de las pruebas pueden ser publicados a TFSLas pruebas pueden ser ejecutadas como parte de un build nocturno ó de integración por medio de Team Build
![Page 17: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/17.jpg)
CODE COVERAGE
![Page 18: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/18.jpg)
Code Coverage
Verifica las porciones de código tocadas por los casos de prueba
Se administran en VSTE-SDEs parte de los reportes compartidos por el equipo
Mide la efectividad de los esfuerzos de testingHaga drill-down según sea necesario
Assemblies, Clases, MétodosLíneas de Código
![Page 19: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/19.jpg)
Integración con Team Foundation Server
Work items—bugs, tasks, etc.—pueden ser creados desde la ventana de Test Results enlazándolos a una prueba con code coverageLos datos de code coverage pueden ser incluidos con los resultados de las pruebas que son publicados a TFSCode coverage puede ejecutarse con las pruebas como parte de un build nocturno o de integración vía Team Build
![Page 20: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/20.jpg)
Pruebas Unitarias y Code Coverage
![Page 21: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/21.jpg)
MANEJO DEL CODIGO FUENTE
![Page 22: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/22.jpg)
Team Foundation Version Control
Software para el manejo de configuraciones
SCM avanzadoEnfocado en escenarios de desarrollo claves
Altamente integrado con la herramienta
![Page 23: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/23.jpg)
Checkin del Desarrollador
Todas las actividades de checkin un una sola UI
Validar y hacer commit a cambios en las fuentesResolución de work itemsEnvio de notificaciones
Cambios encapsulados como un conjunto de cambios “changeset”
Aplicados automaticamente al repositorioConveniente para el manejo de cambios
![Page 24: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/24.jpg)
Visual Studio
Checkin
ValidatePolicies
1
Checkin PolicyEngine
Checkin PolicyEngine
Un
it T
esti
ng
Un
it T
esti
ng
WI
Associa
tion
WI
Associa
tion
Sta
tic A
naly
sis
Sta
tic A
naly
sis
Cu
sto
m P
olicy
Cu
sto
m P
olicy
CommitChanges
2
V1V1V5V5V4V4V5V5
V2V2V3V3
Change Set 727012Change Set 727012Change Set 727012Change Set 727012
Change Set 727012Change Set 727012Change Set 727012Change Set 727012
Change Set 727011Change Set 727011Change Set 727012Change Set 727012
WorkItem 33231WorkItem 33231
UpdateWork Items
3
Events Raised for3rd party sync purposes
ArtifactLink
Check E-mailNotification
4
Checkin – Detrás de las Cámaras
WorkspaceWorkspace
Integration Infrastructure
Version Control
Work Item Tracking
![Page 25: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/25.jpg)
Políticas de Checkin
![Page 26: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/26.jpg)
PROFILING
![Page 27: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/27.jpg)
Profiling
El mal rendimiento en las aplicaciones es costoso
Percepción del clienteHardwareInvestigación
![Page 28: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/28.jpg)
ProfilingInstrumentación
main AMethod BMethod
main 001AMethod 0023BMethod 0098….. 0145
Agrega instrucciones a su código para monitorear
![Page 29: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/29.jpg)
ProfilingSampling
main AMethod BMethod
Analiza sin cambiar su aplicación
main 3AMethod 6
BMethod 92
![Page 30: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/30.jpg)
Profiling
![Page 31: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/31.jpg)
¿Preguntas?
![Page 32: Escribiendo Código con Visual Studio Team System](https://reader031.vdocuments.pub/reader031/viewer/2022012918/548fd73db479591e1d8b4d84/html5/thumbnails/32.jpg)
© 2005 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.