Use Case Registry

The following 183 use cases are grouped by area. Click on the link icons in the tables below for more information about each use case.


Account Management

All computer systems need ways to identity the people who use them, limit/control their use, and ensure that community rules and expectations are honored.

Identity management describes how people identify themselves to applications and systems. Group management describes how people organize and name groups of individuals. Finally, Allocation management describes how a community authorizes and/or limits the use of community services by specific individuals or groups.

Group Management:

These use cases describe how individuals need to manage and use group definitions. In its simplest form, a group definition is a list of people that needs to be maintained and used for some ongoing purpose. Groups can be used to coordinate research teams (e.g., authorizing use of a resource), for communication (e.g., managing an email list), or for project management (e.g., task assignments).

(12 use cases)
Use Case ID Title Use Case Description CDP Start Date End Date
GRP-01 Researcher manages membership of a project group
GRP-02 Manually create a group
GRP-03 Manually view or manage the configuration or membership of a group
GRP-05 Invite members to a group
GRP-06 Request membership in a group
GRP-09 Synchronize an external group
GRP-10 Automate a group's configuration
GRP-12 Use groups to control access within a resource
GRP-14 Use a group to control access within an application
GRP-15 Use a group for task assignments within an application
GRP-16 Use a group for email distribution
GRP-17 Drive project membership with an email message

 

Identity Management:

These use cases describe how researchers, scientists, and other community members register themselves with computer systems, prove their identities when using applications, and manage their identity data (user profiles).

(15 use cases)
Use Case ID Title Use Case Description CDP Start Date End Date
IDM-01 Register with a community
IDM-02 Login to a community’s user portal with a community username and password
IDM-03 Change a community user profile
IDM-04 Login to a community’s user portal with an identity from another organization
IDM-05 Link or unlink an identity from another organization
IDM-06 Login to a web application or science gateway with a community identity
IDM-07 Login to a locally installed application with a community identity
IDM-08 Login to a locally installed application with an SSH/X.509 key
IDM-11 Use a community identity for InCommon authentication
IDM-12 Single sign-on across community OpenStack resources
IDM-13 Authenticate to a resource’s OpenStack API
IDM-14 SSH access using a community identity for education
IDM-15 Lookup affiliated institutions for a community identity
IDM-16 Obtain affiliated institutions when an individual logs in to a service
IDM-17 Obtain a high-assurance X.509 certificate

 

Allocation Management:

The use cases in this area describe ways a community manages access to its resources, including: project solicitations, proposal submissions, proposal reviews, and allocating resources to specific projects.

Research computers are powerful, but the demand to use them is larger than the capacity they offer. Access to these resources must be based on community priorities. The allocation system described in these use cases is used by the XSEDE system but is available to others as well. A central allocation system--one that researchers can use to request access to many resources--is important to ensure the easiest access by researchers.

(10 use cases)
Use Case ID Title Use Case Description CDP Start Date End Date
P2-01 Establish an Allocations Process
P2-02 Establish allocation review panel
P2-03 Add resources to allocations process
P2-04 Establish an allocation Submission Opportunity
P2-05 Submission of Allocation Request
P2-06 Manage review of Submissions to an Allocations Opportunity
P2-07 Submission of a Review
P2-08 Award or reject allocation request
P2-09 Allocation data reporting and access
P2-10 Customize allocation request data fields

 


Community Building

Community Building use cases describe how participation in research computing is being broadened beyond individual, highly focused (and often quite small) research projects.  These include offering services that can be used by a wider range of researchers (e.g., science gateways), helping research communities coordinate their own activities (e.g., research coordination), and providing opportunities for new service providers to offer their services to the research community (e.g., campus bridging, community infrastructure, and service provider integration).

Campus Bridging:

These use cases describe how campus information technology (IT) administrators and campus-based research projects: (a) treat external resources (other campuses or national providers) as extensions of their campus environments, (b) offer services at their campuses to others in the research community, and (c) deliver new services to their campuses leveraging the wider community's experiences and solutions.

(18 use cases)
Use Case ID Title Use Case Description CDP Start Date End Date
CB-01 InCommon-based Authentication
CB-02 Share the public research computing “environment” with campus resources
CB-03 Remote desktop services for researchers
CB-04 Access campus research data from a community resource
CB-05 Workflow automation combining community and campus resources
CB-06 Sharing computational facilities among campuses
CB-07 Support for commercial service providers
CB-08 Use a community login service with campus login servers
CB-09 Access a community data collection from campus
CB-10 Synchronize research data between campus and community resources
CB-11 Archive research data on a community resource
CB-12 Setup monitoring and usage reporting for a campus HPC resource
CB-13 Provide a simple interface to access any of the high-throughput computing queues available to a campus
CB-14 Submit tasks to any of the high-throughput computing queues available to a campus
CB-15 Develop an application or gateway that submits tasks to any of the high-throughput computing queues available to a campus
CB-16 Build a cluster using a community guide or toolkit
CB-17 Obtain a list of individuals at a specific campus who have allocations
CB-18 Obtain a list of individuals at a specific campus who have used science gateways

 

Community Infrastructure:

The public research computing environment should be open and extensible: a "community infrastructure." In order to use and participate in this environment, community members (researchers, application developers, service providers, campus IT administrators) must be able to access details about the system’s design, implementation status, and the driving user needs.

Note: In these use cases, the terms “service” and “service provider” are used broadly. Any of the following would be examples of “services” if they are shared with researchers: a computer system, a website or web-based application, a computer system with a specific software application installed for use, a high-capacity data storage device, a long-term data archiving service, a virtual machine (IaaS) host, a software repository, or an identity provider.

(17 use cases)
Use Case ID Title Use Case Description CDP Start Date End Date
CI-01 Access system information
CI-02 Manually publish system information
CI-03 Automate changes to system information
CI-04 Publish current and desired system capabilities, their availability, and their implementation status
CI-05 Discover current and desired system capabilities, their availability, and their implementation status
CI-06 Rate the priority or quality of a community need or contribution
CI-07 Discuss a community activity
CI-08 Conduct an engineering review of a community contribution
CI-09 Discover and inspect system capabilities currently under development
CI-10 Discover and review engineering documents for a specific capability or component
CI-11 Manage the source code, documentation, and installable packages for a capability
CI-12 Learn about a community
CI-13 Learn about a community's resources for researchers
CI-14 Learn how to provide services within a community
CI-15 Access a directory of people and groups within a community
CI-16 Publish batch hardware, configuration, and status information
CI-17 View usage data for community resources

 

OSG/LHC Integration:

These use cases describe how to make shared computing resources behave similarly to the Open Science Grid's (OSG's) Compute Elements (CEs) and Storage Elements (SEs), enabling them to be added to the set of services available to OSG Virtual Organizations (VOs). (Note: The Federation & Interoperation use cases resulted from generalizing these OSG/LHC-specific use cases.)

(6 use cases)
Use Case ID Title Use Case Description CDP Start Date End Date
FCI-01 VO authentication (myProxy services)
FCI-02 Pilot job submission (set up CE)
FCI-03 Software installation (CVMFS)
FCI-04 Data management (set up SE)
FCI-05 Set up full PanDA site (incl. DB access)
FCI-06 Use as ATLAS production site

 

Federation and Interoperability:

These use cases describe how scientific projects make use of resources from more than one public research computing community, and how a given community can support such projects. A public research computing community is an organized set of resources and processes that work together coherently to serve the needs of a community of researchers. Many such communities exist worldwide, such as XSEDE and PRACE. Each community has computing resources (e.g., an HPC cluster or an archival storage service) and a set of services that add value to the community’s resources (e.g., a community login service or a user support service).

Although each use case describes an activity that uses resources from multiple communities, the use cases themselves are written from the point of view of a single community. The goal is to express what a single community must offer to support the activity.

(4 use cases)
Use Case ID Title Use Case Description CDP Start Date End Date
FI-01 Conduct a high-throughput computing project using resources from multiple communities
FI-02 Supply an organization’s research information technology information to an aggregation service
FI-03 Build a research information technology discovery service that lists services from multiple organizations
FI-04 Discover research information technology offered by multiple organizations

 

Research Coordination:

Beyond supporting individual research projects, the research community can also serve as a gathering point for researchers who share common research topics or methods. The use cases in this area describe how researchers can organize themselves as research communities and coordinate their activities for the greater good.

(10 use cases)
Use Case ID Title Use Case Description CDP Start Date End Date
RC-01 Participate in a research discussion forum
RC-02 Manage usage within an allocation
RC-03 Install software on a resource for use by a research community
RC-04 Find where a specific application or service is available within the system
RC-05 Request a software installation
RC-06 Find a software container that will help set up a specific runtime environment
RC-07 Use a container to create a specific runtime environment on a resource
RC-08 Access a repository of files from a compute resource administered by a service provider
RC-09 Access a repository of files from a cloud resource administered by the researcher
RC-10 Create or modify the contents of a repository that will be accessed on many resources

 

Science Gateways:

These use cases describe how research communities use community computing resources to power their "science gateways," supporting the specialized needs of research fields, communities of practice, and joint initiatives. Science gateways are applications—most often web-based—that are used by groups of researchers with similar needs. Each gateway is developed and operated by one or more leaders in the research field who applies for an allocation to serve the community. Gateways can also help researchers who have their own allocations by providing a more customized, user-friendly interface.

(7 use cases)
Use Case ID Title Use Case Description CDP Start Date End Date
SGW-01 Acquire credentials that allow use of community resources
SGW-02 Transfer files to and from a community resource
SGW-03 Run an application on a community resource
SGW-04 Enable gateway users to transfer files to or from a community resource
SGW-05 Obtain information about a community resource
SGW-06 Estimate when a job submitted to a community resource is likely to finish
SGW-07 Retrieve user specific information using user credentials

 

Service Provider Integration:

These use cases describe how Service Providers (SPs) integrate their resources with a broader research computing community.

(18 use cases)
Use Case ID Title Use Case Description CDP Start Date End Date
SPI-01 Resource integration console
SPI-02 Guided resource discovery
SPI-03 View all resource information
SPI-04 Access resource information from an application
SPI-05 Active account information
SPI-06 Emergency account suspension
SPI-07 Enable a research community to install software on a resource
SPI-08 Register availability of a specific application or service for use
SPI-09 Test a system for vulnerabilities using an automated service
SPI-10 Obtain expert help with resolving a system vulnerability
SPI-11 Host a repository of files so it can be accessed on many resources and manually populated by authorized individuals
SPI-12 Host a repository of files so it can be accessed on many resources and automatically populated
SPI-13 Configure a service to use high-assurance X.509 certificates for user access
SPI-14 Report resource usage against allocations
SPI-15 Configure notifications regarding resource allocations and individual users
SPI-16 Scan a moderated service provider forum for a solution to a problem other SPs are likely to have had
SPI-17 Push an alert or information to resource users via a web interface
SPI-18 Offer a web interface for a community resource

 

Technical support:

Research computing usually involves advanced systems, applications, and methods. Technical support is necessary for researchers, students, and educators to make effective use of the services and resources available to the community and continuously advance the leading edge of what is possible.

(2 use cases)
Use Case ID Title Use Case Description CDP Start Date End Date
TS-03 Scan a moderated researcher forum for a solution to a problem other researcher are likely to have had
TS-04 Share a read-only view of a remote desktop session with someone else

 


Data Analysis (DA)

These use cases describe how scientists analyze large amounts of scientific data. The data is typically large in volume (larger than one would use on a personal or business computer), but is organized and stored in different ways for different kinds of research. Data might be generated by a single source (a large simulation, for example) or it might come from many sources (observational results from many different instruments or different research teams). The methods of analysis also vary from field to field and problem to problem.

Data Analysis:

These use cases describe how scientists analyze large amounts of scientific data. The data is typically large in volume (larger than one would use on a personal or business computer), but is organized and stored in different ways for different kinds of research. Data might be generated by a single source (a large simulation, for example) or it might come from many sources (observational results from many different instruments or different research teams). The methods of analysis also vary from field to field and problem to problem.

(7 use cases)
Use Case ID Title Use Case Description CDP Start Date End Date
DA-01 Discover data analysis resources and documentation
DA-02 Prepare data for analysis
DA-03 Analyze data from research instruments
DA-04 Analyze data generated by a simulation
DA-05 Steer a large computation while it runs
DA-06 Time-critical data analysis
DA-07 Run an interactive data science application using a community resource for back-end computation

 


Enabling Functions (CAN)

These are the “enabling functions” provided by the XSEDE system architecture. They are the common ingredients that enable XSEDE to satisfy the use cases in every other category. Each public research computing community has its own enabling use cases: some that overlap with XSEDE’s, others that are distinct characteristics of the community.

The purpose of enabling functions is to provide a common set of system-wide features that can be used when satisfying other use cases. Enabling functions arise from reviewing a large set of use cases from different types of community members and identifying the common features they share. For example, most use cases—whether from High-Performance Computing, Data Management, Campus Bridging, or Science Gateways—assume there’s a community-wide “login” feature that allows individuals to register, obtain credentials, and then use those credentials to login. Rather than design a custom login feature for every use case, we instead define an enabling function and assume most, if not all, use cases will use it.

XSEDE maintains descriptions of our enabling functions for several reasons. First, they support the introduction of new services from community members and partners by identifying features that must be carefully integrated in order to provide a smooth experience for XSEDE community members. Second, these descriptions allow XSEDE to consider new and better ways to provide each enabling function without unintentionally losing important features in the process. Finally, they support partnership and transition discussions by providing a basis for comparison with other systems.

Each of these enabling functions, with the exception of CAN-05, was originally written as an individual document during the XSEDE-1 project between 2012 and 2015 using a more technical format and terminology. These previous versions are linked in the References section.

(11 use cases)
Use Case ID Title Use Case Description CDP Start Date End Date
CAN-01 Run a remote job
CAN-02 Managed data transfer
CAN-03 Remote File Access
CAN-04 Open a command shell on a login server
CAN-05 Record and summarize the use of a service
CAN-06 Authenticate with an application
CAN-07 Subscribe to resource status information
CAN-08 Search for resource information
CAN-09 Establish and manage a community identity
CAN-11 Publish resource status updates
CAN-12 Update resource information

 


Scientific Computing

Scientific computing use cases describe how researchers access and use computing resources. Each category in this area (high-performance computing, high-throughput computing, cloud computing, and workflows) focuses on a type of computing resource used by researchers and the most common interactions with that resource type.

High Performance Computing:

These use cases describe the most common ways in which researchers use high-performance computing (HPC) resources. Each HPC resource is designed, constructed, and operated by a service provider (SP) organization, such as the Pittsburgh Supercomputing Center (PSC) or University of Michigan. An HPC resource may contribute services to one or more public research computing communities, such as XSEDE or Open Science Grid (OSG). 

These use cases focus on the experiences researchers in a given community have with the HPC resources in that community. Using an HPC resource is most often part of a larger research process, so these use cases also mention the community’s website and documentation, registration and account management services, allocation services, and tools to help move code and data into and out of individual HPC resources.

(8 use cases)
Use Case ID Title Use Case Description CDP Start Date End Date
HPC-01 Use a single HPC resource for a research project
HPC-02 Use two or more HPC resources for a research project
HPC-03 Use a workflow system to conduct a project on HPC resources
HPC-04 Submit jobs to a discounted job queue where they might be interrupted
HPC-05 Review performance metrics for one’s own use of a community resource
HPC-06 Submit and manage jobs on a community resource using a web-enabled device
HPC-07 Upload, download, and edit files on a community resource using a web-enabled device
HPC-08 Discover batch hardware, configuration, and status information

 

High Throughput Computing:

These use cases describe the most common ways that researchers use high-throughput computing (HTC) resources. Also known as "capacity computing," high-throughput computing allows researchers to run a very large number of modeling, simulation, or data analysis tasks in a short amount of time. The resources required by each task can be small (similar to what one could run on a basic computer) or very large (requiring more active memory or CPU cycles than "normal" computers provide). What makes HTC unique is the fact that many runs of the same application are required to complete a research project. HTC resources allow researchers to complete projects faster than they could if they were limited to the computers available in their own offices, labs, or research institutions.

Each HTC resource is designed, constructed, and operated by a service provider (SP) organization, such as the Pittsburgh Supercomputing Center (PSC) or University of Michigan. An HTC resource may contribute services to one or more public research computing communities, such as XSEDE or Open Science Grid (OSG). These use cases focus on the experiences researchers in a given community have with the HTC resources in that community. Using an HTC resource is most often part of a larger research process, so these use cases also mention the community’s website and documentation, registration and account management services, allocation services, and tools to help move applications and data into and out of individual HPC resources.

(3 use cases)
Use Case ID Title Use Case Description CDP Start Date End Date
HTC-01 Run a set of independent jobs on an HTC resource
HTC-02 Run a set of interrelated jobs on an HTC resource
HTC-04 Run a set of interrelated jobs on several HTC resources

 

Infrastructure-as-a-Service:

These use cases describe the ways in which researchers use Infrastructure-as-a-Service (IaaS or "cloud") computing resources. They include: how IaaS services are used by end users, how IaaS services are shared within a research community, and how application and science gateway developers can automate use of IaaS services via APIs.

(11 use cases)
Use Case ID Title Use Case Description CDP Start Date End Date
IAAS-01 Request to use an IaaS host for research
IAAS-02 Self-service acquire and use a virtual computer system
IAAS-03 Self-service acquire and use a hosted storage volume
IAAS-04 Request and use a virtual cluster
IAAS-05 Publish a virtual computer system or storage volume
IAAS-06 Discover a relevant computer system or storage volume
IAAS-07 Create an instance of a published computer system or storage volume
IAAS-08 Dynamically acquire and manage hosted computer systems and/or storage volumes
IAAS-09 Reliably acquire and manage hosted computer systems and/or storage volumes
IAAS-10 Add a science gateway operator to an API-enabled IaaS allocation
IAAS-11 Protect a virtual cluster by creating a bastion host

 

Scientific Workflows:

These use cases describe how researchers use workflow tools to automate complex research computing processes. There are at least two motivations for automation: first, to improve research productivity by freeing researchers from time-consuming tasks that can be automated; second, to make the research process reproducible, capturing and recording every step of the process so other researchers can inspect and validate the process behind the researcher’s conclusions.

Research computing processes are extremely diverse. Consequently, there are a variety of workflow tools in use. The public research computing community enables workflow tools by providing APIs for basic computing services, such as: job submission and management, data movement, and resource configuration and status information. Using these APIs, a workflow tool can automate the execution of a research computing process. Another important community function is coordinating the execution environments across resources: making them as similar as possible so individual research jobs can be run on a wider variety of computing resources.

(2 use cases)
Use Case ID Title Use Case Description CDP Start Date End Date
SW-01 Automate a project using a workflow manager
SW-03 Share an existing scientific workflow with other researchers

 


Scientific Data

Today's research increasingly relies on generating, collecting, organizing, and analyzing large amounts of data. Researchers often find themselves needing to work with more data than personal or laboratory computers are equipped to handle, and in some cases, the same scales used by large corporations and government agencies. Scientific Data use cases explain how researchers work with data, including analysis, data management, and data sharing.

Data Analysis:

These use cases describe how scientists analyze large amounts of scientific data. The data is typically large in volume (larger than one would use on a personal or business computer), but is organized and stored in different ways for different kinds of research. Data might be generated by a single source (a large simulation, for example) or it might come from many sources (observational results from many different instruments or different research teams). The methods of analysis also vary from field to field and problem to problem.

(7 use cases)
Use Case ID Title Use Case Description CDP Start Date End Date
DA-01 Discover data analysis resources and documentation
DA-02 Prepare data for analysis
DA-03 Analyze data from research instruments
DA-04 Analyze data generated by a simulation
DA-05 Steer a large computation while it runs
DA-06 Time-critical data analysis
DA-07 Run an interactive data science application using a community resource for back-end computation

 

Data Management:

These use cases describe how researchers manage collections of data for shared use or for their own re-use over time. The use cases range from a single research project managing and organizing its own data, to several related projects using each other's data, or to data being prepared for future use in applications that haven't been imagined yet.

(15 use cases)
Use Case ID Title Use Case Description CDP Start Date End Date
DM-01 Create and share a data collection
DM-02 Coordinated computing with a shared data collection
DM-03 Automate data ingestion from a set of sensors or instruments
DM-04 Migrate data to a new resource
DM-05 Manually create metadata for a data object
DM-06 Run a researcher-supplied tool to generate metadata for data objects
DM-07 Automatically extract metadata from data objects
DM-08 Store metadata for later use
DM-09 Search metadata for specific objects of interest
DM-10 Add metadata search features to an application
DM-11 Post-allocation data access
DM-12 Large-scale data transfer
DM-13 Small-scale data transfer
DM-14 Scrape public websites to gather data
DM-15 Transfer data between a researcher's cloud storage and a community storage system

 

Visualization:

These use cases describe the most common scientific data visualization methods. This is an evolving field of work, since the ability of desktop computers to visualize data is improving rapidly. But it is still common for researchers to need to visualize data at scales that exceed their local resources, requiring them to use high-performance and high-throughput computing resources to advance their work. Large-scale visualization resources must often be used remotely over a research network with the results shown on a local display.

Advanced visualization resources are designed, constructed, and operated by a service provider (SP) organization, such as the Texas Advanced Computing Center (TACC) or University of Utah. A visualization resource may be used in one or more public research computing communities, such as XSEDE or Open Science Grid (OSG).

(6 use cases)
Use Case ID Title Use Case Description CDP Start Date End Date
VIS-01 Visualize research data using streaming video
VIS-02 Visualize research data using streaming geometry data
VIS-03 Generate visualization data for later viewing
VIS-04 Visualize and steer a simulation running on a remote resource
VIS-05 Visualize a simulation as it runs on a remote resource
VIS-06 Visualize research data using a web application

 


Scientific Workflows (SW)

These use cases describe how researchers use workflow tools to automate complex research computing processes. There are at least two motivations for automation: first, to improve research productivity by freeing researchers from time-consuming tasks that can be automated; second, to make the research process reproducible, capturing and recording every step of the process so other researchers can inspect and validate the process behind the researcher’s conclusions.

Research computing processes are extremely diverse. Consequently, there are a variety of workflow tools in use. The public research computing community enables workflow tools by providing APIs for basic computing services, such as: job submission and management, data movement, and resource configuration and status information. Using these APIs, a workflow tool can automate the execution of a research computing process. Another important community function is coordinating the execution environments across resources: making them as similar as possible so individual research jobs can be run on a wider variety of computing resources.

(1 use cases)
Use Case ID Title Use Case Description CDP Start Date End Date
SW-03 Share an existing scientific workflow with other researchers