Bachelor practical course linked data preliminary meeting

26
Technische Universität München Bachelor Practical Course Linked Data Winter Term 2014/2015 Preliminary meeting - 25.6.2014 Claudius Hauptmann

Transcript of Bachelor practical course linked data preliminary meeting

Page 1: Bachelor practical course linked data   preliminary meeting

Technische Universität München

Bachelor Practical Course Linked DataWinter Term 2014/2015

Preliminary meeting - 25.6.2014 Claudius Hauptmann

Page 2: Bachelor practical course linked data   preliminary meeting

Technische Universität München

Bachelor Practical Course Linked Data - Preliminary meeting 2

Agenda

1. Organisational Issues 2. Linked Data 3. Continuous Delivery

Page 3: Bachelor practical course linked data   preliminary meeting

Technische Universität München

Organisational Issues

Page 4: Bachelor practical course linked data   preliminary meeting

Technische Universität München

Bachelor Practical Course Linked Data - Preliminary meeting 4

Bachelor Practical Course - Module Description

• Intended Learning Outcomes: “Participants are able to design and implement small software systems in a team. They know how to apply engineering methods and models and can judge the risks and typical problems encountered in software projects.”

• Content: “Participants exercise systematic software engineering for a small system in small teams with a precise task description with tight time constraints (design, implementation, test). Intermediate results of the team work have to be presented. Design, project plans and implementation have to be documented.”

• Work load: 300 total hours (90 contact hours, 21o self-study hours)

Page 5: Bachelor practical course linked data   preliminary meeting

Technische Universität München

Bachelor Practical Course Linked Data - Preliminary meeting 5

Topics

• Linked Data technologies und applications (RDF, SPARQL, LOD) • Developing web applications using Java • Agile project management • Configuration management • Continuous delivery • Test automation

Page 6: Bachelor practical course linked data   preliminary meeting

Technische Universität München

Bachelor Practical Course Linked Data - Preliminary meeting 6

Schedule

• 06.10. Setup SDE (please bring your notebooks!) • 13.10. Task 1: Linked Data and SPARQL • 20.10. Task 2: Using Linked Data in Java-Projects • 27.10. Task 3: Developing Web Applications using Java • 03.11. Sprint 1 • 10.11. Sprint 2 • 17.11. Sprint 3 • 24.11. Sprint 4 • …

Page 7: Bachelor practical course linked data   preliminary meeting

Technische Universität München

Bachelor Practical Course Linked Data - Preliminary meeting 7

Schedule

• … • 01.12. Sprint 5 • 08.12. Sprint 6 • 15.12. Sprint 7 • (22.12. Sprint 8) • (12.01. Sprint 9) • 19.01. Presentation !!

Page 8: Bachelor practical course linked data   preliminary meeting

Technische Universität München

Bachelor Practical Course Linked Data - Preliminary meeting 8

Page 9: Bachelor practical course linked data   preliminary meeting

Technische Universität München

Bachelor Practical Course Linked Data - Preliminary meeting 9

Page 10: Bachelor practical course linked data   preliminary meeting

Technische Universität München

Bachelor Practical Course Linked Data - Preliminary meeting 10

Page 11: Bachelor practical course linked data   preliminary meeting

Technische Universität München

Linked Data

Page 12: Bachelor practical course linked data   preliminary meeting

Technische Universität München

Bachelor Practical Course Linked Data - Preliminary meeting 12

Motivation

• Publish datasets over the web • Query datasets effectively by applications • Graph-based data model • Extension, integration, inference and uniform querying

Page 13: Bachelor practical course linked data   preliminary meeting

Technische Universität München

Bachelor Practical Course Linked Data - Preliminary meeting 13

Queries

• “Retrieve a performance of the Beethoven violin concerto by a Chinese orchestra”

• “Retrieve a photo of the conductor of this performance” • “List male British rock musicians married to Scandinavians”

Page 14: Bachelor practical course linked data   preliminary meeting

Technische Universität München

Bachelor Practical Course Linked Data - Preliminary meeting 14

Background standards

• HyperText Transfer Protocol (HTTP) • Uniform Resource Identifier (URI) • eXtensible Markup Language (XML) • Resource Description Framework (RDF) • RDF Schema (RDFS) • Web Ontology Language (OWL) • SPARQL Protocol and RDF Query Language (SPARQL)

Page 15: Bachelor practical course linked data   preliminary meeting

Technische Universität München

Bachelor Practical Course Linked Data - Preliminary meeting 15

Uniform Resource Identifier (URI)

• A compact sequence of characters that identifies an abstract or physical resource

• Data from different data sources has to be linked to indicate synonyms

http://rdf.freebase.com/ns/en.ludwig_van_beethoven!

http://dbpedia.org/resource/Ludwig_van_Beethoven!

http://musicbrainz.org/artist/1f9df192-a621-4f54-8850-2c5373b7eac9#_!

http://data.nytimes.com/N30866506154608358173

Page 16: Bachelor practical course linked data   preliminary meeting

Technische Universität München

Bachelor Practical Course Linked Data - Preliminary meeting 16

Resource Description Framework (RDF)

• Statements are represented as triples of the form subject-predicate-object

<http://musicbrainz.org/artist/b10bbbfc-cf9e-42e0-be17-e2c3e1d2600d>!

<http://www.w3.org/1999/02/22-rdf-syntax-ns#type>!

<http://musicontology.com/specification/#term-MusicGroup>.

Page 17: Bachelor practical course linked data   preliminary meeting

Technische Universität München

Bachelor Practical Course Linked Data - Preliminary meeting 17

SPARQL Protocol and RDF Query Language

• Language for formulating queries over RDF data • It is the Semantic Web's counterpart to SQL

PREFIX dc: <http://purl.org/dc/elements/1.1/> PREFIX foaf: <http://xmlns.com/foaf/0.1/> PREFIX dbpedia: <http://dbpedia.org/resource/> PREFIX music-ont: <http://purl.org/ontology/mo/> SELECT ?album_name ?track_title WHERE { dbpedia:The_Beatles foaf:made ?album . ?album dc:title ?album_name . ?album music-ont:track ?track . ?track dc:title ?track_title }

Page 18: Bachelor practical course linked data   preliminary meeting

Technische Universität München

Bachelor Practical Course Linked Data - Preliminary meeting 18

Sites using Linked Data

• http://data.nytimes.com/schools/schools.html • http://www.bbc.co.uk/music • http://linkedgeodata.org/ • http://www.data.gov/ • http://data.gov.uk/

Page 19: Bachelor practical course linked data   preliminary meeting

Technische Universität München

Bachelor Practical Course Linked Data - Preliminary meeting 19

References

• EUCLID Project:http://www.euclid-project.eu/modules/chapter1

Page 20: Bachelor practical course linked data   preliminary meeting

Technische Universität München

Continuous Delivery

Page 21: Bachelor practical course linked data   preliminary meeting

Technische Universität München

Bachelor Practical Course Linked Data - Preliminary meeting 21

Continuous Delivery - Motivation

• Goal: Deliver software as quickly as possible • A lot of software development methodologies focus on requirement

engineering and impact on development effort • Bottleneck: build, deploy, test and release process

Page 22: Bachelor practical course linked data   preliminary meeting

Technische Universität München

Bachelor Practical Course Linked Data - Preliminary meeting 22

Continuous Delivery - Principles

• Create a Repeatable, Reliable Process for Releasing Software • Automate Almost Everything • Keep Everything in Version Control • If It Hurts, Do It More Frequently, and Bring the Pain Forward • Build Quality In • Done Means Released • Everybody is Responsible for the Delivery Process • Continuous Improvement

Page 23: Bachelor practical course linked data   preliminary meeting

Technische Universität München

Bachelor Practical Course Linked Data - Preliminary meeting 23

Configuration Management - Definition

Configuration Management refers to the process by which all artefacts relevant to your project, and the relationships between them, are stored, retrieved and uniquely identified, and modified.

Page 24: Bachelor practical course linked data   preliminary meeting

Technische Universität München

Bachelor Practical Course Linked Data - Preliminary meeting 24

Configuration Management - Key Questions

• Can I exactly reproduce any of my environments and their configuration?

• Can I easily make an incremental change and deploy to any, and all, of my environments?

• Can I easily see each change that occurred to an environment and trace it back to see exactly what the change was and who made it?

• Can I satisfy all of the compliance regulations that I am subject to? • Does every member of the team easily get the information needed?

Page 25: Bachelor practical course linked data   preliminary meeting

Technische Universität München

Bachelor Practical Course Linked Data - Preliminary meeting 25

Continuous Integration - Essential Practices

• Don’t Check in on a Broken Build • Always Run all Commit Tests locally before Checking Committing • Wait for Commit Tests to Pass before Moving On • Never Go Home on a Broken Build • Always be Prepared to Revert to a Previous Revision • Time-Box Fixing before Reverting • Don’t Comment Out Failing Tests • Take Responsibility for all Breakages That Result from Your Changes • Test-Driven Development

Page 26: Bachelor practical course linked data   preliminary meeting

Technische Universität München

Bachelor Practical Course Linked Data - Preliminary meeting 26

References