Model Checks
I would like to share my latest thoughts and findings in dealing with Model Checks. First let me break the term Model Checks into some smaller categories.
I hope you will appreciate this is an attempt to be more specific about which information, "I" in BIM, I am actually evaluating. Combined these checks give an impression about the technical quality of the models, not of the overall design quality.
Element Information Checks
To do this, I find it an essential step to think about the project and develop two checklists.
These checklists should be agreed between stakeholders, be expressed in the BEP, and be alligned to an Internal Modelling Standard.
Without an internal modelling standard you open yourself up to inefficiencies.
Tools for Information Checks
Over the years I have used many tools such as Navisworks, Solibri recently I started adding #Verif3D, Desite, #BlenderBIM / IfsOpenShell to the mix. Why? Because they offer even better ways for automation ( to me ).
I always start of analysing the Model Elements Information in PowerQuery just to get a feel for what I am looking at, do some cleaning, basic wrangling ( such as unpivotting, grouping, adding colums, and relationship building ). Why? Because I can do that quickly and it is all very visual.
Once I understand the Model Element Information, I look will examin the structure of the checksfiles ( usually .XML or .JSON files ). Usually they have a structure to them that is easy to follow, e.g. a Desite check is build as followed <ruleItem id="value" name=value##value pattern="value"/>. I will fill those values by hand when I am in the Proof of Concept (POC) stage. Why? Because I can show my client exactly what is happening and they can try by themselves.
If the client is convinced our plans automating the checks are feasible I will use Python to automate the creation of the rule check files. Typically this involves reading a file, cleaning it, wrangling the data, exporting the results. Python is highly flexible and depending on your preferences you have multiple options to read .CSV or .XSLX files and produce .JSON or .XML files in return.
Summary
Examples
A #Verifi3D .JSON check that was manually adjusted.
Results of a #Verifi3D check. I deliberately failed the Assemblyhandle by adding a value that did not correspond with the information in my model.
Automated making of a #Desite check file. Here the focus lies on creating the string I mentioned earlier. I prefer the use of Jupyter to have more control over my coding and to see the interim results. Once I am fully satisfied I will refactor the code to a true .PY file.
BIM & AEC | SaaS | Brand and Product Marketing Specialist | Lawyer | Entrepreneur | Communication & Campaign Expert | Technical Writer | LGBTQ+ Advocate | Speaker | Shareholder | WICCI - Bilateral Council-Hungary-India
1 年Interesting. Thanks a lot, Edgar Westerhoven! Looking forward to more insights!
Entrepreneur I SaaS I Investor I GTM I Digitalization I
1 年Insightful article, @Edgar! Feel free to reach out to us, if there is anything we can help you with.
Talent Acquisition Associate @ KEO | HR, Recruitment Strategy
1 年As a non-technical guy, it is always nice to read information provided by an SME, that is laid out in a way that is understandable. As a recruiter, whilst I am not involved in the engineering day to day tasks. having access to this kind of information allows me to grow my own expertise and have more meaningful talks with people I am looking to recruit. Thank you, Edgar, appreciate the work you put into this :-)
Helping AEC Pros work efficiently with IFC
1 年Way to go Edgar!