Пока функции достаточно короткие, чтобы их было легко понять, определить область действия локальных переменных и параметров также будет легко. Но нет жесткого и быстрого правила для этого. Важно то, что код прост для понимания и что имена переменных актуальны и значимы независимо от того, означает ли это дублирование имен. Современные IDE также помогут здесь, выделив экземпляры таких переменных, облегчая просмотр их объявления и различных точек использования. Дело в том, что я бы больше сосредоточился на качестве и содержательном именовании, а не на дублировании имен переменных.
РЕДАКТИРОВАТЬ - Конечно, одной из ситуаций, которых следует избегать, было бы именование локальной переменной или параметра так же, как глобальной переменной. Это может сильно запутать вещи и привести к множеству мелких ошибок.