SlideShare a Scribd company logo
David Solivan Architect Evangelist Microsoft Corporation
“ Any sufficiently advanced technology is indistinguishable from magic.” Arthur C. Clarke’s 3 rd  Law
“ the impossible must become possible. the possible must become routine. the routine must become easy. and the easy must become beautiful.” Doug Henning’s creedo
 
Is it  impossible  to have a successful, large, team-based, software development project delivered on time and under budget?
What percentage of such projects succeed?
Source:  Standish Group, 2004 Third Quarter Research Report, CHAOS Research Results 1994   1996   1998   2000   2002   2004 Succeeded  Failed  Challenged 40% 30% 20% 10% 0% 50% 60%
Source: Forrester, September 2006, Trends “The Root Of The Problem: Poor Requirements”, Carey Schwaber, 2006  Is IT getting involved in the business initiatives at the right time? Are the requirements gathered initially the right ones? How are you managing changes to requirements?
Source:  NIST, The Economic Impacts of Inadequate Infrastructure for Software Testing 2002, Standish Group The Cost of Inadequate Software Testing (Billions) Software users Software developers $0  $10  $20  $30  $40 How does the business define quality?
Individual Productivity Organization Size Desired Actual How can we create team and organizational capacity for innovation?
 
It is possible if we take a new approach to developer tools that recognizes that it takes more than developers to build a solution.
Individual Team Organization Productive Integrated Extensible Application Lifecycle Management Process Tools
“ Successful software projects are not possible without the understanding that developers are but one part of a team, and that all parts of this team are equally important for success.” David D. Solivan … just now Project Manager Database Professionals Developer Tester Architect Users & Management
 
How do we take the possibility of successful team development and make it an everyday reality?
Team Foundation Server Web Browser Team Explorer Microsoft Project Microsoft Excel Team Edition for Testers Team Edition for Developers Team Edition for Architects Team Edition  for Database  Professionals Project Manager Database Professionals Developer Tester Architect Users & Management Work Items Build Server Version Control Project Portal Reporting & Analytics
Rebuilt Team Build subsystem Acquired TeamPlain Web Access (TWA) Usability improvements in Version Control Extensibility improvements in Work Item Tracking Performance and scalability improvements Customer driven license changes: anyone in the organization may open and track their own work items A new Internal Connector License enables IT orgs to integrate current systems with TFS
2008 is 2x faster than 2005 Any size team, any size project Deploying broadly across Microsoft 7k active users, 1,000 projects, 25 TFS instances 2008 Hardware Recommendations
Designing Applications
Validating Architecture
Designing Web Services
Application Designer Model application components and their communication paths Create artifacts that can be used throughout the development process - no static models Define application deployment needs before you begin construction The Application Designer allows you to define the application components that comprise a service oriented system
Logical Datacenter Designer Reduce deployment defects. Share deployment environment information between projects. Captures a datacenter’s policies and logical structure.
Deployment Designer Communicate your deployment needs to IT operations Validate your application deployment before construction Help developers understand the deployment environment of the application The Deployment Designer allows you to validate the deployment of an application against a logical view of your data center
Class Designer Design first approach to class design. Generate new classes and relationships graphically. Visualize the structure of existing classes, interfaces and other .NET types Automatically generates code from design. Model and code will always be synchronized. Design object models and view class relationships.
Class Designer Class Designer and two-way code synch
Improving Code Quality Integrated Unit Testing Integrated Static Code analysis Security Errors Localization problems Memory issues … Integrated Profiler Performance problems Memory problems Potential Sql Injection attack Object not Disposed Localization Issue
Improving Quality: Profiler Who allocates the most Objects Who allocates the most memory Who is called the most? Who runs for the longest What do you have the most of? What is taking up the most memory
Code Metrics Gives a snapshot of software health Understand your code complexity Quickly compare code to find potential trouble spots Reduce risk & improve maintainability Understand complexity of inherited code New in VSTS 2008
Metric: Class Coupling # of Dependencies Between Types GUI Business Logic Transaction Customer Account
Metric: Class Inheritance # of Base Types Component Control Label ListBox ListControl LinkLabel ComboBox
Metric: Lines of Code # of Executing Lines of Code 1 2 3 4 5 static   class   Program { #region  Application Entry Point ///   <summary> ///  The main entry point for the application. ///   </summary> [ STAThread ] static   void   Main ( string []  args ) { Application . EnableVisualStyles (); Application . SetCompatibleTextRenderingDefault ( false ); Workflow ( args ); } #endregion #region  Static Methods ///   <summary>  Primary workflow for the application.  </summary> ///   <param name=&quot;args&quot;>  Command line arguments.  </param> private   static   void   Workflow ( string []  cmdargs ) { // Collect the list of command line arguments List < string >   args   =  new   List < string >( cmdargs ); // Show usage syntax if the user so asks if   ( UseArg ( args ,   &quot;/?&quot; )) {   ShowAbout ();  return ; }
Metric: Cyclomatic Complexity # of Branches 1 2 3 4 5 6,7 8 9 10 11 bool   ParseCommandLine ( string []  args ) { if   ( args . Length   == 0)  ShowHelp ();  return ; for   ( int   i   = 0;  i   <  args . Length ;  i ++) switch   ( args [ i ]) { case   &quot;/?&quot;   : ShowHelp (); return   false ; case   &quot;/input&quot;  : if   ( args . Length   >   i   &&   File . Exists ( args [ i  + 1]))   InputFile   =  args [ i ++]; break ; case   &quot;/c&quot;  : Colapse  =  true ; break ; } return   true ; }
Metric: Maintainability Index Overall indication of complexity by aggregation of several factors  Lines of Code Cyclomatic Complexity Computational Complexity  Used on the Windows Code Base
 
How do we take ALM from an everyday task, to a simple, easy part of the background noise so users can focus on primary tasks?
 
 
Visual Studio Team Suite MSF Process and Guidance Visual Studio Team Foundation Server Visual Studio Industry Partners Software Architects Software Developers Software Testers Database Professionals Visual Studio Team Explorer Application Modeling Infrastructure and Deployment Modeling Code Analysis Performance Tuning Security Analysis Database Build &  Deployment Database Change Management Database Testing Performance Testing Manual Testing Test Case Management Visual Studio Professional Edition Change Management Work Item Tracking Reporting Project Site Integration Services Project Management Load Test Agent Visio and UML Modeling Class Modeling Unit Testing Code Coverage New!
SOAP Messages SOAP Messages SOAP Messages File Transfers File Transfers File Transfers
SOAP Messages SOAP Messages SOAP Messages File Uploads File Uploads File Uploads Downloads
* Raleigh office has 3Mbps of bandwidth shared by ~70 employees. Content No Proxy With Proxy 35 MB, 1824 Files 00:05:20 00:00:32 80 MB, 8 Files 00:14:07 00:00:25
Redmond, WA 368 Users Fargo, ND 4 Users Research Triangle, NC 42 Users Copenhagen, Denmark 6 Users Hyderabad, India 14 Users Team Foundation Users: 434 Version Control Users: 319 Number of Files/Folders: 271,766/30,376 Uncompressed File Size: 5.85 GB Compressed File Size: 1.71 GB Workspaces: 612 Workspace File Versions: 11 Million Changesets: 3489 Pending Changes: 4806 Shelvesets: 1254
Redmond, WA 368 Users Fargo, ND 4 Users Research Triangle, NC 42 Users Copenhagen, Denmark 6 Users Hyderabad, India 14 Users
“ Shelve” work in progress Check-in policies enforced during check-in process
Full Work Item Support in Microsoft Excel Full Access from Visual Studio Synchronized with Microsoft Project View project status in Microsoft Excel or Microsoft Project
 
 
 
David Solivan Architect Evangelist Developer & Platform Evangelism
 
Are we at beautiful yet?  There is still work to be done to incorporate business requirements directly into ALM toolset. Project Rosario is addressing.
Portfolio planning – Portfolio Server integration (via Project Server) Project planning – Project Server integration + lightweight scheduling Requirements Capture and Validation (Partner Ecosystem) Requirements Traceability - Hierarchical Linking and Querying Reporting dashboards and enhanced reports Process Authoring and Customization
Software Factories – Guided Development Experience Enhanced DB Refactorings + Refactoring into App Tier T-SQL Static Analysis and Code Coverage Policy Extended to the DB Tier Gated Checkin Test Prioritization - Determine what are the most important tests to run Test Case Management Test Execution (Functional and Manual Testing) “ Eliminate the No Repro Problem” – Test / Diagnostics Integration
Current state is near impossible Possible to solve if we understand that development is a team activity A tool that addresses all ALM Roles makes ALM part of the workday. A tool that requires roles to communicate and provides seamless supporting features Coming soon…
[email_address]
© 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation.  Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.  MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Ad

More Related Content

What's hot (17)

Darpangupta resume
Darpangupta resumeDarpangupta resume
Darpangupta resume
Darpan Gupta
 
Resume
ResumeResume
Resume
Ankit.Rustagi
 
CV_Ruchi_GSA Project details
CV_Ruchi_GSA Project detailsCV_Ruchi_GSA Project details
CV_Ruchi_GSA Project details
Ruchi Mishra
 
priti_resume
priti_resumepriti_resume
priti_resume
priti gupta
 
RamMohan_Testing_8Exp_Resume
RamMohan_Testing_8Exp_ResumeRamMohan_Testing_8Exp_Resume
RamMohan_Testing_8Exp_Resume
rama mohan reddy palle
 
Microsoft Stack Visual Studio 2010 Overview
Microsoft  Stack   Visual Studio 2010 OverviewMicrosoft  Stack   Visual Studio 2010 Overview
Microsoft Stack Visual Studio 2010 Overview
rfennell
 
Test Automation Framework Development Introduction
Test Automation Framework Development IntroductionTest Automation Framework Development Introduction
Test Automation Framework Development Introduction
Ganuka Yashantha
 
The first looks at VSTS2010
The first looks at VSTS2010The first looks at VSTS2010
The first looks at VSTS2010
Pascal van der Horst
 
Tfs Overview
Tfs OverviewTfs Overview
Tfs Overview
Chad Green
 
Raju ponnam CV
Raju ponnam CVRaju ponnam CV
Raju ponnam CV
raju p
 
Front Cover:
Front Cover:Front Cover:
Front Cover:
Jeff Smith
 
ALM (Application Lifecycle Management)
ALM (Application Lifecycle Management)ALM (Application Lifecycle Management)
ALM (Application Lifecycle Management)
Terry Cho
 
Suresh_Vemulapally_2015
Suresh_Vemulapally_2015Suresh_Vemulapally_2015
Suresh_Vemulapally_2015
suresh Kumar Vemulapally
 
Hybrid Automation Framework Development introduction
Hybrid Automation Framework Development introductionHybrid Automation Framework Development introduction
Hybrid Automation Framework Development introduction
Ganuka Yashantha
 
Ijetcas14 413
Ijetcas14 413Ijetcas14 413
Ijetcas14 413
Iasir Journals
 
Rajat_Pathak
Rajat_PathakRajat_Pathak
Rajat_Pathak
Rajat Pathak
 
Final Automation Testing
Final Automation TestingFinal Automation Testing
Final Automation Testing
priya_trivedi
 
Darpangupta resume
Darpangupta resumeDarpangupta resume
Darpangupta resume
Darpan Gupta
 
CV_Ruchi_GSA Project details
CV_Ruchi_GSA Project detailsCV_Ruchi_GSA Project details
CV_Ruchi_GSA Project details
Ruchi Mishra
 
Microsoft Stack Visual Studio 2010 Overview
Microsoft  Stack   Visual Studio 2010 OverviewMicrosoft  Stack   Visual Studio 2010 Overview
Microsoft Stack Visual Studio 2010 Overview
rfennell
 
Test Automation Framework Development Introduction
Test Automation Framework Development IntroductionTest Automation Framework Development Introduction
Test Automation Framework Development Introduction
Ganuka Yashantha
 
Raju ponnam CV
Raju ponnam CVRaju ponnam CV
Raju ponnam CV
raju p
 
ALM (Application Lifecycle Management)
ALM (Application Lifecycle Management)ALM (Application Lifecycle Management)
ALM (Application Lifecycle Management)
Terry Cho
 
Hybrid Automation Framework Development introduction
Hybrid Automation Framework Development introductionHybrid Automation Framework Development introduction
Hybrid Automation Framework Development introduction
Ganuka Yashantha
 
Final Automation Testing
Final Automation TestingFinal Automation Testing
Final Automation Testing
priya_trivedi
 

Viewers also liked (6)

S+S Architecture Overview
S+S Architecture OverviewS+S Architecture Overview
S+S Architecture Overview
David Solivan
 
Visual Studio 2010 ALM Tools Overview
Visual Studio 2010 ALM Tools Overview Visual Studio 2010 ALM Tools Overview
Visual Studio 2010 ALM Tools Overview
Ayman El-Hattab
 
Windows Azure A Platform For Architecture In The Clouds
Windows Azure  A Platform For Architecture In The CloudsWindows Azure  A Platform For Architecture In The Clouds
Windows Azure A Platform For Architecture In The Clouds
David Solivan
 
Organelles in an Animal Cell
Organelles in an Animal CellOrganelles in an Animal Cell
Organelles in an Animal Cell
Erin Maccarelli
 
Hype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerHype vs. Reality: The AI Explainer
Hype vs. Reality: The AI Explainer
Luminary Labs
 
Study: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsStudy: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving Cars
LinkedIn
 
S+S Architecture Overview
S+S Architecture OverviewS+S Architecture Overview
S+S Architecture Overview
David Solivan
 
Visual Studio 2010 ALM Tools Overview
Visual Studio 2010 ALM Tools Overview Visual Studio 2010 ALM Tools Overview
Visual Studio 2010 ALM Tools Overview
Ayman El-Hattab
 
Windows Azure A Platform For Architecture In The Clouds
Windows Azure  A Platform For Architecture In The CloudsWindows Azure  A Platform For Architecture In The Clouds
Windows Azure A Platform For Architecture In The Clouds
David Solivan
 
Organelles in an Animal Cell
Organelles in an Animal CellOrganelles in an Animal Cell
Organelles in an Animal Cell
Erin Maccarelli
 
Hype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerHype vs. Reality: The AI Explainer
Hype vs. Reality: The AI Explainer
Luminary Labs
 
Study: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsStudy: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving Cars
LinkedIn
 
Ad

Similar to The Magic Of Application Lifecycle Management In Vs Public (20)

Software Project Management - NESDEV
Software Project Management - NESDEVSoftware Project Management - NESDEV
Software Project Management - NESDEV
Krit Kamtuo
 
Visual Studio Team System 2010
Visual Studio Team System 2010Visual Studio Team System 2010
Visual Studio Team System 2010
ukdpe
 
Alm Specialist Toolkit Team System 2008 Deep Dive
Alm Specialist Toolkit   Team System 2008 Deep DiveAlm Specialist Toolkit   Team System 2008 Deep Dive
Alm Specialist Toolkit Team System 2008 Deep Dive
Christian Thilmany
 
Profile_Ahmad2
Profile_Ahmad2Profile_Ahmad2
Profile_Ahmad2
Mohammad Owais Ahmad
 
Improving The Software Development Lifecycle With Visual Studio Team System
Improving The Software Development Lifecycle With Visual Studio Team SystemImproving The Software Development Lifecycle With Visual Studio Team System
Improving The Software Development Lifecycle With Visual Studio Team System
matthewphillips
 
Vishal Jadhav
Vishal JadhavVishal Jadhav
Vishal Jadhav
विशाल जाधव
 
Ravindra Prasad
Ravindra PrasadRavindra Prasad
Ravindra Prasad
Ravindra Prasad
 
software_eng
software_engsoftware_eng
software_eng
Promila Vashishtha
 
A Lap Around Visual Studio 2010
A Lap Around Visual Studio 2010A Lap Around Visual Studio 2010
A Lap Around Visual Studio 2010
adrian8three
 
Vsts intro
Vsts introVsts intro
Vsts intro
Sevajothi Crafts
 
Amq Overview Continuous Quality Assurance
Amq Overview Continuous Quality AssuranceAmq Overview Continuous Quality Assurance
Amq Overview Continuous Quality Assurance
Sofandre Sya'banu, S.E., M.T.I.
 
UX in ALM Series - UX Project Worflow using TFS 2008
UX in ALM Series - UX Project Worflow using TFS 2008UX in ALM Series - UX Project Worflow using TFS 2008
UX in ALM Series - UX Project Worflow using TFS 2008
Christian Thilmany
 
Ensuring code quality
Ensuring code qualityEnsuring code quality
Ensuring code quality
MikhailVladimirov
 
#DOAW16 - DevOps@work Roma 2016 - Testing your databases
#DOAW16 - DevOps@work Roma 2016 - Testing your databases#DOAW16 - DevOps@work Roma 2016 - Testing your databases
#DOAW16 - DevOps@work Roma 2016 - Testing your databases
Alessandro Alpi
 
Parasoft .TEST, Write better C# Code Using Data Flow Analysis
Parasoft .TEST, Write better C# Code Using  Data Flow Analysis Parasoft .TEST, Write better C# Code Using  Data Flow Analysis
Parasoft .TEST, Write better C# Code Using Data Flow Analysis
Engineering Software Lab
 
Oracle OpenWorld 2009 AIA Best Practices
Oracle OpenWorld 2009 AIA Best PracticesOracle OpenWorld 2009 AIA Best Practices
Oracle OpenWorld 2009 AIA Best Practices
Rajesh Raheja
 
Onine exam 1
Onine exam 1Onine exam 1
Onine exam 1
priyadharshini murugan
 
Renuka Devi with 4+ yr Exp
Renuka Devi with 4+ yr ExpRenuka Devi with 4+ yr Exp
Renuka Devi with 4+ yr Exp
Renuka Devi
 
Creating a successful continuous testing environment by Eran Kinsbruner
Creating a successful continuous testing environment by Eran KinsbrunerCreating a successful continuous testing environment by Eran Kinsbruner
Creating a successful continuous testing environment by Eran Kinsbruner
QA or the Highway
 
Azure presentation nnug dec 2010
Azure presentation nnug  dec 2010Azure presentation nnug  dec 2010
Azure presentation nnug dec 2010
Ethos Technologies
 
Software Project Management - NESDEV
Software Project Management - NESDEVSoftware Project Management - NESDEV
Software Project Management - NESDEV
Krit Kamtuo
 
Visual Studio Team System 2010
Visual Studio Team System 2010Visual Studio Team System 2010
Visual Studio Team System 2010
ukdpe
 
Alm Specialist Toolkit Team System 2008 Deep Dive
Alm Specialist Toolkit   Team System 2008 Deep DiveAlm Specialist Toolkit   Team System 2008 Deep Dive
Alm Specialist Toolkit Team System 2008 Deep Dive
Christian Thilmany
 
Improving The Software Development Lifecycle With Visual Studio Team System
Improving The Software Development Lifecycle With Visual Studio Team SystemImproving The Software Development Lifecycle With Visual Studio Team System
Improving The Software Development Lifecycle With Visual Studio Team System
matthewphillips
 
A Lap Around Visual Studio 2010
A Lap Around Visual Studio 2010A Lap Around Visual Studio 2010
A Lap Around Visual Studio 2010
adrian8three
 
UX in ALM Series - UX Project Worflow using TFS 2008
UX in ALM Series - UX Project Worflow using TFS 2008UX in ALM Series - UX Project Worflow using TFS 2008
UX in ALM Series - UX Project Worflow using TFS 2008
Christian Thilmany
 
#DOAW16 - DevOps@work Roma 2016 - Testing your databases
#DOAW16 - DevOps@work Roma 2016 - Testing your databases#DOAW16 - DevOps@work Roma 2016 - Testing your databases
#DOAW16 - DevOps@work Roma 2016 - Testing your databases
Alessandro Alpi
 
Parasoft .TEST, Write better C# Code Using Data Flow Analysis
Parasoft .TEST, Write better C# Code Using  Data Flow Analysis Parasoft .TEST, Write better C# Code Using  Data Flow Analysis
Parasoft .TEST, Write better C# Code Using Data Flow Analysis
Engineering Software Lab
 
Oracle OpenWorld 2009 AIA Best Practices
Oracle OpenWorld 2009 AIA Best PracticesOracle OpenWorld 2009 AIA Best Practices
Oracle OpenWorld 2009 AIA Best Practices
Rajesh Raheja
 
Renuka Devi with 4+ yr Exp
Renuka Devi with 4+ yr ExpRenuka Devi with 4+ yr Exp
Renuka Devi with 4+ yr Exp
Renuka Devi
 
Creating a successful continuous testing environment by Eran Kinsbruner
Creating a successful continuous testing environment by Eran KinsbrunerCreating a successful continuous testing environment by Eran Kinsbruner
Creating a successful continuous testing environment by Eran Kinsbruner
QA or the Highway
 
Azure presentation nnug dec 2010
Azure presentation nnug  dec 2010Azure presentation nnug  dec 2010
Azure presentation nnug dec 2010
Ethos Technologies
 
Ad

Recently uploaded (20)

ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes
 
Heap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and DeletionHeap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and Deletion
Jaydeep Kale
 
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath MaestroDev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
UiPathCommunity
 
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
SOFTTECHHUB
 
Big Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur MorganBig Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur Morgan
Arthur Morgan
 
Cybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure ADCybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure AD
VICTOR MAESTRE RAMIREZ
 
Electronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploitElectronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploit
niftliyevhuseyn
 
2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx
Samuele Fogagnolo
 
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In FranceManifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
chb3
 
Mobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi ArabiaMobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi Arabia
Steve Jonas
 
Semantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AISemantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AI
artmondano
 
Cyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of securityCyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of security
riccardosl1
 
Andrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell: Transforming Business Strategy Through Data-Driven InsightsAndrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell
 
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxDevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
Justin Reock
 
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptxIncreasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Anoop Ashok
 
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
BookNet Canada
 
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdfSAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
Precisely
 
How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?
Daniel Lehner
 
What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...
Vishnu Singh Chundawat
 
Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025
Splunk
 
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes
 
Heap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and DeletionHeap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and Deletion
Jaydeep Kale
 
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath MaestroDev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
UiPathCommunity
 
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
SOFTTECHHUB
 
Big Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur MorganBig Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur Morgan
Arthur Morgan
 
Cybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure ADCybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure AD
VICTOR MAESTRE RAMIREZ
 
Electronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploitElectronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploit
niftliyevhuseyn
 
2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx
Samuele Fogagnolo
 
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In FranceManifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
chb3
 
Mobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi ArabiaMobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi Arabia
Steve Jonas
 
Semantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AISemantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AI
artmondano
 
Cyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of securityCyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of security
riccardosl1
 
Andrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell: Transforming Business Strategy Through Data-Driven InsightsAndrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell
 
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxDevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
Justin Reock
 
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptxIncreasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Anoop Ashok
 
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
BookNet Canada
 
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdfSAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
Precisely
 
How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?
Daniel Lehner
 
What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...
Vishnu Singh Chundawat
 
Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025
Splunk
 

The Magic Of Application Lifecycle Management In Vs Public

  • 1. David Solivan Architect Evangelist Microsoft Corporation
  • 2. “ Any sufficiently advanced technology is indistinguishable from magic.” Arthur C. Clarke’s 3 rd Law
  • 3. “ the impossible must become possible. the possible must become routine. the routine must become easy. and the easy must become beautiful.” Doug Henning’s creedo
  • 4.  
  • 5. Is it impossible to have a successful, large, team-based, software development project delivered on time and under budget?
  • 6. What percentage of such projects succeed?
  • 7. Source: Standish Group, 2004 Third Quarter Research Report, CHAOS Research Results 1994 1996 1998 2000 2002 2004 Succeeded Failed Challenged 40% 30% 20% 10% 0% 50% 60%
  • 8. Source: Forrester, September 2006, Trends “The Root Of The Problem: Poor Requirements”, Carey Schwaber, 2006 Is IT getting involved in the business initiatives at the right time? Are the requirements gathered initially the right ones? How are you managing changes to requirements?
  • 9. Source: NIST, The Economic Impacts of Inadequate Infrastructure for Software Testing 2002, Standish Group The Cost of Inadequate Software Testing (Billions) Software users Software developers $0 $10 $20 $30 $40 How does the business define quality?
  • 10. Individual Productivity Organization Size Desired Actual How can we create team and organizational capacity for innovation?
  • 11.  
  • 12. It is possible if we take a new approach to developer tools that recognizes that it takes more than developers to build a solution.
  • 13. Individual Team Organization Productive Integrated Extensible Application Lifecycle Management Process Tools
  • 14. “ Successful software projects are not possible without the understanding that developers are but one part of a team, and that all parts of this team are equally important for success.” David D. Solivan … just now Project Manager Database Professionals Developer Tester Architect Users & Management
  • 15.  
  • 16. How do we take the possibility of successful team development and make it an everyday reality?
  • 17. Team Foundation Server Web Browser Team Explorer Microsoft Project Microsoft Excel Team Edition for Testers Team Edition for Developers Team Edition for Architects Team Edition for Database Professionals Project Manager Database Professionals Developer Tester Architect Users & Management Work Items Build Server Version Control Project Portal Reporting & Analytics
  • 18. Rebuilt Team Build subsystem Acquired TeamPlain Web Access (TWA) Usability improvements in Version Control Extensibility improvements in Work Item Tracking Performance and scalability improvements Customer driven license changes: anyone in the organization may open and track their own work items A new Internal Connector License enables IT orgs to integrate current systems with TFS
  • 19. 2008 is 2x faster than 2005 Any size team, any size project Deploying broadly across Microsoft 7k active users, 1,000 projects, 25 TFS instances 2008 Hardware Recommendations
  • 23. Application Designer Model application components and their communication paths Create artifacts that can be used throughout the development process - no static models Define application deployment needs before you begin construction The Application Designer allows you to define the application components that comprise a service oriented system
  • 24. Logical Datacenter Designer Reduce deployment defects. Share deployment environment information between projects. Captures a datacenter’s policies and logical structure.
  • 25. Deployment Designer Communicate your deployment needs to IT operations Validate your application deployment before construction Help developers understand the deployment environment of the application The Deployment Designer allows you to validate the deployment of an application against a logical view of your data center
  • 26. Class Designer Design first approach to class design. Generate new classes and relationships graphically. Visualize the structure of existing classes, interfaces and other .NET types Automatically generates code from design. Model and code will always be synchronized. Design object models and view class relationships.
  • 27. Class Designer Class Designer and two-way code synch
  • 28. Improving Code Quality Integrated Unit Testing Integrated Static Code analysis Security Errors Localization problems Memory issues … Integrated Profiler Performance problems Memory problems Potential Sql Injection attack Object not Disposed Localization Issue
  • 29. Improving Quality: Profiler Who allocates the most Objects Who allocates the most memory Who is called the most? Who runs for the longest What do you have the most of? What is taking up the most memory
  • 30. Code Metrics Gives a snapshot of software health Understand your code complexity Quickly compare code to find potential trouble spots Reduce risk & improve maintainability Understand complexity of inherited code New in VSTS 2008
  • 31. Metric: Class Coupling # of Dependencies Between Types GUI Business Logic Transaction Customer Account
  • 32. Metric: Class Inheritance # of Base Types Component Control Label ListBox ListControl LinkLabel ComboBox
  • 33. Metric: Lines of Code # of Executing Lines of Code 1 2 3 4 5 static class Program { #region Application Entry Point /// <summary> /// The main entry point for the application. /// </summary> [ STAThread ] static void Main ( string [] args ) { Application . EnableVisualStyles (); Application . SetCompatibleTextRenderingDefault ( false ); Workflow ( args ); } #endregion #region Static Methods /// <summary> Primary workflow for the application. </summary> /// <param name=&quot;args&quot;> Command line arguments. </param> private static void Workflow ( string [] cmdargs ) { // Collect the list of command line arguments List < string > args = new List < string >( cmdargs ); // Show usage syntax if the user so asks if ( UseArg ( args , &quot;/?&quot; )) { ShowAbout (); return ; }
  • 34. Metric: Cyclomatic Complexity # of Branches 1 2 3 4 5 6,7 8 9 10 11 bool ParseCommandLine ( string [] args ) { if ( args . Length == 0) ShowHelp (); return ; for ( int i = 0; i < args . Length ; i ++) switch ( args [ i ]) { case &quot;/?&quot; : ShowHelp (); return false ; case &quot;/input&quot; : if ( args . Length > i && File . Exists ( args [ i + 1])) InputFile = args [ i ++]; break ; case &quot;/c&quot; : Colapse = true ; break ; } return true ; }
  • 35. Metric: Maintainability Index Overall indication of complexity by aggregation of several factors Lines of Code Cyclomatic Complexity Computational Complexity Used on the Windows Code Base
  • 36.  
  • 37. How do we take ALM from an everyday task, to a simple, easy part of the background noise so users can focus on primary tasks?
  • 38.  
  • 39.  
  • 40. Visual Studio Team Suite MSF Process and Guidance Visual Studio Team Foundation Server Visual Studio Industry Partners Software Architects Software Developers Software Testers Database Professionals Visual Studio Team Explorer Application Modeling Infrastructure and Deployment Modeling Code Analysis Performance Tuning Security Analysis Database Build & Deployment Database Change Management Database Testing Performance Testing Manual Testing Test Case Management Visual Studio Professional Edition Change Management Work Item Tracking Reporting Project Site Integration Services Project Management Load Test Agent Visio and UML Modeling Class Modeling Unit Testing Code Coverage New!
  • 41. SOAP Messages SOAP Messages SOAP Messages File Transfers File Transfers File Transfers
  • 42. SOAP Messages SOAP Messages SOAP Messages File Uploads File Uploads File Uploads Downloads
  • 43. * Raleigh office has 3Mbps of bandwidth shared by ~70 employees. Content No Proxy With Proxy 35 MB, 1824 Files 00:05:20 00:00:32 80 MB, 8 Files 00:14:07 00:00:25
  • 44. Redmond, WA 368 Users Fargo, ND 4 Users Research Triangle, NC 42 Users Copenhagen, Denmark 6 Users Hyderabad, India 14 Users Team Foundation Users: 434 Version Control Users: 319 Number of Files/Folders: 271,766/30,376 Uncompressed File Size: 5.85 GB Compressed File Size: 1.71 GB Workspaces: 612 Workspace File Versions: 11 Million Changesets: 3489 Pending Changes: 4806 Shelvesets: 1254
  • 45. Redmond, WA 368 Users Fargo, ND 4 Users Research Triangle, NC 42 Users Copenhagen, Denmark 6 Users Hyderabad, India 14 Users
  • 46. “ Shelve” work in progress Check-in policies enforced during check-in process
  • 47. Full Work Item Support in Microsoft Excel Full Access from Visual Studio Synchronized with Microsoft Project View project status in Microsoft Excel or Microsoft Project
  • 48.  
  • 49.  
  • 50.  
  • 51. David Solivan Architect Evangelist Developer & Platform Evangelism
  • 52.  
  • 53. Are we at beautiful yet? There is still work to be done to incorporate business requirements directly into ALM toolset. Project Rosario is addressing.
  • 54. Portfolio planning – Portfolio Server integration (via Project Server) Project planning – Project Server integration + lightweight scheduling Requirements Capture and Validation (Partner Ecosystem) Requirements Traceability - Hierarchical Linking and Querying Reporting dashboards and enhanced reports Process Authoring and Customization
  • 55. Software Factories – Guided Development Experience Enhanced DB Refactorings + Refactoring into App Tier T-SQL Static Analysis and Code Coverage Policy Extended to the DB Tier Gated Checkin Test Prioritization - Determine what are the most important tests to run Test Case Management Test Execution (Functional and Manual Testing) “ Eliminate the No Repro Problem” – Test / Diagnostics Integration
  • 56. Current state is near impossible Possible to solve if we understand that development is a team activity A tool that addresses all ALM Roles makes ALM part of the workday. A tool that requires roles to communicate and provides seamless supporting features Coming soon…
  • 58. © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Editor's Notes

  • #2: 06/03/09 21:51 © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.