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

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


  • 90 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 2008 introducing application lifecycle management with visual studio team system

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

Didier Dansehttp://didierdanse.net

Daniel Ferreira


Agenda

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


Challenges operations maintenance

100%

50%

0%

Operations and Maintenance

New Application Development

ChallengesOperations & Maintenance

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


Challenges the cost of quality

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


Application lifecycle management what is it why is it useful

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 management development iterations

Application Lifecycle ManagementDevelopment iterations


Msdn event january 2008 introducing application lifecycle management with visual studio team system

Application Lifecycle ManagementProcess Template


Process template

Demo

Process Template


Application lifecycle management which tools are used

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 management how to expose the same information to all roles and products

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


Visual studio team system application lifecycle management the solution

Visual Studio Team SystemApplication Lifecycle Management, the solution


Application lifecycle management what is it why is it useful1

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


Agenda1

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


Project managers business analysts

What’s in it for …

Project Managers / Business Analysts


Project managers business analysts project portal

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

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


Project managers business analysts office integration microsoft excel

Full integration into Microsoft Excel foradd, change Work Items

Project Managers / Business Analysts Office Integration – Microsoft Excel


Project managers business analysts office integration microsoft project

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

Project Managers / Business Analysts Office Integration – Microsoft Project


Microsoft office integration project portal sharepoint

Demo

Microsoft Office IntegrationProject Portal - SharePoint


Project managers business analysts web access

Project Managers / Business Analysts Web Access

Web application for

  • Work Items management, Reports …

    Atthis time, itis a separatedownload


Project managers business analysts reports

How much work is leftand when will it be done ?

Project Managers / Business Analysts Reports


Web access reports

Demo

Web Access Reports


Architect

What’s in it for …

Architect


Architect distributed system designers

Architect Distributed System Designers

  • Distributed Application Diagram :

    • Application

    • System

    • LogicalDatacenter

    • Deployment


Architect distributed system designers1

Architect Distributed System Designers

Applications Architects,Developers

Infrastructure Architects


Distributed system designers

Demo

Distributed System Designers


Developers lead developers

What’s in it for …

Developers / Lead Developers


Developers lead developers unit tests and code coverage

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


Developers lead developers unit tests results view

See easily Tests Results

Developers / Lead Developers Unit tests – Results View


Developers lead developers unit tests run 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


Developers lead developers code coverage summary view

Identify quickly which blocks have not been tested

Developers / Lead Developers Code Coverage – Summary View


Developers lead developers code coverage highlight view

Quickly identify executed code paths to determine effectiveness of unit tests

Developers / Lead Developers Code Coverage – Highlight View


Unit tests code coverage

Demo

Unit TestsCode Coverage


Developers lead developers code quality

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


Developers lead developers code quality1

Identify code blocks which need refactoring

Developers / Lead Developers Code Quality


Developers lead developers code quality2

Check code quality regarding best practices and custom rules

Developers / Lead Developers Code Quality


Developers lead developers performance analysis

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


Developers lead developers performance analysis1

Load test applications for performance characteristics

Developers / Lead Developers Performance Analysis


Developers lead developers performance analysis2

Developers / Lead Developers Performance Analysis


Performance analysis

Demo

Performance Analysis


Developers lead developers version control

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


Developers lead developers team foundation server version control

Complete Source Control Integration in Menus

Developers / Lead Developers Team Foundation Server Version Control


Developers lead developers team foundation server version control check in policies

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 control1

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 control2

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


Developers lead developers team foundation server version control annotate

Identify who modified file content and what has been changed

Developers / Lead Developers Team Foundation Server Version Control - Annotate


Version control

Demo

Version Control


Database professionals

What’s in it for …

Database Professionals


Database professionals version control

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

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 comparison1

Database Professionals Schema and Data Comparison


Schema and data comparison

Demo

Schema and Data Comparison


Database professionals tests

Database Professionals Tests

  • Database Unit Tests

    • Samethan code unit tests

    • AlwaysRollback Transaction

  • Data Generation

    • Used for fill a databasewith test data


Database tests

Demo

Database - Tests


Database professionals key features

Database Professionals Key Features

  • Create T-SQL scripts

  • Schema & Data Compare

  • Extensible unit test functionality

  • Data Generator

  • Renamerefactoring

  • Migration fromSourceSafe, ClearQuest…


Testers

What’s in it for …

Testers


Testers web tests

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

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

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

Testers Test Management and Results

  • Test Management

    • Test Manager Window

      • Grouping

      • Sorting

  • Test Results


Agenda2

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


Build automation continuous integration

Team Foundation Server

Build Automation & Continuous Integration


Team build key features team build 2005

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 build key features team build 2008

Team BuildKey Features Team Build 2008

  • Continuous Integration

  • Build Queuing

  • Scheduled Builds

  • Build Agent Management

  • Build Definition Editing GUI

  • Better Build Management


Team build build process

Team BuildBuild Process


Visual studio team system summary

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

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 system resources

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


Questions

Q&A

Questions?


Msdn event january 2008 introducing application lifecycle management with visual studio team system

Thank You

Blog: http://didierdanse.netEmails:[email protected] [email protected]


  • Login