Welcome to the Object Modeling System (OMS), a pure Java, object-oriented modeling framework. OMS allows model construction and model application based on components. This is a collaborative project active among the U.S. Department of Agriculture and partner agencies and organizations involved with agro-environmental modeling.
OMS3 is a highly inter-operable and lightweight modeling framework for component-based model and simulation development on multiple platforms. Interoperability features:
- Component Interoperability
- Components are Plain Java Objects enriched with descriptive meta data by means of language annotations. This “non-invasive” approach over a modeling API minimizes dependencies on the framework. Components default to multi-threaded execution If data flows permits, components are executed in parallel, with no explicit parallel programming required. An OMS3 model scales well in current and future multi-core architectures.
- Data interoperability
- The framework fully supports all native and types to be passed between components. An simple extension mechanism provides for any type of data conversions and transformation. This adds generic and aspect-oriented handling of data transformation to all models open for custom extensions. Standard data access, statistical methods, and efficiency analysis are available.
- Language Interoperability
- with FORTRAN, C, and C++ is simplified the developer by providing an annotation based approach also for those languages. Also, a simple Domain Specific Language DSL helps assembling model applications or perform model calibration, optimization, sensitivity and uncertainty analysis, and forecasting. Various methods are provided.
- System Interoperability
- The framework can be embedded into other serving as an modeling engine that can drive simulations for example in a desktop application, web-service environment or a embedded device. A system API supports such flexible integration. In addition the framework can be used to generate Docbook5 compliant model and simulation documentation and SHA signatures of simulations for archival, auditing and traceability.
The OMS3 framework goal is to provide features to the modeler to make easy to create, inter-operable, scalable, and unburdened models that take full advantage of contemporary computing, management, and infrastructure technologies while keeping it simple intuitive for users.