Design alterations are almost inevitable when it comes to multi-disciplinary engineering design projects. This leads to the question – how can a project team implement changes effectively when multiple people are working on tasks dependent on each other and how can the team ensure everyone is synchronised and using the latest set of data and input models?

In this presentation, Arthur Chan, a structural engineer at Arup, showcases the parametric workflow developed for a bridge design project that heavily relied on Speckle as a central data storage platform.

Introducing the SHD Project

Siu Ho Wan Depot (SHD) is a property development of an existing train depot in Hong Kong with the aim of providing 20,000 housing units. A project of this size requires lots of interdisciplinary collaboration to achieve a successful process. Arup’s team contributing to this project comprises engineers from the UK and Poland, which resulted in multiple challenges.

This is where Speckle plays a key role. It allows data exchange and extraction between different software solutions in real-time, increasing automation and collaboration across various teams and workflows. Speckle offers 20+ connectors, allowing data to be pushed accordingly, making it easily extractable from different software.

Enabling Data Exchange with Speckle

Making collaboration and automation easier has been crucial for Arup. The team at Arup leveraged a specific workflow between Grasshopper and Speckle to enable real-time data exchange between various applications.

With Speckle, the team was able to send and receive geometry from different platforms quickly and easily, allowing for the geometry to be adjusted accordingly. This way, users can access updates in real-time, with data being usable and accessible across different software solutions.

Leveraging a Speckle-Based Workflow

Speckle represented a single source of truth through which the team could input information to then parametrically create the geometry and structure in the Rhino / Grasshopper environment. This was achieved while taking into account site constraints and requirements. Once the geometry is created, it will be pushed back to Speckle for further manipulation including:

Changes made will automatically update across all applications used thanks to Speckle.

::: tip

You can watch Arthur demoing this at SpeckleCon here below.


The workflow is straightforward:

  1. Input information: compiled input information (i.e. alignment, highway servicing, site constraints, project requirements, and boundaries) will be pushed to Speckle for geometry creation.
  2. Geometry generation: this was enabled by giving the team flexibility to continuously implement changes and modifications, while maintaining a strong multi-disciplinary collaboration.
  3. Geometry coordination: the geometry is then available in the Speckle web-based viewer which enables internal and external alignments thanks to its collaborative aspect, connecting key stakeholders across the board thanks to its intuitive collaborative aspect.
  4. Structural analyses using Oasys GSA and Midas Civil enabled various Speckle updates to be reflected with no need to rebuild models from scratch.
  5. BIM modeling: using Speckle to link up Rhino Inside Revit and Revit helped with the analysis of the model workflow.
  6. Central Data Storage platform: project teams can effortlessly track versions if necessary, ensuring coordination and effective collaboration. The development of the input information over a duration of 12 months is available, allowing for stronger internal alignment.


Speckle changed the way Arup approached the design process, simplifying the coordination of BIM and various source projects. Various teams were able to work in parallel, leading up to huge time savings. In the future, Arup sees lots of potential and opportunities to work closer with Speckle and leverage more connectors moving forward. Join Arup and others to change the way we work in AEC, and simply make it better.

You can also subscribe to Speckle News for more content like this: