SlideShare a Scribd company logo
Semantic Time Travelling
Tagging and branching knowledge with
SMW (a vision)
Dr. Remco de Boer
CTO @ XL&Knowledge
rdeboer@xl-knowledge.com

Consultant @ ArchiXL
rdeboer@archixl.nl

SMWCon Fall 2013
Tuesday, October 29th 2013
Berlin, Germany
About us…
• ArchiXL
–
–
–
–

Independent Dutch Consultancy specialised in Enterprise Architecture (EA)
Located in Amersfoort
Customers mainly public sector
Started using SMW internally for EA repository

• XL&Knowledge (“Excellent knowledge”)
– Knowledge management label for ArchiXL
– Knowledge management world is much larger than only EA
– SMW as knowledge management platform

2
SMW in Enterprise Architecture

3
A typical (many-stakeholder) architecture process
Formal decision

Public consultation

Steering
committee
Advice on decision

Advisory
board
Prepare architectural
decisions

Public
Architect

Expert peers
4
We sometimes encounter some tension between ‘the
new world’ and ‘the old world’
Wiki

Documents

•
•
•

Ease of use (browse, query)
Engages other stakeholders
Live knowledge base; ‘always’ up to
date

•
•

•

Formal status (approval)
Editing procedures (architecture
board)
‘Release management’

Feels intangible

•

Feels tangible

•
Version management in SMW – what do we have?
• Page history
– Show individual revisions

• Approved Revs
– Distinguish approved revision from latest revision

• Semantic History
– ‘Semantify’ edit history

• Semantic Watchlist
– Monitor changes in semantic properties

• Versioning in the knowledge model
– Add semantic properties to store version-related information
6
Page History:
Per-page Revisions in (Semantic) MediaWiki

7
Approved Revs

8
Per-page Revisions with Approved Revs

9
Semantic History

10
Semantic Watchlist

11
Versioning in (architecture) knowledge models
• ‘Version’ attribute
– Increase with each new (major) version of an architectural knowledge entity
(i.e., design decision, model element, etc.)

• ‘State’ attribute
– Model life cycle of an architectural knowledge entity (e.g., tentative, decided,
approved, obsolete)

• Multiple elements
– Each version is a first class entity in its own right

12
Why isn’t this enough?
• At a single point in time, we may be interested in several manifestations of
the same entity:
– Historic (v1, v2, v2.1, v3, …)
– Actual (‘live’)
– Future (plateaus, gap analysis, what-if scenarios)

• A [historic/actual/future] version of an architectural knowledge entity is only
meaningful in the context of all other entities at the same time.
• IST (baseline) vs. SOLL (target) architecture
– (mostly) the same elements in a different configuration

13
Version management in SMW – what do we need?

Back to the Future (IMDb, http://www.imdb.com)

14
Question – Who recognizes this?

Cool, that’s exactly what I
need! Wonder if it works
with the version of SF I
have installed…

15
What if…
Suppose we could travel through our wiki to a certain point in time
To a specific date / time

OR

to a particular event

Back to the Future (IMDb, http://www.imdb.com)

16
Examples of things we could do…
•
•
•
•

Show the documentation for a particular release of a piece of software
Display the contents of the wiki as they were on December 31, 2012
Show one of the formally approved versions of an architecture
Switch between different stages of architectural knowledge in an EA
repository
NB. This wouldn´t apply to just a single page,
• ...
but to the wiki as a whole. This means that for
instance SMW-queries would return results
that are consistent with the selected point in
time.

Think for a minute about what this could mean for your practice.
Share your ideas!
17
A useful analogy:
Software Revision Control
• Goal: Tracking and controlling changes in software
– Versioning
– Multi-site teamwork
– Examples: CVS, Subversion, Git

• Useful concepts:
–
–
–
–

Trunk
Tag
Branch
Merge / diff

18
Tagging Knowledge in SMW
• Take a ‘snapshot’ of the wiki
• Label page revisions that represent coherent sets of knowledge with logical
names
• NB. A tag applies to the state of all knowledge in the SMW repository on a
certain branch at a certain point in time
• Example use cases for architectural knowledge:
– Produce versions of the architecture, e.g., for approval or reference purposes
– Have different views for different stakeholders (historic, current, future)

19
Branching Knowledge in SMW
• (Temporarily) branch off new and/or changing knowledge
• NB. Branches may also contain tagged revisions
• Example use cases for architectural knowledge:
– Separate target future states (plateaus) from current state
– Allow independent development of parts of the architectural knowledge base
– Work out what-if scenarios / tentative decisions + implications; perform tradeoff analyses

20
Merging Knowledge in SMW
• Determine the difference between two branches and incorporate changes
from one branch into another
• Example use cases for architectural knowledge:
– Integrate (approved) revisions from separate branches into a coherent set of
architectural knowledge
– Support architecture evolution (integrate plateaus)

21
A glimpse into the future?

22
A glimpse into the future?

23
•

Back to the Future
(IMDb)

How do we get there?
What do we need?
Start small

– Focus on tags and timestamps
– Important design decision: how do you indicate which tag / timestamp you want to see?

•

Build on what we have
– E.g. logic from ApprovedRevs to return the right semantics

•

Store historical property data
– This might have some implications. What about db size? Caching?

•

SMW Core or SMW Extension?
– {{#ask: [[Category:Thingies]] |?Foo=Bar | timestamp=2013-07-09 }}
– {{#ask: [[Category:Thingies]] |?Foo=Bar | tag=version1 }}

•

First next step: collect potential use cases and prepare an RFC?

I’d like to see this happen. And you?

24
25

More Related Content

Viewers also liked

Los cinco reinos
Los cinco reinosLos cinco reinos
Los cinco reinos
america chaparro
 
Technologic timeline
Technologic timelineTechnologic timeline
Technologic timeline
Judi Rivera
 
Cisa december2004
Cisa december2004Cisa december2004
Cisa december2004
Brian Halweil
 
Het Semantisch Web
Het Semantisch WebHet Semantisch Web
Het Semantisch Web
Remco de Boer
 
WICSA 2011 Tutorial T2: Architectural Knowledge Management with Semantic Wikis
WICSA 2011 Tutorial T2: Architectural Knowledge Management with Semantic WikisWICSA 2011 Tutorial T2: Architectural Knowledge Management with Semantic Wikis
WICSA 2011 Tutorial T2: Architectural Knowledge Management with Semantic Wikis
Remco de Boer
 
The Kadaster Innovation Funnel
The Kadaster Innovation FunnelThe Kadaster Innovation Funnel
The Kadaster Innovation Funnel
Remco de Boer
 
Architecture as a Service
Architecture as a ServiceArchitecture as a Service
Architecture as a Service
Remco de Boer
 
Capitalisation dispositifs d'actions sociale de proximité (dasp) Maroc
Capitalisation dispositifs d'actions sociale de proximité (dasp) MarocCapitalisation dispositifs d'actions sociale de proximité (dasp) Maroc
Capitalisation dispositifs d'actions sociale de proximité (dasp) Maroc
Fouad Madec
 

Viewers also liked (8)

Los cinco reinos
Los cinco reinosLos cinco reinos
Los cinco reinos
 
Technologic timeline
Technologic timelineTechnologic timeline
Technologic timeline
 
Cisa december2004
Cisa december2004Cisa december2004
Cisa december2004
 
Het Semantisch Web
Het Semantisch WebHet Semantisch Web
Het Semantisch Web
 
WICSA 2011 Tutorial T2: Architectural Knowledge Management with Semantic Wikis
WICSA 2011 Tutorial T2: Architectural Knowledge Management with Semantic WikisWICSA 2011 Tutorial T2: Architectural Knowledge Management with Semantic Wikis
WICSA 2011 Tutorial T2: Architectural Knowledge Management with Semantic Wikis
 
The Kadaster Innovation Funnel
The Kadaster Innovation FunnelThe Kadaster Innovation Funnel
The Kadaster Innovation Funnel
 
Architecture as a Service
Architecture as a ServiceArchitecture as a Service
Architecture as a Service
 
Capitalisation dispositifs d'actions sociale de proximité (dasp) Maroc
Capitalisation dispositifs d'actions sociale de proximité (dasp) MarocCapitalisation dispositifs d'actions sociale de proximité (dasp) Maroc
Capitalisation dispositifs d'actions sociale de proximité (dasp) Maroc
 

Similar to Semantic Time Travelling - Tagging and branching knowledge with SMW (a vision)

Democratising Software Architecture
Democratising Software ArchitectureDemocratising Software Architecture
Democratising Software Architecture
Eoin Woods
 
Semantic Wiki: Social Semantic Web In Action:
Semantic Wiki: Social Semantic Web In Action: Semantic Wiki: Social Semantic Web In Action:
Semantic Wiki: Social Semantic Web In Action:
Jesse Wang
 
An introduction to fundamental architecture concepts
An introduction to fundamental architecture conceptsAn introduction to fundamental architecture concepts
An introduction to fundamental architecture concepts
wweinmeyer79
 
Visible Architectures
Visible ArchitecturesVisible Architectures
Visible Architectures
Luke Hohmann
 
Ea balanceren tussen denken en doen
Ea   balanceren tussen denken en doenEa   balanceren tussen denken en doen
Ea balanceren tussen denken en doen
Bas van Gils
 
SharePoint Wiki Feasibility Report (Draft) - Travis Barker.pdf
SharePoint Wiki Feasibility Report (Draft) - Travis Barker.pdfSharePoint Wiki Feasibility Report (Draft) - Travis Barker.pdf
SharePoint Wiki Feasibility Report (Draft) - Travis Barker.pdf
Innovate Vancouver
 
02archintro
02archintro02archintro
02archintro
624820
 
An Introduction To Fundamental Architecture Concepts
An Introduction To Fundamental Architecture ConceptsAn Introduction To Fundamental Architecture Concepts
An Introduction To Fundamental Architecture Concepts
Hannah Baker
 
Building a Digital Learning Object w/ Articulate Storyline 2
Building a Digital Learning Object w/ Articulate Storyline 2Building a Digital Learning Object w/ Articulate Storyline 2
Building a Digital Learning Object w/ Articulate Storyline 2
Shalin Hai-Jew
 
Modern development paradigms
Modern development paradigmsModern development paradigms
Modern development paradigms
Ivano Malavolta
 
Software Archaeology - Raiders of the Lost Code (short)
Software Archaeology - Raiders of the Lost Code (short)Software Archaeology - Raiders of the Lost Code (short)
Software Archaeology - Raiders of the Lost Code (short)
Lars Martin
 
building_private_cloud_with_oss_for_scientific_environments-libre
building_private_cloud_with_oss_for_scientific_environments-librebuilding_private_cloud_with_oss_for_scientific_environments-libre
building_private_cloud_with_oss_for_scientific_environments-libreVijayabalan Open to Explore
 
The Role of the Architect
The Role of the ArchitectThe Role of the Architect
The Role of the Architect
Jonathan Holloway
 
Agile Architecture (MAE slides)
Agile Architecture (MAE slides)Agile Architecture (MAE slides)
Agile Architecture (MAE slides)
Richard Green
 
System Architect and Rhapsody
System Architect and RhapsodySystem Architect and Rhapsody
System Architect and Rhapsody
Martin Owen
 
Joint Release and Business Iteration Planning in a Large Scale Agile Project ...
Joint Release and Business Iteration Planning in a Large Scale Agile Project ...Joint Release and Business Iteration Planning in a Large Scale Agile Project ...
Joint Release and Business Iteration Planning in a Large Scale Agile Project ...DmitriyViktorov
 
bol.com Dutch Container Day presentation
bol.com Dutch Container Day presentationbol.com Dutch Container Day presentation
bol.com Dutch Container Day presentation
Maarten Dirkse
 
IT architecture and architects
IT architecture and architectsIT architecture and architects
IT architecture and architects
Andre Dovgal
 
IWMW 2002: Portals and CMS:" Why You Need Them Both
IWMW 2002: Portals and CMS:" Why You Need Them BothIWMW 2002: Portals and CMS:" Why You Need Them Both
IWMW 2002: Portals and CMS:" Why You Need Them Both
IWMW
 
Understanding and Addressing Architectural Challenges of Cloud- Based Systems
Understanding and Addressing Architectural Challenges of Cloud- Based SystemsUnderstanding and Addressing Architectural Challenges of Cloud- Based Systems
Understanding and Addressing Architectural Challenges of Cloud- Based Systems
CREST
 

Similar to Semantic Time Travelling - Tagging and branching knowledge with SMW (a vision) (20)

Democratising Software Architecture
Democratising Software ArchitectureDemocratising Software Architecture
Democratising Software Architecture
 
Semantic Wiki: Social Semantic Web In Action:
Semantic Wiki: Social Semantic Web In Action: Semantic Wiki: Social Semantic Web In Action:
Semantic Wiki: Social Semantic Web In Action:
 
An introduction to fundamental architecture concepts
An introduction to fundamental architecture conceptsAn introduction to fundamental architecture concepts
An introduction to fundamental architecture concepts
 
Visible Architectures
Visible ArchitecturesVisible Architectures
Visible Architectures
 
Ea balanceren tussen denken en doen
Ea   balanceren tussen denken en doenEa   balanceren tussen denken en doen
Ea balanceren tussen denken en doen
 
SharePoint Wiki Feasibility Report (Draft) - Travis Barker.pdf
SharePoint Wiki Feasibility Report (Draft) - Travis Barker.pdfSharePoint Wiki Feasibility Report (Draft) - Travis Barker.pdf
SharePoint Wiki Feasibility Report (Draft) - Travis Barker.pdf
 
02archintro
02archintro02archintro
02archintro
 
An Introduction To Fundamental Architecture Concepts
An Introduction To Fundamental Architecture ConceptsAn Introduction To Fundamental Architecture Concepts
An Introduction To Fundamental Architecture Concepts
 
Building a Digital Learning Object w/ Articulate Storyline 2
Building a Digital Learning Object w/ Articulate Storyline 2Building a Digital Learning Object w/ Articulate Storyline 2
Building a Digital Learning Object w/ Articulate Storyline 2
 
Modern development paradigms
Modern development paradigmsModern development paradigms
Modern development paradigms
 
Software Archaeology - Raiders of the Lost Code (short)
Software Archaeology - Raiders of the Lost Code (short)Software Archaeology - Raiders of the Lost Code (short)
Software Archaeology - Raiders of the Lost Code (short)
 
building_private_cloud_with_oss_for_scientific_environments-libre
building_private_cloud_with_oss_for_scientific_environments-librebuilding_private_cloud_with_oss_for_scientific_environments-libre
building_private_cloud_with_oss_for_scientific_environments-libre
 
The Role of the Architect
The Role of the ArchitectThe Role of the Architect
The Role of the Architect
 
Agile Architecture (MAE slides)
Agile Architecture (MAE slides)Agile Architecture (MAE slides)
Agile Architecture (MAE slides)
 
System Architect and Rhapsody
System Architect and RhapsodySystem Architect and Rhapsody
System Architect and Rhapsody
 
Joint Release and Business Iteration Planning in a Large Scale Agile Project ...
Joint Release and Business Iteration Planning in a Large Scale Agile Project ...Joint Release and Business Iteration Planning in a Large Scale Agile Project ...
Joint Release and Business Iteration Planning in a Large Scale Agile Project ...
 
bol.com Dutch Container Day presentation
bol.com Dutch Container Day presentationbol.com Dutch Container Day presentation
bol.com Dutch Container Day presentation
 
IT architecture and architects
IT architecture and architectsIT architecture and architects
IT architecture and architects
 
IWMW 2002: Portals and CMS:" Why You Need Them Both
IWMW 2002: Portals and CMS:" Why You Need Them BothIWMW 2002: Portals and CMS:" Why You Need Them Both
IWMW 2002: Portals and CMS:" Why You Need Them Both
 
Understanding and Addressing Architectural Challenges of Cloud- Based Systems
Understanding and Addressing Architectural Challenges of Cloud- Based SystemsUnderstanding and Addressing Architectural Challenges of Cloud- Based Systems
Understanding and Addressing Architectural Challenges of Cloud- Based Systems
 

Recently uploaded

Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
Alex Pruden
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...
Zilliz
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
Zilliz
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
ThomasParaiso2
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
Matthew Sinclair
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 

Recently uploaded (20)

Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 

Semantic Time Travelling - Tagging and branching knowledge with SMW (a vision)

  • 1. Semantic Time Travelling Tagging and branching knowledge with SMW (a vision) Dr. Remco de Boer CTO @ XL&Knowledge rdeboer@xl-knowledge.com Consultant @ ArchiXL rdeboer@archixl.nl SMWCon Fall 2013 Tuesday, October 29th 2013 Berlin, Germany
  • 2. About us… • ArchiXL – – – – Independent Dutch Consultancy specialised in Enterprise Architecture (EA) Located in Amersfoort Customers mainly public sector Started using SMW internally for EA repository • XL&Knowledge (“Excellent knowledge”) – Knowledge management label for ArchiXL – Knowledge management world is much larger than only EA – SMW as knowledge management platform 2
  • 3. SMW in Enterprise Architecture 3
  • 4. A typical (many-stakeholder) architecture process Formal decision Public consultation Steering committee Advice on decision Advisory board Prepare architectural decisions Public Architect Expert peers 4
  • 5. We sometimes encounter some tension between ‘the new world’ and ‘the old world’ Wiki Documents • • • Ease of use (browse, query) Engages other stakeholders Live knowledge base; ‘always’ up to date • • • Formal status (approval) Editing procedures (architecture board) ‘Release management’ Feels intangible • Feels tangible •
  • 6. Version management in SMW – what do we have? • Page history – Show individual revisions • Approved Revs – Distinguish approved revision from latest revision • Semantic History – ‘Semantify’ edit history • Semantic Watchlist – Monitor changes in semantic properties • Versioning in the knowledge model – Add semantic properties to store version-related information 6
  • 7. Page History: Per-page Revisions in (Semantic) MediaWiki 7
  • 9. Per-page Revisions with Approved Revs 9
  • 12. Versioning in (architecture) knowledge models • ‘Version’ attribute – Increase with each new (major) version of an architectural knowledge entity (i.e., design decision, model element, etc.) • ‘State’ attribute – Model life cycle of an architectural knowledge entity (e.g., tentative, decided, approved, obsolete) • Multiple elements – Each version is a first class entity in its own right 12
  • 13. Why isn’t this enough? • At a single point in time, we may be interested in several manifestations of the same entity: – Historic (v1, v2, v2.1, v3, …) – Actual (‘live’) – Future (plateaus, gap analysis, what-if scenarios) • A [historic/actual/future] version of an architectural knowledge entity is only meaningful in the context of all other entities at the same time. • IST (baseline) vs. SOLL (target) architecture – (mostly) the same elements in a different configuration 13
  • 14. Version management in SMW – what do we need? Back to the Future (IMDb, http://www.imdb.com) 14
  • 15. Question – Who recognizes this? Cool, that’s exactly what I need! Wonder if it works with the version of SF I have installed… 15
  • 16. What if… Suppose we could travel through our wiki to a certain point in time To a specific date / time OR to a particular event Back to the Future (IMDb, http://www.imdb.com) 16
  • 17. Examples of things we could do… • • • • Show the documentation for a particular release of a piece of software Display the contents of the wiki as they were on December 31, 2012 Show one of the formally approved versions of an architecture Switch between different stages of architectural knowledge in an EA repository NB. This wouldn´t apply to just a single page, • ... but to the wiki as a whole. This means that for instance SMW-queries would return results that are consistent with the selected point in time. Think for a minute about what this could mean for your practice. Share your ideas! 17
  • 18. A useful analogy: Software Revision Control • Goal: Tracking and controlling changes in software – Versioning – Multi-site teamwork – Examples: CVS, Subversion, Git • Useful concepts: – – – – Trunk Tag Branch Merge / diff 18
  • 19. Tagging Knowledge in SMW • Take a ‘snapshot’ of the wiki • Label page revisions that represent coherent sets of knowledge with logical names • NB. A tag applies to the state of all knowledge in the SMW repository on a certain branch at a certain point in time • Example use cases for architectural knowledge: – Produce versions of the architecture, e.g., for approval or reference purposes – Have different views for different stakeholders (historic, current, future) 19
  • 20. Branching Knowledge in SMW • (Temporarily) branch off new and/or changing knowledge • NB. Branches may also contain tagged revisions • Example use cases for architectural knowledge: – Separate target future states (plateaus) from current state – Allow independent development of parts of the architectural knowledge base – Work out what-if scenarios / tentative decisions + implications; perform tradeoff analyses 20
  • 21. Merging Knowledge in SMW • Determine the difference between two branches and incorporate changes from one branch into another • Example use cases for architectural knowledge: – Integrate (approved) revisions from separate branches into a coherent set of architectural knowledge – Support architecture evolution (integrate plateaus) 21
  • 22. A glimpse into the future? 22
  • 23. A glimpse into the future? 23
  • 24. • Back to the Future (IMDb) How do we get there? What do we need? Start small – Focus on tags and timestamps – Important design decision: how do you indicate which tag / timestamp you want to see? • Build on what we have – E.g. logic from ApprovedRevs to return the right semantics • Store historical property data – This might have some implications. What about db size? Caching? • SMW Core or SMW Extension? – {{#ask: [[Category:Thingies]] |?Foo=Bar | timestamp=2013-07-09 }} – {{#ask: [[Category:Thingies]] |?Foo=Bar | tag=version1 }} • First next step: collect potential use cases and prepare an RFC? I’d like to see this happen. And you? 24
  • 25. 25