Application framework for reactive information propagation and planning for lifelike exercises
The present invention addresses the development of software applications for multiple domains and users. The application framework of the present invention includes a collection of mutually compatible software components, technologies and capabilities that can be assembled using object-oriented techniques to build custom software applications.
1. An application framework for computer-implemented development of custom software applications comprising:
a computer device having at least one non-transitory data storage medium and at least one processor operatively connected thereto, the at least one processor executing functions programmed into the following modules and sub-modules:
a scenario and maneuvering module configured for geospatial and visual planning, design, preparation, execution, monitoring, tracking, evaluation and analysis of multiple-spectrum training and operational scenarios, events and maneuvers, wherein the scenario and maneuvering module comprises:
a geospatial information system sub-module configured for spatial analysis and for creating cartographically appealing maps;
a flowchart sub-module configured for creating cause and effect flowcharts;
a Gantt chart sub-module configured for managing time driven events; and
a resource management sub-module configured for allocating personnel and equipment to predefined scenario events;
a census and demographics module configured for organizing and analyzing people and their relationships to one another and organizations, wherein the census and demographics module comprises:
a genogram sub-module configured for creating and maintaining family relationships and performing link analysis;
a social network sub-module configured for creating and maintaining social relationships and performing link analysis;
an organizational chart sub-module configured for organization of relationships and performing link analysis;
a cognitive modeling sub-module configured for cognitive attribute modeling and analysis; and
a demographics sub-module configured for population characteristic analysis;
a data management module configured for managing the flow, security access and exchange of data within the application framework, wherein the data management module comprises:
a workflow sub-module configured for routing and approval of actions and work products;
an external system interface sub-module configured for communications with external systems;
a multimedia sub-module configured for managing multimedia content; and
a custom user exports sub-module configured for exporting work product in a plurality of formats;
an integrated data model module configured for the effect of changes in data across the application framework, wherein the integrated data model module comprises:
an events sub-module configured for propagating data changes and other events through the application framework;
a manager classes sub-module configured as the central interface to shared data and/or functionality; and
a database sub-module configured for persistent, high-capacity shared data storage; and
a navigation and presentation module configured for displaying information from the integrated data model module in a plurality of views and providing navigation by a user between the plurality of views, wherein the navigation and presentation module comprises:
a panel presentation sub-module configured for user interface customization;
a hyperlinking sub-module configured for data mining and linking; and
a real-time updates sub-module configured to allow changes to data in one module or sub-module to extend to other modules and sub-modules in the application framework.
2. The application framework of claim 1 , wherein the sub-modules are configured for assembly into the application framework utilizing object-oriented techniques.
3. The application framework of claim 1 , wherein the application framework is designed as a plug-in architecture, and wherein the sub-modules comprise component plug-ins receivable within receptacles connected to a core logic of the application framework.