IP Library Granted Patent US 12,450,039
Granted Patent B2
US 12,450,039 · App. 18/336,013 · Granted Oct 21, 2025

Extending application lifecycle management to user-created application platform components

Inventors: Marcio Costa, Jr. (Kirkland, WA); Emma Chantal Oberstein (Brooklyn, NY); Vinay Singh (Redmond, WA); Shannon Ronald Mcarthur (Snohomish, WA)
Assignee: Microsoft Technology Licensing, LLC.
G06F8/433G06F8/447G06F8/457G06F8/70
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,450,039
App. No.
18/336,013
Granted
Oct 21, 2025
Kind
B2
Abstract

The examples described herein extend application lifecycle management (ALM) processes (e.g., create, update, delete, retrieve, import, export, uninstall, publish) to user-created application platform components. First and second components are generated within an application platform. The first component is customized at least by indicating whether the first component is subject to localization, defining a layering of the first component, and indicating whether the first component is protected from downstream modification. The second component is customized in accordance with customizing the first component, and is further customized by defining a dependency of the second component on the first component. The components are deployed in a target environment with metadata representing the customizations and enabling the ALM processes.

Claims (62)

1. A system for application lifecycle management, the system comprising:

a processor; and

a computer storage medium storing instructions that are operative upon execution by the processor to:

generate a first component within an application platform;

enable a user to customize the first component via a user interface (UI), wherein first metadata for the customized first component comprises:

an indication whether the first component is protected from downstream modification, and

an indication whether the first component is subject to localization;

generate a second component;

enable the user to customize, via the UI, the second component in accordance with customizing the first component, wherein second metadata for the customized second component comprises:

a dependency of the second component on the first component;

deploy, in a target environment, the first component and the second component with the first metadata representing the customized first component and the second metadata representing the customized second component; and

at least one of:

prevent uninstalling of the first component when the second component remains installed and the dependency of the second component on the first component remains, or

permit uninstalling of the first component when the second component is uninstalled or the dependency of the second component on the first component does not remain.

2. The system of claim 1 , wherein enabling the user to customize at least one of the first component or the second component via the UI comprises displaying a selection window.

3. The system of claim 1 , wherein enabling the user to customize the first component via the UI comprises displaying a selection window that enables the user to declare a field as localizable.

4. The system of claim 1 , wherein enabling the user to customize at least one of the first component or the second component via the UI comprises displaying a selection window that enables the user to declare at least one of the first component or the second component as eligible for soft delete.

5. The system of claim 1 , wherein enabling the user to customize the second component via the UI comprises displaying a selection window that enables the user to declare that the second component is dependent on the first component.

6. The system of claim 1 , wherein the instructions are further operative to:

create extensibility points for application lifecycle management operations, the application lifecycle management operations comprising create, update, delete, retrieve, import, export, uninstall, and publish.

7. The system of claim 1 , wherein the instructions are further operative to:

receive a selection of whether the first component is exportable via the UI; and

receive a selection of whether the second component is exportable vi the UI.

8. A method of application lifecycle management, the method comprising:

generating a first component within an application platform;

enabling a user to customize the first component via a user interface (UI), wherein first metadata for the customized first component comprises:

an indication whether the first component is protected from downstream modification, and

an indication whether the first component is subject to localization;

generating a second component;

enabling the user to customize, via the UI, the second component in accordance with customizing the first component, wherein second metadata for the customized second component comprises:

a dependency of the second component on the first component;

deploying, in a target environment, the first component and the second component with the first metadata representing the customized first component and the second metadata representing the customized second component; and

at least one of:

preventing uninstalling of the first component when the second component remains installed and the dependency of the second component on the first component remains, or

permitting uninstalling of the first component when the second component is uninstalled or the dependency of the second component on the first component does not remain.

9. The method of claim 8 , wherein enabling the user to customize at least one of the first component or the second component via the UI comprises displaying a selection window.

10. The method of claim 8 , wherein enabling the user to customize the first component via the UI comprises displaying a selection window that enables the user to declare a field as localizable.

11. The method of claim 8 , wherein enabling the user to customize at least one of the first component or the second component via the UI comprises displaying a selection window that enables the user to declare at least one of the first component or the second component as eligible for soft delete.

12. The method of claim 8 , wherein enabling the user to customize the second component via the UI comprises displaying a selection window that enables the user to declare that the second component is dependent on the first component.

13. The method of claim 9 , further comprising:

exporting the first component;

importing the first component; and

upgrading the first component.

14. The method of claim 8 , wherein generating the first component and generating the second component comprises generating both the first component and the second component without writing code.

15. The method of claim 8 , further comprising:

creating extensibility points for application lifecycle management operations, the application lifecycle management operations comprising create, update, delete, retrieve, import, export, uninstall, and publish.

16. A computer storage medium having computer-executable instructions stored thereon, which, on execution by a processor, cause the processor to perform operations comprising:

generating a first component within an application platform;

enabling a user to customize the first component via a user interface (UI), wherein first metadata for the customized first component comprises:

an indication whether the first component is protected from downstream modification, and

an indication whether the first component is subject to localization;

generating a second component;

enabling the user to customize, via the UI, the second component in accordance with customizing the first component, wherein second metadata for the customized second component comprises:

a dependency of the second component on the first component;

deploying, in a target environment, the first component and the second component with the first metadata representing the customized first component and the second metadata representing the customized second component; and

at least one of:

preventing uninstalling of the first component when the second component remains installed and the dependency of the second component on the first component remains, or

permitting uninstalling of the first component when the second component is uninstalled or the dependency of the second component on the first component does not remain.

17. The computer storage medium of claim 16 , wherein enabling the user to customize at least one of the first component or the second component via the UI comprises displaying a selection window.

18. The computer storage medium of claim 16 , wherein enabling the user to customize the first component via the UI comprises displaying a selection window that enables the user to declare a field as localizable.

19. The computer storage medium of claim 16 , wherein enabling the user to customize at least one of the first component or the second component via the UI comprises displaying a selection window that enables the user to declare at least one of the first component or the second component as eligible for soft delete.

20. The computer storage medium of claim 16 , wherein enabling the user to customize the second component via the UI comprises displaying a selection window that enables the user to declare that the second component is dependent on the first component.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2023
From: COSTA, MARCIO, JR.; OBERSTEIN, EMMA CHANTAL; SINGH, VINAY; MCARTHUR, SHANNON RONALD
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 063968/0498 →
Continuity (2)
Continuation 17510368 · Oct 25, 2021
Related Publication 20230325158A1 · Oct 12, 2023
References Cited (12)
US 10503494B1 · Robinson · 2019 [cited by examiner]
US 11625229B1 · Rebh · 2023 [cited by examiner]
Udoh, Itorobong S., and Gerald Kotonya. “Developing IoT applications: challenges and frameworks.” IET Cyber-Physical Systems: Theory & Applications 3.2 (2018): 65-72. (Year: 2018). [cited by examiner]
“Application lifecycle management (ALM) with Microsoft Power Platform”, Retrieved from: https://learn.microsoft.com/en-us/power-platform/alm/, Retrieved Date: Jun. 1, 2021, 2021, 357 Pages. [cited by applicant]
Buck, et al., “Overview of application lifecycle management with Microsoft Power Platform”, Retrieved from: https://learn.microsoft.com/en-us/power-platform/alm/overview-alm, Apr. 11, 2023, 3 Pages. [cited by applicant]
Coulter, et al., “Solution concepts”, Retrieved from: https://learn.microsoft.com/en-us/power-platform/alm/solution-concepts-alm#managed-and-unmanaged-solutions, Jul. 29, 2022, 6 Pages. [cited by applicant]
Deore, et al., “Translate customized entity and field text into other languages”, Retrieved from: https://learn.microsoft.com/en-us/dynamics365/customerengagement/on-premises/customize/export-customized-entity-field-tex… [cited by applicant]
Jaiswal, et al., “Import data into Dynamics 365 Sales”, Retrieved from: https://learn.microsoft.com/en-us/dynamics365/sales/import-data?tabs=SESP, Mar. 30, 2022, 2 Pages. [cited by applicant]
Peart, et al., “Solution layers”, Retrieved from: https://learn.microsoft.com/en-us/power-platform/alm/solution-layers-alm, Feb. 15, 2022, 5 Pages. [cited by applicant]
Vivek, et al., “Define alternate keys for an entity”, Retrieved from: https://learn.microsoft.com/en-us/dynamics365/customerengagement/on-premises/developer/define-alternate-keys-entity?view=op-9-1, Feb. 16, 2022, 4 Pag… [cited by applicant]
Weatherby, et al., “Use the solution explorer to customize components”, Retrieved from: https://learn.microsoft.com/en-us/dynamics365/customerengagement/on-premises/customize/use-solution-explorer?view=op-9-1, Feb. 16, … [cited by applicant]
Deore, et al., “Overview of entity relationships and types”, Retrieved from: https://learn.microsoft.com/en-us/dynamics365/customerengagement/on-premises/customize/create-edit-entity-relationships?view=op-9-1, Feb. 26, … [cited by applicant]