IMO, the forced disassociation is not the best method of handling roaming. Yes, it can work and there are many times when this can be a useful technique. But my preferred method of handling roaming is to tune the APs appropriately to encourage the clients to roam using their own internal algorithms. To do this, the key is proper power levels (often lower than you'd think) on each AP and non-overlapping channels for neighboring APs. A well tuned set of APs will make roaming almost seamless (provided the client has good algorithms). In contrast, forced disassociation can make the client experience less than optimal because it is not fully in control of the roaming process, and it is plausible that a client could end up in limbo if it is unable to stay connected (due to the force disconnects) to any/all available APs.