Product
An Application is the essential Resource of the ARM. It defines which components are included in the application-design, which external Dependencies are needed to enrich the application-design and how the application serves it's capability to the public.
Create an Application
Application's are owned by a team, that is fully accountable and responsible for all aspects of their product's lifecycle, incl. development, testing, operation and updates. In the ODJ application is strongly isolated and lives in a Zero Trust micro-perimeter like the Architecture Runtime Model defines it.
To create the product, do the following steps:
In the Team, click "Add Application".
Immediately after that in the Select your product pattern dialog, select the Pattern that suits you the most.
Comparison of the Product Patterns
- Developer Environment
- Runtime Environment
- Components
- Service Catalog
| Advanced | Basic |
---|---|---|
Code Repository | ||
Git Project | ✅ | ✅ |
Pipeline | ||
Pipeline Project | ✅ | ✅ |
Provided Deployment Project | ✅ | |
Integrated Deployment to Runtime | ✅ | |
Static Code Analysis | ||
Static Code Analysis Project | ✅ | ✅ |
Integration into Pipeline | ✅ | |
Service connection setup | ✅ | |
Technical User | ✅ | ✅ |
Dependency Scanner | ||
Dependency Scanner Project | ✅ | ✅ |
Integration into Pipeline | ✅ | |
Service connection setup | ✅ | |
Technical User | ✅ | ✅ |
Artifact Repository | ||
Artifact Repositories | ✅ | ✅ |
Integration into Pipeline | ✅ | |
Service connection setup | ✅ | |
Technical User | ✅ | ✅ |
| Advanced | Basic |
---|---|---|
Hyperscaler project setup | ✅ | ✅ |
Prod & Non-Prod environments | ✅ | ✅ |
(S)IAM integration | ✅ | ✅ |
Network setup | ✅ | |
Load Balancers | ✅ | |
DNS automation | ✅ | |
TLS automation | ✅ | |
Component runtime (K8s, ...) | ✅ | |
Staging support | ✅ | |
Provider status | ✅ |
| Advanced | Basic |
---|---|---|
General usage (CRUD) | ✅ | ✅ |
Typing | ✅ | |
Deployment automation | ✅ | |
Dependency management | ✅ |
| Advanced | Basic |
---|---|---|
Hyperscaler PaaS integration | ✅ | |
Service exposure | ✅ |
After that you have to provide all the mandatory input fields in the dialog
The dialog to create an application looks 100% similar in both product patterns. There is no difference between the patterns regarding application creation.
The fields of an application are:
- Name:* a name freely chosen by you.
- Unique ID:* a unique ID that makes it easy to identify the application. Note: This ID must be held short and a human-readable identifier because it will be used in technical names of the underlying infrastructure. It includes: Project names for cloud providers Names, keys and role names for developer tools like Azure DevOps, Artifactory, SonarQube, Snyk, etc.
- Description: a short description that describes the application.
The Contact Person Section with it's fields Name and Email are prefilled with the data's of the current user, who creates the application
Create a Runtime Environment
After you added your product, you can create a Runtime Environment for it.