A mechanism accurately determines the time at which an observation value obtained from a control target has actually appeared. A controller performs a control operation associated with a control target. The controller includes a communication interface that electrically connects at least one function unit to the controller through a data transmission path, a writing unit that writes an observation value obtained through the function unit into a database, and a delay obtaining unit that obtains a delay time taken from when a signal indicating an observation value is input into the function unit to when data representing the observation value becomes usable in the controller, and stores information indicating the obtained delay time.