Until now, numerous effort estimation models for software projects have been developed, most of them producing accurate results but not providing the flexibility to decision makers during the software development process. The main objective of this study is to objectively and accurately estimate the effort when using the Scrum methodology. A dynamic effort estimation model is developed by using regression-based machine learning algorithms. Story point as a unit of measure is used for estimating the effort involved in an issue. Projects are divided into phases and the phases are respectively divided into iterations and issues. Effort estimation is performed for each issue, then the total effort is calculated with aggregate functions respectively for iteration, phase and project. This architecture of our model provides flexibility to decision makers in any case of deviation from the project plan. An empirical evaluation demonstrates that the error rate of our story point-based estimation model is better than others.