Properties and Models of Software Agents and Agent Systems