Traditionally, Waterfall project teams face three constraints: Time, Cost, and Scope. They were unable to change any of these things once their project started.
The problem is, during the course of a project, the business environment changes around you. This means, by the time you are done, what you built is no longer valuable. This isn't anyone's fault. Business needs are changing more rapidly than ever. Project requirements are shifting just as quickly to keep up.
In the traditional approach, first the client requirements are documented in details, architecture of the software is planned and conceptualised and then the work starts to produce the end product.
Teams were doomed to failure on every project until the Agile manifesto came along. Then we shifted our focus away from constraining all three project's elements, and decided to make one of them flexible.
Agile is a broad umbrella of many methodologies that follow the same principles. Scrum is one of them. Scrum took it a step further by creating a framework to help teams stay focus and protect them from distractions. Essential to Scrum are two key roles, the Product Owner and the Scrum Master.
In Scrum Framework, the client is constantly involved during the course of development, reviewing bits and pieces created, time and over. The cost of testing a product is less when it is being tested in parts separately. It is easier to test and produces more robust product.