Вы просачиваетесь по этой линии:
Specialty *specialty = [[Specialty alloc] init];
Вы создаете кучу блюд, но никогда не выпускаете их.
И в этой строке вы переопределяете объект jsonArray, используя self впереди.
self.jsonArray = [[SpecialtyUrl parseSpecialtyResult:responseString] retain];
Поскольку вы, вероятно, объявили свое свойство jsonArray следующим образом:
@property(nonatomic,retain)...
и затем вы синтезировали его. Он создал для вас сеттер, который сохраняет объект, когда вы используете его с помощью self.
так
self.jsonArray = [SpecialtyUrl parseSpecialtyResult:responseString];
достаточно.