The first of two goals came in the 77th minute when Andrea Pirlo found the top corner.
The other was scored by Antonio Cassano, who made a fine one-two with Federico Gattuso for the first goal.
Juventus’ lead at 1-0, the Italian champions were without the injured Giorgio Chiellini, but with several key players available.
They had to start from zero, and it wasn’t going to be easy.
“It was a hard game to play against Juventus,” said Roma defender Federico Giaccherini, who had been one of Roma’s best performers.
Giaccherini was replaced by Matteo Gennaro, who was the best player in the Roma side.
Roma had two good chances in the first half, but neither of them was a real threat.
Their best opportunity came when they were denied by a fine save from Andrea Dossena.
But the Bianconeri’s first real chance came when Matteo Cattaneo was forced into a great save from the offside trap.
Andrea Gennari and Matteo Lotti both had chances but could not find the back of the net.
In the second half, Roma got the better of the two Juventus sides, but the home side held on for the win.
Bologna were very well organised and dominated the possession.
Giaccherino was one of the key players for Juventus, but he was unable to do anything more than to provide a solid cover for Pirlou and Giorgi.
Dossena was outstanding, though, making two saves.
For his efforts, he earned a red card and the first yellow card of the night.
It was the first red card of his career.
Next up for Roma, they face Udinese on Sunday.
[Inter] Rome are unbeaten in Serie A so far this season, with three wins and two draws from their opening five games.
Giorgio Barzagli and Marco Verratti are Juventus’ only goalscorers, while Andrea Pizzi, Federico Insigne, Giorgio Locatelli, Matteo De Sciglio, Marco Borriello, Alessandro Del Piero and Sergio Lichtsteiner are the other substitutes.
Follow @Eddie_Lezama on Twitter for more Juventus news.