Next: 4 The application architecture
Up: WEB3R
Previous: 2 The 3D reconstruction
3 Migrating on the net: the design of WEB3R
The procedure described in the previous section has been embedded into a client-server architecture,
to create a novel web-based service. A client can be whatever system equipped with a browser and
an Internet access.
More in detail, the aim is creating a dynamic, modular web application with the following functionalities:
- Constructive interaction with different kinds of users;
- Easier and effective management, upgrade and extension of the system.
The full reconstruction system may also include a subsystem
devoted to the image acquisition process.
The server side frame is made by the following components:
- Web Server: it deals with the communication with the clients,
sending the HTML pages and receiving the requests; it is also a container
for Java servlets;
- Frame grabber: hardware component used to acquire images from an analogical
camera; in case of digital cameras the frame grabber can be substituted with an appropriate
software interface;
- Reconstruction modules: software that implements
the reconstruction process as summarized in section 2;
- Service management modules: software managing input
and output operations, code execution, error management, ....
We have always kept as a guideline the substantial decoupling
between the content presentation environment and the computational/elaboration
framework. For this reason the design has followed the MVC (Model View Controller)
paradigm [8].
The MVC logic is relevant to all applications that
contain a graphic interface, through which information is conveyed to the user in different
screenshots. This is especially true when the information has to be continuously
updated.
As a matter of fact, in the MVC paradigm the input by the user, the
modelling of the external world and the visual feedback are explicitly separated
and managed by three distinct objects called Model (business functionality),
View (presentation logic) and Controller (control logic).
Each of them is specialized in a task and to each of them a different level
of logic is associated. The functions of each level can be summarized as follows:
- Presentation logic: part of the application that deals
with the presentation layer, containing the user interface and the web
technologies (for instance XML, XHTML). It is responsible for the visualization
of information, or how the application visualizes the information,
but not of how this information is obtained.
- Control logic: it deals with the application flow and connects the interface
and the application; it receives and interprets the HTTP requests in order to choose the next
step in the application according to the user input.
- Application logic: also called business logic, is
the core of the application, being responsible of all the tasks dealt with
by the application. It contains the principles, algorithms and functions
of the service.
Next: 4 The application architecture
Up: WEB3R
Previous: 2 The 3D reconstruction
Stefano Ansoldi