O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Beginning Application Lifecycle Management

Book Description

Beginning Application Lifecycle Management is a guide to an area of rapidly growing interest within the development community: managing the entire cycle of building software. ALM is an area that spans everything from requirements specifications to retirement of an IT-system or application. Because its techniques allow you to deal with the process of developing applications across many areas of responsibility and across many different disciplines, the benefits and effects of ALM techniques used on your project can be wide-ranging and pronounced.

In this book, author Joachim Rossberg will show you what ALM is and why it matters. He will also show you how you can assess your current situation and how you can use this assessment to create the road ahead for improving or implementing your own ALM process across all of your team's development efforts.

Beginning Application Lifecycle Management can be implemented on any platform. This book will use Microsoft Team Foundation Server as a foundation in many examples, but the key elements are platform independent and you'll find the book written in a platform agnostic way.

In this book, you'll learn:

  • What application lifecycle management is and why it matters.
  • The steps necessary for implementing an ALM process.
  • Tips and techniques you can use to gain control of your development efforts.
  • How to implement an agile framework into your ALM process
  • How to achieve traceability and visibility in your projects
  • How to automate your ALM process
  • Table of Contents

    1. Cover
    2. Title
    3. Copyright
    4. Dedication
    5. Contents at a Glance
    6. Contents
    7. About the Author
    8. About the Technical Reviewers
    9. Acknowledgments
    10. Chapter 1 : Why Application Lifecycle Management Matters
      1. Responding to Change
      2. Understanding the Cornerstones of Business
        1. Processes
        2. Business Rules
        3. Information
      3. Understanding the Need for Business Software
      4. Today’s Business Environment and the Problems We Face
        1. Project Health Today: Three Criteria for Success
        2. Factors Influencing Projects and Their Success
      5. Project Success: What Does the Research Say?
        1. The Standish Report
        2. Challenging the Report
        3. Conclusions
      6. Summary
    11. Chapter 2 : Introduction to Application Lifecycle Management
      1. Aspects of the ALM Process
      2. Four Ways of Looking at ALM
        1. The SDLC View
        2. The Service Management or Operations View
        3. The Application Portfolio Management View
        4. The Unified View
      3. Three Pillars of Traditional Application Lifecycle Management
        1. Traceability
        2. Automation of High-Level Processes
        3. Visibility into the Progress of Development Efforts
      4. A Brief History of ALM Tools and Concepts
        1. Application Lifecycle Management 1.0
        2. Application Lifecycle Management 2.0
        3. Application Lifecycle Management 2.0+
      5. DevOps
      6. ALM and PPM
      7. Summary
    12. Chapter 3 : Development Processes and Frameworks
      1. The Waterfall Model
      2. Spiral Model
      3. Rational Unified Process (RUP)
        1. The Principles of RUP
        2. The RUP Lifecycle
        3. Disciplines in RUP
        4. Work Products, Roles, and Tasks in RUP
        5. RUP Benefits
      4. Manifesto for Agile Software Development
      5. Extreme Programming (XP)
      6. Scrum
        1. Empirical Process Control
        2. Complexity in Projects
        3. What Scrum Is
        4. Roles in Scrum
        5. The Scrum Process
      7. The Kanban Method
        1. Start With What You Do Now
        2. Agree to Pursue Incremental, Evolutionary Change
        3. Respect the Current Process, Roles, Responsibilities, and Titles
        4. The Five Core Properties
        5. Common Models Used to Understand Work in Kanban
      8. Choosing the Process
      9. Summary
    13. Chapter 4 : Introduction to Scrum and Agile Concepts
      1. The Scrum Process
      2. Roles in Scrum
        1. Product Owner
        2. Scrum Master
        3. The Development Team
      3. Definition of Done
      4. Agile Requirements and Estimation
        1. Requirements
        2. Estimation
        3. Backlog
        4. During the Sprint
        5. How Agile Maps to ALM
      5. Summary
    14. Chapter 5 : ALM Assessments
      1. Microsoft Application Platform Optimization (APO) Model
        1. Infrastructure Optimization Model
        2. Business Productivity Infrastructure Model
      2. APO Maturity Levels
        1. Basic
        2. Standardized
        3. Rationalized (formerly Advanced)
        4. Dynamic
        5. APO Capabilities
      3. Application Platform Capability Assessment
        1. ALM Rangers’ Assessment Guide
      4. Starting the Microsoft Web Assessment
        1. Sample Questions
        2. Viewing the Results
      5. Summary
    15. Chapter 6 : Visibility and Traceability
      1. The Importance of Trust and Visibility
      2. What Is Visibility?
      3. Why Do You Need Visibility?
      4. An Agile Approach to Visibility
        1. Continuous Integration
        2. Why Should You Implement Continuous Integration?
        3. Components of Continuous Integration
      5. ALM 2.0+ and Visibility
      6. Automating Visibility
      7. Traceability
      8. Software Traceability
      9. ALM 2.0+ Supports Software Traceability
      10. Why Traceability is Important
      11. Agile Frameworks and Traceability
      12. Automating Traceability
      13. Summary
    16. Chapter 7 : Automation of Processes
      1. What Is Process Automation?
        1. Project-Management Process
        2. Test Process
        3. Build and Release Process
        4. Continuous Delivery: A Process-Automation Example
        5. Release Management
      2. Things to Consider Before Automating Processes
        1. Benefiting from an ALM Solution
        2. Using Different Tool Vendors
        3. Know the Weaknesses of Your ALM Tool
        4. ALM and DevOps Is Still a Struggle
      3. Summary
    17. Chapter 8 : Work Planning
      1. Task Management
        1. Tasks or Work Items
      2. Reporting that Resolves Estimates and Actuals
      3. ALM 2.0+ Enables Good Planning Functions
      4. Support for Historical Data
      5. Summary
    18. Chapter 9 : Collaboration
      1. DevOps
        1. DevOps Overview
        2. How Well Has Your Organization Adopted DevOps?
        3. How Can You Start Adopting DevOps?
      2. Engaging the Business Side
        1. Better Collaboration between Development and Business
        2. Requirements Gathering
        3. Storyboarding
        4. Continuous Feedback
      3. Sharing Information
        1. Maintaining a Shared Backlog
        2. Sharing Documents and Information
      4. Summary
    19. Chapter 10 : Metrics in ALM
      1. Project-Management Metrics
        1. Agile Metrics
      2. Metrics for Architecture, Analysis and Design
      3. Metrics for Developer Practices
        1. Code Coverage
        2. Code Metrics
        3. Compiler Warnings
        4. Code-Analysis Warnings
      4. Metrics for Software Testing
        1. Example Reports
        2. Bug Status Report
        3. Reactivations Report
        4. Bug Trend Report
      5. Metrics for Release Management
        1. Sample Reports
      6. Summary
    20. Chapter 11 : Introduction to ALM Platforms
      1. Atlassian
      2. IBM
      3. Microsoft
      4. CollabNet
      5. Summary
    21. Index