I have two UITableViewControllers. One displays a list of names and on tapping any cell will push the second TableViewController which enables the user to edit the name in a UIT
I see mainly three options:
you could define your model as a singleton, which is easily accessible from every other object. In this case think about concurrent access to the model, it any;
have the model private to the first controller, but instead of passing the string to the second controller, pass a pointer to the model, so you can read and write to it;
pass the second controller a pointer to the first, so you can signal it (by calling some specific method); this is ok if you subclass the controller, otherwise you should use a delegate.
A fourth option would be using notifications, but I think that 1 or 2 a the way to go.