Bridging the gap between Business and IT

Working for my company mainly involves me in the areas of accounting, automation, and integration of disparate infrastructures and systems.

About Ronald Rink

I am a senior auditor and consultant at d-fens for business processes and information systems.

[NoBrainer] Simplifying Sparx Enterprise Architect Development with C# Interactive (CSI)

CSharpInteractiveConsole

Developing an AddIn for Sparx Enterprise Architect is tedious, even with the existence of support such as the great work of Geert Bellekens. However, since Visual Studio 2015 we can use the C# Interactive Console which allows us to fire up an instance of Enterprise Architect and test our code interactively before putting it into […]

Registering a Sparx Enterprise Architect AddIn on Windows 10 x64 without administrative permissions

Sparx Enterprise Architect supports AddIns so we can enhance its functionality and behaviour in our daily work life as an architect. This is normally done by adding a subkey to the HKEY_LOCAL_MACHINE\Software\Sparx Systems\EAAddins key. This is described in Geert Bellekens’ Tutorial: Create your first C# Enterprise Architect addin in 10 minutes. As we can read […]

[NoBrainer] Connecting Enterprise Architect Interfaces with PowerShell

Enterprise Architect ProvidedInterface

In one of our projects we needed to create a lot of components that expose interfaces. The steps to design this in EA are quite tedious: Link the Interface to the diagram of our component. Create a ProvidedInterface and attach it to the component Set the name of the ProvidedInterface to the name of the […]

[Bug] Sparx Enterprise Architect v14.0 Build 1421 breaks using Deployment Diagrams

A quick one: last Friday, Sparx released an update to its Enterprise Architect v14.0. When I installed it today I noticed that all of a sudden I could no longer use the Deployment Connector to connect an Artifact with an Execution Environment. However, the same morning it still worked. The error message I now get […]

Bugslayer: 10 days into EA14

My first 10 days into EA14 have passed by and I am discovering some issues ranging from nuisances to real distractors … So here is my list of bugs and SO questions. I will update the list as I receive updates from Sparx or other sources. CaseId 18058962 – confirmed Package Validation in Enterprise Architect […]

Extracting RTF Documents from XMI Files with PowerShell

XMI Base64 Encoded ZIP

Enterprise Architect allows you to create custom document templates to be used in your reports. Internally EA uses the oldie-goldie RTF document format for these templates. When exporting these templates via Export Reference Data they are included as base64 encoded zipped RTF documents which in turn are again base64 encoded. For the untrained eye it […]

[NoBrainer] Automating Sparx Enterprise Architect with PowerShell

Enterprise Architect Class Diagram

It has been some time since I have last posted something on our blog, so I will start with something easy: today I made the switch from Sparx Enterprise Architect v13.5 to v14.0. And yes, it really paid off since I now can actually decipher all those small connector icons on my Surface Book 2 […]

[NoBrainer] Adding meaningful error messages when using Contract.Result in C#

CodeContract error message

We at d-fens use Microsoft Code Contracts every day. And certainly with every great tool there are some things that might benefit from some improvement – and code contracts are no exception. There is one particular annoying thing in that the error message for Contract.Result exceptions strips the generic parameters from it. This in essence […]

Transient Error Handling with automatic Retries in C#

Inspired by Transient Fault Handling we created a quick helper class to faciliate the automatic retry of various operation that may fail in today’s interconnected environments. Large parts of our Appclusive framework deal with fetching from and pushing information to various backend systems. As they all can (and eventuall will) fail we needed a flexible […]

Creating SignalR Hub Classes on the fly

Recently I wanted to create SignalR hubs for client notification based on a list of internal queues. As SignalR is creating Hubs based on their type names I had to find an approach for dynamically defining classes based on the given queue list. In this blog post I show a way on how to do […]