A battery management system, comprising: a sensing unit configured to measure a current value and a voltage value and a temperature value of a battery under a discharge condition of the battery; and a main controller unit, MCU, configured to receive the current, voltage and temperature values and further configured to manage capacities of the battery based at least in part on the current, voltage and temperature values, wherein the MCU includes an unusable capacity calculating unit configured to calculate an unusable capacity corresponding to a portion of a theoretical maximum capacity of the battery that is unusable under the discharge condition, wherein the unusable capacity is calculated based at least in part on the current value and an internal resistance value of the battery under the discharge condition; wherein the MCU further includes an internal resistance calculating unit to calculate the internal resistance value of the battery under the discharge condition based on: a temperature correction variable, wherein the temperature correction variable denotes relation data between temperature and internal resistance, and a reference internal resistance value, wherein the reference internal resistance is calculated using: an open-circuit voltage estimated using a state of charge of the battery at an arbitrary point in the region where the depth of discharge, DoD, of the battery is in the range 0 to 0.7; current and voltage values measured at the arbitrary point; and a value of the temperature correction variable calculated using a temperature value measured at the arbitrary point. a sensing unit configured to measure a current value and a voltage value and a temperature value of a battery under a discharge condition of the battery; and a main controller unit, MCU, configured to receive the current, voltage and temperature values and further configured to manage capacities of the battery based at least in part on the current, voltage and temperature values, wherein the MCU includes an unusable capacity calculating unit configured to calculate an unusable capacity corresponding to a portion of a theoretical maximum capacity of the battery that is unusable under the discharge condition, wherein the unusable capacity is calculated based at least in part on the current value and an internal resistance value of the battery under the discharge condition; wherein the MCU further includes an internal resistance calculating unit to calculate the internal resistance value of the battery under the discharge condition based on: a temperature correction variable, wherein the temperature correction variable denotes relation data between temperature and internal resistance, and a reference internal resistance value, wherein the reference internal resistance is calculated using: an open-circuit voltage estimated using a state of charge of the battery at an arbitrary point in the region where the depth of discharge, DoD, of the battery is in the range 0 to 0.7; current and voltage values measured at the arbitrary point; and a value of the temperature correction variable calculated using a temperature value measured at the arbitrary point. a temperature correction variable, wherein the temperature correction variable denotes relation data between temperature and internal resistance, and a reference internal resistance value, wherein the reference internal resistance is calculated using: an open-circuit voltage estimated using a state of charge of the battery at an arbitrary point in the region where the depth of discharge, DoD, of the battery is in the range 0 to 0.7; current and voltage values measured at the arbitrary point; and a value of the temperature correction variable calculated using a temperature value measured at the arbitrary point.