The present invention is directed to mobile devices and applications therefor. More particularly, the invention is directed to methods and systems for managing multiple types of applications in such mobile devices.
The increasing popularity of handheld mobile devices, such as mobile phones, personal digital assistants (PDA), and the like, coupled with advances in wireless networking technologies, is enabling new classes of mobile applications. For example, field force industries that heretofore captured information on paper-based forms may now record the information (manually and/or automatically) in electronic forms using applications on their mobile devices. It is also possible for organizations to define and deploy their own mobile device applications and forms as well as any business processes associated therewith. An example of a method and system for defining and deploying mobile device forms, applications, business processes, and the like, is described in U.S. Published Patent Application No. US2006161646, entitled “POLICY-DRIVEN MOBILE FORMS APPLICATIONS,” filed Jan. 18, 2006, assigned to TrueContext Corp. of Ottawa, Canada. The forms, applications, business processes, and so forth, may then be provided to the mobile device users through a managed service provider (“MSP”) hosted environment.
In existing mobile devices, however, management of the various mobile applications, electronic forms and data therein, and corresponding business processes, is largely a manual process. Typically, mobile users must personally monitor the status of any instance of electronic forms data (e.g., completed?, ready to be sent?, etc.), track the different applications being used, perform any maintenance on such applications, and the like. Uploading the instances of electronic forms data and the information therein, for example, to a centralized database, or sharing the electronic form data with other mobile devices via the World Wide Web (“the web”), also must be done manually. Similarly, there is currently no way to automatically track updates to mobile applications, electronic forms and business processes, and to synchronize them with a back-end server. To the extent any of the above tasks may be automated, each software developer or software provider presently provides its own automation component that is applicable only to that software provider's applications, electronic forms and business processes. The result is an uncoordinated set of applications, electronic forms, and business processes on the mobile device that is inconvenient and burdensome to manage and contributes to inefficient use of time and mobile device computing resources.
Thus, despite recent advances, there is a need in mobile devices for a unified way to automatically manage multiple applications, multiple types of electronic forms, electronic forms data instances, business processes, and/or network services from different software providers. More particularly, there is a need in mobile devices to be able to allow mobile applications to automatically detect, monitor, and process electronic forms, electronic forms data instances, business processes, and/or network services from different software providers according to each provider's business processes, and the like.
The present invention is directed to methods and systems for managing multiple types of applications, electronic forms, electronic forms data instances, business processes, and/or network services from different software providers. The methods and systems of the invention allow organizations with a mobile workforce that relies on established business processes to automatically execute timely and secure exchange of information while providing easy to use, fast, accurate and flexible information capture capability in the field. As a result, these organizations and/or third-party providers may more easily optimize the design of mobile applications to better match existing corporate processes and forms in order to reflect existing business needs, preferred graphical user interfaces (GUI), processes and experiences on the mobile devices. Organizations and/or third-party providers may also build mobile applications that allow information to be automatically created and updated online and offline as well as synchronized or routed to another mobile device, an application server, web service, Software-as-a-Service (SaaS), database or website.
In general, in one aspect, the invention is directed to a method for managing mobile applications, electronic forms, data instances, business processes, and network services from multiple software providers in a mobile device. The method comprises executing a plurality of mobile applications on the mobile device, each mobile application operable with a different electronic form, electronic forms data instance, business process, and network service. The method also comprises storing context information for each mobile application, electronic form, electronic forms data instance, business process and network service on the mobile device, the context information being stored by a unified mobile resource contextualization engine. The method further comprises allowing the mobile applications to access the context information, wherein each mobile application is configured to automatically process a respective electronic form and electronic forms data instance according to a respective business process and network service using the context information.
In general, in another aspect, the invention is directed to a system for managing mobile applications, electronic forms, electronic forms data instances, business processes, and network services from multiple software providers in a mobile device. The system comprises at least one subsystem configured to execute a plurality of mobile applications on the mobile device, each mobile application operable with a different electronic form, electronic forms data instance, business process, and network service. The system also comprises at least one subsystem configured to store context information for each mobile application, electronic form, electronic forms data instance, business process and network service on the mobile device, the at least one subsystem including a unified mobile resource contextualization engine configured to store the context information. The system further comprises at least one subsystem configured to allow the mobile applications to access the context information, wherein each mobile application is configured to automatically process a respective electronic form and electronic forms data instance according to a respective business process and network service using the context information.
In general, in yet another aspect, the invention is directed to a computer-readable storage medium encoded with computer-readable instructions for managing mobile applications, electronic forms, electronic forms data instances, business processes, and network services from multiple software providers in a mobile device. The computer-readable instructions comprise instructions for causing the mobile device to execute a plurality of mobile applications on the mobile device, each mobile application operable with a different electronic form, electronic forms data instance, business process, and network service. The computer-readable instructions also comprise instructions for causing the mobile device to store context information for each mobile application, electronic form, electronic forms data instance, business process and network service on the mobile device using a unified mobile resource contextualization engine. The computer-readable instructions further comprise instructions for causing the mobile device to allow the mobile applications to access the context information, wherein each mobile application is configured to automatically process a respective electronic form and electronic forms data instance according to a respective business process and network service using the context information.
In general, in still another aspect, the invention is directed to method for managing mobile applications in a mobile device, the method comprising executing a plurality of mobile applications on the mobile device, each mobile application operable with a different electronic form. The method also comprises storing context information for each mobile application and electronic form on the mobile device, the context information being stored by a unified mobile resource contextualization engine. The method further comprises allowing the mobile applications to access the context information, wherein each mobile application is configured to automatically process a respective electronic form using the context information.
In general, in yet another aspect, the invention is directed to a method for managing mobile applications, electronic forms, data instances, business processes, and network services from multiple software providers in a mobile device. The method comprises storing context information for one or more of a mobile application, an electronic form, an electronic forms data instance, a business process and a network service, or any combination thereof, on the mobile device, the context information being stored by a unified mobile resource contextualization engine. The method also comprises executing the mobile applications on the mobile device, each mobile application operable with a different electronic form, electronic forms data instance, business process, and network service. The method further comprises allowing the mobile applications to access the context information, wherein each mobile application is configured to automatically process one or more of a respective electronic form and electronic forms data instance according to a respective business process and network service using the context information.
In general, in still another aspect, the invention is directed to a method for managing mobile applications, electronic forms, data instances, business processes, and network services from multiple software providers in a mobile device. The method comprises storing context information for one or more of a mobile application, an electronic form, an electronic forms data instance, a business process or a network service, or any combination thereof, on the mobile device, the context information being stored by a unified mobile resource contextualization engine. The method also comprises executing the mobile applications on the mobile device, each mobile application operable with a different electronic form, electronic forms data instance, business process, and network service. The method further comprises allowing the mobile applications to access the context information, wherein each mobile application is configured to automatically process one or more of a respective electronic form and electronic forms data instance according to a respective business process and network service using the context information.
In general, in yet another aspect, the invention is directed to a method for managing mobile applications, electronic forms, data instances, business processes, and network services from multiple software providers in a mobile device. The method comprises storing context information on the mobile device, the context information being stored by a unified mobile resource contextualization engine, and executing a mobile application on the mobile device. The method further comprises allowing the mobile application to access the context information, wherein the mobile application is configured to automatically process one or more of a respective electronic form and electronic forms data instance according to a respective business process and network service using the context information.
In the following detailed description of preferred embodiments and other embodiments of the invention, reference is made to the accompanying drawings. Those of ordinary skill in the art will readily see that other embodiments and changes may be made without departing from the scope of the invention.
As alluded to previously, mobile device applications are increasingly supporting multiple means of manually and automatically capturing or updating information through different interfaces and methods. Managing this information and providing a flexible, secure framework for working with online and offline content in a mobile device is important to improving the productivity and effectiveness of mobile field personnel and mobile application solutions. Embodiments of the invention satisfy the above needs by providing field personnel (or their mobile devices) with a way to securely synchronize and connect with corresponding business systems, such as application servers, web services, SaaS, databases and websites, both online and offline. Thus, captured information may be shared with other mobile devices, exposed over the web, orchestrated and/or organized for integration to legacy back-end systems, databases, applications and other hosted services and applications. This includes tracking the state of the business processes in which the information is being shared.
In some embodiments, the invention accomplishes the above by allowing mobile devices to be aware of and use context information for various mobile applications, electronic forms, and business processes running thereon. As used herein, the term “context information” refers to information that characterizes the capabilities and requirements of each application, electronic form data instance and business process. Such context information may include, for example, which electronic forms are to be used with which software applications and/or which network services, and whether the applications and services reside in the mobile device and/or on an application server, web service, SaaS, database and website, both online and offline. Context information may also include the status of each electronic forms instance and its business process; for example, whether and when the form is to be sent back to the application server, web service, database, and so forth. Context information may additionally include supporting files for applications, electronic forms, and business processes (e.g., company logos and other image files, help files, business policies and rules, configuration files, etc.). Furthermore, configurations of an application, electronic form, or business process that have been applied by a user to make the forms solution more suitable to the user's requirements may also be included in context information. Other examples of context information may include times, dates, schedules, and/or conditions for synchronizing each electronic form data instance with the application server, web service, database, and so forth, where applicable. In some embodiments, the context information may also include a listing of any errors that may have occurred during execution of the mobile applications.
Referring now to
As can be seen in
In the illustrative embodiment of
A managed service provider 106 provides the mobile device 102 with the various electronic forms and supporting services and files and, in some instances, the mobile applications corresponding to the electronic forms. The managed service provider 106 typically provides the electronic forms and/or mobile applications to the mobile device 102 over a network 108 (e.g., the Internet) via a suitable wireless connection 110 (e.g., a cellular link). Examples of services that may be provided by the managed service provider 106 include mXForms, mXDocs, and/or mExperience available from TrueContext Corp. of Ottawa, Canada and other similar services.
In accordance with embodiments of the invention, the managed service provider 106 may also provide the mobile device 102 with context information for the electronic forms. Such context information may then be used by the mobile applications and related network services to automatically detect, monitor, and process the electronic forms. This arrangement offers a unified way in the mobile device 102 to manage multiple types of electronic forms from different organizations and/or third-party providers without having to deploy a separate automation component for each provider on the mobile device 102. Furthermore, the organizations and/or third-party providers may be confident that any business processes they have defined will be complied with based on the application of the context information.
In general, the controller 200 is responsible for the overall operation of the mobile device 102, including execution of various software programs thereon, such as the mobile device operating system (“OS”) and mobile applications. The display unit 202 is generally responsible for rendering all images and text on the mobile device 102, including any electronic forms used on the mobile device 102. The input/output unit 204 is responsible for receiving and translating information received by the mobile device 102 into electrical signals that can be stored in or otherwise associated with the electronic forms. The memory unit 206, which may include any temporary and/or long-term computer-readable storage medium, provides storage for software programs and information (or the computer-readable equivalent thereof) that may be used by the mobile device 102. The transceiver unit 208 is responsible for sending and receiving signals to/from the mobile device 102 from/to the network 108 (see
As for the wireless connection 110 (represented in
In accordance with embodiments of the invention, a unified mobile resource contextualization engine 210 may be stored in the memory 206 for automatically managing mobile applications, electronic forms, electronic forms data instances, business processes, and/or network services from multiple software providers on the mobile device 102. The mobile resource contextualization engine 210 allows the mobile device 102 to be aware of and use context information for each application, electronic form, electronic forms data instance, business process, and/or network service. Specifically, the mobile resource contextualization engine 210 allows mobile applications to automatically detect, monitor, and process each electronic form using the context information for that electronic form and enables data sharing and network services as dictated by the business processes. Such an arrangement helps ensure that the mobile applications running on the mobile device 102 and the various electronic forms therefor comply with established business processes, and the like.
In the embodiment of
In general, the device context engine 300 is responsible for accessing or discovering and communicating (i.e., exchanging information) with all information capture resources available on the mobile device 102. Such information capture resources may include, but are not limited to, mobile device integrated and non-integrated information capture and input peripherals (e.g., camera, GPS, scanner, magnetic card reader, RFID readers, etc.). The device context engine 300 thereafter makes these information capture resources available as needed to the various mobile applications running on the mobile device 102.
The network context engine 302 is responsible for accessing or discovering and communicating with network services 318 that are available to the mobile device 102 over the network 108. Such network services 318 may comprise subscription-based services as well as usage-base services and may include, for example, SIP, SMTP, SMS, location mapping, call conferencing, and the like, depending on the information capture resources available on the mobile device 102. These network services 318 preferably have a mobile service contextualization component 320 that generates and provides context information to the mobile device 102 for the various mobile applications and network services 318. Preferably, each network service 318 also has a security component 322 for controlling access to the network services 318. Such access control may be implemented, for example, via a password protection scheme, an encryption scheme, biometric input, and the like. A network awareness component 322 of the network services 318 facilitates discovery of the network services 318 by the mobile device 102.
The mobile context registry 304 maintains a registry or listing of all electronic forms, electronic forms data instances, the mobile applications associated with each electronic form and data instance, business processes, and/or the network services 318 to be used with each, mobile application, electronic form, and data instance. Such a mobile context registry 304 may reside locally on the mobile device 102 or it may be available remotely over the network 108 (e.g., from the manage service provider 106). As new information capture resources, electronic forms, data instances, business processes, and/or network services become 318 available to the mobile device 102, they may also be registered or listed on the mobile context registry 304.
The extensible API 306 allows mobile applications and network services 316 to access, use, modify, and/or add to the extensible context information 308 on the mobile device 102. This extensible context information 308 is a historical store of all context information and events linked to the registry 304 of applications, electronic forms, electronic forms data instances, and network services. The extensible API 306 may also allow the mobile applications and network services 318 to access the integrated and non-integrated resources of the mobile device 102, including any information capture resources that may be available on the mobile device 102.
Finally, the subscription and call notification interface 310 allows the mobile applications running on the mobile device 102 to receive updates for the mobile applications, electronic forms, electronic forms data instances, business processes, and/or network services 318, and to subscribe to changes in context information for such mobile applications, electronic forms, electronic forms data instances, business processes, and/or network services 318.
Referring now to
In the embodiment of
Also present is a network connectivity module 412 that comprises a gateway communication module 414 for managing communication for the mobile device 102 over any suitable network (e.g., TCP, dual IPv4 & v6, UDP, HTTP, WAP, etc.). The network connectivity module 412 further comprises a notification module 416 and a server messaging module 418 that together serve to notify any mobile application running on the mobile device 102 whenever new captured information is available for a given mobile application. A data compression module 420 provides information compression and decompression services for the mobile applications, including compressing captured information prior to transmitting the information to its destination (e.g., database, web service, SaaS, etc.). Finally, a network awareness module 422 discovers which network services 318 (see
Other modules that may be included in the mobile resource contextualization engine 210 comprise a mobile forms management module 428 and a mobile device management module 430. The mobile forms management module 428 may in turn comprise an application manager (AppManager) 432 for managing the various electronic forms used by the mobile device 102, a forms record manager (DI Manager) 434 that tracks the information captured as electronic forms data instances, and a validation component (DI Validation) 436 that validates the structure and format of the captured information according to business process rules and policies. One illustrative example of such a mobile forms management module 428 is mXForms developed by TrueContext Corp. of Ottawa Canada. The mobile device management module 430 may comprise a configuration module 438 that manages configuration settings for the mobile device 102, individual applications, electronic forms, data instances and/or business processes that can be configured by the user of the mobile device 102 or be pre-configured by the managed service provider 106 (see
A logging, business activity monitoring (BAM) and auditing module 450 provides a framework for capturing a historical log of all activities and events on the mobile device 102 that can be used to capture information used by the diagnostic module 440, as well as to provide an audit trail captured by the logging, business activity monitoring (BAM) and auditing module 450, and log business process events and state changes in order to compile statistics about business activity on the mobile device 102. A bootstrap engine 452 may be used to provision (e.g., Over-the-Air, cradle, etc.) and remotely upgrade any component of the mobile resource contextualization engine 210 either in real time or according to a predetermined schedule. A content broker 454 may be used as persistent storage for J2ME/MIDP based devices that allows large content size and several different record sizes in order to scale multiple record management system (RMS).
Thus far, embodiments of the invention have been described in terms of specific functional components and modules. Following now is a description of a method or guide for providing context information awareness and usage in a mobile device. As with the functional components and modules, it should be noted that while the method comprises a series of individual steps, two or more steps may be combined into a single step, and any step may be divided into several sub-steps, without departing from the scope of the invention. In addition, one or more steps may be added to or removed from the method as needed without departing from the scope of the invention. Moreover, although the steps of the method are shown in a particular order, those having ordinary skill in the art will understand that the invention is not to be limited thereto, and that alternative sequences for the steps may certainly be implemented without departing from the scope of the invention.
Referring to
If not done so already, at step 508, a user has the option of subscribing to one or more of the available network services. Context information for the mobile applications, electronic forms, data instances, business processes, and/or network services may then be received from the network services and stored in the mobile device at step 510. Thereafter, the mobile device allows the mobile applications to use the context information at step 512 to automatically detect, monitor, and process the electronic forms and electronic forms data instances according to the business processes defined by the software provider using one of the network services. At step 514, updates to the applications, electronic forms, electronic forms data instances, business processes, network services and/or context information are received by the mobile device from the network services. In some embodiments, access to the context information may be limited to authorize mobile applications only at optional step 516.
This application expressly incorporates by reference in their entirety the following U.S. patent applications: “Method and System for Customizing a Mobile Application Using a Web-Based Interface,” by Mitch A. Brisebois, Brant Drummond, Arjun Mehta, Marc Chéné, and Mark Flannigan, assigned 60/880,170, “Methods and System for Orchestrating Services and Data Sharing on Mobile Devices,” by Marc Chéné, Liam Peyton, Kevin McGuire, and Brant Drummond, assigned 60/880,328, and “Real Time Reports and Dashboards from Aggregated Mobile Data,” by Mitch A. Brisebois, Arjun Mehta, Kevin McGuire, and Cyril Soga, assigned 60/880,176, each of which is being filed concurrently herewith on Jan. 12, 2007, and each of which is assigned to or under obligation of assignment to TrueContext Corp. of Ottawa, Canada.
This application also expressly incorporates herein by reference in their entirety the following published U.S. patent applications: U.S. Published Patent Application No. US2006161646, entitled “Policy-Driven Mobile Forms Applications,” filed Jan. 18, 2006, U.S. Published Patent Application No. US20060080397, entitled “Content Management Across Shared, Mobile File Systems,” filed Apr. 13, 2006, and U.S. Published Patent Application No. US20060089938, entitled “Distributed Scalable Policy Based Content Management,” filed Oct. 8, 2004, all of which are assigned to TrueContext Corp. of Ottawa, Canada.
This application further expressly incorporates herein by reference in its entirety International Publication No. WO2004013782A1, entitled “Contextual Computing System,” published Feb. 12, 2004, and assigned to TrueContext Corp. of Ottawa, Canada.
While the presently disclosed concepts have been described with reference to one or more particular embodiments, those skilled in the art will recognize that many changes may be made thereto without departing from the spirit and scope of the presently disclosed concepts. Any combination and/or sub-combination of the examples, embodiments, aspects, claims, methods, acts, processes, claim elements, or components disclosed herein, however termed, are expressly contemplated as falling within the present concepts. For example, although various aspects of the present concepts are set forth in the appended claims, wherein the dependent claims relate back to selected preceding claims, including the independent claim, it is to be understood that each of the dependent claims may properly depend from any of the preceding claims, to the extent not logically excluded, in accord with aspects of the present concepts. Thus, for example, the present concepts expressly include every possible combination of dependent claims with their respective independent claim, regardless of stated dependency. Further, the presently disclosed concepts are considered to include, without limitation, any combination and/or sub-combination of the disclosed examples, embodiments, aspects, claims, methods, acts, processes, claim elements, or components disclosed herein with the examples, embodiments, aspects, claims, methods, acts, processes, claim elements, or components disclosed in the references and applications incorporated by reference herein.
This application is a U.S. national stage filing of International Application No. PCT/IB2008/000055 filed Jan. 11, 2008 and this application claims priority to the International Application No. PCT/IB2008/000055, filed Jan. 11, 2008 and U.S. Provisional Application No. 60/884,785, filed Jan. 12, 2007 to the same inventors and hereby incorporates by reference those applications in their entirety.
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/IB2008/000055 | 1/11/2008 | WO | 00 | 7/9/2009 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2008/084387 | 7/17/2008 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
7062258 | Sini et al. | Jun 2006 | B1 |
7072956 | Parupudi et al. | Jul 2006 | B2 |
20030158753 | Bernston et al. | Aug 2003 | A1 |
20040001476 | Islam et al. | Jan 2004 | A1 |
20040078373 | Ghoneimy et al. | Apr 2004 | A1 |
20050027784 | Fusari | Feb 2005 | A1 |
20050084105 | Fusari et al. | Apr 2005 | A1 |
20050137908 | Fusari et al. | Jun 2005 | A1 |
20050165790 | Seliger et al. | Jul 2005 | A1 |
20060059556 | Royer | Mar 2006 | A1 |
20060148528 | Jung et al. | Jul 2006 | A1 |
20060161646 | Chene et al. | Jul 2006 | A1 |
20060179404 | Yolleck et al. | Aug 2006 | A1 |
20070050359 | Anderson | Mar 2007 | A1 |
20070197260 | Randall et al. | Aug 2007 | A1 |
20070288468 | Sundaresan et al. | Dec 2007 | A1 |
20080065586 | James | Mar 2008 | A1 |
20080133670 | O'Neill et al. | Jun 2008 | A1 |
20100146046 | Fusari | Jun 2010 | A1 |
Number | Date | Country |
---|---|---|
1503604 | Feb 2005 | EP |
Entry |
---|
International Search Report mailed Jun. 25, 2008 which issued in corresponding International Patent Application No. PCT/IB2008/000055 (3 pages). |
Written Opinion mailed Feb. 13, 2012 which issued in corresponding International Patent Application No. PCT/IB2008/000055 (4 pages). |
Number | Date | Country | |
---|---|---|---|
20090300110 A1 | Dec 2009 | US |
Number | Date | Country | |
---|---|---|---|
60884785 | Jan 2007 | US |