- Stellenangebote.
- Warum viadee.
- Unser Karrieremodell.
- viadee im Studium
- Bewerbungs-Tipps.
- Kooperationen mit Hochschulen.
- Themenvorschläge.
- Abschlussarbeiten.
- Java-Wettbewerb 2010.
- Freiberufler.
viadee Kontakt
Dr. Frank Köhne
E-Mail senden
Tel: 0251 / 7 77 77 0
Gemeinsam mit den Professoren Prof. Dr. Xiaoyi Jiang und Prof. Dr. Herbert Kuchen von der Westfälischen Wilhelms Universität (WWU) in Münster sowie mit Dr. Steffen Wachenfeld, ebenfalls von der WWU, zur Zeit jedoch an der University of Pennsylvania, organisiert viadee in diesem Jahr zum zweiten Mal den "viadee Java-Wettbewerb“. Der Wettbewerb verbindet Theorie und Praxis und richtet sich an Studierende im Grund- und Hauptstudium der Informatik und Wirtschaftsinformatik in Münster und Umgebung.
viadee hat bereits seit vielen Jahren enge Kontakte zur WWU. Die Ausschreibung des Java-Wettbewerbs ist ein weiterer Baustein in der gezielten Nachwuchsförderung. "Wir wollen den Studenten die Möglichkeit geben, schon frühzeitig mit den Anforderungen der Praxis in Berührung zu kommen und hoffen auf einen kreativen Austausch von Ideen." beschreibt Dr. Frank Köhne, Betreuer der Studenten bei viadee, die Gründe für das Engagement.
Die konkrete Aufgabenstellung wird erst nach der Sommer-Klausurphase im August vorgestellt. So sollen für alle Beteiligten faire Bedingungen geschaffen werden. Einige Rahmenbedingungen stehen jedoch schon heute fest:
- Das Anwendungsfeld bietet einen interessanten Bezug zum Umweltschutz
- Es handelt sich um eine Applikation mit mobilen Clients sowie einer Server-Komponente
- Es gibt viel Gestaltungsspielraum für die Teilnehmer
- Die Herausforderung ist anspruchsvoll, kann jedoch auch von Studierenden in jüngeren Semestern bewältigt werden
- Neben den Sieger-Preisen gibt viadee auch Etwas an die Community zurück: durch den Austausch von Test- und Beispieldaten soll ein Daten-Pool entstehen, der für Forscher und Entwickler frei zugänglich gemacht wird
Fest steht darüber hinaus, dass die Aufgabe sich in diesem Jahre in zwei inhaltlich verbundene Teile eines Java-Projektes gliedern wird. Für jeden Teil wird es separate Wertungen und Preise geben. Jeder Teilnehmer kann eine Lösung zu einer der beiden Aufgaben einreichen:
1. Teil: Einen möglichst effizienten Algorithmus für ein Kernproblem (aus dem Umfeld der Bildverarbeitung; bewertet anhand der Erkennungsrate)
2. Teil: Eine möglichst elegante Gesamt-Architektur (Technologieauswahl, Risikobewertung etc. - Implementierungen dazu nur exemplarisch; bewertet durch die Jury)
Auf diese Weise können sich Studierende mit verschiedenen Studienschwerpunkten einbringen. Alle weiteren Informationen sowie die Anmeldung zum Wettbewerb laufen über die Webseite des Wettbewerbs: http://www.viadee.de/java-wettbewerb.html Neuigkeiten verteilt der zugehörige Twitter-Stream.
Wenn es für beide Aufgaben gute Lösungen gibt, entsteht für die Teilnehmer vielleicht noch mehr daraus – zum Beispiel im Rahmen des ERCIS Launch Pad 2010.
Preise
Unsere Erfahrung im letzten Jahr zeigt, dass die wesentliche Motivation die persönliche Herausforderung ist - auch als Eintrag im Lebenslauf macht sich eine Platzierung sehr gut. Wir lassen es uns aber nicht nehmen, trotzdem Preise für die beste Lösung auszuloben:
- Der erste Preis ist ein Apple iPad (W-Lan).
- Der zweite Preis ist ein Amazon-Gutschein über 100 €.
- Der dritte Preis ist ein Amazon-Gutschein über 50 €.
Im Gegensatz zum letzten Jahr, gibt es 2010 zwei Wettbewerbskategorien. Diese werden unabhängig voneinander bewertet - wir vergeben daher jeden der genannten Preise 2x !
Organisation
Über das Formular in der rechten Spalte ist die Registrierung möglich. Registrierte Interessenten werden informiert, sobald es neue Informationen gibt.
- 01.08.2010: Veröffentlichung der Aufgaben auf dieser Webseite
- 12.09.2010 (23:59): Einreichungsfrist für Lösungen (online)
- Nach Abschluss der Bewertung durch die Jury erfolgt die Preisverleihung
Der gesamte Wettbewerb findet online statt. Ein Forum sowie einige grundlegende Lösungsbausteine werden bereitgestellt. Wir freuen uns auf interessante Beiträge!
Aufgabenstellung (ergänzt am 01.08.2010)
Motivation
Die CO2-Bilanz von Lebensmitteln wird zu einem großen Teil durch Transportwege bestimmt - oder teilweise sogar dominiert.
Zum Beispiel für Obst und Gemüse ist die Herkunft auch im Supermarkt mittlerweile erkennbar, aber woher kommen die vielen anderen Produkte wie z. B. Mineralwasser?
Die Idee regionale (und auch saisonale) Lebensmittel zu verwenden ist insgesamt eher eine Bereicherung des eigenen Speiseplans - sie wird nicht als Einschränkung wahrgenommen und ist Teil eines breit aufgestellten Trends (1, 2).
Die Plattform localdirt versucht beispielsweise gezielt, lokale Anbieter und Kunden (Einzelkunden, aber auch Restaurants und Läden) zusammenzubringen - bislang allerdings nur in den USA und ohne mobilen Zugang zu den hinterlegten Informationen.
Durch Aspekte wie Gen-Technologie und Tierschutz kommt dazu langfristig weiterer produktbezogener Informationsbedarf beim Lebensmittelendkunden auf.
Ziel
Das Ziel ist ein Beitrag zur Deckung dieses Informationsbedarfs. Die Vision ist eine Wiki-artig, verteilt gepflegte Datenbank mit Informationen zu Produkten und insbesondere deren Herkunft. Auf Basis der Produktkennzeichnung mit Barcodes lassen sich, zum Beispiel mit einem Smartphone, Produkte identifizieren und deren zurückgelegte Distanz (bis zum aktuellen Standort) abschätzen.
Es ergeben sich daraus zwei Teilaufgaben für den Java-Wettbewerb, Teilnehmer wählen bitte eine Aufgabe:
Aufgabe 1: Der algorithmische Teil
Plattformübergreifende, stabile und schnelle Bar-Code-Erkennung (EAN/GTIN)auf dem Smartphone. Die Realisierung erfolgt daher natürlich in Java. Es gibt dazu bereits durchdachte Lösungen (http://cvpr.uni-muenster.de/research/barcode/), auch Open Source Beiträge existieren bereits (http://code.google.com/p/zxing/, http://openean.kaufkauf.net/); deren Flexibilität
und Ressourcenbedarf ist aber (nach eigener Aussage) noch nicht ausgereizt. Solche Ansätze und Open Source-Projekte können selbstverständlich als Grundlage für Lösungen dienen.
Ziel ist die Performance im Sinne von Erkennungsrate oder Laufzeit voranzutreiben und entsprechende Ideen in die relevanten Forschungs- und Open Source Projekte zurückzuspielen - nicht das Rad neu zu erfinden. Aus diesem Grund stellen wir ein Eclipse-Projekt als Startpunkt bereit.
Eine wichtige Rolle für die Weiterentwicklung von Erkennungs-Programmen spielt ein breit angelegtes Test-Set mit Fotos, die mit verschiedensten Smart-Phones erstellt wurden. Alle Teilnehmern (beider Kategorien) reichen dazu schon vor der Einreichung der Lösung mindestens 2 Smart-Phone-Bilder von Lebensmittel-Barcodes ein - eines reichen wir direkt
an alle Teilnehmer weiter - die Sieger ermitteln wir dann auf Basis einer Testreihe mit einem zufälligen Sample, in welches das zweite Bild einfließt.
Wichtig: Es gewinnt die Lösung mit den meisten korrekten Erkennungen pro Sekunde.
Nach Abschluss des Wettbewerbs steht das gesamte Test-Set der Community zur Verfügung. Natürlich bietet es sich an, Verbesserungsvorschläge dann ebenfalls in Projekte wie ZXing zurückzuspielen.
Technische Anforderungen
- Entwicklungsumgebung ist Eclipse mit JUnit-Plugin. Vorkunfigurierte
Java-Entwicklungsumgebungen gibt es hier http://www.eclipse.org/downloads/ - die Java-Version reicht aus. - Einzureichen ist eine lauffähige Weiterentwicklung des Basisprojekts in Form
eines per ZIP gepackten Archivs des Projektverzeichnisses (ohne Trainingsbilder) - Externe JAVA-Bibliotheken dürfen dort eingebunden werden, sofern deren
Lizenz das zulässt - Der Wettbewerbslauf der Einreichungen wird auf einem PC mit Java6 ausgeführt und wird 512 MB Heap-Speicher und keine Netzwerkverbindung zur Verfügung haben
- Lösungen müssen das Interface de.viadee.javawettbewerb.solution.EAN13Reader (Teil des Basispakets) implementieren und einen Konstruktor ohne Parameter besitzen. Geben Sie den vollen Klassennamen Ihrer Lösung
bitte bei der Abgabe mit an. - Bitte beachten Sie den Code-Style des ZXing-Projekts, um
später eine Übergabe einfach zu gestalten (sofern Sie Code-Teile dorthin übergeben möchten)
Aufgabe 2: Gesamtarchitektur
Ziel ist hier ein technisches Konzept für die Backend-Systeme, für deren Betrieb auch ein tragfähiges Geschäftsmodell zu wählen ist. Sie agieren hier also in der Rolle eines Java-Architekten mit Projektleitungsaufgaben - ein typisches Gemisch.
Insbesondere auf die Herkunft und Pflege der Daten ist dabei einzugehen. Die Struktur der Daten ist immer orts- und produktbezogen; darüber hinaus ist mit (teilweise schwach strukturierbaren) Erweiterungen (Bio-Zertifizierungen etc.) zu rechnen. Die Daten-Organisation muss aber nicht nur technisch sinnvoll, sondern auch handhabbar und langfristig glaubwürdig konzipiert sein.
Potenziell ist mit einer sehr hohen Last auf der Plattform zu rechnen - es geht also um eine skalierbare, flexible Auswahl von (Software-) Basisbausteinen und Java-Frameworks und die Konzeption einer überzeugenden Gesamtarchitektur aus diesen Komponenten.
Die "Überzeugung" kann sowohl durch gute Planung und schlüssige Argumentation erreicht werden, als auch durch kleine Prototypen und Lösungsfragmente für kritische Teilkomponenten. Diese ersetzen aber nicht die Argumentation für Ihre Architektur.
Überzeugen Sie uns und zeigen Sie dabei auch die Projektrisiken auf. Das dabei entstehende Dokument wird der Jury vorgelegt, welche dann die Gewinner in dieser Kategorie auswählt.
Detailanforderungen
- Einzureichen ist ein Konzeptpapier als PDF-Dokument
- Prototypen, Datenmodelle etc. sind in jedem Fall im Konzeptpapier zu beschreiben, können aber auch beigefügt oder als Link angegeben werden; für die Jury ist das Konzeptpapier maßgeblich bei der Beurteilung.
- Das Konzeptpapier muss mindestens folgendes enthalten:
- Eine kurze Beschreibung des Geschäftsmodells - Wie finanziert sich die Plattform
und welche Architekturziele leiten sich dann daraus ab? - Eine grobe Beschreibung der Prozesse der Nutzerinteraktion (Skizzen-Niveau)
- Eine Architekturskizze des Gesamtsystems mit den relevanten Komponenten, deren
Verteilung, Interaktion und Schnittstellen zur Umgebung des Systems - Eine Begründung für diesen Entwurf sowie begründete Auswahlentscheidung
bezüglich Java-Frameworks und Technologien, die Sie im Rahmen einer Umsetzung einsetzen würden - Ein Datenmodell (passend zur ausgewählten Speicherstruktur)
- Eine Liste der zu erwartenden Projektrisiken (zu Entwicklung und Betrieb)

Ergebnisse (ergänzt am 29.09.2010)
Die Performance-Tests sind abgeschlossen, die Jury ist zu einem einstimmigen (!) Urteil gekommen und die Ergebnisse sind wie folgt:
| Architektur-Teil | Algorithmen-Teil |
|
|
Herzlichen Glückwunsch an die Sieger des diesjährigen viadee Java-Wettbewerbs! Unsere Diskussion im Forum zeigte, dass die Aufgabenstellung anspruchsvoll war, sowohl in inhaltlicher Hinsicht als auch in Bezug auf den Umfang der Arbeiten.
Wir bedanken uns bei allen Teilnehmern für ihr Interesse und freuen uns auf eine persönliche Preisübergabe in der kommenden Woche!
Das Wettbewerbsteam
Preisübergabe (ergänzt am 06.10.2010)


Beide iPads haben gestern ihre neuen Besitzer erreicht. Ein netter Abend mit spannenden Detail-Diskussionen.
Vielen Dank an alle Teilnehmer und Beitragenden!
Das Wettbewerbsteam


