Courses/ASE 24WS: Difference between revisions
(add: →Interests & Knowledge) |
(→Timetable: fix alias query) |
||
(10 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
<div style="font-size:35px; font-weight:bold"> Kurs Advanced Software Engineering, Wintersemester 24/25 </div> <!--so it doesn't show up in TOC--> | <div style="font-size:35px; font-weight:bold"> Kurs Advanced Software Engineering, Wintersemester 24/25 </div> <!--so it doesn't show up in TOC--> | ||
M.Sc. Medieninformatik, Universität Regensburg. | M.Sc. Medieninformatik, Universität Regensburg. | ||
<div style="float:right; width:25em;">__TOC__</div> | <div style="float:right; width:25em;">__TOC__</div> | ||
Line 11: | Line 7: | ||
<!-- Links to important/official resources --> | <!-- Links to important/official resources --> | ||
<div style="width:40em; padding-bottom: 7px; background-color:#fff2e5; border: solid 2px #ffcc99"> | <div style="width:40em; padding-bottom: 7px; background-color:#fff2e5; border: solid 2px #ffcc99"> | ||
* Der Kurs in [... GRIPS] | * Der Kurs in [https://elearning.uni-regensburg.de/course/view.php?id=68743 GRIPS] | ||
* Der Kurs in [https://campusportal.uni-regensburg.de:443/qisserver/pages/startFlow.xhtml?_flowId=detailView-flow&unitId=22990&periodId=426&navigationPosition=studiesOffered,courseoverviewShow SPUR] | * Der Kurs in [https://campusportal.uni-regensburg.de:443/qisserver/pages/startFlow.xhtml?_flowId=detailView-flow&unitId=22990&periodId=426&navigationPosition=studiesOffered,courseoverviewShow SPUR] | ||
* Das GraphIT-Item für den Kurs: [[Item:Q1022]] | * Das GraphIT-Item für den Kurs: [[Item:Q1022]] | ||
* | * [https://wiki.mi.ur.de/lehre/ws24/ase_24ws/start Tutorials] used in the Practice Sessions | ||
</div> | </div> | ||
Line 61: | Line 57: | ||
<blockquote> | <blockquote> | ||
For a graph showing the full course click [https://tinyurl.com/23vz49ul here]. | For a graph showing the full course click [https://tinyurl.com/23vz49ul here]. | ||
For a graph showing the goals of the course and their immediate prerequisites click [https://tinyurl.com/29qlmvzd here]. | |||
</blockquote> | </blockquote> | ||
{{ | <!-- Table that contains simple/fast queries for the beggining & ending nodes of a course --> | ||
{| class="wikitable" | |||
! '''Required Knowledge''' !! '''Goals''' | |||
|- | |||
<!-- Linke Spalte --> | |||
| style="width: 50%" | {{#widget:SPARQLquery|code= | |||
#defaultView:Table | |||
# Prerequsisite=outside -depends on-> Course-Topic=inside | |||
PREFIX wdt: <https://graphit.ur.de/prop/direct/> | |||
PREFIX wd: <https://graphit.ur.de/entity/> | |||
select distinct | |||
?Vorwissen ?VorwissenLabel | |||
where { | |||
wd:Q1022 wdt:P14/wdt:P14 ?item. # get all items in course | |||
?item wdt:P1 ?Vorwissen. # get the prerequsites | |||
MINUS { wd:Q1022 wdt:P14/wdt:P14 ?Vorwissen. } # filter out all prereqs that are included in the course | |||
service wikibase:label { bd:serviceParam wikibase:language "en".} | |||
} LIMIT 30 | |||
|caption= Items, not part of the Course, but that are required knowledge | |||
|height=20vh | |||
}} | |||
<!-- Rechte Spalte --> | |||
| style="width: 50%" | {{#widget:SPARQLquery|code= | |||
#defaultView:Table | |||
PREFIX wdt: <https://graphit.ur.de/prop/direct/> | |||
PREFIX wd: <https://graphit.ur.de/entity/> | |||
SELECT DISTINCT ?ZielLabel ?Ziel | |||
where { | |||
wd:Q1022 wdt:P36 ?Ziel. | |||
service wikibase:label { bd:serviceParam wikibase:language "en".} | |||
} LIMIT 20 | |||
|caption=Items, marked as goals | |||
|height=20vh | |||
}} | |||
|- | |||
<!-- Linke Spalte --> | |||
| [https://tinyurl.com/25gbeeea Full screen view of the Query] | |||
<!-- Rechte Spalte --> | |||
| [https://tinyurl.com/2c2qgg48 Full screen view of the Query] | |||
|} | |||
=== Timetable === | === Timetable === | ||
Line 69: | Line 111: | ||
{{#widget:SPARQLquery|code= | {{#widget:SPARQLquery|code= | ||
#defaultView:Timeline | #defaultView:Timeline | ||
PREFIX wdt: <https://graphit.ur.de/prop/direct/> | PREFIX wdt: <https://graphit.ur.de/prop/direct/> | ||
PREFIX wd: <https://graphit.ur.de/entity/> | PREFIX wd: <https://graphit.ur.de/entity/> | ||
select distinct ?Datum ?Session ?SessionLabel ?Inhalte ?InhalteLabel | select distinct ?Datum ?Session ?SessionLabel # ?Inhalte ?InhalteLabel | ||
where { | where { | ||
# todo. change Q:468 to current course | # todo. change Q:468 to current course | ||
wd:Q1022 wdt:P14 ?Session. | wd:Q1022 wdt:P14 ?Session. | ||
?Session wdt:P3 wd:Q427. | ?Session wdt:P3 wd:Q427. | ||
?Session wdt:P19 ?Datum. | ?Session wdt:P19 ?Datum. | ||
# OPTIONAL {?Session wdt:P14 ?Inhalte.} | # OPTIONAL {?Session wdt:P14 ?Inhalte.} | ||
# re-get the alias as ?SessionLabel (for the links) | |||
?Session skos:altLabel ?SessionLabel. | ?Session skos:altLabel ?SessionLabel. | ||
OPTIONAL { FILTER (!regex(? | FILTER (LANG(?SessionLabel) = "de"). | ||
# Filter out all descriptive alias (aka. don't use a "[Course] - 01a"-type label) | |||
OPTIONAL { | |||
?Session skos:altLabel ?alt. | |||
FILTER (!regex(?alt, "ASE", "i")) | |||
FILTER (LANG(?alt) = "en") # Ensure the alias is in English | |||
} # and save them in a different var | |||
# Default to the normal alias, but use the descriptiv one if it exists | |||
BIND(IF (?aliasCount > 1, ?alt, ?alias) as ?SessionLabel) | |||
service wikibase:label { bd:serviceParam wikibase:language "en".} | service wikibase:label { bd:serviceParam wikibase:language "en".} | ||
} ORDER BY ASC(?Datum) | } ORDER BY ASC(?Datum) | ||
LIMIT 50 | |||
| height=38em | | height=38em | ||
| caption=Planned Sessions | | caption=Planned Sessions | ||
Line 91: | Line 145: | ||
=== Interests & Knowledge === | === Interests & Knowledge === | ||
A graph showing the items students have marked as "interesting" or "known". | A graph showing the items students have marked as "interesting" or "known". | ||
<div style="border: solid 5px #d2d6e0; background-color:#eaecf0;"> | |||
{{#widget:SPARQLquery| code= | {{#widget:SPARQLquery| code= | ||
#defaultView:SwarmScatterChart | #defaultView:SwarmScatterChart | ||
Line 101: | Line 156: | ||
OPTIONAL { | OPTIONAL { | ||
SELECT ?item ?itemLabel (COUNT(DISTINCT ?student) as ?known) WHERE { | SELECT ?item ?itemLabel (COUNT(DISTINCT ?student) as ?known) WHERE { | ||
?student wdt:P25 wd:Q1022. | |||
?student wdt:P12 ?item. | ?student wdt:P12 ?item. | ||
} GROUP BY ?item ?itemLabel | } GROUP BY ?item ?itemLabel | ||
Line 106: | Line 162: | ||
OPTIONAL { | OPTIONAL { | ||
SELECT ?item ?itemLabel (COUNT(DISTINCT ?student) as ?interests) WHERE { | SELECT ?item ?itemLabel (COUNT(DISTINCT ?student) as ?interests) WHERE { | ||
?student wdt:P25 wd:Q1022. | |||
?student wdt:P23 ?item. | ?student wdt:P23 ?item. | ||
} GROUP BY ?item ?itemLabel | } GROUP BY ?item ?itemLabel | ||
Line 114: | Line 171: | ||
} | } | ||
}} | }} | ||
</div> | |||
=== Preview === | === Preview === | ||
A list of things to be discussed in the | A list of things to be discussed in the upcoming session. | ||
<div style="border: solid 5px #d2d6e0; background-color:#eaecf0;"> | |||
{{#widget:SPARQLquery| code= | {{#widget:SPARQLquery| code= | ||
#defaultView:Table | #defaultView:Table | ||
Line 175: | Line 235: | ||
} ORDER BY DESC(?resource) | } ORDER BY DESC(?resource) | ||
LIMIT 80 | LIMIT 80 | ||
| caption=A Todolist for {{#username:Max Mustermann}} | | caption=A Todolist for {{#username:Max Mustermann}} | ||
| height=30em | |||
}} | |||
</div> | |||
=== Additional Learning === | |||
Items, that are part of the course, but are not [[Property:P14|included]] in a Session. Meaning that they either weren't discussed, or weren't discussed in depth. | |||
{{#widget:SPARQLquery|code= | |||
#defaultView:Table | |||
PREFIX wdt: <https://graphit.ur.de/prop/direct/> | |||
PREFIX wd: <https://graphit.ur.de/entity/> | |||
select distinct | |||
?category ?categoryLabel | |||
?item ?itemLabel | |||
where { | |||
# get all items in categories | |||
wd:Q1022 wdt:P14 ?category. | |||
?category wdt:P3 wd:Q169. | |||
?category wdt:P14 ?item. | |||
MINUS { | |||
# Remove all items that are included in Sessions | |||
wd:Q1022 wdt:P14 ?session. | |||
?session wdt:P3 wd:Q427. | |||
?item ^wdt:P14 ?session. | |||
} | |||
service wikibase:label { bd:serviceParam wikibase:language "en".} | |||
} LIMIT 200 | |||
| caption=Items not "included in" a Session of the course. | |||
}} | }} | ||
<small>Or they haven't been added yet.</small> | |||
==Erste Schritte mit GraphIT== | ==Erste Schritte mit GraphIT== | ||
Line 182: | Line 273: | ||
##Account anlegen (gerne mit Pseudonym oder Initialen): [[Special:CreateAccount]]. | ##Account anlegen (gerne mit Pseudonym oder Initialen): [[Special:CreateAccount]]. | ||
##Einen ''Graph User'' (einfach ein Item) mit gleichem Namen anlegen (siehe z.B. das Item Q630: [[Item:Q630|Markus Mustermann]]): | ##Einen ''Graph User'' (einfach ein Item) mit gleichem Namen anlegen (siehe z.B. das Item Q630: [[Item:Q630|Markus Mustermann]]): | ||
###auf [[Special:NewItem]] gehen oder oben im Menü "Items | ###auf [[Special:NewItem]] gehen oder oben im Menü "Items → New Item" auswählen. | ||
###Label (für Sprache Englisch): ''<eigener Name>'' | ###Label (für Sprache Englisch): ''<eigener Name>'' | ||
###Description (für Sprache Englisch): ''Student at University of Regensburg (<eigener Name>)'' // Hinweis: in WikiBase dürfen unterschiedliche Items nicht die gleiche Beschreibung haben, deshalb bitte den eigenen Namen noch dranhängen | ###Description (für Sprache Englisch): ''Student at University of Regensburg (<eigener Name>)'' // Hinweis: in WikiBase dürfen unterschiedliche Items nicht die gleiche Beschreibung haben, deshalb bitte den eigenen Namen noch dranhängen | ||
Line 189: | Line 280: | ||
###'[[Property:P3|instance of]]' (P3) + '[[Item:Q167|Student]]' (Q167) | ###'[[Property:P3|instance of]]' (P3) + '[[Item:Q167|Student]]' (Q167) | ||
###'[[Property:P28|username]]' (P28) + Benutzernamen (siehe Schritt 1) | ###'[[Property:P28|username]]' (P28) + Benutzernamen (siehe Schritt 1) | ||
###'[[Property:P25|participates in]]' (P25) + [[Item: | ###'[[Property:P25|participates in]]' (P25) + [[Item:Q1022|ASE WS 2024]] (Q1022) | ||
##Auf der eigenen Benutzerseite (des Accounts) einen Link zum eigenen Item anlegen: | ##Auf der eigenen Benutzerseite (des Accounts) einen Link zum eigenen Item anlegen: | ||
###[https://graphit.ur.de/w/index.php?title=Special:MyPage&action=edit Benutzerseite anlegen/bearbeiten] | ###[https://graphit.ur.de/w/index.php?title=Special:MyPage&action=edit Benutzerseite anlegen/bearbeiten] | ||
Line 195: | Line 286: | ||
#'''Vorkenntnisse und Interessen angeben''' | #'''Vorkenntnisse und Interessen angeben''' | ||
##Auf https://test.graphit.ur.de/app/src/pages/selectionTools/ einmal mit Benutzername und Passwort (aus Schritt 1) anmelden. Achtung: das Passwort wird momentan beim Eintippen angezeigt. | ##Auf https://test.graphit.ur.de/app/src/pages/selectionTools/ einmal mit Benutzername und Passwort (aus Schritt 1) anmelden. Achtung: das Passwort wird momentan beim Eintippen angezeigt. | ||
##Oben rechts die Lehrveranstaltung " | ##Oben rechts die Lehrveranstaltung "ASE 24WS" auswählen. | ||
##Im angezeigten Graph die damit verbundenen Themen anschauen. | ##Im angezeigten Graph die damit verbundenen Themen anschauen. | ||
##Alle Themen als "completed" markieren, mit denen man sich schon befasst hat (auswählen und Taste '1' drücken bzw. den Button auf der rechten Seite). | ##Alle Themen als "completed" markieren, mit denen man sich schon befasst hat (auswählen und Taste '1' drücken bzw. den Button auf der rechten Seite). |
Latest revision as of 15:06, 18 November 2024
M.Sc. Medieninformatik, Universität Regensburg.
- Der Kurs in GRIPS
- Der Kurs in SPUR
- Das GraphIT-Item für den Kurs: Item:Q1022
- Tutorials used in the Practice Sessions
Overview
The course gives an overview of current issues and trends in Software Engineering.
Important Topics |
---|
Full Query |
It discusses strategies, patterns and automations to help develop and maintain complex software.
The course includes bi-weekly practice sessions to teach the students practical skills using excercises and examples.
At the end of the semester each student has to turn in a project, in which they use their new found skills in developing a small contained application.
For a graph showing the full course click here.
For a graph showing the goals of the course and their immediate prerequisites click here.
Required Knowledge | Goals |
---|---|
Full screen view of the Query | Full screen view of the Query |
Timetable
Interests & Knowledge
A graph showing the items students have marked as "interesting" or "known".
Preview
A list of things to be discussed in the upcoming session.
Additional Learning
Items, that are part of the course, but are not included in a Session. Meaning that they either weren't discussed, or weren't discussed in depth.
Or they haven't been added yet.
Erste Schritte mit GraphIT
- GraphIT-Account einrichten
- Account anlegen (gerne mit Pseudonym oder Initialen): Special:CreateAccount.
- Einen Graph User (einfach ein Item) mit gleichem Namen anlegen (siehe z.B. das Item Q630: Markus Mustermann):
- auf Special:NewItem gehen oder oben im Menü "Items → New Item" auswählen.
- Label (für Sprache Englisch): <eigener Name>
- Description (für Sprache Englisch): Student at University of Regensburg (<eigener Name>) // Hinweis: in WikiBase dürfen unterschiedliche Items nicht die gleiche Beschreibung haben, deshalb bitte den eigenen Namen noch dranhängen
- Button 'Create' anklicken
- Statements beim Benutzer-Item hinzufügen (siehe z.B. das Item Q630: Markus Mustermann):
- 'instance of' (P3) + 'Student' (Q167)
- 'username' (P28) + Benutzernamen (siehe Schritt 1)
- 'participates in' (P25) + ASE WS 2024 (Q1022)
- Auf der eigenen Benutzerseite (des Accounts) einen Link zum eigenen Item anlegen:
- Benutzerseite anlegen/bearbeiten
- Folgenden Text dort einfügen und Seite speichern (mit eigenem Item statt Platzhalter):
My GraphIT item: [[Item:Q123]]
. Achtung: das Item muss ein Link sein, d.h. entweder im grafischen Editor verlinken oder im Quellcode-Editor in eckigen Klammern schreiben.
- Vorkenntnisse und Interessen angeben
- Auf https://test.graphit.ur.de/app/src/pages/selectionTools/ einmal mit Benutzername und Passwort (aus Schritt 1) anmelden. Achtung: das Passwort wird momentan beim Eintippen angezeigt.
- Oben rechts die Lehrveranstaltung "ASE 24WS" auswählen.
- Im angezeigten Graph die damit verbundenen Themen anschauen.
- Alle Themen als "completed" markieren, mit denen man sich schon befasst hat (auswählen und Taste '1' drücken bzw. den Button auf der rechten Seite).
- Mindestens fünf Themen als Interessen markieren (auswählen und Taste '2' drücken bzw. den Button auf der rechten Seite).
- Änderungen speichern über den 'save'-Button unten rechts!
- Auf der eigenen Item-Seite überprüfen ob die Interessen und Vorkenntnisse korrekt dokumentiert wurden.
Als ein Beispiel kann Max Mustermann angesehen werden. Für eine detailiertere Übersicht kann die Seite ExampleStudent besucht werden.