Generally speaking, a development team that uses a waterfall approach regards the development process for a software product as one large project. At the end of the project, the team releases working software to an operations team for installation and maintenance. Typically, the business owner (also called the product owner) only sees the finished product.
In contrast, a development team that uses Scrum, or some other Agile methodology, would approach the same development project as a series of very small projects called sprints. Working software is released periodically in an iterative manner until the entire software product is complete. Typically, the project’s business owner plays an active role throughout the process and joins the development team's retrospective after each release.
A flexible approach that embraces both traditional and Agile development principles allows development teams to use whatever practices and techniques best meet the needs of the problem being solved. Many organizations use Agile principles and Scrum communication techniques in their day-to-day product development but employ traditional waterfall methodologies for planning, budgeting or documenting the project’s progress.
The need for flexibility has also given rise to a movement called DevOps, an approach that blends the tasks performed by a company's development and systems operations teams.