Doing It with Nodes Design Patterns in Healthcare

  • Slides: 29
Download presentation
Doing It with Nodes Design Patterns in Healthcare Education Standards and Specifications Rachel Ellaway,

Doing It with Nodes Design Patterns in Healthcare Education Standards and Specifications Rachel Ellaway, Ph. D The University of Edinburgh and The Northern Ontario School of Medicine

design patterns A general repeatable solution to a commonly occurring problem in software design.

design patterns A general repeatable solution to a commonly occurring problem in software design. However, a design pattern is not a finished design that can be transformed directly into code … … it is a description or template for how to solve a problem that can be used in many different situations Wikipedia S&S context education informatics …

‘nodes’ (n) [latin nodus=knot] A knot, a knob, a protuberance; a knotty formation A

‘nodes’ (n) [latin nodus=knot] A knot, a knob, a protuberance; a knotty formation A knot or complication; an entanglement A point at which branches divide A point of significance; a crux, a critical turning point; a focal point A junction; a point of intersection or convergence A point or line of absolute or comparative rest in a standing wave system

Tube map © Transport for London 2005

Tube map © Transport for London 2005

nodes: cyclic and acyclic graphs graph theory arrays of vertices (nodes) and edges (links)

nodes: cyclic and acyclic graphs graph theory arrays of vertices (nodes) and edges (links) cyclic = bidirectional edges acyclic = unidirectional edges V: = {1, 2, 3, 4, 5, 6} E: = {{1, 2}, {1, 3}, {1, 4}, {2, 1}, {3, 4}, {4, 5}, {4, 6}, {5, 3}}

nodes: db NODE_NODE ID 1 ID 2 ID data 1 2 1 xq 1

nodes: db NODE_NODE ID 1 ID 2 ID data 1 2 1 xq 1 3 2 vf 1 4 3 wr 2 1 4 gh 3 4 5 sg 4 5 6 ju 4 6 5 3

nodes: xml <? xml version = "1. 0" encoding = "UTF-8"? > <nodes> </nodes>

nodes: xml <? xml version = "1. 0" encoding = "UTF-8"? > <nodes> </nodes> <node id=“ 1”>xq</node> <node id=“ 2”>vf</node> <node id=“ 3”>wr</node> <node id=“ 4”>gh</node> <node id=“ 5”>sg</node> <node id=“ 6”>gu</node> </nodes> <links> </links> <link id 1=“ 1” id 2=“ 2”> <link id 1=“ 1” id 2=“ 3”> <link id 1=“ 1” id 2=“ 4”> <link id 1=“ 2” id 2=“ 1”> <link id 1=“ 3” id 2=“ 4”> <link id 1=“ 4” id 2=“ 5”> <link id 1=“ 4” id 2=“ 6”> <link id 1=“ 5” id 2=“ 3”> </links>

nodes and learning tech (in auld reekie) Trees, webs, networks, algorithms, mazes, games Content

nodes and learning tech (in auld reekie) Trees, webs, networks, algorithms, mazes, games Content management Curriculum mapping Wikis Knowledgebases Virtual patients Pair up unique node IDs of different node sets to create matrices and mashups - SOAs

nodes and standards: Med. Biquitous Virtual Patient Data (VPD) - data content (includes structural

nodes and standards: Med. Biquitous Virtual Patient Data (VPD) - data content (includes structural node trees) Data Availability Model (DAM) - collections of VPD and media elements - DAMnodes within DAMnodes and DAMNodes attached to Activity. Nodes Activity Model (AM) - topology/browse expressed as node trees

S&S design patterns?

S&S design patterns?

design patterns A general repeatable solution to a commonly occurring problem in software design.

design patterns A general repeatable solution to a commonly occurring problem in software design. However, a design pattern is not a finished design that can be transformed directly into code … … it is a description or template for how to solve a problem that can be used in many different situations Wikipedia

#1 ‘nodes’ Matrix combinations of different node systems Highly abstract Simple to model Widely

#1 ‘nodes’ Matrix combinations of different node systems Highly abstract Simple to model Widely applicable Principle 1: relational and procedural structures should be modeled using nodal frameworks

#2 ‘semantics’ Vocabulary/classification/annotation Rather than named structures (tightly coupled) use generic structures with descriptors

#2 ‘semantics’ Vocabulary/classification/annotation Rather than named structures (tightly coupled) use generic structures with descriptors (loosely coupled) eg VPData in Med. Biq VP Also profiles of generic specs (healthcare LOM) Communities of practice vs networks of practice Principle 2: make the specific more generic accommodating the specificity using semantic markup

#3 ‘primitives’ Parent-child, classes/libraries, OOP relationships Primitives as abstract/generic objects Instances of primitives become

#3 ‘primitives’ Parent-child, classes/libraries, OOP relationships Primitives as abstract/generic objects Instances of primitives become more specific Assemble to create complex, non-predetermined structures (cf Lego®, mashups) Principle 3: simple structures can be instantiated and aggregated in different ways to create more complex structures (eg node matrices)

#4 ‘IDs’ Primary keys, GUIDs, addresses Scope: local vs globally unique Ability to target

#4 ‘IDs’ Primary keys, GUIDs, addresses Scope: local vs globally unique Ability to target specific elements or collections Semantic content: RHE_P 2_APR 18_MDBQ 2007 Principle 4: elements and collections should be uniquely addressable using resolvable unique IDs

#5 ‘services’ Functions in/out of scope Coupling - loose vs tight Service oriented architectures

#5 ‘services’ Functions in/out of scope Coupling - loose vs tight Service oriented architectures (SOAs) Component models - see IMSLD and LAMS Principle 5: non-dependent and outside-scope functions can be cast as abstract (black box) services

#6 ‘state’ Static vs dynamic phenomena Dependence on previous states or independent Single or

#6 ‘state’ Static vs dynamic phenomena Dependence on previous states or independent Single or multiple state traces Quantitative: analog or discrete values Qualitative: semantics and annotations Principle 6: recognize stateless and state-dependent phenomena and model each appropriately

#7 ‘formality’ Informal systems are an essential part of education Formality is related to

#7 ‘formality’ Informal systems are an essential part of education Formality is related to abstraction Informal systems can be modeled formally using higher levels of abstraction (e. g. cartography) Principle 7: distinguish between formal and nonformal systems and increase abstraction in the latter to render them more formally

? Design patterns for S&S nodes semantics primitives IDs services state formality Universal Principles

? Design patterns for S&S nodes semantics primitives IDs services state formality Universal Principles of Design Lidwell, Holden and Butler, 2003 The Laws of Simplicity Maeda, 2006

Design patterns for S&S General repeatable solutions to a commonly occurring problem in standards

Design patterns for S&S General repeatable solutions to a commonly occurring problem in standards and specifications design A standards and specifications design pattern is not a finished design that can be directly inserted into a schema … … it is a description or template for how to solve a problem that can be used in many different situations Developing ‘education informatics’

Doing It with Nodes Design Patterns in Healthcare Education Standards and Specifications Rachel Ellaway,

Doing It with Nodes Design Patterns in Healthcare Education Standards and Specifications Rachel Ellaway, Ph. D The University of Edinburgh and The Northern Ontario School of Medicine