One of the features of the Moocall Breedmanager app are the Smart Lists that keep track of which cows are In Calf, In Heat, Cycling or Inseminated.
While you do enter the date a cow has one of these 'events', the app also keeps track of when it should move into another list.
For example, lets say you marked your cow down as Inseminated. If after a month you look back, that cow will no longer in the Inseminated list, the system will assume she is In Calf, and move her into another list accordingly.
As well as the automatic list management, you can manually manage your cows too. When your cow is marked as inseminated you can swipe left to mark her as assumed in calf or swipe right to mark a heat detected.