16:332:568            Software Engineering of Web Applications

Course Lectures and Projects


This course is structured as an advanced study group, where learning is achieved through intense participation and interaction with others.

There is one (1) project and one (1) lecture (2 periods long, approx 3 hours), as listed on the course syllabus web page.

Preferably, you do the same topic/theme for the project and the lecture, but this is not required, i.e., the topics of each could be different.


Each student/team prepares one lecture on a selected topic. The lectures must be as technical as possible. Sure it is important that you give real commercial examples, but do not turn the entire presentation into a marketing pitch. Since you have only 2 class periods (approx. 3 hours), you cannot cover technical details of too many things. Select one topic and present details. For the others, present brief introduction and a list of recommended readings.

The lecture should cover the current developments. Do not propose new solutions in your lecture--that you can do in your project.
The lecture should cover only the existing knowledge, state-of-the-art, materials already published by others (in conferences, journals, book, ...). Basically, you are supposed to read carafully several relevant papers on the topic and explain what you read to others in the class. You should explain what is the problem and what are the best known existing solutions. Go into as much technical details as the time permits.

Include a list of references and URL's for the materials you use to prepare the lecture and also for further reading, other related topics that you couldn't cover in the lecture.

The PRESENTER(s) should maintain on their web site the following:

  1. Lecture materials (written summary and presentation slides)
  2. List of critical questions you received from others (remove the source's name)
  3. List of answers to the critical questions
  4. Links to academic and industrial projects and products related to the lecture topic
  5. Other interesting remarks and links related to the lecture topic

The REST OF THE CLASS should read all the assigned papers and prepare a list of critical questions about the material. The questions shall be asked during or after the presentation, and, if necessary, emailed to the presenter(s).

You should come up with an idea for your project, let me know and we can discuss it and determine whether it qualifies or not. The key outcome of the project is that you demonstrate effort and interesting results in a project related to mobile computing.

The project can be proposing a new protocol and analyzing its performance (analytically or by simulation), or it can be software development for a mobile application. You can do either a full-fledged software application, or a research study. Either is fine, as long as you demonstrate substantial effort and interesting results.

For example, you may propose a new protocol for synchronization of the multiple copies of some data (sync your PDA and your laptop). For this protocol, you may do analysis of complexity and prove that this protocol has much lower complexity than, say SyncML (http://www.openmobilealliance.org/syncml/) or you may do simulation and substantiate your claims by simulation.

Another option is that you develop a software application, say an application which allows access to digital libraries from different kinds of mobile devices (laptop, PDA, mobile phone, etc.). In this case, I expect that you design the software using software engineering methodology and demo the application one it is ready and working.

All project materials (progress reports, software, etc.) must be available on your web site.

NOTE: Unfortunately, the department is unable to provide resources for special project needs. Try to select the project and implementation technology that is generally available, since the logistics of project development and demonstration are entirely your responsibility.

Ivan Marsic
Sat Jan 24 16:55:00 EST 2004