A battery management system, comprising: a memory configured to store a first Open Circuit Voltage, OCV, curve and a second OCV curve; a voltage sensor configured to measure a battery voltage which is a voltage across a battery; and a control circuit coupled to the memory and the voltage sensor, wherein the first OCV curve defines a first relationship between OCV and State Of Charge, SOC),of the battery during discharge of the battery, the second OCV curve defines a second relationship OCV and SOC of the battery during charge of the battery, the control circuit is configured to: interrupt a flow of current through the battery so that the battery is in a rest state when the control circuit (150 receives a key-off signal, and estimate a SOC of the battery at a predetermined time interval from a first time point to a second time point based on the battery voltage measured at the predetermined time interval and the first OCV curve in case that the battery is being discharged when the key-off signal is received, the first time point is a time point when a first standby time has passed since the key-off signal was received, and the second time point is a time point when a first shift time has passed since the key-off signal was received, the first shift time being longer than the first standby time, wherein the first standby time is an estimated time required until the rate at which the battery voltage rises equals a predetermined threshold rate from the start time of the rest state. a memory configured to store a first Open Circuit Voltage, OCV, curve and a second OCV curve; a voltage sensor configured to measure a battery voltage which is a voltage across a battery; and a control circuit coupled to the memory and the voltage sensor, wherein the first OCV curve defines a first relationship between OCV and State Of Charge, SOC),of the battery during discharge of the battery, the second OCV curve defines a second relationship OCV and SOC of the battery during charge of the battery, the control circuit is configured to: interrupt a flow of current through the battery so that the battery is in a rest state when the control circuit (150 receives a key-off signal, and estimate a SOC of the battery at a predetermined time interval from a first time point to a second time point based on the battery voltage measured at the predetermined time interval and the first OCV curve in case that the battery is being discharged when the key-off signal is received, the first time point is a time point when a first standby time has passed since the key-off signal was received, and the second time point is a time point when a first shift time has passed since the key-off signal was received, the first shift time being longer than the first standby time, wherein the first standby time is an estimated time required until the rate at which the battery voltage rises equals a predetermined threshold rate from the start time of the rest state. interrupt a flow of current through the battery so that the battery is in a rest state when the control circuit (150 receives a key-off signal, and estimate a SOC of the battery at a predetermined time interval from a first time point to a second time point based on the battery voltage measured at the predetermined time interval and the first OCV curve in case that the battery is being discharged when the key-off signal is received, the first time point is a time point when a first standby time has passed since the key-off signal was received, and the second time point is a time point when a first shift time has passed since the key-off signal was received, the first shift time being longer than the first standby time, wherein the first standby time is an estimated time required until the rate at which the battery voltage rises equals a predetermined threshold rate from the start time of the rest state.