KURSPLAN
Development of Server-side Solutions, 6 högskolepoäng
Development of Server-side Solutions, 6 credits
Kursplan för studenter vår 2017
Kurskod: TDVS27
Fastställd av: VD 2016-01-03
Gäller fr.o.m.: 2017-01-01
Version: 1
Diarienummer:JTH 2016/1206-313
Utbildningsnivå: Avancerad nivå
Utbildningsområde: Tekniska området (95%) och samhällsvetenskapliga området (5%)
Ämnesgrupp: DT1
Fördjupning: A1F
Huvudområde: Informatik

Lärandemål

After a successful course, the student shall

Kunskap och förståelse

- demonstrate comprehension of stateless web services and REST API
- display knowledge of standard vocabularies and schemas for structuring information

Färdighet och förmåga

- demonstrate the ability to create server-side scripts in a scripting language
- demonstrate skills of creating a REST web service with a web framework
- demonstrate the ability to find and consume linked data in a web application
- demonstrate the ability to publish datasets on the server side

Värderingsförmåga och förhållningssätt

- demonstrate the ability to choose an appropriate implementation of a server-side solution based on the principles of service design
- demonstrate an understanding of advantages and disadvantages of using semantic technologies for data processing compared to usual databases techniques

Innehåll

The course introduces solutions on the server side, which provide digital products with structured information. Server-side solutions are created taking into account the principles of service design. The course starts with basics of programming in JavaScript and explains web frameworks for creation of server-side applications such as Express. The client-server model is considered then as well as creation of web services with REST API. Request routing, templates for web pages and serialization with JSON are explained next. Storing of data in a database on the server is detailed then. The second part of course continues the subject of information architecture and semantic technologies. This part deals with enhancing web applications with semantic technologies and linked data: embedding semantic tags in HTML, finding and consuming open data as well as publishing own datasets.
The topics covered in the course include:
- development of server-side solutions based on the principles of service design
- introduction to programming in Python
- the client-server model of programming
- web frameworks for Python
- request routing and web page templates
- stateless web services, REST API, and JSON serialization
- storing data in a database and ER-modelling
- using open vocabularies and standard schemas for structuring information
- enhancing HTML pages with embedded RDFa tags
- consuming linked data with JSON-LD and SPARQL
- publishing data with RDF(S), JSON-LD, and a SPARQL endpoint

Undervisningsformer

The course consists of lectures and project work with supervision meetings.

Undervisningen bedrivs på engelska.

Förkunskapskrav

Passed courses at least 90 credits within the major subject in Informatics, Computer Science, Computer Engineering, Interaction Design (with relevant courses in web programming), and completed course User Experience Design, 6 credits. Proof of English proficiency is required (eller motsvarande kunskaper).

Examination och betyg

Kursen bedöms med betygen 5, 4, 3 eller Underkänd.

Poängregistrering av examinationen för kursen sker enligt följande system:
ExaminationsmomentOmfattningBetyg
Projektarbete6 hp5/4/3/U

Kurslitteratur

Kurslitteratur fastställs senast en månad före kursstart.
Sams Teach Yourself Node.js in 24 Hours by George Ornbo, Sams, 2012.
Linked Data: Structured Data on the Web by David Wood, Marsha Zaidman, Luke Ruth, Manning Publications, 2014.