Working with a timer as in "work for 15 mins then you can have a 5 min break" has never worked well for me - the break never comes when I need it! For the last few years I've been using (for record keeping purposes initially, but I find it has other benefits) an Android app called Timesheet. You set up projects - could be Homework, or Maths, or whatever - and then there's a big button to press when you start a task, and another to press when you finish it, and it times you. But the thing I didn't realise would be so helpful is a Pause/Resume button, that allows and records breaks. The nice thing is that this separates time when it's OK to be doodling, checking Facebook or whatever cleanly from time when it's not. With a child, I might suggest "take a short break whenever you need it, but get this piece of work done by X with no more than Y minutes of break" if you think it might work better to permit limited as-needed breaks than to regulate them completely.