Mathias Ricken

Mathias Ricken




Curriculum Vitae (pdf)
(doc)  (txt)  (embedded)

Resume (pdf)
(doc)  (txt)  (embedded)


External linkArchive on A Concurrent Affair

RSSPublication RSS Feed

Research Projects

Concutest: A Framework for Testing Concurrent Programs

Mint: Multi-stage Programming for Java

xajavac: Extended Annotations-Enabled javac

LAPT-javac: Local Variable-Enabled javac

DrJava IDE

Programming for Change: The Temperature Calculator

Object-Oriented Design Festival

Design Patterns for Parsing

Assignments for an Objects-First Curriculum

Design Patterns for Marine Biology Simulation

Geometry Synthesis


Geometry Synthesis by Analogy


External linkCOMP 410 - Software Engineering Methodology

Past Classes


External linkA Concurrent Affair

External linkMy
External linkPapers
External linkTalks
External linkTeaching

      Assignments for an Objects-First Introductory Science Curriculum


In the spring of 2004, Dr. Dung Nguyen, Dr. Stephen Wong, Eric Cheng and I described a set of assignments that can be used in CS1/CS2 of an objects-first introductory curriculum. Two of these "nifty assignments", the Rice Marine Biology Simulation and the Shape Calculator, have been accepted for publication at the OOPSLA 2004 Educators' Symposium.

The results have been summarized in an unpublished paper. The Rice Marine Biology Simulation was also presented at TeachJava 2004 and is used as assignment and lab topic in the Comp 212 - Intermediate Programming class at Rice.


OOPSLA 2004 Educators' Symposium Nifty Assignment

These projects are in active use as class assignments. If you are interested in the full materials and the solutions, please contact me.


The summaries of the nifty assignments published at OOPSLA can be downloaded here.


The presentations of the nifty assignments published at OOPSLA can be downloaded here.


TeachJava 2004

I presented the Rice Marine Biology Simulation assignment at the TeachJava 2004 workshop on June 25, 2004. The presentation and the assignment material can be downloaded below.

Please note that several slides had to be invalidated since thie project is used as a class assignment and I cannot give away the answers. If you are interested in obtaining the original presentation and the solution (password-protected), please contact me.


TeachJava 2005

On July 1, 2005 at the TeachJava 2005 workshop, I again presented our Marine Biology Simulation design and the assignment based on it. This time, I emphasized the differences between the original AP Marine Biology Simulation Case Study and our modified version. The workshop material can be be accessed below.

Please note that I had to restrict access to this material since the project is in active use as a class assignment. If you are interested in the full material and the solution, please contact me.


Paper Abstract

Designing an effective curriculum to teach programming and software engineering to beginning students is challenging. An objects-first course prepares students in an excellent way for the requirements in industry and academia by focusing on program design, thereby enabling students to write correct, robust, flexible, and extensible software. This paper outlines the effects of an object-oriented approach on software quality and describes five assignments that can be used as teaching tools in an objects-first course to evaluate and reinforce the students' understanding.

Paper Download

Here is the paper:
Assignments for an Objects-First Introductory Software Engineering Curriculum (PDF) (view embedded).


Lab Lecture Notes

I wrote lab lecture notes for Rice's Comp 212 - Intermediate Programming class. They compare the original Marine Biology Simulation written by the College Board to our version of the simulation.



This project was generously supported by the Rice Undergraduate Scholar Program and the Dean of the School of Engineering at Rice University.

Copyright © 2002-2011 by Mathias Ricken. All rights reserved.