I'm a software developer. When my team meets for our daily standups, our business analyst/project managers attend the meeting as well in order to gauge the team's progress. 9 times out of 10, this works perfectly fine.
The last couple of weeks, though, I've been working on a particularly stubborn task. I've repeatedly thought, in good faith, that I was within a couple days of having it completed. But each time I got into my "final" testing for the project, an unexpected roadblock appeared and added several more days. I've talked with my development-savy boss about it, and he agrees that I have been doing good work on the project, it's just one of those times where we've been unlucky.
I'm nervous about how this looks when I give my updates during standups. For the last couple of weeks, I've given enthusiastic updates saying I'm just about done with my project, only to show up at the next meeting saying that something came up and I'm going to need more time. Communicating the details of what's going on is helpful to the developers on my team, but this can't look good to the project managers. This isn't the first time I've been in this situation either. I'm nervous that I might be developing a reputation as being unreliable.
What is the best way for me to communicate my progress in siutations like these, where a task repeatedly takes me longer than expected for reasons that could not have been predicted? My goals are to be honest with the project managers, but also to give them information that is useful to them instead of wasting their time with overly technical details and to avoid presenting myself in a way that seems flaky.