The best way to clean plaster in pools is largely dependent on how dirty the plaster surface is and what has caused the dirt. There are multiple ways of cleaning the plaster, from brushing to sanding to acid washing.
Use the stiff brush at least twice a week to scrub the sides and floor of pool. You don't need type of soap on the brush; the brushing action will do the cleaning. This will prevent many things from getting a foothold in your plaster, thereby greatly reducing your need to go into full-blown stain removal mode.
Apply a pile of granular chlorine to any stained spots in the plaster on the floor of a filled pool. This will help bleach any stains out. Use enough to completely cover the stain. Leave it in place until it naturally dissolves and dissipates.
For walls, your pool supply store will have a gel-type bleach specially designed to adhere to walls.
Sand any remaining stains with sandpaper.
Acid wash the pool if none of the above methods work. Drain the pool, scrub the walls with water, then pour a mixture of acid and water at a 50/50 ratio down the walls. Scrub the walls with the acid and rinse thoroughly with a garden hose. This method will remove a thin layer of plaster, leaving you with a new surface to start over with. To prevent future problems, scrub your walls and floor with a brush regularly.