code: public static ProcessContext createRandomContext(Set<String> activities, int originatorCount, List<String> roles) {
                  Validate.notNull(activities);
                  Validate.noNullElements(activities);
                  Validate.notNegative(originatorCount);
                  Validate.notNull(roles);
                  Validate.noNullElements(roles);
  
                  ProcessContext newContext = new ProcessContext("Random Context");
                  newContext.setActivities(activities);
                  List<String> cOriginators = createSubjectList(originatorCount);
                  newContext.setSubjects(new HashSet<>(cOriginators));
                  //Create a new access control model.
                  newContext.setACModel(RBACModel.createRandomModel(cOriginators, activities, roles));
                  return newContext;
          }
docs: Creates a new context using an RBAC access control model.<br>
  Users and permissions to execute transactions are randomly assigned
  to the given roles.<br>
  Each person is assigned to exactly one role.
  
  @param activities The process activities.
  @param originatorCount The number of desired originators.
  @param roles The roles to use.
  @return A new randomly generated Context.