OV
O.W. Visser
info
Please Note
<p>This page displays the records of the person named above and is not linked to a unique person identifier. This record may need to be merged to a profile.</p>
13 records found
1
Bachelor thesis
(2020)
-
David Moolenaar, Thijs Molendijk, Maarten Lips, Nick Yu, Ynze ter Horst, Maurício Aniche, Jos Winter, Otto Visser
It has become a common practice for software developers to analyse monitoring data as a means to understand issues, trends and performance of large-scale software systems. The combination of this practice with the software development workflow can however be cumbersome at times. One recent effort into evaluating the effects of integrating monitoring directly into the software development workflow has been done at the large-scale payment company Adyen in cooperation with the TU Delft. This project is a new attempt at making a flexible, open-source and useful monitoring tool based on the results of that research effort. This report will detail how the system is designed, implemented and the development methodology that was used for its creation. After researching popular monitoring stacks and solutions, an architecture for the Hyperion pipeline was designed that would maximize compatibility with logging setups. The monitoring data is first retrieved from a log source like Logstash or Elasticsearch. It is preprocessed by a pipeline consisting of configurable and flexible plugins. A large range of plugins is supported: functionalities include debugging, transformation, load balancing, and adding new data from third-party systems. There is also extensive support for third-party developers to create their own pipeline plugin to manipulate data in any way required, which allows Hyperion to account for unconventional logging setups. The pipeline typically ends at some type of aggregator, which exposes an interface for developer tools to retrieve metrics. These metrics can be queried with the Hyperion IDE plugin, which visualizes them in the development environment itself. To verify that the designed Hyperion pipeline adheres to the requirements defined in the research report, validation tests have been performed on every module of the system. All code is extensively tested with unit, integration, and container-based system tests. An evaluation of the performance of the pipeline additionally verified the scalability of the system even when provided with a large number of incoming logs. Finally, in order to ensure easy extension and adoption of the Hyperion pipeline a large amount of documentation was written, that explains the architecture of the project and how a third-party developer can adjust and extend it.
...
It has become a common practice for software developers to analyse monitoring data as a means to understand issues, trends and performance of large-scale software systems. The combination of this practice with the software development workflow can however be cumbersome at times. One recent effort into evaluating the effects of integrating monitoring directly into the software development workflow has been done at the large-scale payment company Adyen in cooperation with the TU Delft. This project is a new attempt at making a flexible, open-source and useful monitoring tool based on the results of that research effort. This report will detail how the system is designed, implemented and the development methodology that was used for its creation. After researching popular monitoring stacks and solutions, an architecture for the Hyperion pipeline was designed that would maximize compatibility with logging setups. The monitoring data is first retrieved from a log source like Logstash or Elasticsearch. It is preprocessed by a pipeline consisting of configurable and flexible plugins. A large range of plugins is supported: functionalities include debugging, transformation, load balancing, and adding new data from third-party systems. There is also extensive support for third-party developers to create their own pipeline plugin to manipulate data in any way required, which allows Hyperion to account for unconventional logging setups. The pipeline typically ends at some type of aggregator, which exposes an interface for developer tools to retrieve metrics. These metrics can be queried with the Hyperion IDE plugin, which visualizes them in the development environment itself. To verify that the designed Hyperion pipeline adheres to the requirements defined in the research report, validation tests have been performed on every module of the system. All code is extensively tested with unit, integration, and container-based system tests. An evaluation of the performance of the pipeline additionally verified the scalability of the system even when provided with a large number of incoming logs. Finally, in order to ensure easy extension and adoption of the Hyperion pipeline a large amount of documentation was written, that explains the architecture of the project and how a third-party developer can adjust and extend it.
AuTA
Automatic teaching assistant
Bachelor thesis
(2019)
-
Erik Oudsen, Ewoud Ruighaver, Luc Everse, Tim van der Horst, Otto Visser, Annibale Panichella, Huijuan Wang
Due to the dramatic increase in enrollments in the TU Delft Bachelor of Computer
Science, the workload for teaching assistants and instructors has skyrocketed. To
reduce this workload, automated tools can be used to make the grading process easier. This paper describes the development of AuTA (Automatic Teaching Assistant), a tool that will help instructors and teaching assistants analyze and grade programming assignments and provide useful feedback to the student. ...
Science, the workload for teaching assistants and instructors has skyrocketed. To
reduce this workload, automated tools can be used to make the grading process easier. This paper describes the development of AuTA (Automatic Teaching Assistant), a tool that will help instructors and teaching assistants analyze and grade programming assignments and provide useful feedback to the student. ...
Due to the dramatic increase in enrollments in the TU Delft Bachelor of Computer
Science, the workload for teaching assistants and instructors has skyrocketed. To
reduce this workload, automated tools can be used to make the grading process easier. This paper describes the development of AuTA (Automatic Teaching Assistant), a tool that will help instructors and teaching assistants analyze and grade programming assignments and provide useful feedback to the student.
Science, the workload for teaching assistants and instructors has skyrocketed. To
reduce this workload, automated tools can be used to make the grading process easier. This paper describes the development of AuTA (Automatic Teaching Assistant), a tool that will help instructors and teaching assistants analyze and grade programming assignments and provide useful feedback to the student.
MarketPalace
A Sybil-Resistant and Decentralized Marketplace
Bachelor thesis
(2019)
-
Naqib Zarin, Tat Luat Nguyen, Dirk van Bokkem, Justin Segond von Banchet, Stefanie Roos, Otto Visser, Huijuan Wang
Fraudulent behavior within online marketplaces is a prominent but unsolved problem. Most marketplace operators try to mitigate this behavior by serving as the central authority. This approach requires user data collection and is not privacy-friendly. In an attempt to build a foundation for solving the fraud concerns and privacy issues, this paper elaborates on the design and implementation of a simple marketplace system using peer-to-peer (P2P) technology in combination with a Self-Sovereign Identity (SSI) solution. The P2P network ensures no single points of control, reduces risks of a big data breach and simply costs less to operate. The SSI solution makes sure that users cannot create multiple accounts to whitewash their dishonest behavior. Ensuring every user has only one identity makes the platform Sybil-resistant. In contrast to other identity verification systems used in marketplaces, such as Facebook Login, SSI aims to put the user in control and to not collect personal data. Users know what data are asked and give explicit consent for each request. This user-centric approach makes them privacy-friendly. Reaching Sybil resistance without having a central authority in a marketplace has not been done before. In the future a reputation system can be built on top of the Sybil-resistant P2P system, ensuring users’ behavior can not be whitewashed. Several methods are used during the design and the implementation process. They include the Scrum framework, MoSCoW prioritization and Class-Responsibility-Collaboration cards. Git was used for version control while code quality was kept high through a custom CI setup. Additionaly, every merge request required at least two approvals to ensure thorough code review. This resulted in an application that is both Sybil-resistant and privacy-friendly
...
Fraudulent behavior within online marketplaces is a prominent but unsolved problem. Most marketplace operators try to mitigate this behavior by serving as the central authority. This approach requires user data collection and is not privacy-friendly. In an attempt to build a foundation for solving the fraud concerns and privacy issues, this paper elaborates on the design and implementation of a simple marketplace system using peer-to-peer (P2P) technology in combination with a Self-Sovereign Identity (SSI) solution. The P2P network ensures no single points of control, reduces risks of a big data breach and simply costs less to operate. The SSI solution makes sure that users cannot create multiple accounts to whitewash their dishonest behavior. Ensuring every user has only one identity makes the platform Sybil-resistant. In contrast to other identity verification systems used in marketplaces, such as Facebook Login, SSI aims to put the user in control and to not collect personal data. Users know what data are asked and give explicit consent for each request. This user-centric approach makes them privacy-friendly. Reaching Sybil resistance without having a central authority in a marketplace has not been done before. In the future a reputation system can be built on top of the Sybil-resistant P2P system, ensuring users’ behavior can not be whitewashed. Several methods are used during the design and the implementation process. They include the Scrum framework, MoSCoW prioritization and Class-Responsibility-Collaboration cards. Git was used for version control while code quality was kept high through a custom CI setup. Additionaly, every merge request required at least two approvals to ensure thorough code review. This resulted in an application that is both Sybil-resistant and privacy-friendly
Bachelor thesis
(2019)
-
Nick Belzer, Buster Bernstein, Jasper Geurtz, Rens Hijdra, Philippe Lammerts, Henk-Jan Wermelink, Christoph Lofi, Otto Visser
Governments require companies to be able to explain where their data is coming from and going to. Our client helps these companies by creating maps of their data landscapes. This is the concept of data lineage. There are various issues that arise in the workflow of figuring out and building data lineage diagrams. Our contributions here are providing a model for what data lineage diagram instances are, and an interactive web application that can be used to visualize and edit these diagrams in an intuitive way. One of the core challenges of this project has been to combine the client's business perspective with our knowledge of computer science. Starting with our research by figuring out the client's use cases, analysing them for their feasibility within the constraints of the project. The team used both Scrum and an agile approach to develop a product that matches the client's expectations and needs throughout the project. The product was tested by adhering to the five metrics defined by the Consortium for IT Software Quality. The final product contains the desired functionality and allows building data lineage diagrams using company data from the client through external APIs. The client is eager to use the product and has provided additional opportunities for the team to work further on the product.
...
Governments require companies to be able to explain where their data is coming from and going to. Our client helps these companies by creating maps of their data landscapes. This is the concept of data lineage. There are various issues that arise in the workflow of figuring out and building data lineage diagrams. Our contributions here are providing a model for what data lineage diagram instances are, and an interactive web application that can be used to visualize and edit these diagrams in an intuitive way. One of the core challenges of this project has been to combine the client's business perspective with our knowledge of computer science. Starting with our research by figuring out the client's use cases, analysing them for their feasibility within the constraints of the project. The team used both Scrum and an agile approach to develop a product that matches the client's expectations and needs throughout the project. The product was tested by adhering to the five metrics defined by the Consortium for IT Software Quality. The final product contains the desired functionality and allows building data lineage diagrams using company data from the client through external APIs. The client is eager to use the product and has provided additional opportunities for the team to work further on the product.
Bachelor thesis
(2019)
-
Kevin van Heel, Jasper Ketelaar, Emre Ilgin, Yusuf Noor, Victor Ionescu, Alessandro Bozzon, Otto Visser, Huijuan Wang
This thesis concludes the final report which has been performed for the company Gymplanner. At the same time it is the summary for our bachelor end project, thus it is considered the bachelor thesis for our Computer Science Bachelor Degree
...
This thesis concludes the final report which has been performed for the company Gymplanner. At the same time it is the summary for our bachelor end project, thus it is considered the bachelor thesis for our Computer Science Bachelor Degree
Cairo-based IT company Key2Soft is working on a comprehensive system to automate various systems in Egyptian primary-,middle- and high schools. This software system, named Key2School, includes a timetabling component, with which the company aims to relieve the workload of timetablers by providing them with a system which automatically generates timetables for all teachers, students and subjects. In consultation with the company, both functional requirements and timetable requirements have been composed for the timetabling part.
A literature study has been conducted to find and compare existing timetabling algorithms and libraries in order to select the best match for the company. All existing algorithms in literature were found to be too slow, so a system has been designed around an open source timetabling program. This system contains a part where the program is managed, a part which interfaces with the database of Key2Soft and a part where the timetable resources are constructed in a compatible manner. The system has been implemented according to and in consultation with programmers at Key2Soft and will be integrated in Key2School in the future. The system is programmed mainly in C# and uses XML files to configure the timetabling library. The system has been thoroughly tested with NUnit, a platform-specific unit testing library, which enabled the developers to verify the code quality. The code has furthermore been evaluated by the independent IT consultant SIG. ...
A literature study has been conducted to find and compare existing timetabling algorithms and libraries in order to select the best match for the company. All existing algorithms in literature were found to be too slow, so a system has been designed around an open source timetabling program. This system contains a part where the program is managed, a part which interfaces with the database of Key2Soft and a part where the timetable resources are constructed in a compatible manner. The system has been implemented according to and in consultation with programmers at Key2Soft and will be integrated in Key2School in the future. The system is programmed mainly in C# and uses XML files to configure the timetabling library. The system has been thoroughly tested with NUnit, a platform-specific unit testing library, which enabled the developers to verify the code quality. The code has furthermore been evaluated by the independent IT consultant SIG. ...
Cairo-based IT company Key2Soft is working on a comprehensive system to automate various systems in Egyptian primary-,middle- and high schools. This software system, named Key2School, includes a timetabling component, with which the company aims to relieve the workload of timetablers by providing them with a system which automatically generates timetables for all teachers, students and subjects. In consultation with the company, both functional requirements and timetable requirements have been composed for the timetabling part.
A literature study has been conducted to find and compare existing timetabling algorithms and libraries in order to select the best match for the company. All existing algorithms in literature were found to be too slow, so a system has been designed around an open source timetabling program. This system contains a part where the program is managed, a part which interfaces with the database of Key2Soft and a part where the timetable resources are constructed in a compatible manner. The system has been implemented according to and in consultation with programmers at Key2Soft and will be integrated in Key2School in the future. The system is programmed mainly in C# and uses XML files to configure the timetabling library. The system has been thoroughly tested with NUnit, a platform-specific unit testing library, which enabled the developers to verify the code quality. The code has furthermore been evaluated by the independent IT consultant SIG.
A literature study has been conducted to find and compare existing timetabling algorithms and libraries in order to select the best match for the company. All existing algorithms in literature were found to be too slow, so a system has been designed around an open source timetabling program. This system contains a part where the program is managed, a part which interfaces with the database of Key2Soft and a part where the timetable resources are constructed in a compatible manner. The system has been implemented according to and in consultation with programmers at Key2Soft and will be integrated in Key2School in the future. The system is programmed mainly in C# and uses XML files to configure the timetabling library. The system has been thoroughly tested with NUnit, a platform-specific unit testing library, which enabled the developers to verify the code quality. The code has furthermore been evaluated by the independent IT consultant SIG.
CryptoPIX
The Blockchain Based Daily Pixel Art Competition
Bachelor thesis
(2018)
-
Kees Fani, Pavel Hoogland, Manuel Borba da Silva Falcão Ferreira, Otto Visser, Rafael Bidarra
During the project the team aimed to make a decentralized web based game on the blockchain, that is fun to play and is indistinguishable from traditional centralized games. To accomplish this it was chosen to create the game on the EOS blockchain platform. The EOS blockchain platform features great improvements upon older more popular platforms such as Bitcoin and Ethereum. EOS brings improvements in transaction speed, scalability and control of user actions and data.
The creation of the game consisted of two parts. One was the web based application client and the other is the EOS smart contract. The smart contract was the place where all the game logic was programmed in, while the web application is used as an interface that makes it easy for players to communicate with the blockchain smart contract. ...
The creation of the game consisted of two parts. One was the web based application client and the other is the EOS smart contract. The smart contract was the place where all the game logic was programmed in, while the web application is used as an interface that makes it easy for players to communicate with the blockchain smart contract. ...
During the project the team aimed to make a decentralized web based game on the blockchain, that is fun to play and is indistinguishable from traditional centralized games. To accomplish this it was chosen to create the game on the EOS blockchain platform. The EOS blockchain platform features great improvements upon older more popular platforms such as Bitcoin and Ethereum. EOS brings improvements in transaction speed, scalability and control of user actions and data.
The creation of the game consisted of two parts. One was the web based application client and the other is the EOS smart contract. The smart contract was the place where all the game logic was programmed in, while the web application is used as an interface that makes it easy for players to communicate with the blockchain smart contract.
The creation of the game consisted of two parts. One was the web based application client and the other is the EOS smart contract. The smart contract was the place where all the game logic was programmed in, while the web application is used as an interface that makes it easy for players to communicate with the blockchain smart contract.
Wheretrip, describing themselves as, "A Dutch based start-up for travelers who like to explore new places, offering countless destinations within your budget. Being an official YES!Delft student start-up we have created our platform with the help of the best in-house experts available.
With our diverse team of experienced travelers we have carefully selected the best destinations for every type of trip: Whether you are a party animal, surfer or both, we have got you covered! By combining our wanderlust with our smart algorithms, we offer you trips which truly fit your theme and budget".
The company wanted to improve their website, and having had good experiences with BEP earlier, they decided to reach out to the Bachelor Program again. They proposed two major improvements in how things are done, namely: implementing an integrated booking system and personalizing the current search engine.
It would prove a great challenge to implement this functionality while maintaining the high code quality needed to make Wheretrip in a scalable application. After researching the possibility of an integrated booking
system it was decided to be unfeasible to implement all functionality. Therefor it was decided to focus on the personalization part of the assignment while completely rewriting the poorly written front end, as well as cleaning up the back end. There are significant improvements made to the application and it provides a solid foundation for Wheretrip to grow on. ...
With our diverse team of experienced travelers we have carefully selected the best destinations for every type of trip: Whether you are a party animal, surfer or both, we have got you covered! By combining our wanderlust with our smart algorithms, we offer you trips which truly fit your theme and budget".
The company wanted to improve their website, and having had good experiences with BEP earlier, they decided to reach out to the Bachelor Program again. They proposed two major improvements in how things are done, namely: implementing an integrated booking system and personalizing the current search engine.
It would prove a great challenge to implement this functionality while maintaining the high code quality needed to make Wheretrip in a scalable application. After researching the possibility of an integrated booking
system it was decided to be unfeasible to implement all functionality. Therefor it was decided to focus on the personalization part of the assignment while completely rewriting the poorly written front end, as well as cleaning up the back end. There are significant improvements made to the application and it provides a solid foundation for Wheretrip to grow on. ...
Wheretrip, describing themselves as, "A Dutch based start-up for travelers who like to explore new places, offering countless destinations within your budget. Being an official YES!Delft student start-up we have created our platform with the help of the best in-house experts available.
With our diverse team of experienced travelers we have carefully selected the best destinations for every type of trip: Whether you are a party animal, surfer or both, we have got you covered! By combining our wanderlust with our smart algorithms, we offer you trips which truly fit your theme and budget".
The company wanted to improve their website, and having had good experiences with BEP earlier, they decided to reach out to the Bachelor Program again. They proposed two major improvements in how things are done, namely: implementing an integrated booking system and personalizing the current search engine.
It would prove a great challenge to implement this functionality while maintaining the high code quality needed to make Wheretrip in a scalable application. After researching the possibility of an integrated booking
system it was decided to be unfeasible to implement all functionality. Therefor it was decided to focus on the personalization part of the assignment while completely rewriting the poorly written front end, as well as cleaning up the back end. There are significant improvements made to the application and it provides a solid foundation for Wheretrip to grow on.
With our diverse team of experienced travelers we have carefully selected the best destinations for every type of trip: Whether you are a party animal, surfer or both, we have got you covered! By combining our wanderlust with our smart algorithms, we offer you trips which truly fit your theme and budget".
The company wanted to improve their website, and having had good experiences with BEP earlier, they decided to reach out to the Bachelor Program again. They proposed two major improvements in how things are done, namely: implementing an integrated booking system and personalizing the current search engine.
It would prove a great challenge to implement this functionality while maintaining the high code quality needed to make Wheretrip in a scalable application. After researching the possibility of an integrated booking
system it was decided to be unfeasible to implement all functionality. Therefor it was decided to focus on the personalization part of the assignment while completely rewriting the poorly written front end, as well as cleaning up the back end. There are significant improvements made to the application and it provides a solid foundation for Wheretrip to grow on.
BEPSys 2.0
Central Registration Tool for Projects and Groups
Bachelor thesis
(2017)
-
David Alderliesten, Jesse Tilro, Floris Doolaard, Niels Warnars, Otto Visser, Alessandro Bozzon, Huijuan Wang
The following report outlines the research, development, and delivery phases of the BEPSys 2.0 application. The application aims to provide central project registration and management for courses at the TU Delft. The request for the development stemmed from Otto Visser, who was the acting coordinator for the Computer Science Final Project Course. A system named ”BEPSys” already existed for this purpose, but it was deemed insecure and unreliable, and warranted a redesign.
...
The following report outlines the research, development, and delivery phases of the BEPSys 2.0 application. The application aims to provide central project registration and management for courses at the TU Delft. The request for the development stemmed from Otto Visser, who was the acting coordinator for the Computer Science Final Project Course. A system named ”BEPSys” already existed for this purpose, but it was deemed insecure and unreliable, and warranted a redesign.
Bachelor thesis
(2017)
-
Millen van Osch, Roy Graafmans, Joost Broekens, Joachim de Greeff, Otto Visser, Huijuan Wang
Interactive Robotics aims to familiarize children with robotics, which they try to do with their RoboTutor. Towards this goal they developed a platform for controlling the robots but this platform only worked for the Nao robot and not for the Pepper robot.
So for our bachelor end project we have been asked to build a connection tunnel between the server and the Nao and Pepper robots so that it is possible to also use the Pepper robot.
As our research progressed however, it became more clear to us that in order to make a generic solution for both the robots the existing platform would not suffice. So instead of only creating the tunnel we also worked on a new server side solution.
the solution we came up with, virtualization, was sure to solve the problems that caused the Pepper robot to be incompatible with the current platform. By running the server side processes for each robot inside their own environment using Docker containers we where able to create a generic solution for both robots. And with some custom code on the robots themselves, we could ensure that the robots would always connect to the server if they where connected to the Internet. ...
So for our bachelor end project we have been asked to build a connection tunnel between the server and the Nao and Pepper robots so that it is possible to also use the Pepper robot.
As our research progressed however, it became more clear to us that in order to make a generic solution for both the robots the existing platform would not suffice. So instead of only creating the tunnel we also worked on a new server side solution.
the solution we came up with, virtualization, was sure to solve the problems that caused the Pepper robot to be incompatible with the current platform. By running the server side processes for each robot inside their own environment using Docker containers we where able to create a generic solution for both robots. And with some custom code on the robots themselves, we could ensure that the robots would always connect to the server if they where connected to the Internet. ...
Interactive Robotics aims to familiarize children with robotics, which they try to do with their RoboTutor. Towards this goal they developed a platform for controlling the robots but this platform only worked for the Nao robot and not for the Pepper robot.
So for our bachelor end project we have been asked to build a connection tunnel between the server and the Nao and Pepper robots so that it is possible to also use the Pepper robot.
As our research progressed however, it became more clear to us that in order to make a generic solution for both the robots the existing platform would not suffice. So instead of only creating the tunnel we also worked on a new server side solution.
the solution we came up with, virtualization, was sure to solve the problems that caused the Pepper robot to be incompatible with the current platform. By running the server side processes for each robot inside their own environment using Docker containers we where able to create a generic solution for both robots. And with some custom code on the robots themselves, we could ensure that the robots would always connect to the server if they where connected to the Internet.
So for our bachelor end project we have been asked to build a connection tunnel between the server and the Nao and Pepper robots so that it is possible to also use the Pepper robot.
As our research progressed however, it became more clear to us that in order to make a generic solution for both the robots the existing platform would not suffice. So instead of only creating the tunnel we also worked on a new server side solution.
the solution we came up with, virtualization, was sure to solve the problems that caused the Pepper robot to be incompatible with the current platform. By running the server side processes for each robot inside their own environment using Docker containers we where able to create a generic solution for both robots. And with some custom code on the robots themselves, we could ensure that the robots would always connect to the server if they where connected to the Internet.
Bachelor thesis
(2017)
-
Jelmer de Boer, Emilie de Bree, Pascal Remeijsen, Matthijs Verzijl, Koen Hindriks, Joost Broekens, Otto Visser, Huijuan Wang
A large problem that primary schools face is that the ratio of pupils to teachers is too high, the class sizes are too large and this makes it difficult for a single teacher to have a good oversight of how the development of a given child is going. The aim of Interactive Robotics is to tackle this problem by bringing robots into the classroom to aid teachers. They aim to have a single robot in a classroom that has the ability to teach different lessons and subjects; the RekenRobot being specifically for basic arithmetic. During the research phase, ideas were gathered regarding how to create teaching methods that are motivating and stimulating. For instance, personalisation, humanising the robot and adaptability of the teaching material were desired functions. The software for the RekenRobot was built from scratch, using the programming language GOAL, JavaScript, CSS, HTML and JSP. The original target audience of the project were children between the ages of 6 and 8. Later this was changed to cover different school years: 3-4, 5-6 and 7-8, making use of levels with different degrees of difficulty. The robot can work one-on-one with a child, being able to practice addition, subtraction, times tables and telling time, as well as 2 forms of explanations can be given: making use of a bus and a number line. Using no explanation to rather focus on automation is also an option. The idea of the project was to lay the groundwork for the later development of the RekenRobot, as this will be an ongoing project for Interactive Robotics. The application designed in this project will be adapted to become part of the Interactive Robotics system. The first user tests at primary schools yielded a largely positive result. The children were excited and motivated to work with the product. The system is simple enough to require very little explanation. This project was never meant to realise a product that can be deployed tomorrow, but the result is a very solid basis for further improvements.
...
A large problem that primary schools face is that the ratio of pupils to teachers is too high, the class sizes are too large and this makes it difficult for a single teacher to have a good oversight of how the development of a given child is going. The aim of Interactive Robotics is to tackle this problem by bringing robots into the classroom to aid teachers. They aim to have a single robot in a classroom that has the ability to teach different lessons and subjects; the RekenRobot being specifically for basic arithmetic. During the research phase, ideas were gathered regarding how to create teaching methods that are motivating and stimulating. For instance, personalisation, humanising the robot and adaptability of the teaching material were desired functions. The software for the RekenRobot was built from scratch, using the programming language GOAL, JavaScript, CSS, HTML and JSP. The original target audience of the project were children between the ages of 6 and 8. Later this was changed to cover different school years: 3-4, 5-6 and 7-8, making use of levels with different degrees of difficulty. The robot can work one-on-one with a child, being able to practice addition, subtraction, times tables and telling time, as well as 2 forms of explanations can be given: making use of a bus and a number line. Using no explanation to rather focus on automation is also an option. The idea of the project was to lay the groundwork for the later development of the RekenRobot, as this will be an ongoing project for Interactive Robotics. The application designed in this project will be adapted to become part of the Interactive Robotics system. The first user tests at primary schools yielded a largely positive result. The children were excited and motivated to work with the product. The system is simple enough to require very little explanation. This project was never meant to realise a product that can be deployed tomorrow, but the result is a very solid basis for further improvements.
Native WebLab
Safe Execution of Native Code in WebLab
Bachelor thesis
(2017)
-
Bram Crielaard, Chiel Bruin, Taico Aerts, Danny Groenewegen, Eelco Visser, Otto Visser
WebLab is a system where students can write and test code using an online interface. Course coordinators can create assignments and exams, where they can define automated tests to verify that the student code meets requirements. As WebLab only offered support for programming languages which run on the Java Virtual Machine, it was limited to a specific set of languages. In this project, we have designed a system which enables WebLab to support arbitrary languages, while still being able to guarantee scalability, security and reliability. To limit the scope of this project, the focus was laid on the programming language Python. The designed system uses Docker containers to execute arbitrary code in a safe and isolated way. A test fuzzing system with tamper detection is used to achieve reliable test results. The system is flexible as support for new programming languages can be added with relatively little effort. This report describes the design of the system, the research that was done and the process used. The report concludes with recommendations for future work on this project.
...
WebLab is a system where students can write and test code using an online interface. Course coordinators can create assignments and exams, where they can define automated tests to verify that the student code meets requirements. As WebLab only offered support for programming languages which run on the Java Virtual Machine, it was limited to a specific set of languages. In this project, we have designed a system which enables WebLab to support arbitrary languages, while still being able to guarantee scalability, security and reliability. To limit the scope of this project, the focus was laid on the programming language Python. The designed system uses Docker containers to execute arbitrary code in a safe and isolated way. A test fuzzing system with tamper detection is used to achieve reliable test results. The system is flexible as support for new programming languages can be added with relatively little effort. This report describes the design of the system, the research that was done and the process used. The report concludes with recommendations for future work on this project.
Digital Voting Pass
One step towards the digitalization of the entire voting process
Bachelor thesis
(2017)
-
Wilko Meijer, Daan Middendorp, Jonathan Raes, Rico Tubbing, Johan Pouwelse, Otto Visser
The Dutch electoral voting system is designed in a way that does not fit in the current era of the digital transformation. Almost every procedure during the elections is done manually and change in policy is very difficult as it requires a change in legislation.
This thesis explores a more trustworthy, transparent and less expensive way of verifying the suffrage of a citizen. In order to accomplish this, a literature review is presented about the election process in other countries and new possibilities with state of the art technology are reviewed. Based on these investigations, a solution that would make the current voting pass superfluous is presented. The presented solution in this thesis is built with blockchain and machine readable travel documents. Considering blockchain, this technology is a decentralized ledger of transactions, where every transaction is
immutable and built following predefined rules. These transactions are visible and verifiable for anyone connected to the decentralized network. Due to this decentralized design, the network is resilient against DDoS attacks and has no single point of failure. Machine readable travel documents are used for the authentication. Dutch travel documents (passports, identity cards and driver’s licences) are designed according to the ICAO machine readable travel document standard, which also requires the presence of a biometric chip. This means that every citizen already has access to a PKI (public key infrastructure) key pair, which can be used to sign data. The presented solution combines these technologies and is first of its kind to link a machine readable travel document to a blockchain. These new possibilities can help solving the identity problem for all kinds of
organizations ...
This thesis explores a more trustworthy, transparent and less expensive way of verifying the suffrage of a citizen. In order to accomplish this, a literature review is presented about the election process in other countries and new possibilities with state of the art technology are reviewed. Based on these investigations, a solution that would make the current voting pass superfluous is presented. The presented solution in this thesis is built with blockchain and machine readable travel documents. Considering blockchain, this technology is a decentralized ledger of transactions, where every transaction is
immutable and built following predefined rules. These transactions are visible and verifiable for anyone connected to the decentralized network. Due to this decentralized design, the network is resilient against DDoS attacks and has no single point of failure. Machine readable travel documents are used for the authentication. Dutch travel documents (passports, identity cards and driver’s licences) are designed according to the ICAO machine readable travel document standard, which also requires the presence of a biometric chip. This means that every citizen already has access to a PKI (public key infrastructure) key pair, which can be used to sign data. The presented solution combines these technologies and is first of its kind to link a machine readable travel document to a blockchain. These new possibilities can help solving the identity problem for all kinds of
organizations ...
The Dutch electoral voting system is designed in a way that does not fit in the current era of the digital transformation. Almost every procedure during the elections is done manually and change in policy is very difficult as it requires a change in legislation.
This thesis explores a more trustworthy, transparent and less expensive way of verifying the suffrage of a citizen. In order to accomplish this, a literature review is presented about the election process in other countries and new possibilities with state of the art technology are reviewed. Based on these investigations, a solution that would make the current voting pass superfluous is presented. The presented solution in this thesis is built with blockchain and machine readable travel documents. Considering blockchain, this technology is a decentralized ledger of transactions, where every transaction is
immutable and built following predefined rules. These transactions are visible and verifiable for anyone connected to the decentralized network. Due to this decentralized design, the network is resilient against DDoS attacks and has no single point of failure. Machine readable travel documents are used for the authentication. Dutch travel documents (passports, identity cards and driver’s licences) are designed according to the ICAO machine readable travel document standard, which also requires the presence of a biometric chip. This means that every citizen already has access to a PKI (public key infrastructure) key pair, which can be used to sign data. The presented solution combines these technologies and is first of its kind to link a machine readable travel document to a blockchain. These new possibilities can help solving the identity problem for all kinds of
organizations
This thesis explores a more trustworthy, transparent and less expensive way of verifying the suffrage of a citizen. In order to accomplish this, a literature review is presented about the election process in other countries and new possibilities with state of the art technology are reviewed. Based on these investigations, a solution that would make the current voting pass superfluous is presented. The presented solution in this thesis is built with blockchain and machine readable travel documents. Considering blockchain, this technology is a decentralized ledger of transactions, where every transaction is
immutable and built following predefined rules. These transactions are visible and verifiable for anyone connected to the decentralized network. Due to this decentralized design, the network is resilient against DDoS attacks and has no single point of failure. Machine readable travel documents are used for the authentication. Dutch travel documents (passports, identity cards and driver’s licences) are designed according to the ICAO machine readable travel document standard, which also requires the presence of a biometric chip. This means that every citizen already has access to a PKI (public key infrastructure) key pair, which can be used to sign data. The presented solution combines these technologies and is first of its kind to link a machine readable travel document to a blockchain. These new possibilities can help solving the identity problem for all kinds of
organizations