IP Library Granted Patent US 7,926,030
Granted Patent B1
US 7,926,030 · App. 11/540,509 · Granted Apr 12, 2011

Configurable software application

Assignee: Harmony Information Systems, Inc.
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 7,926,030
App. No.
11/540,509
Granted
Apr 12, 2011
Kind
B1
Abstract

A configurable software application is provided, where the software application may be designed on a platform including at least one configuration utility for enabling end users to customize various aspects of the application. For example, end users may use the configuration utility to customize one or more user interface elements, event handlers, data handlers, and/or data elements of the application. The software application may be automatically updated to incorporate the user customizations. In one implementation, custom user interface elements may be used to control a navigation of the application or an interaction with data elements of the application. In another implementation, custom data elements, based on a hierarchical metadata structure, may dictate an organization of the application. In another implementation, custom event handlers may control business logic and rules for the application, while custom data handlers may control interfacing with the data elements.

Claims (45)

1. A method for configuring a software application, comprising:

exposing a framework associated with a software application built on a service oriented architecture, wherein the software application includes one or more configuration utilities that expose the framework associated with the software application;

configuring the exposed framework associated the software application using the one or more configuration utilities, wherein configuring the exposed framework associated with the software application includes creating or extending one or more metadata records in a hierarchical metadata structure that controls the software application;

building a context container in response to an authenticated request associated with the software application, wherein the context container includes one or more pages configured with the one or more metadata records created or extended in the hierarchical metadata structure that controls the software application; and

displaying a populated user interface associated with the software application, wherein the populated user interface includes the one or more configured pages associated with the context container.

2. The method of claim 1 , wherein the context container further includes one or more page controls that define one or more data elements to display in the one or more configured pages.

3. The method of claim 2 , wherein building the context container includes binding the one or more page controls to data source configured to store, the one or more metadata records and retrieve the one or more data elements to display in the one or more configured pages.

4. The method of claim 2 , wherein the one or more metadata records created or extended in the hierarchical metadata structure control navigation among the one or more configured pages in the populated user interface and the one or more data elements displayed in the one or more configured pages.

5. The method of claim 2 , wherein the one or more metadata records created or extended in the hierarchical metadata structure control interaction with the one or more configured pages in the populated user interface and the one or more data elements displayed in the one or more configured pages.

6. The method of claim 2 , wherein configuring the exposed framework associated with the software application further includes creating or extending one or more data handlers that control interaction with the one or more configured pages in the populated user interface and the one or more data elements displayed in the one or more configured pages.

7. The method of claim 6 , wherein the one or more data handlers further control converting the one or more data elements into a format associated with the exposed framework.

8. The method of claim 2 , wherein configuring the exposed framework associated with the software application further includes creating or extending one or more event handlers that control one or more actions to initiate in response to one or more events associated with the software application.

9. The method of claim 2 , wherein the one or more metadata records created or extended in the hierarchical metadata structure assign a user associated with the authenticated request to one or more roles that are further assigned to one or more groups associated with the software application.

10. The method of claim 9 , wherein the hierarchical metadata structure contains the one or more data elements within the one or more configured pages, the one or more configured pages within one or more chapters, and the one or more chapters within the one or more groups.

11. The method of claim 10 , wherein the hierarchical metadata structure contains the one or more data elements at a lowest level and the one or more groups at a highest level.

12. A computer-readable storage medium having computer-executable instructions recorded thereon, wherein executing the computer-executable instructions on one or more processing devices causes the one or more processing devices to:

expose a framework associated with a software application built on a service oriented architecture, wherein the software application includes one or more configuration utilities that expose the framework associated with the software application;

configure the exposed framework associated the software application using the one or more configuration utilities, wherein the one or more configuration utility create or extend one or more metadata records in a hierarchical metadata structure that controls the software application to configure the exposed framework associated with the software application;

build a context container in response to an authenticated request associated with the software application, wherein the context container includes one or more pages configured with the one or more metadata records created or extended in the hierarchical metadata structure that controls the software application; and

display a populated user interface associated with the software application, wherein the populated user interface includes the one or more configured pages associated with the context container.

13. The computer-readable storage medium of claim 12 , wherein the context container further includes one or more page controls that define one or more data elements to display in the one or more configured pages.

14. The computer-readable storage medium of claim 13 , wherein to build the context container, the computer-executable instructions further cause the one or more processing devices to bind the one or more page controls to a data source configured to store the one or more metadata records and retrieve the one or more data elements to display in the one or more configured pages.

15. The computer-readable storage medium of claim 13 , wherein the one or more metadata records created or extended in the hierarchical metadata structure control navigation among the one or more configured pages in the populated user interface and the one or more data elements displayed in the one or more configured pages.

16. The computer-readable storage medium of claim 13 , wherein the one or more metadata records created or extended in the hierarchical metadata structure control interaction with the one or more configured pages in the populated user interface and the one or more data elements displayed in the one or more configured pages.

17. The computer-readable storage medium of claim 13 , wherein the one or more configuration utilities further create or extend one or more data handlers that control interaction with the one or more configured pages in the populated user interface and the one or more data elements displayed in the one or more configured pages to configure the exposed framework associated with the software application.

18. The computer-readable storage medium of claim 17 , wherein the one or more data handlers further control converting the one or more data elements into a format associated with the exposed framework.

19. The computer-readable storage medium of claim 13 , wherein the one or more configuration utilities further create or extend one or more event handlers that control one or more actions to initiate in response to one or more events associated with the software application to configure the exposed framework associated with the software application.

20. The computer-readable storage medium of claim 13 , wherein the one or more metadata records created or extended in the hierarchical metadata structure assign a user associated with the authenticated request to one or more roles that are further assigned to one or more groups associated with the software application.

21. The computer-readable storage medium of claim 20 , wherein the hierarchical metadata structure contains the one or more data elements within the one or more configured pages, the one or more configured pages within one or more chapters, and the one or more chapters within the one or more groups.

22. The computer-readable storage medium of claim 21 , wherein the hierarchical metadata structure contains the one or more data elements at a lowest level and the one or more groups at a highest level.

23. A system comprising at least one processor and a memory containing computer-executable instructions, wherein executing the computer-executable instructions on the at least one processor causes the at least one processor to:

expose a framework associated with a software application built on a service oriented architecture, wherein the software application includes one or more configuration utilities that expose the framework associated with the software application;

configure the exposed framework associated the software application using the one or more configuration utilities, wherein the one or more configuration utility create or extend one or more metadata records in a hierarchical metadata structure that controls the software application to configure the exposed framework associated with the software application;

build a context container in response to an authenticated request associated with the software application, wherein the context container includes one or more pages configured with the one or more metadata records created or extended in the hierarchical metadata structure that controls the software application; and

display a populated user interface associated with the software application, wherein the populated user interface includes the one or more configured pages associated with the context container.

24. The system of claim 23 , wherein the context container further includes one or more page controls that define one or more data elements to display in the one or more configured pages.

25. The system of claim 24 , wherein to build the context container, the computer-executable instructions further cause the at least one processor to bind the one or more page controls to a data source configured to store the one or more metadata records and retrieve the one or more data elements to display in the one or more configured pages.

26. The system of claim 24 , wherein the one or more metadata records created or extended in the hierarchical metadata structure control navigation among the one or more configured pages in the populated user interface and the one or more data elements displayed in the one or more configured pages.

27. The system of claim 24 , wherein the one or more metadata records created or extended in the hierarchical metadata structure control interaction with the one or more configured pages in the populated user interface and the one or more data elements displayed in the one or more configured pages.

28. The system of claim 24 , wherein the one or more configuration utilities further create or extend one or more data handlers that control interaction with the one or more configured pages in the populated user interface and the one or more data elements displayed in the one or more configured pages to configure the exposed framework associated with the software application.

29. The system of claim 28 , wherein the one or more data handlers further control converting the one or more data elements into a format associated with the exposed framework.

30. The system of claim 24 , wherein the one or more configuration utilities further create or extend one or more event handlers that control one or more actions to initiate in response to one or more events associated with the software application to configure the exposed framework associated with the software application.

31. The system of claim 24 , wherein the one or more metadata records created or extended in the hierarchical metadata structure assign a user associated with the authenticated request to one or more roles that are further assigned to one or more groups associated with the software application.

32. The system of claim 31 , wherein the hierarchical metadata structure contains the one or more data elements within the one or more configured pages, the one or more configured pages within one or more chapters, and the one or more chapters within the one or more groups.

33. The system of claim 32 , wherein the hierarchical metadata structure contains the one or more data elements at a lowest level and the one or more groups at a highest level.

Assignments (19)
NOTICE OF SUCCESSOR AGENT AND ASSIGNMENT OF SECURITY INTEREST (INTELLECTUAL PROPERTY) Recorded Oct 15, 2024
From: ARES CAPITAL CORPORATION, AS PREDECESSOR AGENT
To: ALTER DOMUS (US) LLC, AS SUCCESSOR AGENT
Reel/Frame 069175/0138 →
RELEASE OF SECURITY INTEREST Recorded Mar 18, 2021
From: BANK OF AMERICA, N.A., AS AGENT
To: WELLSKY HUMAN & SOCIAL SERVICES, INC.
Reel/Frame 055634/0526 →
SECURITY INTEREST Recorded Mar 16, 2021
From: WELLSKY CORPORATION; WELLSKY HUMAN & SOCIAL SERVICES CORPORATION; WELL SKY HOME HEALTH & HOSPICE CORPORATION; CLEARCARE, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 055608/0633 →
SECURITY INTEREST Recorded Mar 11, 2021
From: WELLSKY HUMAN & SOCIAL SERVICES CORPORATION; WELLSKY HOME HEALTH & HOSPICE CORPORATION; CLEARCARE, INC.
To: ARES CAPITAL CORPORATION, AS COLLATERAL AGENT
Reel/Frame 055564/0354 →
RELEASE OF SECURITY INTEREST Recorded Mar 10, 2021
From: CORTLAND CAPITAL MARKET SERVICES LLC
To: WELLSKY HUMAN & SOCIAL SERVICES, INC.
Reel/Frame 055551/0695 →
CHANGE OF NAME Recorded Nov 13, 2018
From: MEDIWARE HUMAN & SOCIAL SERVICES, INC.
To: WELLSKY HUMAN & SOCIAL SERVICES CORPORATION
Reel/Frame 047510/0020 →
SECURITY INTEREST Recorded Feb 22, 2017
From: MEDIWARE HUMAN & SOCIAL SERVICES, INC., AS GRANTOR
To: CORTLAND CAPITAL MARKET SERVICES LLC, AS COLLATERAL AGENT
Reel/Frame 041343/0646 →
FIRST LIEN SECURITY AGREEMENT Recorded Feb 10, 2017
From: MEDIWARE HUMAN & SOCIAL SERVICES, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 041675/0029 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS RECORDED AT REEL 040183, FRAME 0158 Recorded Feb 9, 2017
From: SUNTRUST BANK, AS COLLATERAL AGENT
To: MEDIWARE HUMAN & SOCIAL SERVICES, INC.
Reel/Frame 041670/0737 →
PATENT SECURITY AGREEMENT Recorded Sep 29, 2016
From: MEDIWARE HUMAN & SOCIAL SERVICES, INC.
To: SUNTRUST BANK, AS COLLATERAL AGENT
Reel/Frame 040183/0158 →
RELEASE AND TERMINATION OF SECURITY INTEREST IN PATENTS, AS RECORDED ON REEL 033125 / FRAME 0466 Recorded Sep 28, 2016
From: TPG SPECIALTY LENDING, INC., AS COLLATERAL AGENT
To: MEDIWARE HUMAN & SOCIAL SERVICES, INC., F/K/A HARMONY INFORMATION SYSTEMS, INC.
Reel/Frame 040173/0389 →
CHANGE OF NAME Recorded Sep 26, 2016
From: HARMONY INFORMATION SYSTEMS, INC.
To: MEDIWARE HUMAN & SOCIAL SERVICES, INC.
Reel/Frame 040149/0543 →
RELEASE OF SECURITY INTEREST Recorded Jun 12, 2014
From: WF FUND IV LIMITED PARTNERSHIP, AS SUCCESSOR IN INTEREST TO WF FUND III LIMITED PARTNERSHIP (CARRYING ON BUSINESS AS WELLINGTON FINANCIAL LP AND WELLINGTON FINANCIAL FUND III)
To: HARMONY INFORMATION SYSTEMS, INC.
Reel/Frame 033134/0738 →
SECURITY INTEREST Recorded Jun 11, 2014
From: HARMONY INFORMATION SYSTEMS, INC.
To: TPG SPECIALTY LENDING, INC.
Reel/Frame 033125/0466 →
RELEASE OF SECURITY INTEREST Recorded Jun 10, 2014
From: COMERICA BANK
To: HARMONY INFORMATION SYSTEMS, INC.
Reel/Frame 033115/0718 →
SECURITY AGREEMENT Recorded Mar 15, 2012
From: HARMONY INFORMATION SYSTEMS, INC.
To: WF FUND III LIMITED PARTNERSHIP
Reel/Frame 027870/0439 →
SECURITY AGREEMENT Recorded Feb 27, 2012
From: HARMONY INFORMATION SYSTEMS, INC.
To: COMERICA BANK
Reel/Frame 027765/0655 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 26, 2006
From: HARMON, TONYA JOY
To: HARMONY INFORMATION SYSTEMS, INC.
Reel/Frame 018715/0037 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 3, 2006
From: HARMON, TONYA
To: HARMONY INFORMATION SYSTEMS, INC.
Reel/Frame 018477/0641 →
Continuity (1)
Provisional Application 60722013 · Sep 30, 2005