I'd really appreciate if any of you can tell me how it should be done in websphere 6.
For WAS6 it completely depends on your server settings.
There are two you should look at. Both, I believe, can be found from double clicking on the server in RAD/WSAD, not from the admin console. One controls deployment method, whether they are run in place or exported as EAR files, the other controls hot deployment whether or not changes made from within the workspace should be immediately reloaded.
Also it depends how you're changing the EAR. Any change to EJB contracts is pretty significant due to RMIC regeneration. Other changes, for example just to a bean file itself, can load much faster. One thing you want to watch is the System.out when you make a change. It should explicitly have "Start/Stop" messags if WAS restarted the EAR.
My personal preference is to ALWAYS restart the server. I do break this rule when the changes are small enough but lets just say WAS6 can screw up at hot deployment. Actually let me go back a step and say WAS6 can screw up just about anywhere, good luck to you.