Application Design Center overview

Application Design Center helps you design, share, and deploy Google Cloud application infrastructure. You can use App Design Center to design an application template, share with developers, deploy an instance, and evolve your design.

The App Design Center development process helps you create applications that implement the following:

  • Streamlined design and development.
  • Predictable, repeatable, and error-free deployments.

When to use App Design Center

App Design Center helps you achieve goals that are specific to your responsibilities, including the following:

  • Platform Administrators and Platform Engineers: Create spaces that are tailored to the needs of each development team. In each space, provide application templates that integrate your company governance rules.

  • Application Developers: Quickly customize and deploy applications. After you deploy, you can connect to your code repository to pull in client code or containers.

For example, you might use App Design Center to develop and evaluate a concept that addresses a business goal. Administrators can create an initial template, and refine it as they iterate. Developers can use the template to deploy the application to multiple environments.

You can use App Design Center to design and deploy the following application types:

  • Serving infrastructure
  • Containerized cloud-native
  • Generative AI

How to use App Design Center

You can design and deploy applications in App Design Center using the following:

  • Design canvas: Add application components to a canvas to create an application diagram. As you add components, get suggestions for additional components and possible connections.

The App Design Center workflow

Administrators and application developers work together to design and deploy applications in App Design Center using the following iterative workflow:

  1. Gather requirements and plan.
  2. Design, architect, and collaborate.
  3. Develop templates and guardrails.
  4. Test, debug, optimize, and deploy.
  5. Iterate.

App Design Center concepts

The following concepts help you understand how to use App Design Center.

Application template: An opinionated architecture

An application template is a deployable combination of services and workloads. Administrators can choose specific templates to share with each development team in the team's space.

As your business needs change, you can create and distribute template revisions. For example, you might add a memory store for caching to improve performance. When you update the template in the catalog, developers can update their deployed application to reflect the latest revision.

Components: Template building blocks

Components are Google opinionated building blocks built on best practices using security defaults. A component can be one of the following:

  • Assets: High-level resources that help you control other resources.

  • Services: Network or API interfaces that expose functionality that is consumed over the network.

  • Workloads: A binary deployment, such as a MIG deployment that performs a subset of business functionality.

Application instance: Customize and deploy from a template

You create an application instance from an application template. You can then deploy using one of the following methods:

Space: An area for team collaboration

A space is an exclusive area where a team creates templates and deploys applications. Templates and applications that you create in a space are only available in the space. An administrator can share templates with other spaces by adding them to a catalog and sharing the catalog with other spaces.

Administrators create a space and assign it to at least one team, where they have access to templates and application instances. You can create a space for each team or for each purpose.

Catalog: A sharable collection of templates

A catalog is a collection of application templates that you can share with multiple spaces. You can use the following catalog types:

  • Google catalog: a public catalog that contains application templates authored by Google using best practices.

  • Shared catalog: A catalog where you can add templates that you want to share with other spaces.

What's next