Вобще есть формулы по расчетам сроков, но насколько они эффективны - большой вопрос. Если интересно - погугли на тему "Широкополосный дельфийский метод", "PERT"
У нас обычно практикуется 2 метода: разработчик указывает колличество часов, за сколько он сделает доработку - например от 4 до 8, руководитель пишет менеджеру 6-10.
Еще один метод - менеджер сказал - мы это сделаем за 3 дня, может сделать разработчик это или нет - его трудности. Обычно успеваем, но после этого код становится грязным, сопровождать потом не очень хорошо, программисты крайне недовольны работой руководства и менеджеров.
Если для реализации необходимо изучение новых технологий, библиотек - это уже не указание сроков, а так, гадание. От месяца до трех, например.
От того, кто указал срок, зависит и понятие готовности задачи. Если срок указал программист - это разработка + внутреннее тестирование, если менеджер - срок запуска доработки.