Software Release Lifecycle


Quick Summary
A comprehensive 10-phase Software Release Lifecycle that provides a practically turn-key methodology for software-heavy development environments. This collection includes release manager and team member job descriptions, an overview of the entire process, and over 70 one-page deliverable guidelines for the key activities in every phase of the SRLC.


This template requires a Premium Subscription
Please log in. Don't have a log-in? Sign up now. Already a Member? Log in to upgrade immediately and get the file! A Premium subscription is only $14.95/month or $149/year and gets you over 200 templates, guidelines, and checklists.
15-day free trial period for new Premium subscribers! Learn more
Log in to download this file

Username:  
Password:  

What this is

The general Software Review Lifecycle (SRLC) here is described as a 10-phase gate project life cycle. This would probably be the maximum number of phases, with gate boundaries, deliverables and milestones, and exit criteria. The 10 phases described here are by no means set in stone; they can be adapted for your company's needs. They simply relate to logical transition gates between separate major activities in the release. Over 70 deliverables are defined in the phase documents, which cover these activities:

Phase 1: Preliminary Requirements Gathering - gather information and kick-off
Phase 2: Scope Definition - begin defining the overall purpose of the upcoming release
Phase 3: Negotiation and Planning - decide projects, products and system features to include
Phase 4: Release Plan Refinement - release and test planing, high-level architectural plans
Phase 5: Development Tracking - monitor, control, update, and communicate
Phase 6: Integration - planned, formal method of "putting it all together"
Phase 7: System Testing - documents, reports and activities during test series
Phase 8: Internal Verification (Alpha) - iterative testing and defect correction
Phase 9: External Verification (Beta) - final review and testing, prepare for manufacturing
Phase 10: Distribution - move to control systems, produce masters, and close out

Why it's useful

Conceptually, a software release is just a very large project or program, composed of multiple product development, system level work, maintenance or support projects "umbrella-ed" underneath the larger software release. Many of the phases and activities of a "release program" are identical in concept for both the release level work and the individual projects (e.g. planning, tracking, design reviews, testing), but work at the release level is larger in scope than the corresponding piece for each individual development project and must take into account all the links between the proojects. As a result, such software releases can be complex undertakings:

  • Interdependent projects must be coordinated such that requirements for all the projects are met and projects do not adversely affect each other.
  • Before that, decisions must be made at the release level regarding which projects should even be included in a particular release—and the scope of each of those projects decided as well—based on available resources, customer needs, and individual projects' tradeoffs.
  • The work on each project must be integrated successfully into a coherent working software system with appropriate testing and documentation.
  • The Software Release Manager must ensure that the various component projects meet customer needs and are integrated and released on time with high quality, while insuring that the overall release reflects the best choices amount scope, costs, and time for the company.

Whew. It's a big job that requires important business decisions, coordinated planning, multi-sub-team tracking, critical code integration, multi-phase testing, and much more. Using a Software Release Lifcycle to form and manage an "umbrella super-program" encompassing all the interdependent projects can help you accomplish it all without getting mired in management red tape.


How to use it

This Software Release Lifecycle described here is targeted for integrating medium-level scope or complexity projects. It is deliberately generalized for wider application. If there are projects involving new or unknown technology, more than a couple of highly complex projects, or an excessively large number of projects, review the lifecycle and modify it appropriately for your specific environment and needs. Likewise, if there are a number of small or straightforward software projects, you may wish to combine and/or condense release phases. All of the main phases are listed separately here, with the philosophy that condensing phases from a general model is easier than expanding them.

Once you've decided the gate phases appropriate for your project effort, review the deliverables suggested in the included documents. (Checklists are included for each phase). Adjust deliverables for your particular organization, project type, or company, then incorporate them in to your project activities. See the included Software Release Life Cycle Team Member Glossary if you have questions about the roles listed for a deliverable. Additionally, the Software Release Manager Job Description will help you select an appropriate manager—or ensure that you've assumed or assigned all of the required duties if you've been elected to the position. A sample Project® work breakdown structure is included as well.

About the Author

Pete contributed this series of software release life cycle overview documents and templates from his hard-won experience putting together software release methods in a growing software company. Even as the company grew a sound process for developing each hardware/software project, they found they needed an overlay to help with planning of their overall releases -- which often brought together 10-20 individual (and complex in themselves) software and platform projects, as well as numerous feature enhancements, to enable them to make the necessary releases to the market.


This template requires a Premium Subscription
Please log in. Don't have a log-in? Sign up now. Already a Member? Log in to upgrade immediately and get the file! A Premium subscription is only $14.95/month or $149/year and gets you over 200 templates, guidelines, and checklists.
15-day free trial period for new Premium subscribers! Learn more
Log in to download this file

Username:  
Password:  





Related Templates
Deliverables Definition Form
Template for defining required project deliverables, including correct timing and audience.

Spiral/Iterative Project Phase Approach
Iterative development model with time-boxing. Use to adapt or augment the waterfall approach in the SRLC.

Software Development Release Train Guideline
Alternative technique of planning software releases on regular or cyclic time period, for example, the last day of every quarter, or every 9 weeks, etc. Use to adapt or augment the waterfall approach in the SRLC.

WBS & Gantt for USB Development Schedule
WBS with dependencies created for a 100-person project, including input from the software, hardware, mechanical engineering, marketing, OEM partner, and various other groups.




©Copyright 2000-2017 Emprend, Inc. All Rights Reserved.
About us   Site Map   View current sponsorship opportunities (PDF)
Contact us for more information or e-mail info@projectconnections.com
Terms of Service and Privacy Policy

Get Our Newsletter
Get our latest content delivered to your inbox, every other week. New case studies, articles, templates, online courses, and more. Check out our Newsletter Archive for past issues.

Follow Us!
Linked In Facebook Twitter RSS Feeds

Got a Question?
Drop us an email or call us toll free:
888-722-5235
Learn more about ProjectConnections, our contributors, and our membership levels and product options.