Assignments

The practical part of the coursework consists of three small mandatory assignments plus a separate, larger course project.
Although students have some liberties in choice of technology for the practical assignments / the course project, use of the supplied development environment is highly recommended. The task to be performed in each of the mandatory assignments is the same, students are to implement a system to manage and solve Sudoku puzzles. The exact design and functionality of the system is left to the student as part of the exercise, but a required minimal functionality set includes capabilities for
  • organization of puzzles in groups
  • storage and retrieval of puzzles
  • adding and removing puzzles (to and from groups)
  • solving puzzles
  • To allow students to focus on service implementation aspects, a simple Sudoku solver implemented in Java is provided.

    Assignment 1

    In assignment 1, students are to realize a Sudoku management system built on RESTful services. A service development kit based on Restlets is provided for this assignment, and use of the kit is covered in tutorial 1.

    Assignment 2

    In assignment 2, students are to realize a Sudoku management system built on Apache Axis2 SOAP Web Services using the Axiom API. For this exercise, use of the course apache development package is recommended. Use of this package is covered in tutorial 2.

    Assignment 3

    In assignment 3, students are to realize a Sudoku management system built on Apache Axis2 SOAP Web Services using generated code stubs. For this exercise, use of the course apache development package is recommended. As part of this assignment, students will analyze the differences between SOAP and REST, an use of the Axiom API vs use of SOAP stubs, and summarize their experiences from the three mandatory assignments.

    Course Project

    In the course project, students will design and implement a SOA-based application using a technology well suited for their application. Choice of application and technology base are here left to the student as part of the exercise. Students are encouraged to start planning the course project as soon as possible. A project proposal and feasible software design for the course project is mandatory to submit for teacher evaluation and approval prior to implementation of the course project.