software selection criteria