Keywords: Software Tools, Safety, software-architecture, framework, software-engineering, surgery
Motivation: Image flipping and mixing differently-oriented images can cause software crashes or patient adverse events in high-risk settings.
Goal(s): To describe an architectural pattern for most static-typing compilers (e.g. C++, Iron Python, C#) that guarantees orientations match at compile time, even if orientations are not known until runtime.
Approach: Statically defining image types by their intended orientation (e.g. Native CT Space) allows generic methods that only accept image pairs that, by definition, are aligned. Misuse is rejected during compilation.
Results: We present a framework that guarantees processing steps and outputs are orientation-safe at compile time. Runtime checks are only needed for disk-reads and transforms.
Impact: Preventing image-orientation errors at compilation time reduces risks in clinical environments, and accelerates software development. The proposed pattern is readily implementable across many programming languages, and our framework making this available to all .Net languages, including Python via Iron Python.
How to access this content:
For one year after publication, abstracts and videos are only open to registrants of this annual meeting. Registrants should use their existing login information. Non-registrant access can be purchased via the ISMRM E-Library.
After one year, current ISMRM & ISMRT members get free access to both the abstracts and videos. Non-members and non-registrants must purchase access via the ISMRM E-Library.
After two years, the meeting proceedings (abstracts) are opened to the public and require no login information. Videos remain behind password for access by members, registrants and E-Library customers.
Keywords