SlideShare a Scribd company logo
1 of 25
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

Technologic timeline
Technologic timelineTechnologic timeline
Technologic timelineJudi Rivera
 
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 WikisRemco de Boer
 
The Kadaster Innovation Funnel
The Kadaster Innovation FunnelThe Kadaster Innovation Funnel
The Kadaster Innovation FunnelRemco de Boer
 
Architecture as a Service
Architecture as a ServiceArchitecture as a Service
Architecture as a ServiceRemco 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) MarocFouad 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 ArchitectureEoin 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 conceptswweinmeyer79
 
Visible Architectures
Visible ArchitecturesVisible Architectures
Visible ArchitecturesLuke Hohmann
 
Ea balanceren tussen denken en doen
Ea   balanceren tussen denken en doenEa   balanceren tussen denken en doen
Ea balanceren tussen denken en doenBas 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.pdfInnovate Vancouver
 
02archintro
02archintro02archintro
02archintro624820
 
An Introduction To Fundamental Architecture Concepts
An Introduction To Fundamental Architecture ConceptsAn Introduction To Fundamental Architecture Concepts
An Introduction To Fundamental Architecture ConceptsHannah 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 2Shalin Hai-Jew
 
Modern development paradigms
Modern development paradigmsModern development paradigms
Modern development paradigmsIvano 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
 
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 RhapsodyMartin 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 presentationMaarten Dirkse
 
IT architecture and architects
IT architecture and architectsIT architecture and architects
IT architecture and architectsAndre 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 BothIWMW
 
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 SystemsCREST @ University of Adelaide
 

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

Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 

Recently uploaded (20)

Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 

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