Medical software: the essential features