I used to have a game design rule which was 'Let the Player Cheat'. I've reversed myself. Back then, my feeling was, if the player wasn't enjoying himself, and wanted to skip on to the next bit, you should allow that. As a not-quite-perfect example, we were working on an RPG where the player could press a button to choose to have the AI play out the fight for him. Some people didn't like combat, we reasoned, and it would be nice for them to skip it. Guess what? We just amputated our game. If combat isn't fun, make it fun, don't make it skippable. When Id first made Doom they had a mode where you could continue to run and shoot in the overhead map mode. They found that people would use that mode because it was easier, even though it ruined the experience. They didn't make the same mistake we made; they took the ability away.
This becomes interesting when we start talking about save-games. Games that allow you to save your state anywhere can be considered to allow cheating. I don't believe this is always the case. For example, if you save your state in a chess game, lose, rewind moves and try again, you're not cheating; you're exploring the game-space. However, if you play a game of Kohan, save partway through, lose, and go back to your save game, you are cheating, because now you are playing with the benefit of knowledge of the other player's positions. Part of the Kohan game mechanic is that recon is important to strategy, and playing a saved game gives you the advantage of recon without the costs. An unfair advantage. Similarly, in a game of random outcomes (Civ, the Theft mode of Fallout), you can save the game, wage the battle or attempt the pickpocket, and restore if the outcome did not go the way you want. Again, an unfair advantage - the risk of losing the battle or the pickpocket attempt are part of the game and have been unfairly short-circuited.
How is waging a battle and reloading on loss cheating, but making a mistake in Chess and reloading 'exploring the gamespace'? You made a mistake - you didn't like the outcome - you start from before the mistake. (It's only if the outcome of the battle is random that it's different; part of the strategy of a game with randoms will lie in calculating odds, and if you can reload/try again every time you take a risk it makes your chances of success 100% and breaks the game. I've heard of people who play Civilization this way.) An obvious solution to this problem is persistent worlds. Whatever you do is part of the record, forever. You can start a new game, if you want, but you cannot undo previous mistakes.
Does that mean persistent worlds are superior? Or do savegames just allow a different type of gameplay? In any case - savegames are not equivalent to cheating. They are just another rule, and as in any other game that is sufficiently complex, you can choose to play the rules instead of the game. (MetaGaming?)
For me, the ability to save a game is essential to eliminating unnecessary repetition. For example, I've recently been playing "Brute Force" on the Xbox where you can save only at the end of a "mission". Each mission requires you to proceed through an area, eliminating a set of opponents (gathering goodies, exploring) and moving on. If you die before the end of the end of the mission you must repeat from the begining.
This is pretty standard for most games, but for me - once a sub-section has been solved/mastered, why repeat it to get to the next challenge? I detest having to repeat something already mastered, unless there is a fair bit of variability built in. However, I may be in a minority here. Certainly games like the Mario series exploits (purposefully or not) on the need to complete each section in its entirety to produce compulsive/addictive behaviour in the players.
Automatic checkpointing (ala Halo) is a good compromise if the checkpoints bracket subsections reasonably well.
-----