CS2310 Seminars and Term Project

The seminars and term project are closely related to the theoretical study and experimental development of a multimedia software engineering framework for distributed time-critical applications on the web. The seminars are intended to study and understand other researchers' approaches. The term project provides an opportunity for us to mannually apply the approach described in my classnotes (and my online book) to a real problem. The term project will lead to mockup or prototype, but the real implementation will be for subsequent study. Interested students may continue with me to pursue this topic, which will lead to papers (usually jointly written by several students and me) and MS projects and eventually PhD research topics and doctoral dissertation.

Seminar Suggestions

As mentioned above, the topic we are interested in is how to develop distributed time-critical applications utilizing both inhouse web services as well as commercially available web services.

In the industry circle you hear a lot about SOA (service oriented architecture) these days. I recently invited Steve Mahoney of CEI to talk about SOA. His online lecture notes can be a good starting point for you. You can search the web and google on SOA to report on the industry practice related to SOA and multimedia software engineering.

Obviously not only industry people are interested in SOA, but also academic people who are jumping in to formalize web service frameworks. You can study Pahl's paper, An Ontological Framework for Web Service Processes, and give a seminar on this paper. Or you can follow the references mentioned in Pahl's paper to study other related papers. (I like Pahl's paper because I strongly suspect I can map his abstractions into my active index model.)

Once you selected a topic, either practical or theoretical, let me know. You can also pick a topic on your own, and run by me for approval. If the topic is too trivial, or on some technology that has already passed its peak, I will let you know.

Term Project

Term project will be a group effort. We will explore the following, or related, scenarios of a real application.

An Application Scenario of Just-in-Time e-Learning

An end user John needs to repair an instrument. The specific situation of this repair job is captured by various sensors. John places queries to find more information about this instrument. Sensor-based query processing locates the relevant repair manuals, which can be made available through the virtual classroom.

John knows he cannot repair the instrument by himself. Therefore John accesses the Chronobot Bid Manager to post a repair job. The sensors monitoring this instrument will feed data continuously to the job posting, so that the job posting actually contains a lot of detailed information not ordinarily available on a job posting. Relational mining discovers the persons with experience in repairing this type of instrument, and they are prompted to respond.

Another user Keith accesses the Chronobot Bid Manager web service and identifies himself as a repair serviceman. He browses through the list of all the bids that he has placed for multiple jobs postings. There are two messages that inform him that two of his bids were accepted. He is interested to find out more about these jobs. Keith is able to access the readings from the sensors so that he has a clear picture about the instrument and what he can do.

After the bidding, negotiation is carried out to bring the two sides to an agreement. Once the deal is agreed upon, John can proceed to repair the instrument on site with the on-line help from Keith. Since the two persons share the same information supplied continuously by the sensors, they will have a clear common understanding of the problem, and John learn quickly from Keith to repair the instrument.

Discussion

The above scenario of JIT learning can readily be translated into similar scenarios according to the context - a senior citizen on-site can be assisted by a nurse on-line to give himself an injection; a physician on-site can be aided by a surgeon on-line to perform a surgical operation; and so on. By virtue of multicast and anycast routing protocols, sensors are able to feed data continuously to multiple nodes in the network, so that multimedia information fusion is possible to answer queries and to process bids through the chronobot. By tightening or loosening parametric values specifying the time constraints, the JIT scenarios can cover a wide spectrum of situations, ranging from distaster managment with extremely strict timing constraints to assistive learning with more relaxed timing constraints.

Term Project

The term project follows the multimedia software engineering methodology to create a prototype for the JIT e-learning application scenario. This is a team project, where each student takes on a part of the project and leads discussion in the class.

Time Critical Applications

An example is as follows.

A time-critical input message will have a time parameter Tc. Let the system clock be Ts. If Ts < Tc then the index cell is not triggered. If Tc+Tnormal > Ts > Tc then send nurse (The output message is also a time-critical message with time parameter Tc' that is computed from Tc and Tnormal, i.e., Tc' = f(Tc, Tnormal). For example, Tc' = Tc+Tnormal.) If Tc+Talarm > Ts > Tc+Tnormal, i.e., Tc is within an alarm threshold Talarm, then an alarm message is sent to request the nurse(s) to respond immediately.

We will discuss how to incorporate time critical specification into (1) scenarios, (2) IC cards, and (3) Active index.

IC Cards

First describe the JIT application scenario (stories) using visual patterns such as IC cards.

Patterns

Next expand the IC cards into formal patterns, which are relational graphs.

Specification

Then transform the IC cards into the IC structure.

Implementation

Finally based upon the IC structure implement a prototype (or a mock-up) where some of the components are implemented in-house and others are existing web services.