Date
10 September 2024
Category
Blog, Collaborative Engineering, Concurrent Design, MBSE
No commentsStarion Group has released a major new version of the CDP4-COMET model-based system engineering (MBSE) platform, which is designed to support concurrent design projects involving multidisciplinary teams.
Sam Gerené, Competence Area Lead Concurrent Design and MBSE, explains why this new release is important and details the main changes users will benefit from.
I’m proud to announce that at Starion, we have reached a major milestone with our CDP4-COMET software. Our team, who are experts in model-based system engineering and concurrent design, have worked hard over the last couple of months to finalise the CDP4-COMET Desktop Application, the CDP4-COMET WebServices and the new Web Application.
Why is this important for us, but more importantly for our user community? Let me explain!
As you may know, the CDP4-COMET suite of tools is made up of various components. These include a desktop application, Excel integration, a web application, multiple command line applications, domain specific tool integrations and, last but not least, the application server that can function as a digital engineering hub.
Our users are engineers who use CDP4-COMET to model complex systems and administrators who are responsible for deploying the software for their user community. Both groups are very important to us. The improvements and updates we have just released are relevant for both. We have improved overall performance, usability and, not least, security.
Let me break down the improvements for each of the major components:
CDP4-COMET Web Application
Version 5.4.1
The CDP4-COMET IME, also known as our desktop application, has been the primary user interface for a long time. Both novice and expert modellers have been using this application for years. To complement the user experience, we have added a web application to the suite of tools. The focus of the web application is on users who don’t need to know all the nitty gritty details of collaborative modelling.
The various pages of the application focus on a specific task and the modelling that a user needs to perform, and less on the data model that underpins it all.
The web application provides users with:
Model Dashboard – Interact with a model dashboard that provides insight into the state of the model, such as which parameters do or don’t have a value specified, and which building blocks are used as part of the Product Tree (Product Breakdown Structure) and which are not. This dashboard is useful for the whole team, but particularly for a team leader.
An import aspect in modelling is to not over-model (i.e. model the whole world), but only those items that are relevant for the whole modelling team. If a building block is not used, or when a parameter does not get a value, one might wonder if it should be present. Modelling items require effort to maintain and so “over-modelling” may lead to spending too much effort, or spending effort on the wrong part of the model.
3D Viewer – This is a page that displays 3D information captured in the model. Even though the intention is not to provide a full 3D modelling environment, we have created a way to provide useful insights by showing a simplified 3D geometry. This is still a work in progress, but various early adopters are excited by this capability.
System Representation – A view on the Product Tree, containing building blocks and parameters.
Parameter Editor – This page shows all the building blocks and the parameters that are part of the model, but with a focus on the domain expert who is active and only showing those building blocks and parameters owned by this domain expert. The page can show all the existing building blocks and parameters when the user wants to see them, but this is not the default. This provides the right kind of focus without any distraction.
Model Editor – This page is used to work with Element Definitions and Element Usages, as well as parameters, to build a Product Tree.
Engineering Model – This page allows a user to work with ‘Options’, ‘Publications’, ‘Common File Store’ and ‘Domain File Store’.
Reference Data – Pages that support users to define and update Parameter Types, Measurement Scales, Measurement Units and Categories. This would typically be used by more advanced users
Server Administration – Pages that support creation and updating of models, domains of expertise, organisations, users and roles. This would typically be used by more advanced users
The web application provides a tabbed interface: multiple pages (tabs) can be opened at once and the screen can be split into two tabs so a user can work with two of them at the same time.
The web application can be hosted together with a server, with users only needing to provide a username and password. It can also be hosted on its own so a user can choose which server to connect to. A demo version is hosted at https://comet-web.cdp4.org or organisations can do a local deployment using our docker container available at: https://hub.docker.com/r/stariongroup/comet-web-community-edition
CDP4-COMET Desktop Application (Integrated Modelling Environment; IME)
Version 10.0.1
A significant amount of work has been done to upgrade the CDP4-COMET desktop application to the current state of the art of the technology stack we rely on. CDP4-COMET is built on top of the Microsoft .NET framework, and for a long while we relied on version 4.5.2. This had to change and we needed to upgrade to the current version, which is 4.8. This was a huge overhaul of the software, which brought with it performance improvements and improved security. As a result, users should experience that loading larger models takes less time and the overall interactivity has improved.
While performing this big upgrade we did fix bugs here and there, but we did not focus on adding new features for the end user. Those have been implemented in the web application.
CDP4-COMET WebServices
Version 8.0.0
Similar to the desktop application, we needed to upgrade the WebServices to the current state of the art.
One of our key requirements when we imagined the CDP4-COMET server was that we wanted it to run on Microsoft Windows as well as Linux. We were, and still are, fans of the C# programming language and the .NET ecosystem. But at that time, in 2015 to be exact, and before 2017 when we made our first commit to the public GitHub repository, Microsoft did not yet support Linux out of the box.
Fortunately for us there was the Mono Project. The Mono Project was the first .NET implementation on Android, iOS, Linux and other operating systems. For several years, we have hosted the CDP4-COMET WebServices on Linux servers using the Mono runtime and utilising the NancyFx framework.
Then things changed when Microsoft came out with ASP.NET core and we started to plan an upgrade. This also meant saying goodbye to our long-lasting friend NancyFx, but we did not stray far as the core contributors of that fantastic library came up with a new framework called Carter. Long story short, the CDP4-COMET WebServices received a major overhaul of its codebase as well and we are now proud to announce the following major upgrades:
- Upgraded from net482 to net8.0
- Replaced NancyFx with CarterCommunity
- Improved logging based on Serilog and configuration for Loki stack
- Included MessagePack based serialisation for improved performance
- Updated landing page
- Docker and Docker-Compose are now the preferred deployment mechanism.
Also, the following were added:
- Support for PostgreSQL 16.x
- Health endpoints
- Cherry Picking endpoint
- EngineeringModel Shallow query parameter
- Long running tasks capability
- Improved error / exception response
- RabbitMQ to the architecture to support messaging to other systems.
Thank you to our users and our team!
On behalf of Starion, I would like to express our thanks to our users who provided valuable (early) feedback on the release candidates of these CDP4-COMET components. Without them we would not have been able to achieve these major upgrades and improvements. And, of course, thanks too to our own MBSE and concurrent design team members who worked diligently and without fail to achieve this big milestone.
Find out more about CDP4-COMET at stariongroup.eu/services-solutions/system-engineering/concurrent-design/cdp4-comet/
Follow Starion on LinkedIn to keep up to date with our latest news on all things MBSE and concurrent design: linkedin.com/company/stariongroup/