Download BACHELOR THESIS

Transcript
3. Inside the Assignment Manager
Assignment Manager (AsM) is a software system designed to fulfill the expectations
outlined in the first two chapters. Its concept was first proposed in the spring of
2008 and it was developed during the years 2009-2011. The development time was
longer than expected both due to misjudging the complexity of the project and the
time constraints of the author. It was deployed live in the spring of 2011 and tested
on the XML1 Technologies course at MFF UK.
This chapter broadly describes AsM implementation and discusses the choices
made. For more implementation details, please see the developer documentation on
the attached CD, or see [2].
3.1 Used Technologies
A web-based application is the obvious choice for this project with no real drawbacks
and a lot of benefits, the foremost among them being portability. Particular
technologies chosen for this project include PHP2 for the server side and “dynamic
HTML” (XHTML3 and JavaScript4 with jQuery5 framework) for the client side, which
is a common choice for web applications. This selection of technologies offers the
least restrictions and makes use of author's previous experience.
Selecting PHP for the application's server side imposes a restriction upon it and
that is the "passive application" logic. PHP in its most common form is designed just
to respond to client requests. PHP scripts are invoked upon receiving a client request
and return a result upon completion. (There are different possibilities as well, but
this one is prevalent.) This model suits the proposed scenario, because AMS is just
supposed to help the actors perform their tasks easily. All actions performed by the
application are to be triggered by users, with one notable exception. The checker
1
Extensible Markup Language (XML) is a set of rules for creating documents with added
logical structure (see [19]).
2
PHP is a programming language with syntax loosely based on C, Java, and Perl. It is most
often used for serving dynamic web pages and server-side scripting in web applications
(see [3] for details).
3
XHTML is a document type used for web pages based on XML (see [22]).
4
JavaScript is a programming language most often used to add interactivity to web pages,
specified in [4].
5
jQuery is a JavaScript library that simplifies access to XHTML elements and events and
communication with the web server. It radically changes the way of writing JavaScript
code (see [5]).
11