| Developers | Bram Scheidegger, Claude Barthels |
|
| Date | Sep. - Dec. 2011 | |
| Technologies | C, ARM assembly, L4 microkernel | |
| Description | NSLU2, short for Network Storage Link for USB 2.0 Disk Drives, is a network attached storage device
developed by Linksys in 2004. The device has an Intel XScale processor running at 133Mhz, offers 32MiB
of memory and runs by default a Linux operating system, which forced Linksys to release their specifications
and source code as per the terms of the GNU General Public License, which fostered the development of custom firmwares. During the course "Advanced Operating Systems" at ETH, students get a thorough understanding of design and implementation issues of modern operating systems and are required to build an operating system on top of the L4 microkernel for the NSLU2, casually called "Slug". The system requires students to implement a memory manager, a pager (including on demand paging), a system call interface, a simple filesystem based on NFS, a timer driver, process manager and an ELF loader. |
| Developers | Claude Barthels, Bram Scheidegger, Elena Teunissen, Antti Aalto |
|
| Date | Nov. - Dec. 2011 | |
| Technologies | Java, Axis2, Tomcat, PHP | |
| Description | EAI Music News Service is a webservice that integrates diverse data related to bands and musicians from
various sources. Last.fm provides basic information about the band/musician, e.g a short description/biography and some sort of categorization (tags). Additionally it offers a service for suggesting similar bands that might be of interest for the user as well. Product information and customer reviews about the band's albums are pulled from Amazon through the use of the Amazon Product Advertising API and get integrated within our service with the data from Last.fm. In order to stay up-to-date and get the latest news (tweets and pictures) about a musician, the service also automatically fetches the necessary feeds from Twitter and Flickr. The project was developed in the context of the "Enterprise Application Integration" course at ETH Zurich and also included the creation of a client program, which in this case was a webinterface written in PHP through which the user can interact with the service. |
| Developers | Natalia Korotkova, Mihail Kuricyn, Alexander Leushkin (Nizhny Novgorod, Russia) |
|
| Antti Aalto, Christopher Dentel, Claude Barthels (Zurich, Switzerland) | ||
| Luís Felipe Bento, Nicola Cinefra, Ho Thi Thao Nguyen, Xu Binbin (Milano, Italy) | ||
| Date | Sep. - Dec. 2011 | |
| Technologies | Eiffel, Eiffel Studio, Eiffel Vision 2 | |
| Description | The course "Distributed and Outsourced Software Engineering" taught by Peter Kolb, Bertrand Meyer, Martin
Nordio and Christian Estler exposes students to the challenges that come with the increasing number of distributed projects i.e. projects that are developed by different
groups collaborating across companies, countries and timezones. Students from Switzerland, Vietnam, Russia, Denmark, Italy, Argentina, Hungary, Spain and Ukraine work together in groups of three teams on a project (usually a multiplayer game). A team is made up of two to four students. Our group was composed of one team located in Nizhny Novgorod, Russia (responsible for the logic part), one in Milano, Italy (implementing the artificial intelligence) and our team, located in Zurich (responsible for the graphical user interface and the network component). Together we implemented a clone of Puerto Rico, a German board game for three to five players in which the player assumes the role of colonial governor on the island of Puerto Rico during the age of Caribbean ascendancy. The main challenge of this project was to deal with the problems that arise from the distributed environment, especially with the additional overhead in communication, coordination and project management. |
| Developer | Claude Barthels |
|
| Supervisor | Simon Mayer | |
| Date | Feb. - Aug. 2011 | |
| Technologies | Java, Restlet, Jersey | |
| Description | AutoWoT is a tool for the rapid integration of Java-enabled smart devices into the Web of Things.
AutoWoT’s drag & drop interface allows the creation of a resource-oriented description of the
targeted device. Based on the description, the tool is able to automatically generate a web server
software to integrate the device into the world wide web. The project was initially created by Simon Mayer, Dominique Guinard, and Vlad Trifa from the Distributed Systems Group at the Institute for Pervasive Computing at ETH Zurich and was developed further within my bachelor thesis with the ultimate goal of providing the community with an open-source version of the toolkit. |
| Developers | Severin Heiniger, Raphael Fuchs, Claude Barthels Elena Teunissen, Roland Bärtschi, Bram Scheidegger |
|
| Date | Nov. - Dec. 2010 | |
| Technologies | Java, Android | |
| Description | Mille Bornes is a French card game that was created more than half a century ago. The premise of
the game is that the players are in a road race, where the objective for each player is to reach
a distance of 1000 miles before the other. The project was developed as part of the "Distributed Systems" lecture at ETH Zurich. The purpose of this assignment was to implement a real-world distributed application and to gain further knowledge of various aspects of the Android development platform. |
| Developers | Claude Barthels, Pascal Studerus |
|
| Date | Sep. - Dec. 2010 | |
| Technologies | Java, Javali, x86, ANTLR | |
| Description | Javali is a Java-like object oriented programming language. The project of writing a compiler is an
integrated and graded part of the course on compiler design at ETH Zurich. From the Javali source code,
the compiler produces assembly instructions for x86 machines. The compiler uses several optimization techniques, like constant propagation, precomputation, instruction rearrangement or death code elimination in order to optimize the produced instructions. Furthermore it gives feedback to the user in order to help debugging the program, for example it provides warnings in case of uninitialized variables. |
| Developers | Cedric Staub, Claude Barthels, Damian Pfammatter |
|
| Date | Feb. - Jun. 2010 | |
| Technologies | Eiffel | |
| Description | The purpose of this project is to enable Eiffel developers to efficiently generate output in static
HTML format without embedding HTML code inside their project's source code. By default the generated code is compliant with the W3C XHTML 1.0 Strict
specifications. The design also ensures that the output can be easily changed to other formats. For demonstration purposes a LaTeX module has been included in the release version. This project has been done in the context of the "Software Architecture" course at ETH Zurich and did not only include developing the software, but also involved requirements documentation, API design, implementation, validation and verification. |