US2023058197A1PendingUtilityA1

Distributed software development pipeline for coherent graphical user interface

Assignee: CIGNA INTELLECTUAL PROPERTY INCPriority: Oct 5, 2018Filed: Oct 24, 2022Published: Feb 23, 2023
Est. expiryOct 5, 2038(~12.2 yrs left)· nominal 20-yr term from priority
G06F 8/36G06F 9/44505G06F 8/65G06F 8/38
55
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A computer system includes memory and at least one processor. The memory stores a codebase, multiple reusable software modules, and computer-executable instructions. The codebase includes an application class extension, an activity class extension, a module base definition class, and a theme. The instructions include creating a software application using the application class extension and the theme from the codebase, registering at least one of the multiple reusable software modules to the software application, and configuring the software application to arrange navigation for each activity of each reusable software module registered to the software application, to present a same user experience throughout the software application. The instructions also include configuring the software application to automatically apply a same layout theme for each activity of each reusable software module registered to the software application, to present a same user experience throughout the software application.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A computer system, comprising:
 a memory component;   a communication component configured to connect to a communication network external to the computer system; transmit output data communications from the computer system via the communication network; and receive input data communications via the communication network; and   at least one processor, communicatively coupled to the memory component and the communication component, the at least one processor configured to:
 create a set of reusable software modules by extending a module base definition class from a codebase, wherein each reusable software module of the set is independently created and agnostic to a particular software application, and wherein each reusable software model defines a set of graphical user interface (GUI) aspects; 
 for each reusable software module, create at least one activity for the reusable software module using an activity class extension from the codebase, wherein the activity class extension provides a standardized layout and navigation handling that applies to all activities of all reusable software modules built from the activity class extension; 
 programmatically build the software application, by:
 registering a plurality of reusable software modules from the set to the software application; and 
 configuring navigation for each activity of each reusable software module registered to the software application; and 
 
 initialize the software application as a configuration file, wherein the initialization automatically applies a theme to each activity of each reusable software module registered to the software application, and wherein the application of the theme unifies the set of GUI aspects defined by each reusable software module of the plurality of reusable software modules registered to the software application to form a GUI of the software application. 
   
     
     
         2 . The computer system of  claim 1 , wherein the at least one processor is further configured to:
 update at least one of the plurality of reusable software modules, to generate an updated at least one reusable software module; and   in response to a previous version of the at least one reusable software module having been registered to the software application prior to updating the at least one reusable software module,
 register the updated at least one reusable software module. 
   
     
     
         3 . The computer system of  claim 2 , wherein the at least one processor is further configured to:
 maintain the previous version of the at least one reusable software module in the software application when the previous version of the at least one reusable software module had been registered to the software application prior to updating the at least one reusable software module.   
     
     
         4 . The computer system of  claim 2 , wherein the at least one of the plurality of reusable software modules comprises a general reusable software module from which at least one other reusable software module depends. 
     
     
         5 . The computer system of  claim 4 , wherein the at least one processor is further configured to:
 when registering the general reusable software module into the software application,
 remove the at least one other reusable software module from the software application. 
   
     
     
         6 . The computer system of  claim 1 , wherein the at least one processor is further configured to:
 create the set of reusable software modules by obtaining common UI and core services components from an operating system;   create the software application by creating login and authentication hooks using the obtained core services components; and   deploy the software application to a digital distribution platform.   
     
     
         7 . The computer system of  claim 1 , wherein the at least one processor is further configured to:
 prior to creating the set of reusable software modules,
 receive the module base definition class from the codebase of an integrated development environment, via the communication component, wherein the codebase includes an application class extension, the activity class extension, the module base definition class, and the theme. 
   
     
     
         8 . The computer system of  claim 7 , wherein the codebase further includes a fragment class extension; and
 wherein the application class extension, the activity class extension, and the fragment class extension comprise extensions of base application, activity and fragment classes of an operating system.   
     
     
         9 . The computer system of  claim 7 , wherein the at least one processor is further configured to:
 programmatically build the software application, by:
 registering the plurality of reusable software modules from the set to the software application using the application class extension; and 
 configuring the navigation for each activity of each reusable software module registered to the software application using the application class extension. 
   
     
     
         10 . The computer system of  claim 1 , wherein the at least one processor is further configured to:
 apply the theme by applying an application-wide override theme on top of a default theme for the at least one activity at startup of the at least one activity.   
     
     
         11 . A method, comprising:
 creating a set of reusable software modules by extending a module base definition class from a codebase, by at least one processor communicatively coupled to a memory component, wherein each reusable software module of the set is independently created and agnostic to a particular software application, and wherein each reusable software model defines a set of graphical user interface (GUI) aspects;   for each reusable software module, creating at least one activity for the reusable software module using an activity class extension from the codebase, by the at least one processor, wherein the activity class extension provides a standardized layout and navigation handling that applies to all activities of all reusable software modules built from the activity class extension;   programmatically building the software application, by:
 registering a plurality of reusable software modules from the set to the software application; and 
 configuring navigation for each activity of each reusable software module registered to the software application; and 
   initializing the software application as a configuration file, by the at least one processor, wherein the initialization automatically applies a theme to each activity of each reusable software module registered to the software application, and wherein the application of the theme unifies the set of GUI aspects defined by each reusable software module of the plurality of reusable software modules registered to the software application to form a GUI of the software application.   
     
     
         12 . The method of  claim 11 , further comprising:
 updating at least one of the plurality of reusable software modules, to generate an updated at least one reusable software module; and   in response to a previous version of the at least one reusable software module having been registered to the software application prior to updating the at least one reusable software module,
 registering the updated at least one reusable software module. 
   
     
     
         13 . The method of  claim 12 , further comprising:
 maintaining the previous version of the at least one reusable software module in the software application when the previous version of the at least one reusable software module had been registered to the software application prior to updating the at least one reusable software module.   
     
     
         14 . The method of  claim 11 , further comprising:
 creating the set of reusable software modules by obtaining common UI and core services components from an operating system;   creating the software application by creating login and authentication hooks using the obtained core services components; and   deploying the software application to a digital distribution platform.   
     
     
         15 . The method of  claim 11 , further comprising:
 applying the theme by applying an application-wide override theme on top of a default theme for the at least one activity at startup of the at least one activity,   wherein the codebase further includes a fragment class extension, and   wherein the application class extension, the activity class extension, and the fragment class extension comprise extensions of base application, activity and fragment classes of an operating system.   
     
     
         16 . The method of  claim 11 , further comprising:
 configuring the at least one activity to set a user interface for a screen of the at least one activity,   wherein content of the user interface is determined by the at least one activity, and   wherein arrangement of toolbars and navigation anchors of the user interface is determined by the software application.   
     
     
         17 . The method of  claim 11 , further comprising:
 creating at least one fragment for a respective reusable software module of the set using a fragment class extension from the codebase, the fragment class extension providing a standardized layout and navigation handling that applies to all fragments of all reusable software modules built from the fragment class extension; and   configuring the software application to arrange navigation for each fragment of each reusable software module registered to the software application, to present a same user experience throughout the software application,   wherein initializing the software application automatically applies the theme for each fragment of each reusable software module registered to the software application, to present a same user experience throughout the software application.   
     
     
         18 . The method of  claim 11 , further comprising:
 creating the set of reusable software modules by creating multiple reusable software modules, each reusable software module including at least one corresponding activity.   
     
     
         19 . A non-transitory, computer-readable medium having instructions thereon, which, when executed by a processor, perform a method comprising:
 receiving, from a codebase of an integrated development environment, a module base definition class, wherein the codebase includes an application class extension, an activity class extension, the module base definition class, and a theme;   creating a set of reusable software modules by extending the module base definition class, wherein each reusable software module of the set is independently created and agnostic to a particular software application, and wherein each reusable software model defines a set of graphical user interface (GUI) aspects;   for each reusable software module, creating at least one activity for the reusable software module using the activity class extension from the codebase, wherein the activity class extension provides a standardized layout and navigation handling that applies to all activities of all reusable software modules built from the activity class extension;   programmatically building the software application, including:
 registering, using the application class extension, a plurality of reusable software modules from the set to the software application; and 
 configuring, using the application class extension, navigation for each activity of each reusable software module registered to the software application; and 
   initializing the software application as a configuration file, wherein the initialization automatically applies the theme to each activity of each reusable software module registered to the software application, and wherein the application of the theme unifies the set of GUI aspects defined by each reusable software module of the plurality of reusable software modules registered to the software application to form a GUI of the software application.   
     
     
         20 . The non-transitory, computer-readable medium of  claim 19 , the method further comprising:
 creating the set of reusable software modules by obtaining common UI and core services components from an operating system;   creating the software application by creating login and authentication hooks using the obtained core services components;   applying the theme by applying an application-wide override theme on top of a default theme for the at least one activity at startup of the at least one activity, wherein the codebase further includes a fragment class extension, and wherein the application class extension, the activity class extension, and the fragment class extension comprise extensions of base application, activity and fragment classes of an operating system; and   deploying the software application to a digital distribution platform.

Join the waitlist — get patent alerts

Track US2023058197A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.