Msdn event january 2008 introducing application lifecycle management with visual studio team system
Sponsored Links
This presentation is the property of its rightful owner.
1 / 70

MSDN Event January 2008 Introducing Application Lifecycle Management with Visual Studio Team System PowerPoint PPT Presentation


  • 96 Views
  • Uploaded on
  • Presentation posted in: General

MSDN Event January 2008 Introducing Application Lifecycle Management with Visual Studio Team System . Didier Danse http://didierdanse.net Daniel Ferreira. Agenda. Application Lifecycle Management What is it & why is it useful? The Visual Studio Team System solution

Download Presentation

MSDN Event January 2008 Introducing Application Lifecycle Management with Visual Studio Team System

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


MSDN Event January 2008Introducing Application Lifecycle Management with Visual Studio Team System

Didier Dansehttp://didierdanse.net

Daniel Ferreira


Agenda

  • Application Lifecycle Management

    • What is it & why is it useful?

    • The Visual Studio Team System solution

  • Visual Studio Team Suite

    • What’s in it for …

  • Team Foundation Server

    • Build Automation & Continuous Integration

  • Roadmap


100%

50%

0%

Operations and Maintenance

New Application Development

ChallengesOperations & Maintenance

Source: Forrester, Performance-Driven Development, Carey Schwaber, 2006


ChallengesThe Cost of Quality

Software quality errors cost businesses in the U.S.A.

$59,000,000,000 each year

  • Software bugs account for

  • 55%of all downtime costs


Non FunctionalRequirements

Bugs

Dev Team

Tasks

UseCase

Business

Analyst

Project

Manager

Test

Production

Errors

Operations

Application Lifecycle ManagementWhat is it & why is it useful?

Application lifecycle management (ALM) regards the process of delivering software as a continuously repeating cycle of inter-related steps: definition, design, development, testing, deployment and management.

Change

Requests

“ALM solutions are integrated tool sets that support and unite the following lifecycle activities: requirements management, design and modeling, development, software configuration management (SCM), and testing.”


Application Lifecycle ManagementDevelopment iterations


Application Lifecycle ManagementProcess Template


Demo

Process Template


Application Lifecycle ManagementWhich tools are used?

  • Visual Studio 2008

  • Ms Office (Excel, Project…)

    • Manage Work Items

  • SharePoint (WSS 3.0 – MOSS 2007)

    • Share documents between team players

  • Reporting Services

    • View and create reports

  • Createyourown …


Application Lifecycle ManagementHow to expose the same information to all roles and products?


Visual Studio Team SystemApplication Lifecycle Management, the solution


Application Lifecycle ManagementWhat is it & why is it useful?

  • Solve enterprise IT challenges

    • Better communication

    • Align business & IT

    • Measure team efficiency, real & perceived

    • Keep track of bits

Improve Software Quality


Agenda

  • Application Lifecycle Management

    • What is it & why is it useful?

    • The VSTS solution

  • Visual Studio Team System

    • What’s in it for …

  • Team Foundation Server

    • Build Automation & Continuous Integration

  • Roadmap


What’s in it for …

Project Managers / Business Analysts


Project Managers / Business Analysts Project Portal

  • MOSS 2007/WSS 3.0 Support

    • Central repository for documents

    • Document management

      • Versionning – Permissions – Check in/out – Workflows – Alerts …

  • Remote servers capable

  • Extranet

    • Share documents, reports withcustomers


Project Managers / Business Analysts Office Integration

Each role can use the appropriate tool

 Interaction between TFS and MS Excel / MS Project

  • Excel

    • Used especially for Work Items (Task, Bug, …)

  • Project

    • Used for planning and Task management


Full integration into Microsoft Excel foradd, change Work Items

Project Managers / Business Analysts Office Integration – Microsoft Excel


Full integration into Microsoft Project fora real-time viewof work items

Project Managers / Business Analysts Office Integration – Microsoft Project


Demo

Microsoft Office IntegrationProject Portal - SharePoint


Project Managers / Business Analysts Web Access

Web application for

  • Work Items management, Reports …

    Atthis time, itis a separatedownload


How much work is leftand when will it be done ?

Project Managers / Business Analysts Reports


Demo

Web Access Reports


What’s in it for …

Architect


Architect Distributed System Designers

  • Distributed Application Diagram :

    • Application

    • System

    • LogicalDatacenter

    • Deployment


Architect Distributed System Designers

Applications Architects,Developers

Infrastructure Architects


Demo

Distributed System Designers


What’s in it for …

Developers / Lead Developers


Developers / Lead Developers Unit Tests and Code Coverage

  • How to be sure that individual method or function works correctly?

    • Create an application? No!

    • Prove production code works Unit Tests

  • How to be sure that all cases have been tested?

    • Determine effectiveness of unit tests  Code Coverage

      • Two views:

        • Summary

        • Code Highlight


See easily Tests Results

Developers / Lead Developers Unit tests – Results View


Select test that you really want to run using the test view…

Or run it directly from code editor environment

Developers / Lead Developers Unit tests – Run View


Identify quickly which blocks have not been tested

Developers / Lead Developers Code Coverage – Summary View


Quickly identify executed code paths to determine effectiveness of unit tests

Developers / Lead Developers Code Coverage – Highlight View


Demo

Unit TestsCode Coverage


Developers / Lead Developers Code Quality

  • Code Analysis

    • Analyze code withoutexecutingit

    • Identifycodingerrors and securityvulnerabilities

    • Spellingrules

    • Fullycustomizable

  • Code Metrics

    • Identify code whichwillbedifficult to maintain

    • Calculated Maintainability Index based on Cyclomatic Complexity, Depth of Inheritance, Class Coupling and Lines of Code


Identify code blocks which need refactoring

Developers / Lead Developers Code Quality


Check code quality regarding best practices and custom rules

Developers / Lead Developers Code Quality


Developers / Lead Developers Performance Analysis

How to be sure thatwedevelopreliable and robust software?

  • Performance Analysis

    • Measure and evaluate issues related to performance

    • Two types

      • Stampling (data collectedperiodically)

      • Instrumentation (data stored for lateranalysis)

  • Reports Comparison


Load test applications for performance characteristics

Developers / Lead Developers Performance Analysis


Developers / Lead Developers Performance Analysis


Demo

Performance Analysis


Developers / Lead Developers Version Control

  • How to avoid others to change the same file than you?

    • Exclusive & Shared Check out

  • How to be sure that we modify the latest version of a file?

    • Get Latest On Checkout

  • How to be sure that code checked in is correct?

    • Check in Policies


Complete Source Control Integration in Menus

Developers / Lead Developers Team Foundation Server Version Control


Associate work items with each

check-in to provide traceability from requirements to code

Developers / Lead Developers Team Foundation Server Version Control – Check In Policies


Developers / Lead Developers Version Control

  • How to create different versions?

    • Branching

  • How to apply corrections from older version?

    • Merging

  • How to help finding right older version?

    • Labeling

  • How to avoid to check in invalid code?

    • Not check in it! Use Shelving


Developers / Lead Developers Version Control

  • How to see which files have been changed?

    • Folder Diff

  • How to see which block of lines have been changed and who have changed this code ?

    • Annotate


Identify who modified file content and what has been changed

Developers / Lead Developers Team Foundation Server Version Control - Annotate


Demo

Version Control


What’s in it for …

Database Professionals


Database Professionals Version Control

  • Version Control

    • With the ability to reverse engineer a database

    • Samethan code version control

      [IMG]


Database Professionals Schema and Data Comparison

Comparisonbetweentwoenvironments

 Generate a script whichallow to update targetdatabase

  • Schema Comparison

    • Tables

    • Views

    • StoredProcedures

  • Data Comparison


Database Professionals Schema and Data Comparison


Demo

Schema and Data Comparison


Database Professionals Tests

  • Database Unit Tests

    • Samethan code unit tests

    • AlwaysRollback Transaction

  • Data Generation

    • Used for fill a databasewith test data


Demo

Database - Tests


Database Professionals Key Features

  • Create T-SQL scripts

  • Schema & Data Compare

  • Extensible unit test functionality

  • Data Generator

  • Renamerefactoring

  • Migration fromSourceSafe, ClearQuest…


What’s in it for …

Testers


Testers Web Tests

  • Replay HTTP queries

  • HTTP Queries are recorded by an IE plugin

  • AJAX query recording Ability

  • Refactoring

    • Create Sub-Tests from Tests

    • These new tests can be called by other tests


Testers Load Tests

  • Simulate simultaneous accesses by a few clients

  • Control Load Modeling

  • Wizard for setting up, reporting used to analyse tests results

  • Visual Studio can use some computers and simulate a bigger load test

    • Controllers (Administrate agents and collect results)

    • Agents (Execute tests)


Testers Generic and Manual Tests

  • Generic Tests

    • Encapsulateexternal test softwares

    • A generic test return true/false value

  • Manual Tests

    • Usedwhenother test types are not relevant

    • Manual tests are written in Text files or Word files


Testers Test Management and Results

  • Test Management

    • Test Manager Window

      • Grouping

      • Sorting

  • Test Results


Agenda

  • Application Lifecycle Management

    • What is it & why is it useful?

    • The VSTS solution

  • Visual Studio Team System

    • What’s in it for …

  • Team Foundation Server

    • Build Automation & Continuous Integration

  • Roadmap


Team Foundation Server

Build Automation & Continuous Integration


Team BuildKey Features Team Build 2005

  • Reports for status and other quality metrics

    • Unit test results

    • Static Analysis results

    • Associated work items and change sets

    • Code coverage

  • Build Definitions

  • Build Notifications


Team BuildKey Features Team Build 2008

  • Continuous Integration

  • Build Queuing

  • Scheduled Builds

  • Build Agent Management

  • Build Definition Editing GUI

  • Better Build Management


Team BuildBuild Process


Visual Studio Team SystemSummary

  • Application Lifecycle Management solves enterprise IT challenges

  • Visual Studio Team System solution to Application Lifecycle Management

  • Key features for each role

  • Build Automation & Continuous Integration brings rhythm to the team


Visual Studio Team System Roadmap

Major

Releases

  • Codename “Rosario”

  • 2008

Rosario

Beta

VSTS 2008SP1

Power Tools

Power Tools (Ongoing)

2007

2008

Future


Visual Studio Team SystemResources

  • Team Foundation Server 2008 Evaluation Virtual Machine

    http://go.microsoft.com/?linkid=7171920

  • Team Foundation Server 2008 Web Access

    http://go.microsoft.com/?linkid=8008505

  • Team System Case Studies

    http://msdn2.microsoft.com/en-us/teamsystem/bb676820.aspx

  • Visual Studio Team System

    http://msdn.microsoft.com/teamsystem


Q&A

Questions?


Thank You

Blog: http://didierdanse.netEmails:didier.danse@acaneconsulting.com daniel.ferreira@acaneconsulting.com


  • Login