Case Study

Verifi3D - from proof of concept to enterprise solution

After a successful proof of concept, Verifi3D evolved into an enterprise-grade, cloud-based BIM validation and collaboration platform—bringing Bangladesh Software Solution on board to help build it.

Industry

BIM industry

Based in

Netherlands

Target market

USA, Europe, Japan, Australia

Technologies Used

C#, MS SQL, SQlite, Type Script, Vue, Java Script, AWS, Azure, Docker

Overview

Headquartered in Netherlands, Verifi3D specializes in validating BIM (Building Information Modeling) models. It is the cloud-based spell checker of BIM models – offering simplified data validation process and easy collaboration for all project participants up to date at all times. By providing a collaborative platform, Verifi3D enables construction companies to enhance their design & validation work flow. This helps companies reduce rework cost during construction process by validating building models beforehand. To develop Verifi3D – BSS provided solutions for handling large data by integrating modern technologies and custom solutions built specifically for Verifi3D’s requirements.

The Challenge

Current BIM industry relies heavily on checking model validation output manually. There are some tools that makes this process digital but almost all of them are offline applications which makes collaboration between members of the same project very cumbersome and unreliable. Verifi3D wanted to bring a solution that would solve both these problems. In achieve that Verifi3D had to solve some technical problems first. Since Verifi3D has to compete against some well established BIM tools – it had to overcome some technical limitations of the existing these tools – connecting to multiple Common Data Environments (CDEs – Autodesk BIM 360, ACC, Procore, Trimble Connect, Dropbox, Microsoft Sharepoint, Microsoft OneDrive, Google Drive and more) for accessing model files, handling large amount of data in the browser in a dynamic ui that can be modified by the users need, building a single uniform client ui for multiple Issue provider platforms where users can communicate model related problem after going through the validation steps. Apart from these new additions Verifi3d needed a complete overhaul of it’s existing ui and a proper CI/CD pipeline since it was never done. All these had to be achieved in a short period of time and on top of an legacy architecture that Verifi3D was first built on.

Key Objectives

To achieve Verifi3D’s goal, the project focused on some core strategic goals:
  • Implement a CDE connector: A single connector mechanism that can communicate with different CDE platform based on the user’s selection.
  • Implement a client for Issue providers: A single client that can connect to different issue provider platform based on the user’s selection. The client ui needs to be dynamic enough to be able to show proper ui for the form that is supported by the providers.
  • Built a custom tabular data viewer: To show large amount of data from the BIM models, Verifi3D needed a table that could handle the data amount and provide a customizable layout so that each BIM project and each user can curate their own data viewer table.
  • Build a modifiable ui that is decoupled from the business logic: Drastically reduce the time it takes to add/modify the application ui by using reusable ui components that are decoupled from the business logic.
  • Build a CI/CD pipeline: Build up multiple CI/CD pipelines (dev, staging, production) for Verifi3D so that the development cycle can speed up.

Solution delivered

Implement a CDE and Issue providers connector:

We developed a server side infrastructure that can be used from one set of REST apis that the client side could use to communicate to different CDEs and one set of REST apis for the Issue providers. We developed a dynamic ui that could be modified based on the capabilities of the CDE or the Issue provider. So platforms provider CDE & Issue tracking services. We developed an authentication infrastructure that could be used for both CDE and Issue provider authorization. This allowed the user to authenticate once and use both CDE & Issue services. Making a better user work flow & reduced maintainability costs.

Built a custom tabular data viewer:

Verifi3D needed table that could be completely customized and be able to handle bug amount of data. It also needed to be a table and a tree that could be grouped to arbitrary level. The solutions that is available are expensive and did not exactly catered for Verifi3D’s need. We developed a custom table tree component from scratch that can be used not just to view data but also for every other use case in the application. This helped avoid extra expense for Verifi3D and fast forwarded the ui development process.

Build a modifiable ui that is decoupled from the business logic:

We developed new ui to replace the old ui that was no longer maintainable. We developed a business layer in the client side application that decoupled the ui and enabled the possibility of creating more scalable code structure for the application. This drastically reduced the time it takes to add/modify the application ui by using reusable ui components.

Build a CI/CD pipeline:

We curated multiple CI/CD pipelines for Verifi3D so that the development cycle can speed up. We used Azure devops platform to create 3 separate pipelines for the continuous development.

Outcome

  • Verifi3D presented a better & simplified way of collaboration for the BIM industry
  • Competing against industry giants such as Solibri, Autodesk Bim360, Procore and more
  • Verifi3D became one of the tools for use for a EU-funded, HorizonEurope project called CHEK that aimed to remove barriers for municipalities to adopt digital building permit processes