You can use the internet for free on WiFI at your hotel or lodging - most of them have free WiFI now. You don't need a SIM or to pay for international roaming for that. And if your phone (and AT&T) support the "WiFi Calling" feature, you can make calls to/from the US and do texting for free on WiFI too - check with AT&T if you aren't sure how that works. (You can try it at home: put your phone in airplane mode, then turn on WiFI, assuming you have WiFi at home. Find the "WiFI Calling" feature in your phone or see if your phone has it or an app for it and see if you can make a call.)
But if you want to use your phone and have internet when not on WiFi, then yes these are both options.
AT&T's $60/month plan isn't bad - it gives you 1GB of data. It is a better deal if your trip is shorter, because that 1GB may not last you 30 days. But it may last you 10 days. I tend to use about 100MB/day of data when I travel, more or less.
Buying an Italian SIM costs 20 to 40 euros, something like that. I'd get a TIM or Vodafone SIM if you are going to buy one. One downside of an Italian SIM is that you won't have your US phone number while the Italian SIM is in place - you'll have an Italian number until you put the AT&T SIM back in. (Possible that AT&T WiFi Calling that I mentioned above may still work with an Italian SIM, not sure.) Otherwise, you can install Google Hangouts (and Hangouts Dialer if you have an Android) to make free calls home to the US, even to landlines if need be.