

# Standalone applications
<a name="standalone"></a>

In the following diagram, applications A and B are standalone mainframe applications. Each application consists of programs and subprograms that it uses exclusively.

 ![\[Standalone mainframe applications\]](http://docs.aws.amazon.com/prescriptive-guidance/latest/modernization-mainframe-decoupling-patterns/images/standalone.png) 

**Note**  
For simplicity, all the diagrams in this guide illustrate programs that are shared by two applications, and subprograms that are called by two programs. In a complex mainframe application, a program might be called by many applications, and subprograms might be called by many programs.

Because the applications are self-contained, you can group the COBOL programs and subprograms by application for code refactoring, as shown in the following diagram. 

 ![\[Standalone mainframe applications after migration\]](http://docs.aws.amazon.com/prescriptive-guidance/latest/modernization-mainframe-decoupling-patterns/images/standalone-post-migration.png) 

After grouping, you can migrate applications A and B in the same wave or in different waves. In either case, follow these steps:

1. For each application, package the refactored modern components and deploy them together into a runtime environment.

1. After migration, retire the on-premises mainframe applications and their components.