Minor Plot hole: Captain Colter Stevens can communicate with the army inside the Source Code with his thoughts transferred into words on a computer screen. He has no voice and no one can hear him. But later on in the film, Dr. Rutledge talks with him from the other side of the computer without being able to read any of his thoughts. Oops!
Major Plot hole: Colter needs to identify a train bomber in order to facilitate the police agencies in their quest to stop the mad man in his future attack. This brings an important conclusion: The bomber LEAVES the train. Otherwise, if he was dead, he could not make threats of exploding another bomb somewhere else.
Colter spends most of the movie interrogating people who STAYED on the train and died with everyone else. Obviously, anyone who stays in the train after the last stop is not the bomber. Stevens is introduced as a very clever man, why would he lose so much time being suspicious of people who were going to die because of the explosion ?
Major Plot hole: Even if the Source Code is revealed to create parallel realities that can be shaped by Captain Stevens, Dr. Rutledge doesn’t know about it at first and thinks it can only allow a person to relive the last 8 minutes of someone’s else life. If that is the case, it means Colter would be static in the memory of Sean Fentress and would not be able to do stuff that did not happen the first time, such as leaving the train or finding the bomb in the bathroom.
The problem is not that Colter actually moved around freely in those ‘memories’ but the fact that Dr. Rutledge assumed he could do it in the first place since he is the one who actively told him to search for the bomb.
Plot contrivance: Derek Frost, the train bomber, is shown to be a psychopath that only wanted to destroy society. But then, why would he contact the authorities to tell when and where he would strike next ? Usually those threats are used as leverage for demands, but he had no demands, he just wanted the bomb to explode. Why would he contact any authority? And if he didn’t contact them, how did they find out ?
Unaddressed Issue: In the new alternate reality, Colter’s mind takes over Sean Fentress’s body: seemingly killing him. Even if the movie ended on a cute scene with both Colter and Christina walking hands in hands, it did not show the future problems that Colter would have to face, mainly the fact that he will not recognize any of Sean’s friends, family members and coworkers or remember anything from them at all. He sure will be an interesting fellow when he will be drunk in social events telling his military feats to people who could swear he never enrolled in the army.