Checking
Testing is fundamental to Agile. The best tests are automated so they can be run and run again. Repeating automated tests throughout development and beyond means we are sure systems work when we create them, and that they still work days, weeks, months or even years down the line.
So if we add a new function to a system that breaks an existing function, or tweak code and cause unforeseen problems for something that depends on it, we know immediately. Our automated tests tell us when we've made mistakes: we don't have to look for them.
Software developers who claim to be 'Agile' but don't have the discipline for Unit Testing are not 'Agile' at all. They are disorganised.
Continuous Integration is a way of ensuring simultaneous changes to code made by different developers are compatible with each other, by continuously building and testing the code from the central repository automatically.
User Acceptance Tests scope projects by defining when each feature works to the customer's satisfaction. Automating these tests means you know that the system STILL works as the user wants it, no matter what changes are made to it in future.
Assigning individual developers to a job is, without doubt, a crazy risk to take. If the knowledge about how systems work only exists in one person's head, what will you do when they leave?
Another way to reduce risk, ensure shared ownership of code and strengthen your Intellectual Property is to ensure proper documentation takes place. Modern tools make this less hard work than it sounds.