Cook the pasta according to the directions on the package, drain and set aside. Before you drain it, reserve about a cup of the cooking water and set aside.
Heat the olive oil in a large pan over medium high heat.
Add the sausage and cook for about two minutes per side or until lightly browned.
Add the onion and cook for an additional three to four minutes.
Add the garlic and cook for one minute or until fragrant.
Add the diced tomatoes bring to a simmer.
Turn the heat down to medium low, cover and cook for ten minutes. You don't want the liquid to evaporate, so be sure to cover it.
Turn the heat down to low and add the butter. Stir to combine.
Add the pasta and toss until thoroughly coated, adding the Parmesan cheese a little at a time. Add some of the reserved pasta water if needed.
Taste adjust the salt and pepper to your liking before serving.
Serve with additional Parmesan cheese and fresh basil on top, if desired.