Child pages
  • SIF AU Technical Workshop November 2019

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Thursday July 6, 2017

Monday November 18, 2019

Sessions

8:30am - 9:00am"Registration" & Welcome
9:00am - 9:30am

SIF Intro - Joerg Huber

  • What is SIF?
  • What Problems are Solved?
  • What is an Adapter, a Broker, a Zone and what is their relationship? 
  • SIF Environment and Connections

Presentation - "00 - SIF Intro"
9:30am - 10:00am

SIF 3.x Concepts - Joerg Huber

  • REST
  • DIRECT vs. BROKERED
  • Immediate vs. Delayed
  • Events
  • Specification

See also Common Terms and SIF 3.0.x Concepts for some more information.

Presentation - "04 - SIF3 Concepts.pptx"

9:30am - 10:00am

SIF3  Framework Overview (Java & .Net)- Joerg Huber

  • Overview
  • What does it cover.
  • What is missing.

Presentation - "01 - SIF3 Framework Overview.pptx"

10:30am - 10:45amShort Coffee Break
10:45am - 12:15am

First Consumer (incl. Exercise) - Joerg Huber

  • What is a consumer
  • How to develop a basic consumer (Get Methods)

See also SIF Consumers.

Presentation - "03 - SIF3 First Consumer.pptx"

Exercise 1: Install & Verify SIF3 Framework - "SIF3 Training Exercises (1 Day) - Java.docx" & "Sif3Framework .NET Training Exercises (AU).docx"

Exercise 2: Write first Consumer Methods - "SIF3 Training Exercises (1 Day) - Java.docx" & "Sif3Framework .NET Training Exercises (AU).docx"

12:15pm - 1:00pmLunch Break
1:00pm - 1:45pm

First Look at an Object Provider - Joerg Huber

  • What is an Object Provider
  • What is it responsible for (events, RefId allocation, Environments if DIRECT)
  • What can the Frameworks do
  • How to develop a basic Object Provider

See also SIF Providers.

Presentation - "05 - SIF3 Providers.pptx"

1:45pm - 2:30pm

Exercise: Write a Provider - SchoolInfo

Presentation - "06 - SIF3 Provider Exercise.pptx"

Exercise 3 - "SIF3 Training Exercises (1 Day) - Java.docx" & "Sif3Framework .NET Training Exercises (AU).docx"

2:30pm - 3:00pm

Catch up on outstanding Exercises...

Or

Optional Exercise 4: ("SIF3 Training Exercises (1 Day) - Java.docx" & "Sif3Framework .NET Training Exercises (AU).docx")

Add some more functionality to your Consumer (Multi-Object Operations)

3:00pm - 3:15pmShort Coffee Break
3:15pm - 3:45pm

REST URLs structures used in SIF 3.x - Joerg Huber

  • During testing it is useful to know the basics of a SIF3 REST URL.
  • Components
  • HTTP Headers or SIF eXpress?

Presentation: "08 - SIF3 REST URL Structure .pptx"

3:45pm – 5:00pm

Service Paths & Query By Example (QBE) - Joerg Huber

  • What is a Service Path
  • What is QBE
  • How to use them, when to use them?

Presentation: "12 - SIF3 Service Paths .pptx"

Exercise 7 - "SIF3 Training Exercises (1 Day) - Java.docx" & "Sif3Framework .NET Training Exercises (AU).docx"

5:00pm - 5:30pmWrap up ...

Sessions

9:00am - 9:30am

REST URLs structures used in SIF 3.x - Joerg Huber

  • During testing it is useful to know the basics of a SIF3 REST URL.
  • Components
  • HTTP Headers or SIF eXpress?

Presentation: "08 - SIF3 REST URL Structure .pptx"

9:30am - 10:30am

Multi-Object CRUD Operations & Exercise - Joerg Huber

Presentation - "10 - SIF3 Multi-Object CRUD.pptx"

Exercise 5 - "SIF3 Training Exercises (2 Day) - Java.docx" & "Sif3Framework .NET Training Exercises (AU).docx"

10:30am - 10:45amShort Coffee Break
10:45am - 12:00pm

Service Paths & Query By Example (QBE) - Joerg Huber

  • What is a Service Path
  • What is QBE
  • How to use them, when to use them?

Presentation: "12 - SIF3 Service Paths .pptx"

Exercise 6 - "SIF3 Training Exercises (2 Day) - Java.docx" & "Sif3Framework .NET Training Exercises (AU).docx"

12:00pm - 12:45pmLunch Break
12:45pm - 13:30pm

SIF Events including Demo - Joerg Huber

  • What is a SIF Event
  • Who is responsible to send an Event and when?
  • What events are there?
  • What is the infrastructure for Events?
  • Real Live Event Demo with a SIF3 Broker

Presentation: "SIF3 Events and Demo.pptx"

13:30pm - 14:00pm

HITS Overview

  • What is HITS
  • What is a HITS environment
  • Guide on using HITS and the Dashboard.
14:00pm - 15:30pm

Connect-A-Thon

For the reminder of the afternoon participants try to connect their consumers and providers between each other. Knowledge gained throughout the last two days should enable them to connect and exchange data. Ideally we can pair up .Net with Java developers to show case that the programming language or the framework used does not matter since they implement the SIF3 Standard.

This is also an opportunity to connect to HITS and play with your consumers to retrieve data from a HITS environment.

Exercise 7: "SIF3 Training Exercises (2 Day) - Java.docx" & "Sif3Framework .NET Training Exercises (AU).docx"

Optional Sessions



Manual Development Environment Setup for Java (required for Linux users, optional for Windows & Mac users)

Please note, while the SIF3 Framework is not tied into a given JDK, IDE, Database, Web- or Application Server there will be some constraints and boundaries we set for the training course to make it as efficient as possible. During the course and specifically for the exercises there will be very limited time to download, install and configure your development environment and therefore we expect certain software already be downloaded and installed. We also suggest a specific IDE, and Web-Server to ensure consistency during the exercises. So, please take note of the pre-requisits and their versions. If you wish to alter any of the suggested software you must ensure that you have installed and tested it before you start the training.

The SIF3 Framework (Java) Training will expect and use the following software and minimum versions thereof:

  • JDK 8 installed: Version 1.8 installed on the developer's machine (i.e.visit this site for a free OpenJDK - https://www.azul.com/downloads/zulu/).
    => It is assumed that the developer has a good working knowledge of Java and Java Web development.
  • Eclipse IDE installed: The training course will use the Java EE Developer version of Eclipse such as Luna. You can find it at this location: https://eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/mars2. Please note you could use any other IDE but the training course is packaged as an Eclipse project, so using eclipse will make it much easier for you.
    => It is assumed that the developer has a good working knowledge on how to use their IDE of choice. 

  • Tomcat 8 or 8.5 installed: You can find it at this location: https://tomcat.apache.org/download-80.cgi. Please note you can use a newer version if you wish but the Training Project is pre-configured to use version 8 of Tomcat.
    => If you decide to use another web- or application server (i.e. JBoss 6+, Jetty 8+), please ensure that you have it downloaded, installed and configure to use it with your IDE. The selected web- or application server must support the servlet 3.0 specification and the developer must have a good understanding on how to administer the selected web- or application server.

  • DB: During the training we will use the SQLite DB that comes with the Training Projects. There is no need to install or bring along another DB.

  • DB Explorer installed: For some of the exercise we need to look at the DB setup of the framework. Therefore a DB Explorer based on JDBC will be required. DBVisualiser and SQuirreL (https://sourceforge.net/projects/squirrel-sql/files/1-stable/3.7.1-plainzip/) are two examples. Because the training will use SQLite you need a SQLite JDBC driver. You can download one form here. Ideally you configure your DB Explorer to use this driver but this could potentially be done during the training.
  • Ant: Build scripts are provided as part of the training course. You may or may not use them. If you wish to use them you should have ant installed on your machine either as part of your IDE or external to your IDE.

  • REST Client: For some exercises we will need a REST client to test the code. There are quite a few rest clients around. The Firefox browser can be used but the most convenient and simplest REST Client is Postman. We recommend to use this and download it from here.

  • SIF3 Framework (optional but recommended) from Github (https://github.com/nsip/sif3-framework-java) downloaded and imported to the developer's IDE. It will be used as reference material and potentially as demo for some concepts.

  • SIF3 Training Project downloaded from Github (https://github.com/nsip/sif3-training-java): Exercises, sample code and solutions for training course. Download and import into your IDE. It will be used as part of the training.

...