At the CAPE-OPEN 2020 Annual Meeting, Dr Jasper van BATEN (AsmterCHEM), the developer contracted by CO-LaN to create COBIA, reported (access PDF here) on the current status of COBIA (CAPE-OPEN Binary Interop Architecture). Unfortunately technical issues prevented the presentation to be recorded.
Jasper begins by giving a short summary of what COBIA is: a middleware. This original concept was advocated for and presented on October 30, 2012 at a session of the CAPE-OPEN conference held within the AIChE 2012 Annual Meeting.
Then Jasper lists the design targets set for COBIA, in particular easier to programmers than COM, more efficient than COM. How well both of these targets have been met is touched upon through the presentations by KBC, HTRI and Hafnium Labs coming after this presentation.
Next Jasper describes the different phases of the COBIA development project with Phase I completed in October 2016 and presented/demonstrated at the CAPE-OPEN 2016 Annual Meeting. Phase 1 was a proof of concept, especiallty that COBIA-based applications could interoperate seamlessly with COM-based applications through CAPE-OPEN. It focused on a reduced set of CAPE-OPEN interfaces. Phase 2 was launched in November 2016 and extends the scope to many more CAPE-OPEN interfaces and delivers a ready-to-use product. Phase 2 was completed at the end of September 2020. Phase III, not yet launched, will introduce platform independence, additional language bindings, and also marshaling between platforms.
Jasper goes on describing what Phase 2 delivers and why the CAPE-OPEN version with COBIA Phase 2 is numbered 1.2. The distribution of COBIA Phase 2 is made from a repository used to deliver the project. It contains three merge modules for the COBIA runtime part and an installation package for the COBIA Software Development Kit. Jasper mentions also that AmsterCHEM provides for free a Wizard, that is a Visual Studio integration of the code generator distributed in COBIA SDK. A short demonstration is given of how the code generator can be used through that Wizard.
Then Jasper moves on to what could be Phase 3 which is still being scoped. A marshalling solution was originally presented at the CAPE-OPEN 2018 Annual Meeting together with Mark STIJNMAN (Shell Global Solutions). The proposal made in 2018 has been revisited with the main difference that transport and synchronization will be provided by COBIA because these steps are generic. Also for proxy objects a modified design is now proposed.
On target platforms, Jasper gives a wish list that needs to be frozen for consideration in Phase 3: . NET, Python, Java, FORTRAN are proposed. Regarding target platforms, Windows, Linux and MacOS are listed with a question raised about Android, Jasper calling for a business case to be provided for consideration.
Jasper concludes by pressing everyone to give COBIA a try as it is now in production and proved by several organizations to be trustworthy and reliable.