A driver state monitoring, DSM, system comprising: a sensing unit configured to sense biological information of a user of a vehicle; and a controller configured to: determine a drowsy state of the user based on the sensed biological information, determine a current condition of traffic; output information recommending rest based on the determined drowsy state of the user and the determined current condition of traffic, detect that the user is resting; monitor the traffic and the rest state of the user when the user is resting; generate a time to output an alarm based on monitoring the traffic and the rest state of the user; output the alarm at the generated time, wherein the controller is further configured to: determine an updated condition of the traffic, re-sense the user's biological information based on determining that the traffic has changed as a result of analysing the updated conditions of the traffic, determine a time for outputting the alarm based on the re-sensed biological information, and change the alarm output time based on the determined time for outputting the alarm. a sensing unit configured to sense biological information of a user of a vehicle; and a controller configured to: determine a drowsy state of the user based on the sensed biological information, determine a current condition of traffic; output information recommending rest based on the determined drowsy state of the user and the determined current condition of traffic, detect that the user is resting; monitor the traffic and the rest state of the user when the user is resting; generate a time to output an alarm based on monitoring the traffic and the rest state of the user; output the alarm at the generated time, wherein the controller is further configured to: determine an updated condition of the traffic, re-sense the user's biological information based on determining that the traffic has changed as a result of analysing the updated conditions of the traffic, determine a time for outputting the alarm based on the re-sensed biological information, and change the alarm output time based on the determined time for outputting the alarm. determine a drowsy state of the user based on the sensed biological information, determine a current condition of traffic; output information recommending rest based on the determined drowsy state of the user and the determined current condition of traffic, detect that the user is resting; monitor the traffic and the rest state of the user when the user is resting; generate a time to output an alarm based on monitoring the traffic and the rest state of the user; output the alarm at the generated time, wherein the controller is further configured to: determine an updated condition of the traffic, re-sense the user's biological information based on determining that the traffic has changed as a result of analysing the updated conditions of the traffic, determine a time for outputting the alarm based on the re-sensed biological information, and change the alarm output time based on the determined time for outputting the alarm. determine an updated condition of the traffic, re-sense the user's biological information based on determining that the traffic has changed as a result of analysing the updated conditions of the traffic, determine a time for outputting the alarm based on the re-sensed biological information, and change the alarm output time based on the determined time for outputting the alarm.