The Interfront Customs and Border Management Solution (iCBS) architecture is designed to be highly modular, configurable and scalable. The suite of Customs modules are developed in Java and is design to be platform and database agnostic. Its deployment options includes both Open Source and proprietary (Oracle and IBM) platforms and will run in any JEE 5 compliant or higher container.
The iCBS solution suite is fully scalable, both horizontally and vertically, with failover and robust disaster recovery solution. Horizontal scaling achieved through LPAR addition and vertical achieved by JVM addition. Most of the processing is completely stateless.
High availability is crucial in mission critical Customs systems. Availability is ensured through a message driven business process, short running transactions and data caching techniques. Specialist techniques allows the system to be stopped without message or transaction loss. All internal transactions can always be rolled back. The iCBS uses distributed cache to ensure very quick access to data required across cluster nodes i.e. cluster wide lock, system metrics, eviction notification.
Our integration pattern allows the flexibility to integrate with the existing authentication and security standards. Current installations are integrated with Active Directory.
The iCBS event based architecture allows for integration to data warehouse and real-time analytics solutions.
Interfront has both the skills and technology to deploy and develop services in a SOA ecosystem. We have the expertise to design systems at the optimum level of granularity to be robust in managing transactions, implement error recovery and remain responsive.
This is achieved while keeping services decoupled to allow flexible adoption of new technology and existing application client application landscape. There are design considerations around implementing an SOA architecture e.g. performance impact. An analysis of the client environment is important in order to determine the best SOA design. The SOA design pattern is followed where applicable to remove dependencies between modules as far as possible, but rarely at the expense of performance.