1) This is offtopic for SO.
2) You´d enable version control for your ALM project, provided you have that option licensed. Then, all your ALM assets (including resources, but of course exluding defects) cannot be modified anymore without checking them out.
Changes to checked-out assets are visible to other users only after check-in.
QTP recognizes the version control being enabled, and behaves accordingly (requires (and supports) checkout before modify, and so on).
ALM combines this version control mechanism quite nicely with the release management module.
The negative point is that you have to answer a lot of modal dialogs, which kind of damages the workflow (every checkin and checkout is at least one modal dialog).