As a reference for the styling of the project proposal and report, students can use the following
The exam consists of conducting a study project that applies the knowledge on network analysis acquired during the course.
The exam’s hand-in consists of a report, a 5-6 pages PDF document (8-9 pages for projects with more students), detailing the context, the problem/motivation, the data, the measures, and the results of the project that the students performed.
The project is either individual or in a small group and it is negotiated with the teacher through a project proposal. The project proposal is a 1-page PDF document (2 pages for proposals with more students) that briefly presents the content of the study (context, the problem/motivation, the proposed data, the designed measures, and the expected results of the research project that the student will perform).
The deadline for the agreement on the project proposal is always 20 days before the deadline for delivering the report. Projects whose proposals did not receive the approval within that deadline will not be evaluated.
Since reaching an agreement on the project proposal might require some negotiation, the students are strongly advised to contact the teacher at least 10 days before the deadline for the project agreement, so there is enough time for that process to finish.
Once the student has received the approval on her/his project proposal, s/he can deliver her/his report within the first valid deadline and the following ones—i.e., once a project proposal has been approved, the student can deliver the project at any valid following deadline.
The grading starts after each project delivery deadline and considers all new (not graded) projects delivered before that deadline.
The deadlines for project delivery are 8 in total within an A.Y. and spaced around 45 days apart (except for August’s break).
Project delivery deadlines (23:59 UTC+2) for the A.Y. 20–21:
Students registered for the exam on AlmaEsami should automatically receive the notification of the grading. Grades are officially registered one week after the notification from AlmaEsami. Within that week, students who passed the exam but want to re-take it (on the same project proposal), can notify the teacher, who will not register their grade. Students have 3 attempts to re-take the exam. After the third attempt, the last passing grade will be registered automatically.
Delivery of Project Proposals and Reports
Project proposals and reports are delivered in PDF format and use an A4 single-column layout, 1-line spacing, 3cm margins, 12pt font (Times or equivalent).
All deliveries happen via email at the address saverio.giallorenzo[at]gmail.com and must contain in the subject the prefix [Web Science/Network Analysis].
Guidelines and Report Evaluation
The report is the artefact evaluated for the exam, but students are invited see it as a support tool when conducting their projects. Indeed, if done step-by-step during the project, reporting is a helpful tool to clarify and document the decisions taken by the student at each stage of the project. Moreover, besides “journaling” progress, the report is a useful tool for the students to check that they considered and reported on all the important aspects of their project study. The clear presentation/explanation of those aspects also forms the weighted partition that guides the grading (and indicates a ratio for distributing the contents of the report), as listed below:
|60%||Dataset(s) and source(s)
Validity and reliability
Applied measure/s and its/their justification, possible hypotheses and tests, results
|20%||Interpretation of the overall results
|Introduction to Network Analysis||Slides|
|Some Logistics (Reading Groups)||Slides|
|Research Design (also, How to read a research paper)||Slides|
|Paper Presentation: An Information Flow Model for Conflict and Fission in Small Groups||Slides|
|The Mathematics of Networks||Slides|
|Data Collection and Data Management||Slides|
|Measures and Metrics, Nodes||Slides|
|Measures and Metrics, Networks||Slides|
|38||Introduction to Network Analysis||Introduction to Network Analysis
The Mathematics of Networks
|40||Group Paper Presentations
The Mathematics of Networks
|Joint DHDK Degree Presentation (no lecture)|
|41||Group Paper Presentations
Data Collection and Data Management
|Data Collection and Data Management
|42||Group Paper Presentations
|Group Paper Presentations
Measures and Metrics, Nodes
|43||Group Paper Presentations
Measures and Metrics, Nodes
|Measures and Metrics, Nodes|
To run any of the tests below, make sure to have the following configuration:
test, where we want to save our java exercises;
testfolder and run the following template command
gradle test --tests exercises.ClassName.testMethodNamewhere
ClassNameis the name of the file we are testing (e.g.,
Fun, below) and
testMethodNameis the name of the method we want to test (e.g.,
Funclass). We can also run all the tests within a given class by not specifying a method name (e.g., the command
gradle test --tests exercises.Funexecutes all the tests of the
When more files belong in the same row, the first from the left is the one with the tests. To run, it needs the other files to be present in the same folder.
|Fun.java||Exercises 00, 1.3|
|SumList.java||Exercises 00, 1.5|
|CheckMinHeap.java||Exercises 00, 2.1|
|MonotonicPath.java UG_List.java||Exercises 01, 8.1|
|FindMaxOutdegree.java||Exercises 01, 8.3|
|CountInversions.java||Exercises 01, 5.5|
|GreedyCuts.java||Exercises 01, 6.1|
|BinPacking.java||Exercises 01, 6.3|
|RestCalculator.java||Exercises 02, 7.1|
|MostFiles.java RestCalculator.java||Exercises 02, 7.2|
|LazyPrimMST.java UG_List.java WUG_List.java MinHeap.java||Exercises 02, 10.A|
|LazyDijkstraSP.java UG_List.java WUG_List.java MinHeap.java||Exercises 02, 10.B|
It is highly advised to hack and tweak the exercises to improve your understanding of the techniques and algorithms they represent :)
|Introduction Interprocess Communication||Slides|
|Introduction to Jolie||Slides||Example|
|Basics - First Service and Basic Deployment||Slides||Examples|
Basic Behaviour - Types and Data Manipulation
Basic Behaviour - Composition and Workflow
|Advanced Behaviour - Faults and Dynamic Binding||Slides||Examples|
|Advanced Deployment - Architectural Composition||Slides||Examples|
Unless specified differently, exams take place at .
|AA 2015-2016||Project Description, Groups status --- Examples: MyTimer example JavaService|
|AA 2014-2015||Project Description, Groups status --- Examples: File Transfer, Console Inputs|
I installed Jolie with the installer but when I launch
jolie I get the message "Error: Could not find or load main class jolie.Jolie".
Did you launch the installer with the right permissions? If yes, proceed.
The launchers deployed by the installer use the environment variable
JOLIE_HOME to set the classpath and launch Jolie.
As reported by the installer at the end of the installation:
Please, open a new shell and execute the command below:
echo 'export JOLIE_HOME="/usr/lib/jolie"' >> ~/.bash_profile
Close the shell and open it again (or source
~/.bash_profile) before trying to launch the Jolie interpreter.
Attention: in case you are still getting the message "Error: Could not find or load main class jolie.Jolie", it could be the case your shell is not sourcing file `.bash_profile`. To fix it, edit your
~/.bashrc file by appending the line
I get "command not found" after I installed Jolie under MacOs X El Capitan (10.10.11).
/usr/local/lib/jolieas the directory of installation of Jolie and
/usr/local/binas the directory of the launchers.
Slides (in Italian)
|Introduction Database Systems*||Slides|
|Exercises on Database Systems*||Slides|
|Analysis of data in tabular formats (spreadsheets)*||Slides|
|Operating Systems, Virtualisation Technologies, and Cloud Computing||Slides|
*Adapted from material by Stefano Ferretti.