Delegate concept is the answer to all your problems!
Once data validation is successful pass the data to your MainView controller to be added to the array :)
Detail: Your AddViewController should have a protocol, and delegate property
@protocol AddViewControllerDelegate <NSObject>
-(void)addViewController:(AddViewController*)addViewController didCompleteWith:(id)data;
@end
@interface AddViewController : SuperClass
@property (nonatomic,weak)id<AddViewControllerDelegate>delegate;
...
@end
Your main view controller should implement this protocol, and set it self as AddViewController delegate.
Upon validating the data AddViewController should call protocol defined method on the delegate.
-(void)dataValid:(id)data {
...
[self.delegate addViewController:self didCompleteWith:data]
...
}