Scrum is a simple framework for delivering working software in short iterations called sprints, usually lasting 30 days. It has three roles: Product Owner who prioritizes features in a backlog, Scrum Master who facilitates the process, and a self-organizing team. The team works in sprints using ceremonies of sprint planning, daily stand-ups, sprint review and retrospective to inspect and adapt their process. The goal is working software over documentation and responding to change over following a plan.