ODOS is a comprehensive platform that enables enterprise .NET development and deployment for n-tier environments.
ODOS simplifies data access, improves user-interface design, and enables rich on-demand applications to operate over the internet. It provides a complete migration path to, and support for, next-generation Microsoft technologies. The framework provides sophisticated object persistence, real-time object change distribution, client and server-side selective caching, advanced data binding, business rule validation, real time risk monitoring, support for offline/disconnected operations, and support for publishing and consuming Web Services, among its many features. It framework is addressing software development companies and institutions specialized in ERP, Decision Support and Command & Control Systems for State, Public Sector or Defense organizations.
Some of the advantages of ODOS framework usage are:
-
Code re-use
-
Write and test less code
-
Increase developers productivity
-
Reduce code maintenance
-
Reduce training tools and learning cost
-
Centralized upgradeable infrastructure
-
Business to System logical separation
-
Implementation time cut backs up to 80%
-
Implementation cost cut backs up to 60%
-
Reduced overall risk
The development process to follow when using the ODOS Framework to implement n-tier applications can be visualized at the following figure:

The specific development tasks for each application to be implemented and a simple view of the application’s architecture can be visualized at the following figures:


Data Layer
-
Multiple Data Source Types
-
Relational Database Management System (RDBMS) - SQL Server, Oracle, Any SQL92 vendor
-
File system
-
Interface with Proprietary Systems
-
Web Services
-
Domain Design Types
-
Object Oriented (no mapping required)
-
Relational (OO2RDM mapped)
-
Data Serialization and De-serialization into objects
-
Binary and Character Large Objects (BLOB, CLOB) support
-
Data store Synchronization Capability
-
Dynamic and Auto Generated SQL Statements/Procedures
-
Distributed Transactions
-
Cross data store Relations
-
Enumerations
-
Identity Columns
-
Custom ID Generators
-
Support for Complex Schemas
-
Optimistic Concurrency
-
Asynchronous Queries
Server Layer
-
Scalability and Load Balancing
-
Server-side Caching
-
Automated Client Synchronization
-
Effective Memory (Object Lifecycle) Management
-
Data Compression
-
Data Encryption
-
Connection Pooling
-
Centralized Logs
-
Transaction Management
-
Transaction queue/synchronization
-
Two-Phase Commit
-
Client Process Management
-
Authentication
-
Authorization (account & role based)
-
Registration
Client and Presentation Layer
-
Client-side Caching
-
Disconnected Modes
-
Specialized User Interface Controls
-
Model-View-Controller –Multiple Observers Design Pattern
-
Managed Lists
-
Advanced UI Data binding
-
Data Verification
-
Initiate Use Case Execution
-
Initiate Business Rules Checking
-
Form Auto population
-
3rd Party Control & Grid Support
-
Infragistics Integration
-
Developer Express Integration
Common
-
Data Handling
-
Security
-
Utilities