Improvements and comments
Add activity diagram