A txn is generated by a back_end_actor or blockchain_listener and executed in a state_machine_actor to update the state.
A txn is the only outside trigger that's able to change the state. In other words, all state changes are triggered by txn(s).
Alice sends 10T to Bob. This is a transfer txn. Every 1000 blocks, we run a clean up of the blockchain storage. This is a blockchain_listener triggered txn. It looks like a cron job. If the blockchain notices a new TApp is created, then it performs a generate tapp account task. Although this is also a blockchain_listener triggered txn, it's not considered to be like a cron job.
A txn can be successfully executed or failed. If it's successful, it may or may not change the state. But if it's failed, it will definitely NOT change the state.
There are no partially successful txns. They're either fully successful or totally failed.