7 basic software marketing techniques