What is Scrum in Agile development?

And how FogBugz is the best Scrum software development tool

Scrum is one of the popular methodologies for agile software development. Scrum is a way of managing a software development project, in which each member is self organized and team development is optimized.

Different to the traditional methods, in Scrum the work is delivered in frequent parts called "sprints" instead of fully developing the whole project before showing it for the first time to the customers.

There are two fundamental roles in Scrum: the Scrum master and the project owner. The first one coaches the team, helping it apply the Scrum methodologies, the second one represents the client/business, and is the one that makes sure the team builds exactly what was requested.

The team work is separated on sprints, each sprint is a deliverable, a part that is presented to the clients, at the end of each sprint the team should be able to present functioning piece of something to show for their work. At the end of each sprint the team would meet to plan the next sprint, deciding which features to work on next.

How FogBugz helps you develop great software using Scrum

FogBugz is fully equipped to manage projects as an agile method using Scrum principles.
Some of the features that FogBugz include:

Iteration planner - through this feature you can plan all your sprints, moving around tasks so all the main features are not left out.

Backlog - FogBugz allows you to create a backlog sprint, where you can include all the tasks that are included in the project, even if some of them won’t be done in the project.

Time tracking - you can estimate time on each task and also know how much time is remaining on cases. This also helps to generate scheduling reports (such as a burndown chart) that take into account work remaining and the accuracy of the estimator.

Evidence based scheduling - FogBugz estimates automatically when each phase of the process will be done, taking into account each user history.