# APM Setup

## Goal

Create the new application entry in **Application Portfolio Management (APM)**. APM is the internal source list of our company applications and must contain the app before later workflows, such as requesting a WiCOP server namespace, can reference it.

## Rules

- Control the browser carefully and fill only information that is known, provided by the user, or visible in APM.
- Do not click the final approval `Confirm` button until the user has reviewed the approval dialog and explicitly agrees to submit.

## Browser Actions

1. Open https://apm.wistron.com/ and let user sign in if needed.
2. Start a new record with `Create` button.
3. Fill the tabs from left to right using the sections below.
4. When a tab shows a checkmark/save icon after editing, click it before switching tabs.
5. If validation errors appear, fix only fields whose correct values are known. Ask the user for the rest.

## Tab 1 — Application Information

### Basic Information

Fill these fields:

| APM label                          | Action                                                  |
| ---------------------------------- | ------------------------------------------------------- |
| `Application Name`                 | Enter the user-provided application name in Title Case. |
| `Application English Abbreviation` | Use the same as `Application name` field.               |
| `Application English Name`         | Use the same as `Application name` field.               |
| `Application Chinese Name`         | Use the same as `Application name` field.               |
| `BCM Domain`                       | Ask user to provide business domain. Do not infer.      |
| `Application Description`          | Ask user to provide description.                        |
| `Initial On-line Date`             | Use APM's date picker and set end of curent month.      |

### HealthCheck

Click add icon and fill these fields:

| APM label | Action                                                                                                                                     |
| --------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
| `type`    | Search by employee ID or name, select the user-provided owner, and verify the owner appears in the table with job number, name, and email. |
| `url`     | Search by employee ID or name, select the user-provided owner, and verify the owner appears in the table with job number, name, and email. |

### Owner Information

| APM label           | Action               |
| ------------------- | -------------------- |
| `Application Owner` | Ask user to fill in. |

### Development Team Information

| APM label   | Action               |
| ----------- | -------------------- |
| `Developer` | Ask user to fill in. |

### Maintain Team Information

Copy the maintainers from development team. Keep the order!

| APM label    | Action                                           |
| ------------ | ------------------------------------------------ |
| `Maintainer` | Copy by searching `Job Number` from table above. |

## Tab 2 — Application Status

### Cloud Maturity

Fill or confirm these fields with the user:

| APM label                       | Action                                                                                                                                  |
| ------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| `Hosting Type`                  | Select the user-confirmed hosting type. For WiCOP deployment this may be `Private Cloud (Kubernetes)`, but still confirm with the user. |
| `Cloud Maturity Feasibility`    | Select the user-confirmed Yes/No value.                                                                                                 |
| `Cloud Maturity Plan Date`      | Enter/select the user-provided plan date.                                                                                               |
| `Postponed Cloud Maturity Date` | Leave unchanged unless the user provides a date.                                                                                        |
| `Cloud Maturity Date`           | Leave unchanged unless the user provides a date.                                                                                        |
| `Cloud Maturity Progress`       | Leave unchanged unless the user provides a progress value.                                                                              |
| `Cloud Maturity Remark`         | Leave unchanged unless the user provides a remark.                                                                                      |
| `Cloud Admin Remark`            | Read-only or admin-owned. Do not fill unless APM allows and the user provides the exact text.                                           |

### Database

The screenshot shows this table empty. Add database rows only if the user provides database details. Required row data may include `Database`, `Version`, and `Vendor`.

### Main Programming Language

The screenshot shows this table empty. Add programming language rows only if the user provides details. Required row data may include `Programming Language`, `Version`, `Status`, `Start Date`, `End Date`, and `Vendor`.

### Lifecycle

Only the `Lifecycle` heading is visible in the reference screenshot. Do not fill lifecycle data unless APM requires it or the user provides exact values.

## Tab 3 — Application Use Status

### Application User

Fill these fields:

| APM label | Action                                                                   |
| --------- | ------------------------------------------------------------------------ |
| `useSite` | Select the user-provided site. Example from screenshot: `WCZ`.           |
| `useBg`   | Select the user-provided business group. Example from screenshot: `ALL`. |

## Tab 4 — Application Complexity

No reference screenshot was provided for this tab. Open it and inspect whether APM requires any fields.

- If there are no required fields, leave the tab unchanged.
- If required fields exist, ask the user for each value before filling it.
- Do not infer complexity from the codebase or project template.

## Tab 5 — Information Security

### DevSecOps Information

Fill or confirm these fields with the user:

| APM label                                       | Action                                                                      |
| ----------------------------------------------- | --------------------------------------------------------------------------- |
| `SAMM Feasibility of Implementation`            | Select the user-confirmed Yes/No value. Example from screenshot: `No`.      |
| `DSOMM Feasibility of Implementation`           | Select the user-confirmed Yes/No value. Example from screenshot: `Yes`.     |
| `Implementation Completion Date`                | Enter/select the user-provided date. Example from screenshot: `2027-01-01`. |
| `DSOMM/SAMM Execution Progress`                 | Enter the user-provided progress. Example from screenshot: `0 %`.           |
| `Reasons for DSOMM/SAMM Implementation Failure` | Fill only if the user provides a reason or APM requires one.                |
| `Remarks`                                       | Fill only if the user provides remarks.                                     |
| `Internet Facing`                               | Select the user-confirmed Yes/No value. Example from screenshot: `No`.      |

### Division Lead

Fill `Division Lead` by searching for the user-provided employee ID or name. Verify the selected lead appears in the table with job number, name, and email.

### Information Security

Fill or confirm these fields with the user:

| APM label                         | Action                                                                                                                                                                                                                |
| --------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `Data Sensitivity`                | Select the user-confirmed Yes/No value. Example from screenshot: `No`.                                                                                                                                                |
| `Is CI/CD Implemented`            | Select the user-confirmed Yes/No value. Example from screenshot: `Yes`.                                                                                                                                               |
| `Is WiCOP Resource Available`     | For a brand-new app created before the WiCOP namespace request, this is usually not available yet, but confirm with the user. If the user has an existing WiCOP resource, use the `Check` flow and verify the result. |
| `Is CMDB/ITSM Resource Available` | Confirm with the user. If they provide a resource name or identifier, enter it and click `Check`; otherwise leave as `No` or the APM default.                                                                         |

Do not create or guess WiCOP, CMDB, or ITSM resource identifiers.

## Tab 6 — Approval Status Inquiry

Fill `Approval` with the user-confirmed value. The reference screenshot shows `No`, but confirm before using that value.

## Tab 7 — Covering Enterprise Domain

This tab maps the application to Wistron's enterprise domain taxonomy. These values are business-specific and cannot be determined automatically.

### Add Cover Domain Row

1. Click the `+` button on the right side of the Cover Domain table.
2. In the `Edit` dialog, fill the fields from top to bottom using values supplied or selected by the user:

| Dialog label     | Action                                          |
| ---------------- | ----------------------------------------------- |
| `L0 Domain`      | Select the user-provided L0 domain.             |
| `L1 Subdomain`   | Select the user-provided L1 subdomain.          |
| `L2 Value Chain` | Select the user-provided L2 value chain.        |
| `L3 Activity`    | Select one or more user-provided L3 activities. |

3. Click `Confirm` in the dialog.
4. Verify the new row appears in the Cover Domain table.

The screenshot example shows `1 Manufacturing` → `1.5 Quality` → `1.5.17 Customer Quality Relationship` → `1.5.17.5 Disaster Emergency Measures And Status Reports`, but use those values only if the user explicitly selects or confirms them.

Use `Upload Excel file` only when the user provides a file path and asks to upload domain mappings from Excel.

## Tab 8 — Appendix

No reference screenshot was provided for this tab. Upload or fill appendix data only if the user provides attachments or exact values. Otherwise leave it unchanged.

## Tab 9 — Revised Record

This tab is expected to be historical/read-only. Review it only if needed. Do not edit anything unless APM exposes required fields and the user provides exact values.

## Tab 10 — Approval Record

This tab is expected to be historical/read-only. Review it only if needed. Do not edit anything unless APM exposes required fields and the user provides exact values.

## Send Approval Dialog

After all required tabs are complete and saved:

1. Click `Send Approval` in the top-right area of APM.
2. A dialog titled `Approval Content` opens. This dialog is not a tab.
3. Read the warning text: new application values are shown in black; modified existing application values are shown in red.
4. Scroll through the dialog and verify the summarized values against the user-provided data, especially:
   - basic application names and abbreviation;
   - BCM domain;
   - initial online date;
   - application description;
   - owner, development team, and maintain team;
   - cloud maturity values;
   - use site and use BG;
   - information security values;
   - covering enterprise domain taxonomy.
5. If anything is missing, wrong, or uncertain, click `Cancel`, return to the relevant tab, and fix it with user input.
6. Ask the user to confirm submission.
7. Only after the user explicitly agrees, click `Confirm` in the approval dialog.

## Completion

The step is complete when APM accepts the approval submission or the user confirms that the APM record has been saved for later submission. Record the generated `EA ID` if APM shows one after saving or submission.
