CS laboratory

HUT
Department of Computer Science and Engineering
Laboratory of Information Processing Science


T-106.850 Software Technology Seminar (3 credits)
(autumn 2003):

Web Applications

Topic

For simplicity, we'll call Web Application a server application that produces HTML.
We'll discuss the issues of authentication and authorization, but focus mainly on content creation and navigation.
The basic architecture will be described, the role of a template engine explained and several of them introduced.
The problem of content update (posting) is discussed and presents one of the main study topics of the seminar.
Navigation, including proper error handling, will be introduced and forms the gui logic of an application. To make the examples that the students develop more realistic, persistence is required. Although databases are not topic of study here lightweight persistent mechanisms will be used and their impact on the application architecture discussed.

Testing

A separate group will design and implement a test framework which may be used to walk and stress the application.
Each of the other groups will use this to create performance results.

Group work

The seminar is organized as a "working seminar", which means students learn by doing and present their results to each other.
I will give a brief introductionto the topic in the first session. Then students will form medium size groups (around 4) and pick one of the main topics. Groups may also form and pick prior to registration.
Each group will give three short presentations one in each of the following sessions. The first one will give an overview of the chosen technology and a general architecture of the application.
A second presentation will serve as a status report.
A third presentation will show the results, both in experience, program output and performance. The work of the testing groups will be used to create comparable figures.

Technologies

This is a list of technlogies that may be chosen by groups. This list is open though; students may suggest other alternatives.
  • Velocity/Java: http://jakarta.apache.org/velocity/index.html
  • Erb/Ruby: http://raa.ruby-lang.org/list.rhtml?name=erb
  • Cheetah/Python: http://www.cheetahtemplate.org/
  • Xalan/XSLT(Java): http://xml.apache.org/xalan-j/index.html
  • JSP/Java: http://jetty.mortbay.org/jetty/index.html
  • WebMacro/Java: http://www.webmacro.org
Any non trivial application may be built by the students. Again suggestions are welcome, but here is a small selection : Project Management , Shop , Bazar , Calendar, Inventory, Discussion Board , FAQ

Prerequisites

Participants should know the programming language they choose to use quite well, or be willing to learn it outside the seminar hours.
At least one member of a group should have more than rudementary knowledge of html.

Sessions

The seminar has only four sessions. Groups should work about about 100 extra hours for implementation and presentation preperation.
Groups may use the same time-slot for weekly group meetings (suggested).

Each group may arrange for at least one consulting session with the teacher.

The seminar takes place in on Wednesdays from 9:00 to 12:30.
The first meeting is on 10. 9.

Day

Description

Introductory session

Wed 10.9. 8.30 - 12.00, Y427b

-- What is a Web Application. Alternatives
-- Template Engines
-- Navigation
-- Posting
-- Error handling
Student form groups and choose topics
Design

Wed 24.9. 8.30 - 12.00, Y427

Each group presents in 30 minutes :
-- Technology overview -- Architecture overview
Status

Wed 5.11. 8.30 - 12.00, Y427

Each group presents in 30 minutes :
-- More detailed Architecture
-- First impressionsy
Final

Wed 3.12. 8.30 - 12.00, Y427

Each group presents in 20 minutes :
-- The running application
-- The tests / performance
-- Lessons learned.

Discussion + comparison in terms of
ease of use,
speed of implementation,
speed of application,
separation of work tasks
and maintainability.

Seminar Language

The language in the sessions is English

To get credits

Students must be present at least 3 of the 4 sessions

Students must convince the teacher that they participated in the implementation

Registration,
News,
further Information

Registration is by e-mail to Torsten Rueger
Please give the following information 

  • name 
  • student number 
  • department 
  • Group members, if group has been formed
  • Topic intrest, if such exists


The first 25 to register are in.


This page is maintained by ??
This page has been updated last on 8. 9. 2003