There are two concepts here:
Case For HTTPSession: lets say you have a variable called var_one
and you want to access var_one
within a session across multiple managed beans (irrespective of whether they are session scoped or not), then you need to use HTTPSession to store this variable.
Case Session Scoped Managed bean: Incase you need to manipulate this var_one
variable only within one specific session scoped managed bean, then you can directly keep it in this bean and use it through out the session.