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