Published on

Published in: Technology
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Vsts

    1. 1. Presented by Kashif Akram User Group Lead – www.dev30.com Developed by Developer Evangelist Team Microsoft An Integrated Approach to Application Lifecycle Management
    2. 2. Why I'm Here – Profile <ul><li>Have experience in project management and execution as a Technical Project Manager </li></ul><ul><li>Part of the SCAMPI CLASS “A” Audit Team for CMMi level 4&5 </li></ul><ul><li>Currently working as Sr. Architect </li></ul>
    3. 3. Application Lifecycle Management Ideal State
    4. 4. Our Approach People Process Tools <ul><li>Empower teams </li></ul><ul><li>Quality mindset </li></ul><ul><li>Team of peers </li></ul><ul><li>Visibility at every level </li></ul><ul><li>Agile </li></ul><ul><li>Customizable </li></ul><ul><li>Lightweight </li></ul><ul><li>Patterns and practices </li></ul><ul><li>Highly integrated </li></ul><ul><li>Productive </li></ul><ul><li>Extensible </li></ul><ul><li>Low admin </li></ul>Successful IT organizations take an incremental approach to improving application development capabilities
    5. 5. Development Teams Database Professional Solution Architect Project Manager Developer Tester End User
    6. 7. Seven Key benefits <ul><li>Collaborate and communicate </li></ul><ul><li>Drive predictability </li></ul><ul><li>Manage team workflow </li></ul><ul><li>Use familiar tools </li></ul><ul><li>Ensure quality , easy and often </li></ul><ul><li>Integrate frequently </li></ul><ul><li>Make real-time decision </li></ul>
    7. 8. Process Enacted By Tooling Choose process when creating a new project
    8. 10. Project Management Problem Space <ul><li>Team Collaboration </li></ul><ul><li>Tracking and Managing </li></ul><ul><li>Process Implementation </li></ul><ul><li>Lack of Visibility and Predictability </li></ul>
    9. 11. Highlights Project Managers <ul><li>One-window process to access to work items, documents, reports, team builds and version control </li></ul><ul><li>Process templates to help manage process integration and adaption </li></ul><ul><li>Full bi-directional synchronization to enable single, real-time view of project status </li></ul><ul><li>Familiar user interface and tools such as Microsoft Project and Excel </li></ul>
    10. 12. Customizable SharePoint portal for team collaboration
    11. 14. Business requirements captured and managed to enable end-to-end traceability
    12. 15. Full integration into Microsoft Project for a real-time view of work items
    13. 16. How Far Can We Get In The Available Time? Work completed Work planned
    14. 17. Teamprise explorer running on Linux
    15. 19. Architects Problem Space <ul><li>Visualization of design </li></ul><ul><li>Architecture modeling </li></ul><ul><li>High-quality implementation of design </li></ul><ul><li>Decreasing deployment complexity </li></ul>“… unexplained lapses between the model and the code introduce gaps into the SDLC, which undermine the role and utility of the model” – IDC March 2004
    16. 20. Highlights Software Architects <ul><li>Design and validate architecture </li></ul><ul><ul><li>Powerful new visual designers. Application Designer, Logical Datacenter Designer, Deployment Designer , Class Designer </li></ul></ul><ul><ul><li>Validate service-oriented solutions against target deployment environment </li></ul></ul><ul><ul><li>Visualize distributed application dependencies and relationships </li></ul></ul><ul><li>Effectively communicate design decisions </li></ul><ul><ul><li>Integrates with team tools to facilitate better team collaboration and communication </li></ul></ul><ul><li>Utilize proven development practices </li></ul><ul><ul><li>Leverage integrated guidance, frameworks, and tools from Microsoft’s patterns & practices team </li></ul></ul>
    17. 21. Design For Operations Validate application design against operational environment to ensure successful deployment
    18. 22. Distributed Application Architecture Visually design, configure, and validate distributed applications
    19. 23. Class Diagrams Keep application design documents synchronized with code at all times Model .NET applications with high fidelity
    20. 24. Developers Problem Space <ul><li>Lack of productivity </li></ul><ul><li>Code quality </li></ul><ul><li>Ensure design constraints </li></ul><ul><li>Lack of testing tools for developers </li></ul><ul><li>Application performance </li></ul><ul><ul><li>“ Only a dysfunctional development organization would deliberately hand code with known defects over to a test team.” – Forrester, May 2004 </li></ul></ul>
    21. 25. Highlights Software Developers <ul><li>Automatic code generator to improve productivity </li></ul><ul><li>Static code analysis for better code quality </li></ul><ul><li>Performance improvement by using Code profiling </li></ul><ul><li>Integrated Unit Testing to test class methods </li></ul>
    22. 26. Identify coding errors and security vulnerabilities
    23. 27. Managing Work Items Manage and analyze work items using Microsoft Excel
    24. 28. Associate work items with each check-in to provide traceability from requirements to code
    25. 29. Change Management Discover who last changed a section of code and get detailed change set information
    26. 30. Check-In Policies Policies enforced by tooling reinforce good development practices
    27. 31. Build And Deployment Build verification test results as part of the build process Who checked in what?
    28. 32. <ul><li>Data professionals role </li></ul><ul><li>Database change management </li></ul><ul><li>Automate database testing </li></ul><ul><li>Database version controlling </li></ul>Database Professional Problem Space
    29. 33. Highlights Database Professionals <ul><li>Bring data professionals into the lifecycle </li></ul><ul><ul><li>Provide full Visual Studio Team System support </li></ul></ul><ul><ul><li>Support Work Item tracking for database changes </li></ul></ul><ul><li>Take control of database change </li></ul><ul><ul><li>Offline, change management of the database schema </li></ul></ul><ul><ul><li>Automated refactoring of database objects </li></ul></ul><ul><li>Automate database testing to improve quality </li></ul><ul><ul><li>Unit testing for database queries </li></ul></ul><ul><ul><li>Automatic generation of meaningful test data </li></ul></ul>
    30. 34. Database Change Management A new offline Database project allows you to work with your database schema offline while full integration with TFS allows you to manage and version these changes Rename refactoring makes it easy to make changes to your database schema
    31. 35. Test Data Generation Data Generation Plans allow you to create meaningful/repeatable test data Customizable and extensible generators allow you to create data that mimics production data
    32. 36. Testers Problem Space <ul><li>Testing in the SDLC/ALM </li></ul><ul><li>Creating test strategy </li></ul><ul><li>Inadequate testing tools </li></ul><ul><li>Finding complex bugs </li></ul><ul><ul><li>“… the later testing starts, the later defects are identified, and defects that are identified later in the life cycle cost exponentially more to repair” – Forrester, May 2004 </li></ul></ul>
    33. 37. Highlights Software Testers <ul><li>Test Case Management </li></ul><ul><ul><li>Create test list </li></ul></ul><ul><ul><li>Organize and Execute tests </li></ul></ul><ul><li>Manual testing </li></ul><ul><ul><li>Provide script for manual tasks </li></ul></ul><ul><li>Web testing </li></ul><ul><ul><li>Record and playback interactions </li></ul></ul><ul><li>Load testing </li></ul><ul><ul><li>Simulate multiple users </li></ul></ul>
    34. 38. Quickly identify executed code paths to determine effectiveness of unit tests
    35. 39. Integrated Unit Testing Auto generate unit tests
    36. 40. Web Testing Sort and manage tests Functional web testing Browser auto-record playback
    37. 41. Load Testing Switch to Table view or graph Dynamically monitor performance characteristics Pre-configured counter collections
    38. 42. Application Life Cycle Management (ALM) Solution Project Server Third-Party IDEs Web Clients and XML Web Services