Looking at Bill James' Starting Pitcher Rankings at the end of the season, they'll tell you more or less what you saw -- James Shields was a problem for the White Sox in the second half, but the other four starters looked like a real rotation. Chris Sale and Jose Quintana had a couple burps down the stretch, but Carlos Rodon and Miguel Gonzalez finished with surges to balance it out.

On paper, the Sox are in good shape here if they decide to make a run at contending in 2017. Yet we've said that before after previous seasons, and this one isn't any different. Most teams struggle to field five good starters, so Shields isn't that big of a problem in and of himself. The bigger issue is depth. They don't have any automatic challengers for Shields' spot (although Carson Fulmer could become that compelling case), which is a problem since Rodon hasn't yet approached 200 innings himself (he hit 165 this year), and Gonzalez's groin is a repeat offender.

The solace is that they didn't have Gonzalez in the system until late March, so that depth can theoretically be acquired without putting a crimp on already limited resources. It just requires a little bit of blind faith, and that's already in short supply.

And then there's the ever-present flip side: If the White Sox are looking to rebuild, they have pitchers to deal. Let's take a look at where the White Sox starters finished in the rankings. If you're unfamiliar with the system, here's a primer from The Bill James Handbook:

The system is based on Game Scores. An average Game Score is 50; a really, really bad game is zero, and a fantastically good game is 100. 30% of the Game Score is added to the player's score every time he pitches, so that a pitcher picks up 15 points if he just has a decent, ordinary type game -- a borderline Quality Start, let's say. Each starting pitcher starts at 300 when he makes his first major league start (300.000), and a player can't go below 300.0, but with each start he also loses 3% of his previous score -- so, for example, if a pitcher racks up a "50" in his first major league start, his score goes from 300 to 306; 300, times .97, plus 50 times .30. As long as a pitcher pitches well, his score moves upward from 300. When he pitches poorly, his score moves down. There is more to the system than that, of course; this isn't the place to get into every detail. There are park adjustments, and a pitcher's score goes down if he doesn't start on schedule, and goes down more rapidly if he doesn't make a start for several weeks. The won-lost record doesn't play into it; pitching 7 innings with 2 runs in a win is the same as pitching 7 innings with 2 runs in a loss.



Pitchers ahead at the start of the season: Clayton Kershaw, Zack Greinke, Max Scherzer, Jake Arrieta, David Price, Madison Bumgarner.

Pitchers ahead now: Kershaw, Scherzer, Bumgarner, Corey Kluber, Jon Lester, Justin Verlander.

Observations: The starting pitcher rankings mirror the potential Cy Young conundrums. Four of the top five starting pitchers are in the National League, but the clear-cut favorite Kershaw took a hit because of missed time. The next clump of pitchers are in the AL, and Kluber, Verlander and Sale are all in the same 11-point neighborhood. It might be disappointing to see Sale gain no ground despite setting a new high in innings and starts, but per-start dominance is given its due here. Plus, there's no harm in holding seventh, especially since three big-name pitchers -- Price, Arrieta and Greinke -- slid behind Sale over the course of the season.

Jose Quintana



Started with: Chris Archer, Francisco Liriano.

Is now among: John Lackey, Archer.

Observations: Quintana fought his way into the top 20 this season, and was never a threat to lose that status at any point thanks to a season in which he set bests in innings (208), ERA (3.20) and strikeouts (181). He's good.



Started with: C.J. Wilson, Joe Kelly.

Is now among: Mike Leake, Robbie Ray.

Observations: Rodon missed time in July with a sprained wrist suffered from a fall in the dugout, and the DL stint and lackluster returns early contributed to that 24-spot drop between July and August. Over the last two months, he posted a 3.11 ERA with 70 strikeouts over his final 66⅔ innings, including an 11-strikeout performance against Cleveland, and that explains the 41-spot rally. He's got a full season under his belt against a league that knows his deal. Now give him a catcher who can handle him and let's see where he goes from here.



Started with: He wasn't on an MLB roster at the start of the season, but he finished the 2015 season at No. 79.

Is now among: Wei-Yin Chen, Kenta Maeda.

Observations: Like Rodon, Gonzalez's climb was interrupted by a DL stint -- a strained groin, in his case. He returned in September to throw four quality starts in five tries (2.76 ERA), two of which were outstanding. He finished his season with 8⅓ shutout innings against the Rays. Chen and Maeda are good company for a rotation's fourth pitcher.



Started with: Sonny Gray, Archer.

Is now among: Matt Moore, Marcus Stroman.

Observations: Conversely, Moore and Stroman don't tell you much about Shields since they came from the opposite direction, starting the season 161st and 152nd. Shields' 53-spot fall is difficult to match for pitchers who were theoretically healthy the entire season. Guys like Sonny Gray, Jordan Zimmermann, Matt Harvey and Tyson Ross lost anywhere from 58 to 92 points, but that's because they sat on the disabled list for large chunks of the season. For pitchers who didn't miss starts, only Edinson Volquez fell further (27th to 81st) ... but even then, Shields lost more points off his starting total (20.7 to 9.2).

The Royals have a $10 million option on Volquez, which they are expected to decline. The White Sox wish they could do the same with the $22 million remaining on Shields' deal, but they're left to hope that an offseason can clean the slate enough to enable a return to respectability.