This document provides an overview of various software development life cycle (SDLC) models including Waterfall, V-Shaped, Prototyping, Rapid Application Development (RAD), Incremental, Spiral, and Agile methods. Key aspects of each model are described such as typical phases, when each model is best suited, strengths, and weaknesses. Tailoring SDLC models to best fit individual projects is also discussed. The document concludes with a brief section on quality assurance and elements that should be considered in a quality assurance plan.