62
MASARYK UNIVERSITY FACULTY OF I NFORMATICS Studies Administration System from the Student’s Point of View DIPLOMA THESIS Adam Libuša Brno, autumn 2011

Studies Administration System from the Student's Point of View

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

MASARYK UNIVERSITY

FACULTY OF INFORMATICS

}w���������� ������������� !"#$%&'()+,-./012345<yA|Studies Administration System from

the Student’s Point of View

DIPLOMA THESIS

Adam Libuša

Brno, autumn 2011

Declaration

Hereby I declare, that this paper is my original authorial work, which I have worked out bymy own. All sources, references and literature used or excerpted during elaboration of thiswork are properly cited and listed in complete reference to the due source.

Advisor: doc. Ing. Michal Brandejs, CSc.

ii

Abstract

Computer based information systems help many organizations around the world achievetheir goals faster and in a more effective way. This thesis concentrates on the systems usedat universities and higher education institutions. The main topic of the thesis is the role ofa student in such a system.

This thesis takes the web based Masaryk University Information System as a model ex-ample. It lists applications and features of the information system that help a student admin-ister his study related matters. The thesis offers an overview of other information systems,made for similar purpose, or based on similar technology. In the later chapters a new ver-sion of the applications intended for studies administration for the user role of a studentis designed. The new design takes inspiration from the similar, successful solutions in theworld, the information system users’ new feature suggestions and bugreports and the Web2.0 principles. The new version of the student applications is implemented and publishedfor use by students as a part of the Masaryk University Information System.

The goal of the thesis is to describe the architecture and principles of the new version ofthe student applications. The author of the thesis is responsible for designing, implementing,testing, putting into operation and debugging of the new version of the students application.

iii

IT informacní systémy pomáhají mnoha organizacím po celém svete dosáhnout svýchcílu rychleji a efektivneji. Tato práce se soustred’uje na systémy používané na univerz-itách a institucích vyššího vzdelávání. Hlavním tématem práce je uživatelská role studentav takovémto systému.

Tato práce používá Informacní systém Masarykovy univerzity jako modelový príklad.Uvádí seznam aplikací a funkcí informacního systému, které pomáhají studentovi s admin-istrací záležitostí, týkajících se jeho studia. Práce obsahuje prehled jiných informacních sys-tému, které byly vytvoreny s podobným cílem jako Informacní systém Masarykovy univerz-ity, nebo používají podobné technologie. Další kapitoly obsahují návrh nové verze pro ad-ministraci studií z pohledu studenta. Návrh bere inspiraci z podobných, úspešných aplikacíve svete, podnetu a chybových hlášení uživatelu ISu a principu Web 2.0. Nová verze stu-dentských aplikací je implementována a zverejnena pro studenty, jako soucást Informacníhosystému Masarykovy univerzity.

Cílem práce je popsat architekturu a principy nové verze studentských aplikací. Au-tor práce má za úkol novou verzi navrhnout, implementovat, otestovat, spustit do ostréhoprovozu a odstranit, do uvedení do provozu neodhalené, chyby.

iv

Keywords

Information System, HTML, Web 2.0, Perl, IS, Masaryk University, Student, Application,Software design

v

Acknowledgment

I would like to thank Michal Brandejs for being the thesis supervisor. His support, valuableopinions and comments to the theoretical as well as the practical part of the thesis helpedme during my work on the project. I am thankful for valuable comments and suggestionsfrom Miroslava Misáková and Tomáš Obšívac, they helped me with picking up small de-tails that were not obvious to a programmer. My thanks also belong to Hana Bydžovská,who implemented the features of the new student application connected to schedules, toJaroslav Bayer, who implemented the Calendar application, some parts of which are usedalso in the new student references page. I thank Miroslav Kripac for his advice on the per-formance issues. Last but not least, I would like to thank Alena Zol’áková for her supportand understanding.

vi

Introduction

The main goal of the thesis is to evaluate current implementation of the Masaryk Univer-sity Information System’s applications intended for studies administration by a student andsuggest improvements. These improvements will be implemented and published in the in-formation system.

The first chapter introduces the information system of the Masaryk University. The sec-ond talks about other software systems, that provide similar functionality as the studentapplications of IS or were built with a similar purpose. In the third chapter, the thesis intro-duces specifically the set of applications in IS, that are used by students in order to admin-ister study related matters. Examples of such applications are: an application for viewingstudent’s grades or an application for reserving slots for the examinations dates. The fourthchapter sheds light on the process of software development in the IS development team.A design of a new version of the student applications can be found in chapter five. By thetime of writing this thesis, some parts of the design were already implemented and pub-lished in IS for use by the student community of the Masaryk University. The process ofimplementation and its results are described are also described in this chapter. The conclu-sion sums up what has been achieved and what is still to be done.

We tried to avoid filling half of the theses with definitions of well-known terms andtechnologies. Instead, the thesis contains links to sources with encyclopedic informationabout these terms and technologies.

vii

Contents

1 Masaryk University Information System . . . . . . . . . . . . . . . . . . . . . . . . 11.1 Technologies Behind IS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.1.1 Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.1.2 Operating System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.1.3 Perl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.1.4 IS and MVC Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . 21.1.5 Git . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.2 History if IS Development . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.2.1 First Wave of IS Development . . . . . . . . . . . . . . . . . . . . . . . . 31.2.2 Second Wave of IS Development . . . . . . . . . . . . . . . . . . . . . . 31.2.3 User Feature Suggestions and Bug Reports . . . . . . . . . . . . . . . . 41.2.4 Interconnecting the Applications . . . . . . . . . . . . . . . . . . . . . . 41.2.5 Technology Changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

1.3 IS Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51.4 EUNIS Elite Award . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2 Other systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82.1 UIS—University Information System, originated at the Mendel University

Brno, Czech Republic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82.2 AiS/AiS2—Academical Information System, developed at Jozef Pavol Šafárik

University in Košice, Slovakia . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82.3 IS/STAG, developed at the University of West Bohemia . . . . . . . . . . . . . 92.4 EDU | One, by IS4U s.r.o. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

3 Student User Role in the Masaryk University Information System . . . . . . . . . 103.1 Student References Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

3.1.1 Selecting the Study, Faculty, or Term . . . . . . . . . . . . . . . . . . . . 103.1.2 List of Student Applications . . . . . . . . . . . . . . . . . . . . . . . . . 11

3.1.2.1 Description of Applications in the Section Matters Related tothe Term Selected . . . . . . . . . . . . . . . . . . . . . . . . . . 12

3.1.2.2 Description of Applications in the Section Matters Related toAll My Studies . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

4 Software Development in the IS Development Team . . . . . . . . . . . . . . . . . 234.1 Software Engineering Methods Used . . . . . . . . . . . . . . . . . . . . . . . . 234.2 Software Releases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

4.2.1 Two versions simultaneously, opt-in beta-testing . . . . . . . . . . . . . 244.2.2 Two versions simultaneously, opt-out beta-testing . . . . . . . . . . . . 244.2.3 Only the new version, the old one removed . . . . . . . . . . . . . . . . 24

4.3 Brainstorming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255 New Version of the Student Applications in IS . . . . . . . . . . . . . . . . . . . . 26

5.1 Student References Page Upgrade . . . . . . . . . . . . . . . . . . . . . . . . . 265.1.1 General Principles of the Upgrade . . . . . . . . . . . . . . . . . . . . . 26

viii

5.1.1.1 More Interactiveness, More Information, Not Just a List ofLinks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

5.1.1.2 Reorganization of the Student Menu . . . . . . . . . . . . . . 275.1.1.3 Change of Paradigm Application First, then the Course to

Course First, then Application . . . . . . . . . . . . . . . . . . 285.1.2 New Features and Concrete Changes . . . . . . . . . . . . . . . . . . . 29

5.1.2.1 Recent Events List . . . . . . . . . . . . . . . . . . . . . . . . . 305.1.2.2 Calendar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

5.1.3 Courses Section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325.2 Starring the Courses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335.3 Course Registration Upgrade . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

5.3.1 Problematic Areas of the Old Version . . . . . . . . . . . . . . . . . . . 345.3.2 New Registration Application Design . . . . . . . . . . . . . . . . . . . 36

5.3.2.1 Courses To Register For—Registration Templates . . . . . . . 375.3.2.2 Courses To Register For—Looking Courses Up . . . . . . . . 375.3.2.3 Courses To Register For—Starred Courses . . . . . . . . . . . 375.3.2.4 Drag&Drop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

5.4 Seminar Groups Enrollment Upgrade . . . . . . . . . . . . . . . . . . . . . . . 385.4.1 Timetable Conflicts Detection . . . . . . . . . . . . . . . . . . . . . . . . 385.4.2 One-Click Seminar Switching . . . . . . . . . . . . . . . . . . . . . . . . 395.4.3 Displaying My Timetable with the Given Seminar Group Added . . . 395.4.4 Other Small Changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

5.5 Seminar Groups Marketplace . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415.5.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415.5.2 Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445.5.3 Logging of the Exchanges . . . . . . . . . . . . . . . . . . . . . . . . . . 46

5.6 Status of the New Version of the Student Applications in January 2012 . . . . 465.7 The Time-line of the New Version of Student Applications . . . . . . . . . . . 46

6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48List of Used Acronyms and Special Terms . . . . . . . . . . . . . . . . . . . . . . . . . . 50Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

ix

Chapter 1

Masaryk University Information System

In order to be able to understand the student applications in the Masaryk University In-formation System better, it is good to know the overview of its history, the functionality itprovides and its architecture. This chapter offers such an overview.

The Masaryk University information system is a web based set of applications that sup-port many of the processes inside the university. The Computer Systems Unit from the Fac-ulty of Informatics is the organization responsible for creation and maintenance of the sys-tem. The head of the unit and also the main character behind IS is doc. Ing. Michal Brandejs,CSc.

1.1 Technologies Behind IS

This section will introduce hardware and software technologies IS relies on.IS is a web-based information system. Let us examine it using the multi-tier system ar-

chitecture abstraction [22]. In the three-layer application model, there is the data layer, thelogic layer and the presentation layer. The data layer is managed by the commercial Oracledatabase. The both logic and the presentation layer use Perl programming language. Thedistinction between layers are not clear, because IS extensively makes use of Oracle PL/SQLstored procedures and functions, which are hard to put exclusively in the data or in the logiclayer.

1.1.1 Hardware

A brief overview of the computers on which IS runs

2 routing machines They route the user HTTP1 requests to the application machines.

45 application machines Run the Perl scripts and return HTTP responses.

2 database servers Accept SQL queries from the application machines, execute them andreturn the data.

1. More about the HTTP protocol at [21]

1

1.1. TECHNOLOGIES BEHIND IS

1 cron machine Machine for batch tasks done in the background—cron scripts.

other machines

• computer for development• data backup computer• conversion machines (MS Office documents in the PDF files, scanned PDF pic-

tures into double-layered PDF files)• antivirus servers (checking for viruses in IS storage)• LATEX server (direct prints from IS)

1.1.2 Operating System

Linux is the operating system of the machines on which IS runs.

1.1.3 Perl

The key technology of the logic and presentation layer is the Perl programming language2,in its version 5. The most important Perl modules that IS makes use of are:

CGI.pm A module supporting generating web content using Common Gateway Interface[18].

DBI.pm DBI.pm is a module for fetching data from a relational database from the environ-ment of a Perl script. The programmer writes SQL queries as text strings and fetchesdata as Perl structures (arrays and hashes).

IS makes use of many more CPAN3 Perl modules, their complete list is, however, outsidethe scope of this thesis.

1.1.4 IS and MVC Architecture

Although the principles of Model-View-Controller architecture (MVC, [?]) are encouragedin the IS development team, no MVC framework is used as a part of IS architecture. Thus,the common situation is that there are SQL queries written next to the HTML code [20] inone script. This can be at least partially avoided by organizing code into Perl subroutines,stored in Perl modules.

2. <http://www.perl.org/>3. CPAN is the official library of Perl modules. The abbreviation stands for Comprehensive Perl Archive Net-work. More information at <http://www.cpan.org/>

2

1.2. HISTORY IF IS DEVELOPMENT

1.1.5 Git

IS development team uses Git4 as their version-control system. When making well-formedcommits that bring the system from one stable state to another (relatively) stable state, gitis a powerful tool. By stable we mean stability from the user’s point of view: There are nomajor bugs that prevent the users from using the new features or other applications in IS.

The development team uses Git to release new features (the changes to the source codeare transferred from the development machine to the application machines via git push).When it is found out, that the new feature is buggy, a programmer can withdraw it fromthe application machines by git revert, without the need to edit the code manually. Git’shistory of commits is a tool suitable for finding out why and when some application changedin some, at first sight illogical, way.

1.2 History if IS Development

1.2.1 First Wave of IS Development

The system started as an information system for the Faculty of Informatics only. After it wastested there, its university-wide release followed in 1999. The core of the system was writtenin 4 months by a team of 4 people [14]. For this type of project, this is a considerably shortamount of time.

From the beginning, the motto of the development was “First make it work and deliverthe functionality, polishing will come later”. This approach allowed for a quick developmentand release of IS, but its disadvantage was that there was a lot of work on the usability anduser-friendliness of the applications left. For intra-organization systems where the usage ofthe system is compulsory for users and thus the users cannot choose an alternative fromcompetition, the problem of small user friendliness is not such a serious issue, as with thesystems in open competition. The users cannot quit using the system altogether. However, itis important not to leave users frustrated, because it could result in their reluctance to use itfully and preference to the older ways of going about the university processes (paper notes,spreadsheets and so on).

1.2.2 Second Wave of IS Development

Once the basic functionality of all the most important applications was delivered to the ISusers, the second wave of development could commence. This second wave did not createnew applications or completely new use cases. Rather it improved the existing applications,focused on polishing the user friendliness. The main motto of the books from the web usabil-ity expert Steve Krug: “Don’t make me think” [12] describes the efforts of the IS developersto make the applications as understandable for the users as possible. New features that weresupposed to help usability were e.g. system of context help texts, breadcrumbs or providing

4. <http://git-scm.com/>

3

1.2. HISTORY IF IS DEVELOPMENT

the possibility to mark most used applications as favourite for quick access to them. Thenew full-text search system provided the users with the possibility to search the data of IS[11] and also look up the applications [13]. Unlike the first wave of the IS development, thatfocused on providing new applications, new use cases, providing new things that could bedone via IS, the second wave focused on the process of making things via IS easier.

1.2.3 User Feature Suggestions and Bug Reports

The developers also added features that were requested by the users of IS, or reworked theexisting ones. For the purpose of collection of the feature suggestions and bug reports a spe-cial group in the IS Discussion groups had been created. When a new major revision of someset of IS applications is being developed, the analysts and programmers draw inspirationalso from this group.

Figure 1.1: IS Discussion group for feature suggestions and bugreports from the IS users

1.2.4 Interconnecting the Applications

The second wave of the IS development also tried to interconnect the existing applicationsand share data among them, in order to save the user some work. An example of this is theJob Market application. It is a section of the Noticeboard application, where private sectorpartners of the Masaryk University can post their job offers and the students or alumni can

4

1.3. IS FEATURES

apply for them. When responding to a job offer, a student is required to fill in a formularwhere CV-like information is required. However, if the student filled in social sections of hispersonal profile page in IS in the People application (e.g. “Current projects”, “Who I am”),the Job Market application uses this information and fills the formular for replying the joboffer with them (she can still edit the items). Like this, the student does not have to fillinformation of similar nature in IS multiple times. Instead, relevant default values fromanother application are provided for her.

1.2.5 Technology Changes

The changes in the applications also reflected the evolution of the web technologies, suchas AJAX becoming a standard part of most of the web applications. The graphical design ofthe IS applications, in the beginning defined directly in the HTML markup was moved intoCSS stylesheets. The most recent changes also reflect new HTML 5 standard—as a simpleexample we can mention the usage of the placeholder attribute of the <input> element,which defines text appearing in textboxes before the user types something in.5.

1.3 IS Features

The most important IS applications (grouped by user roles) are listed in the following overview[13]. The overview is not a complete list:

• Applications for students:

– course registering

– grades overview

– making reservations for a slot on examination dates

– choosing a seminar group

– study materials browser

– reading information from notebooks (where teachers can put their evaluationof work done by students)

– applying for being enrolled in a term

– requesting cancellation of course repetition

– study templates—checking how far in the study plan the student is

– viewing student’s examinations papers, that were scanned and put into the sys-tem

– access to the student’s thesis vault

5. An example of such a text is gray text “Search...” in search textboxes. More about the placeholder at-tribute at <http://www.w3schools.com/HTML5/att_input_placeholder.asp>

5

1.3. IS FEATURES

– . . .

• Applications for teachers:

– room booking for lectures, seminars and exam dates

– exam dates creation

– free text student evaluation—notebooks

– assigning grades

– student attendance

– checking when a student has an excused absence

– sending group mail (choosing the recipients by various criteria)

– creating e-learning documents with wiki-like appearance

– uploading e-learning documents in other formats

– reassigning students into seminar groups

– . . .

• Applications for the office for studies employees:

– accepting requests for personal information changes

– accepting requests for cancellation of course repetition

– various prints applications (e.g. study confirmation, diploma supplement etc.)

– inserting letters of apology for absences, brought by students, in the system

– sending group mail (choosing the recipients by various criteria)

– . . .

• Applications for other groups of users and those available to all the users:

– email

– academical publications management

– noticeboard—used both for official announcements and advertisement

– discussion groups (groups for courses automatically created)

– social network for alumni—for keeping in touch with the university

– shopping center—selling courses, books, etc.

– e-votes (e.g. for choosing the members of the academical senates)

– drill—system for learning by heart (for instance vocabularies of foreign lan-guages)

6

1.4. EUNIS ELITE AWARD

– stipend management

– electronic access cards ordering

– . . .

For this thesis, the student applications are the most important part. We will talk more aboutthem in the Chapter 3, “Student User Role in the Masaryk University Information System”.

1.4 EUNIS Elite Award

Masaryk University Information System won the EUNIS Elite Award6 in the year 2005 [19].The Masaryk University Information System was the first system from an eastern Europeancountry to receive the prize.

The main reason for mentioning this fact here is for the sake of being able to compare theMasaryk University Information System with other systems, mentioned in the next chapter.

6. The entire name is EUNIS Elite Award for excellence in implementing Administrative Information Systemsfor Higher Education. The prize is annually awarded to the best and most innovative information systems fromthe higher education environment.[19]

7

Chapter 2

Other systems

The Masaryk University Information System, although used by several colleges in the CzechRepublic, has to face competitors in the field. This chapter introduces a few other informa-tion systems intended for college-type schools. All of those that will be spoken about werecreated either in the Czech Republic or Slovakia.

Except for the Masaryk University Information System, the other most important andmost widespread systems in the Czech Republic and Slovakia are:

2.1 UIS—University Information System, originated at the Mendel UniversityBrno, Czech Republic

The system, originally developed at the Mendel University Brno, under the leadership ofMilan Šorm [3] The system took inspiration from the Masaryk University Information Sys-tem and the logic structure of UIS and the Masaryk University Information System are sim-ilar. Currently, it is used at six various colleges in the Czech Republic and Slovakia. Moreinformation can be found at <http://is.mendelu.cz/dok/uis.pl>. The system is fur-ther developed commercially in the company IS4U s.r.o1.

The first version of this system ended up on the third position in 2002 in the EUNIS EliteAward competition. The second version got a second place in 2007 [19].

2.2 AiS/AiS2—Academical Information System, developed at Jozef PavolŠafárik University in Košice, Slovakia

From the beginning, the Academical Information System was a non-commercial product [1].The development of the first version, AiS 1 started in 1997 as a project for an informationsystem for the Jozef Pavol Šafárik University. The development of this version lasted until2007. In 2004, a parallel development of the second version, AiS 2 has commenced. This time,the project was supported by the Ministry of Education and AiS2 was designed to be morecompatible with processes at the other Slovak colleges and universities. Currently, AiS2 isused by sixteen Slovak universities and colleges [4] and it is thus the most used informationsystem intended for colleges in Slovakia.

1. <http://www.is4u.cz/en/>

8

2.3. IS/STAG, DEVELOPED AT THE UNIVERSITY OF WEST BOHEMIA

2.3 IS/STAG, developed at the University of West Bohemia

IS/STAG is an information system, created at the University of West Bohemia in Pilsen [2].The first version of this information system was put into the operation in the year 1993. Asof 2011, there is its third version available. At the moment, sixteen Czech colleges use thesystem [9]. In 2001, IS/STAG received a third position in the EUNIS Elite Award contest [19].

2.4 EDU | One, by IS4U s.r.o.

EDU | One is an information system for colleges, that is currently (year 2011) being devel-oped by the software company IS4U s.r.o. The distribution and the business model of thisinformation system is different than those of the above mentioned systems, since it will befree for use by any school. Some extensions, e.g. the mobile access, interconnection withsocial networks and so on, will be available for an extra fee.

EDU |One is developed on the Microsoft Windows platform. It makes use of the IIS webserver, .NET framework, WPF and database systems MS SQL Server or the Oracle database.The planned date of finishing the work on the system is spring 2013 [10].

9

Chapter 3

Student User Role in the Masaryk University Information System

The goal of this thesis is to suggest improvements of the student applications in IS. Wecannot do that without a good knowledge of the current state of the student applications.This chapter will guide us through the most important student applications and explain thefunctionality it provides.

3.1 Student References Page

The Student References Page serves as a signpost for a student. It contains a list of links tothe applications for study administration. The structure of the references page can bee seenin Figure 3.1. The main principle, by which the page is organized is dividing the list of linksto the applications into two sections. In the first one, there are applications that are connectedto the selected term of the study and the applications take this term as an input information(e.g. the Courses Enrolled in and Grades Obtained application). The second part containsapplications that do not take a term as an input parameter and their domain is usually sometask connected with the whole study, not one term (e.g. Study plan template).

3.1.1 Selecting the Study, Faculty, or Term

Many applications need a common, specific set of input parameters. These most importantones are:

study programme Students choose which study programme they want to work with—important at applications such as the course registration, because the students regis-ter for the course under a certain study programme.

faculty Some applications do not work with studies, instead, they need a faculty as an inputparameter. An example can be List of Seminar Groups application.

term Selecting a term is important also in the registration application. Because terms arebound to the faculties (Autumn 2005 at the Faculty of Informatics is something elsethan Autumn 2005 at the Faculty of Arts—they may differ in dates of start, end etc.),

10

3.1. STUDENT REFERENCES PAGE

if an application needs a user to choose a term to work with, he is also always re-quired to choose either a faculty, or a study (from which it is possible to derive thefaculty).

The selection of these parameters can be done using controls in the right upper corner of theIS layout (see Figure 3.2 and Figure 3.3). These controls are integrated in the layout of thepage, common for all the applications. However, they appear only, if an application needsthe parameters. The standardized location is beneficial to the usability—when the users arefamiliar with them, it is easy to find them and switch a parameter. A disadvantage of thisapproach is that the controls are in an area, that is usually not in the center of a user’sattention. This results in problems in finding them when a user has not used them before.

3.1.2 List of Student Applications

The next lists the student applications, reachable from the Section 3.1. The most importantones will be later described.

• Matters Related to the Term Selected

– Courses Enrolled in and Grades Obtained

– Examination Dates and Reservations

– Register for and Enroll in Courses

– List of Seminar Groups

– Enroll in a seminar group or cancel your enrollment

– Study Materials (e-learning)

– ROPOT (Revision, Opinion Poll and Testing) – e-learning

– Discussion Groups – Courses

– Information from Notebooks

– Notebook score statistics

– Enroll in a topic/variant listed under a Package of Topics

– Apply for Being Enrolled in the Term

– Course Opinion Poll—students’ anonymous assessment of courses

– File Vaults

• Matters Related to All My Studies

– Check My Studies

– When am I excused?

– Apply for course-repetition exemption

11

3.1. STUDENT REFERENCES PAGE

– Scanned Answer Sheets

– Final State Examination and Thesis/Dissertation Archive

– Course-Field Association

– Tuition Fees applications

3.1.2.1 Description of Applications in the Section Matters Related to the Term Selected

Courses Enrolled in and Grades Obtained The application shows grades of the stu-dent. It is possible to see grades for only one term, or for the whole study. After turningthis feature on on the personal page of the student, this application can show the gradesobtained also on the public (non-authenticated) page.

Examination Dates and Reservations Thanks to this application, the student can makea reservation for a slot on an examination date. The application shows the date, time and theroom in which the exam will take place. There are deadlines for making the reservations andalso for canceling them.

Register for and Enroll in Courses The student chooses courses she wants to registerfor in this term. It is possible to add courses by looking them up by the code and name. Thestudent can also make use of the registration templates that offer an easy way to register forthe compulsory and selective courses for the given study and term. The main table with thecourses registered for provides information about the schedule of the course, its structure(lectures, seminar groups registered for), the rooms in which the lectures and seminars takeplace, the completion type (e.g. exam, colloquia, credit) and the number of credits for thecourse provided for a student. It also contains the information about whether the course isonly registered for, or also enrolled in. 1

The applications shows the prerequisites that the student has to fulfill in order to be ableto register for a particular course. If these are not met, there is a possibility to write theteacher a formal mail with the request for an exception from the prerequisites.

The student registration application also enables the student to change the type of com-pletion (e.g. exam, colloquia, credit) of those courses that allow for this in their definition.Some courses allow the student to change the number of credits that can be gained for thecourse. This is mostly used with the thesis courses, where the student may enroll the coursein in more terms within one study and in this way distribute the workload and credits overa longer time period.

1. The difference between registration and enrollment:A student himself registers for courses, does not enroll in them. He can register for any course he wants, if theregistration for that course and for his study is open. Enrollment is done automatically by the servers in thenight, but only for the registered for courses with all prerequisites met. The rest of the courses stay registeredfor only.

12

3.1. STUDENT REFERENCES PAGE

Some courses are highly demanded goods. The Masaryk University decided that the as-signment of the limited number of possible enrollments in these courses will be distributedby the rule “First come, first served.”. The competition for the courses begins at a certaintime and only those, who are willing to wait and refresh the page in the right time, will getthe course wanted.

For facilitating the process of getting the courses registered for in the competition ofother students, there is the Registration Batch functionality. Before the registration starts,the student prepares a batch with the highly demanded courses she wants to register for.At the moment of the registration start, the student can try to register for all the selectedcourses with one page refresh.

List of Seminar Groups Some courses at the Masaryk University have seminar groups.These are usually more practice-centered, compared to mostly theoretical lectures. The stu-dents can organize their schedules by choosing seminar groups that fit them the best.

Using this application, a student can see the details (teachers, schedule) of any seminargroup of any course taught at the university.

Enroll in a Seminar Group or Cancel Your Enrollment The previous application servedthe purpose of displaying information about any seminar group. The application Enroll ina seminar group or cancel your enrollment provides the possibility to choose from and enrollin the seminar groups.

Upon entering the application, it offers a list of courses that have some seminar groupsand it also lists the seminar groups enrolled in (Figure 3.4). After clicking on the link withthe name of some course, the next screen that shows up displays all the seminar groupsof the particular course (Figure 3.5). The one the student is enrolled in is highlighted witha blue color. Those in which the student can enroll are green. If the student cannot enroll ina group, either because the period of seminar registration is over, the group is full, or thestudent has the course only registered for and not enrolled in, the group is highlighted inred.

The application also shows information that helps students decide between the semi-nars, such as the teachers of the group, the schedule, or a description of the seminar. Thedescription is usually used, if the seminar somehow stands out from other seminars—forexample, it covers more advanced topics.

Study Materials (e-learning) The Information system provides the possibility to createa file tree of documents. Various user rights can be set. A special subtree is dedicated forstoring lecture slides, textbooks and other learning materials. Teachers have the user rightsunder their control, so their materials can be seen either by the students of the course inthis term, the students of all the runs of the course, all the people logged in the Informationsystem, or the teachers can also make the materials publicly available (non-authenticatedpart of IS).

13

3.1. STUDENT REFERENCES PAGE

ROPOT (Revision, Opinion Poll and Testing)—e-learning The set of applications thatallow teachers to create web formulars for testing the knowledge gained by students. Thiscan be used for the purpose of revisioning and making sure the students understood all theconcepts. Another usage is opinion poll after the end of the course, or after the end of everylecture.

ROPOT can also be used for the purpose of examinations. The students open the webformular and have a time limit to answer all the questions. After that, the number of pointsgained are saved and the teacher has the possibility to evaluate them later. The evaluationcan be done automatically, if the teacher specifies the range of points needed to achievea certain grade. Various types of questions can be used—single choice, multiple choice, freetext answer, ordering of items etc. Students can open the exam from a computer in a com-puter hall at school, or, if the rules for the examination set by the teacher allow for using thestudy materials and the Internet, the students can open the ROPOT formular from home.Of course, this approach brings many complications for the teachers. There is always thepossibility of cooperation between students.

The strengths of the classic exams and ROPOT exams are combined in scanned sheetsexamination. Here, the teachers print exam sheets from the prepared exam ROPOT formu-lars. The exam is a standard written test in a class room. Students mark the correct answerin the prepared answer sheets. After the exam, the answer sheets are collected and scanned.According to the answers, chosen by the students, the definition of the correct answers, setin the ROPOT file by the teachers, the students are assigned points. Unless there is an an-swer sheet filled in such a way, that the computer cannot recognize what was marked, theentire process of scanning and answer recognition takes only a couple of minutes. In thisway, there can be hundreds of students on one exam date and they can have their grades inthe system in few hours after the exam.

Discussion Groups—Courses In every course, there are matters that are source of stu-dents’ questions. Typically, these are issues concerning the course organization, evaluationor attendance. Another type of issues, that are often discussed among students, are thecourse topics related problems. Both types of problems have common properties: One an-swer from a teacher (or from another student) could satisfy the information need of all thestudents of the course.

The standard way of solving these problems without discussion groups were sendingmails to the teacher, or a personal consultation. Both ways unnecessarily overload the teacher,as he has to answer the same question many times. The discussion groups offer a solution tothis problem—one question is answered only once and all the students can see the answer.

Every run of a course has its own discussion group. If the course has seminars groups,each has its own group as well. The students can access the groups of the runs of the previ-ous terms, if necessary. In the groups, the discussion is organized in the threads, with everystudent being able to create one.

14

3.1. STUDENT REFERENCES PAGE

Information from Notebooks Notebooks are used for passing the evaluation of stu-dents from the teachers, to the students. The notebooks are, from the technical point of view,text files stored in the system. The evaluation can be point-based, or free-text-based. Thenotebooks have to support both types. The solution implemented enables teachers to writefree text evaluation with the added possibility to write a number, preceded with an asterisk“*”. This number can be later machine processed as a number of points.

A typical way of using the notebooks is the following model situation: After an intra-term test, the teachers creates a notebook and puts there the results. She writes there thenumber of points, preceded by “*” and after that, an explanatory sentence or two, withpointing out what was wrong in the test. At the end of the term, the teacher uses scannedsheet examining. The collected answer sheets are scanned and the number of points is putinto an automatically created notebook. At the end, the system shows the teacher a sum ofthe points from all the notebooks of a particular student and let’s her decide about the mark.

Notebook Score Statistics A small application showing notebook statistics. Usuallyused for students to compare their performance at the test with the performance of theircolleagues. Shows the number of points, the position among the other students and theposition in percents.

Enroll in a Topic/Variant Listed Under a Package of Topics Packages of Topics areused whenever a teacher needs students to choose one, or several topics from the list offered.The most notable applications of this are choosing the topic of a bachelor/diploma thesisand the choice of the topic of a semestral project.

The application has many settings, with the help of which the teacher can tune the pack-age for the desired purpose. For example: The topic can be opened for several, one, or fora specific student.

Apply for Being Enrolled in the Term In order to be allowed to pass in the next term,a student has to fulfill some requirements. The most important one is the number of creditsgained in the previous two semesters. This application displays the number of credits andallows the student to apply for being enrolled in the term.

Although being a bureaucratic formality, at the Masaryk University, the students arerequired to apply for the study at the next term, even if they fulfill all the requirements andit is thus probable, that they would want to continue in their studies, not to drop them. Theapplication simplifies this process down to a click of a mouse.

Course Opinion Poll—Students’ Anonymous Assessment of Courses As the cus-tomers’ feedback evaluation becomes an important part of every improvement process, theMasaryk Univerisity also took this way. At the end of every term, the students are encour-aged to fill in formulars with questions concerning their satisfaction with the courses theyhad enrolled in.

15

3.1. STUDENT REFERENCES PAGE

In the poll, the students can assign relative rating to the specific areas of the teaching(“Do you think the course had a high added value?”: ( ) absolutely no, (5 moreoptions between absolutely no and absolutely yes), (x) absolutely yes). In addition to this, it is possible to fill in free text form, intended for students’ suggestionfor the next terms.

The results of the poll are visible to the teachers of the particular courses and their su-periors. The teachers may draw inspiration from them for the next course runs, and theteachers’ superiors can take the results of the poll into consideration when deciding aboutrewards and personnel changes.

File Vaults Beside the official study materials, the students tend to create their ownstudy texts and “cheatsheets”. In order to share these materials, various web sites havearisen in the past. The teachers have no control over the content of these servers. More-over, many times students upload the entire exam assignment, so the teacher has to eitherchange the exam questions every year, or face students who have already seen the exam andhave memorized it.

There is a special subtree in the IS fileserver, that serves as a container, for sharing studymaterials prepared by the students. The teacher can read the content of it, but does not havethe user right to delete materials from there. He has to contact the IS-technicians—the soft-ware support of the Masaryk University Information System. They consider the request andif the reason behind it is serious enough (copyright infringement, propagating of forbiddenmovements etc.), they delete the file. The files are not deleted in cases, where for example,the teacher does not like the explanation of a particular problem in a study book made bystudents.

3.1.2.2 Description of Applications in the Section Matters Related to All My Studies

Check My Studies In order to check how far in the study plan a student is, she canuse Check My Studies application. It makes use of the study templates, which contain listof courses, grouped by either semesters, in which the course should be studied, or by thegroup of courses that the student should get a sufficient number of credits from. There canalso be other criteria of grouping—e.g. the student has to choose at least one course taughtin English.

The student opens the template of his study programme, the applications fetches dataabout his completed courses. Then, she will see green circles ( ), or red crosses ( ) next tothe courses and also next to the groups (see Figure 3.6). All courses green means the groupis green. All groups green means the study template is green and the student has the courserequirements fulfilled. If the study has no other requirements, the student may apply for thethesis defense and the final exam.

When Am I Excused? To maximally simplify the process of excusing absences of stu-dents from classes, the workflow at MU is following: After an absence due to the sickness,

16

3.1. STUDENT REFERENCES PAGE

the student receives a letter of excuse from a doctor. He then brings it to any office for studiesof any of his faculties and they put the excused absence in the system. Any of his teacherscan then see it when counting the number of excused and unexcused absences and checking,whether the student did not cross the number of absences allowed.

This approach is simpler for all the parties, than if the student brought copies of the letterof excuse to all the teachers and they would have to store them somewhere and keep trackof all the letters of all the students they teach.

Apply for Course-Repetition Exemption When failing a course, the students in theCzech Republic may enroll in it again at the next run. Then, if the course is compulsory,they have to pass. However, some courses are voluntary, or selective. With these courses, thestudent may ask for an exemption from the duty of course repetition. There is an upper limitof courses the student can do this with. The application shows the list of courses enrolled in.Next to those, for which the student can ask for the exemption, there is a link for submittingthe request to the office for studies.

Scanned Answer Sheets If a teacher uses scanned answer sheets2 at the examination,the students can find their answer sheet via this application. It takes student to the IS filesys-tem, to a folder where he can find his particular sheet.

Final State Examination and Thesis/Dissertation Archive At the Masaryk University,the final theses are submitted in two forms. The student brings the bound printout of histhesis to his office for studies, but beforehand, he has to submit the thesis electronically intothe Thesis Archive. At the submission deadline, the office for studies employee checks ifeverything was submitted correctly and closes the archive for insertion.

The student can access his thesis from here anytime, even after he has finished his stud(as an alumnus).

Course-Field Association Some study programmes consist of two or more study fields.Some study fields have compulsory courses. Since the student does not enroll in coursesunder a field, but under a study programme, this application allows for marking the coursesas studied under a particular study field.

Tuition Fees applications This set of applications help students get oriented in therules for tuition fees assessment. The View Tuition Fees application shows the current monthlyfees for the study of the student. Tuition Fees - history of my studies and fee calculation dis-plays the number of months of all the studies of the student, shows the type of a fee that thestudent has to pay and from that it derives the amount the student should pay per month.The Tuition Fees - browse fees to be paid allows the student to pay the fee, or ask for a sched-ule of installments.

2. more about scanned sheets examination in the Section 3.1.2.1

17

3.1. STUDENT REFERENCES PAGE

Figure 3.1: Old student references page

18

3.1. STUDENT REFERENCES PAGE

Figure 3.2: Faculty and term selection controls in the right corner of an IS application

Figure 3.3: Study and term selection controls in the right corner of an IS application

19

3.1. STUDENT REFERENCES PAGE

Figure 3.4: List of courses with seminar groups in the Enroll in a Seminar Group or CancelYour Enrollment

20

3.1. STUDENT REFERENCES PAGE

Figure 3.5: Seminar groups of one course in the Enroll in a Seminar Group or Cancel YourEnrollment

21

3.1. STUDENT REFERENCES PAGE

Figure 3.6: Study template from the Check My Studies application

22

Chapter 4

Software Development in the IS Development Team

This chapter will talk about the software development methods in the team, programmingIS. Most of the things said in this chapter also apply for the project of the new version of thestudent applications.

4.1 Software Engineering Methods Used

As of 4th of December 2011, the IS development team has 2 managers, 2 analysts, 1 graphicdesigner, 14 programmers and 4 employees with other responsibilities. The team has a flatmanagement structure. Usually, one programmer has a responsibility over a few sets ofapplications. He fixes small bugs, adds small new features and from time to time, he designsand implements a major revision of some application, or creates a new application. So theprogrammer is both the analyst and the coder and partially also the tester. He does theprimary testing. The secondary testing is taken care of by the team of IS-technicians.

All the communication goes through the maillist (the number of intra-team emails perday is as high as 200). No ticket system is used, instead, the work reports and feature dis-cussions are communicated via the mail.

After collecting a sufficient number of feature suggestions from the developer himself,the IS discussion group for feature suggestions and from the colleagues in the team, an initialdesign is proposed. After this has been done, the actual implementation starts.

The developers do not use throwaway prototyping, although, sometimes whole scriptsare dropped and ideas abandoned during the development. However, the development ofIS has traces of evolutionary prototyping. Sometimes, a quickly made functional prototypeis used as a proof of concept, but usually, it is not thrown away in the end. Rather than that,it is used as a core of the new application and further improved. [23]

The developer usually writes at least once a week an email, in which she describes thework done. This period of time is hardly ever one week, the developer usually discussesvarious points of their work with the colleagues via the email, so the mail communication ismostly daily.

The reporting of the state of the applications and subsequent discussions about the nextsteps have similarities with the Agile development. We do not do test-driven development.Most of the scripts produce HTML output, which is relatively hard to test using automatizedtest suits.

23

4.2. SOFTWARE RELEASES

4.2 Software Releases

Since changes in web applications are perceived very sensitively by the users, it is good tomake the process as smooth as possible and to make the change gradual, in order to letthe users get used to the new version. For this reason, when releasing a new version of anexisting application in IS, the release usually comes in three phases:

1. Two versions simultaneously, opt-in beta-testing

2. Two versions simultaneously, opt-out beta-testing

3. Only the new version, the old one removed

4.2.1 Two versions simultaneously, opt-in beta-testing

In the first phase, the new version of an application is released, but not forced upon theusers. The users can see an announcement about the new version an can switch to it to try itout.

Although the number of people that voluntarily turn the new version on is usuallysmaller, than the number deciding not to try it, those who do turn the new version on areusually people keen to try new things, report bugs and suggest new features or changes.This phase is very important, because thanks to the reports from the beta-testers, the appli-cation can be fine-tuned prior to turning it on for everybody. The voluntary beta-tester usersbear changes better than those who do not try the new version.

As the empirical study performed by Baroudi [5] showed, the user involvement leadsto increase in both usage of the system and user satisfaction. Involving users in beta-testingincreases their satisfaction with the system, since they adopt it as “their own”.

At the end of this phase, the number of bugreports and feature suggestion decreases.

4.2.2 Two versions simultaneously, opt-out beta-testing

After fine-tuning the application in the first phase, the second phase starts. The new versionis turned on for everyone by the developers, still with a possibility to return to the oldversion. Many users switch immediately back to the old one, but some stay with new one.This process can be repeated more times, in order to minimize the number of users whichwill be forced to use the new application with no possibility to switch it back to the old onein the end. The number of bug reports and feature suggestions peaks up again, but they areless constructive, than in the first phase. In this phase, the users tend to be more emotionalwhen reacting to the changes.

4.2.3 Only the new version, the old one removed

In the third phase, the possibility to go back to the old version disappears and all the usersare forced to use the new version. The number of reactions via mail, or the discussion groups

24

4.3. BRAINSTORMING

rises again, but less than in the previous phases. Sometimes, there is a need to solve sometechnical problem, e.g. compatibility with old browsers, but most of the few remaining usersof the old version clinged to it, because of their bad ability to adapt to changes in the UI.

In the last phase, when the old version is removed, the application is believed to havegone through testing and evaluation. The development phase is considered to be over andthe maintenance phase starts. After this moment, the attention of the developer usuallyshifts to the next project. Further requests for new functionality are either implementedas a part of maintenance, or stored in a special discussion group intended for the featuresuggestions and bugreports, for the next major revision of the application.

4.3 Brainstorming

Brainstorming is not a method often used in the IS development team. Ideas are collected inother ways, e.g. mails, internal discussion group etc. Even the posts in the internal discus-sion group for collecting feature suggestions usually do not have reactions. However, beforethe implementation of the new version of the student applications started, there had beena physical presence brainstorming.

The IS core developers, IS-technicians and E-technicians gathered to a brainstorming ses-sion at the Faculty of Informatics, to share ideas and discuss what could be improved on theoverall organization of the student applications. The main topic was the Student ReferencesPage. The author of the thesis had prepared a basic design for the new references page andit was presented and discussed. Various alternatives were suggested by the participants ofthe brainstorming, and in the end, a common organization of the references page was cho-sen. To shortly describe it, it was a layout similar to the one from the old student referencespage (see Figure 3.1), but the courses and the links to the current applications were groupedby the tabs. This was later dropped in favour for laying the sections out differently (seeSection 5.1).

The brainstorming showed the author of the thesis the various points of view on thestudent page layout and the ideas of the participants of the brainstorming inspired him inlater phases, when more detailed design of the references page was being worked on.

25

Chapter 5

New Version of the Student Applications in IS

We already know the current state of the student applications in IS. With that knowledgeand the inspiration we got from other systems and the user’s feature suggestions, we cannow design a new version of the student applications. The main topic of this chapter will bethe design of the new version and also the process of designing it.

The proposed changes do not affect all the applications described in the section Sec-tion 3.1. We can divide the changes into 5 categories, by the applications that will be affectedthe most.

1. Student references page upgrade

2. Starring the courses

3. Course registration upgrade

4. Seminar groups enrollment upgrade

5. Seminar groups marketplace

For the sake of simplicity, we will refer to the versions of the applications before the imple-mentation and release of the changed designed in this thesis as to the “old” version and theversion containing the changes as the “new” one.

The following chapters will sum up the main weaknesses of the old version of the appli-cations and propose ways of fixing them.

5.1 Student References Page Upgrade

5.1.1 General Principles of the Upgrade

5.1.1.1 More Interactiveness, More Information, Not Just a List of Links

The old version of the student references page is a simple list of links. The starting impulsefor its redesign was to make it more interactive, containing more information that could bebeneficial for a user without the need to open another application first. Doing this will bringsome performance consequences, since the references page was the most visited of all thestudent pages/applications.

26

5.1. STUDENT REFERENCES PAGE UPGRADE

5.1.1.2 Reorganization of the Student Menu

As explained in the chapter Section 3.1, in the old version, the list of links was divided intotwo sections, by the application’s relationship to the choice of a term. In the new version,a new division is designed. The top level division is between the most used applications andthe rest. For finding out the most used applications, the statistics of accesses (the statistics ofuser clicks) was used from the system log. The most used applications are:

• Courses Enrolled in and Grades Obtained

• Examination Dates and Reservations

• Register for and Enroll in Courses

• Enroll in a seminar group or cancel your enrollment

• Study Materials (e-learning)

• ROPOT (Revision, Opinion Poll and Testing) – e-learning

• Discussion Groups – Courses

• Information from Notebooks

These applications were incorporated in a quick access menu, that will be available at theheader of every student application. The student’s grades are visible at the references page,so a link to Courses Enrolled in and Grades Obtained was not included in the menu.

Student | Registrace | Examinations | St. Materials | ROPOT | Discussion groups | Notebooks

Figure 5.1: Quick Access Menu

The rest of the applications was divided into several groups. The criterion for the divisionis what part of the term the application is used the most.

1. applications used at the beginning of the term

2. applications used during the term

3. applications used at the end of the term

4. applications used at the end of the study

The applications from the first three groups—those used during the study—are used muchmore often, than the those used only at the end of some study. Considering this fact, the firstthree groups were put in the header of every student application as well (see Figure 5.2), butthe student needs to click to display the menu. Otherwise it would take up half of the screenof every application.

The fourth group of the applications—those that are used mostly at the end of a study—are the least used group. Hence, it will only be at the student references page.

27

5.1. STUDENT REFERENCES PAGE UPGRADE

Figure 5.2: Quick Access Menu–expanded

5.1.1.3 Change of Paradigm Application First, then the Course to Course First, thenApplication

Working with the old student references page followed the workflow: First I choose an ap-plication from the list, then, inside the application, I choose what course I want to work with.The Study Materials, or the Discussion Groups work this way. In the new version we triedto change the workflow for some applications, so that it follows the pattern: First I choosethe course I want to work with, only then the application I want to use. To explained the rea-son for this change, we have to analyze the reasons for which the students open the studentpages and their motivations.

The reasons for which a student enters the student section of IS could be divided intwo main groups. The first group of reasons is opening the references page and the otherapplications without a specific goal in mind. The student coming in the student section mayhave these questions in her head:

• Do I have a new record in my notebooks?

• Is there any new examination date?

• What new has been written in all the discussion groups of my course?

• Were there any new study materials added?

28

5.1. STUDENT REFERENCES PAGE UPGRADE

To sum it up, the students go to check what is new in general, they do not aim for a specificcourse. The second group of motivations, however, comes into play, when a student entersthe student applications with a specific course in mind. The following reasons might bringhim there:

• I have an exam in a week, I need to read through all the materials that are available,in order to prepare for it.

• I would like to see what I can do with this course right now

For the first group of motivations, the first workflow First I choose an application from thelist, then, inside the application, I choose what course I want to work with is ideal. However,the majority of students tend to succumb to Goldratt’s Student syndrome [24] [8] and solvethe things at the last moment. Then, the second workflow First I choose the course I want towork with, only then the application I want to use is what they reach for. In order to supportthe second workflow, we introduce the Courses (see Figure 5.3 and Figure 5.4) section ofthe references page. To put it simply, it is a list of courses with all the most important datarecords connected with this course and applications that the student can use in order toperform some action with the course. We keep the old “aggregate”1 applications available,reachable from the quick menu. This should satisfy the students that use the first type ofworkflow.2

Figure 5.3: The courses section in the new student references page—collapsed

5.1.2 New Features and Concrete Changes

In the previous section, we discussed general principles of the rework of the student refer-ences page. This section will list the concrete software changes and new features added.

1. By aggregate, we mean here, that they display the content for all the courses2. Also the new features: the Section 5.1.2.1 and the Section 5.1.2.2 should support the first workflow.

29

5.1. STUDENT REFERENCES PAGE UPGRADE

Figure 5.4: The courses section in the new student references page—expanded

5.1.2.1 Recent Events List

An event in IS is a change of some data record, noted by the Events application. The Eventsapplication in IS came to be when the students requested some sort of notification whena teacher puts a grade in IS. Before this application, the students had to open the CoursesEnrolled in and Grades Obtained application to find out their grade. And because notifica-tions in the case of data changes were needed with more types of data, not just grades (i.e.the examination dates), the Events application was created.

The main purpose of the Events was to notice the data changes and send notificationsabout them via email. Since the notifications are being stored for some time in the persistentdatabase of IS, they can also be displayed via the Log of Events application.

Figure 5.5: Recent Event List in the new student references page

The new version of the student references page will contain a box with the newest few

30

5.1. STUDENT REFERENCES PAGE UPGRADE

events, related to studies (see Figure 5.5). The types of the events displayed:

• grades obtained

• examination dates

• notebooks

5.1.2.2 Calendar

One of the biggest responsibilities of students is watching deadlines. They have to keep inmind deadlines for submitting homeworks, for applying for the accommodation scholar-ship, request for enrollment in the next term etc. The Calendar application, visible from thenew student references page should help students tackle the problem of remembering allthe deadlines.

As far as technology behind Calendar is concerned, the mechanism of collecting data iscommon for Calendar and for the Events. The difference is in the purpose and mainly theusage of the data. Whilst the Events can be thought of as a log of “what has happened”, theCalendar application concentrates on the future (although it also displays important datesfrom the past). The Calendar can thus help the students with their time management.

Figure 5.6: Calendar in the new student references page

The presentation of the calendar information on the student references page will havetwo forms. The first will be a simple list with dates together with corresponding events.The list is sorted by the dates (see Figure 5.6). The second presentation will be an HTMLcalendar-like table with days containing events distinctly marked. After the click on a day,the list of events will show up. Since most of the event sources have a certain URL and canbe displayed in IS in some way (e.g. the examination date in the Examination Dates andReservations application), the URLs to the sources are also collected and it is possible toclick on an event to show the source in IS.

The types of the events showed by the Calendar:

31

5.1. STUDENT REFERENCES PAGE UPGRADE

• examinations—dates of enrollment opening and deadlines

• ROPOT deadlines

• homework vaults deadlines

• topic packages deadlines

With the implementation of Calendar, we hope to help students with their time managementand minimize the number of missed deadlines because of having forgotten about them.Also, by introducing the IS Calendar, students will not need to use external tools for timemanagement for the study related events, hence time savings of students.

The calendar, except playing a role in the student applications will be a standalone ap-plication. Extensions planned will contain the possibility of export in the iCal [25] format,so that the students can use their favourite time management software and feed it with thedata from IS. In the future, the calendar should also support custom user events.

5.1.3 Courses Section

As partly described in the Section 5.1.1.2, the new student references page contains theCourses section, which lists all the courses enrolled in the selected study and the selectedterm.

Checking the grades is one of the most performed action of the students. So we put thegrades directly on the new student references page, together with the names of the coursesenrolled in, the number of credits that could be achieved and the type of completion. Basi-cally, it is a similar set of information, that is offered in the Courses Enrolled in and GradesObtained application. The rest of the application and data connected to the course is reach-able after a click on the box with the course name. The information and the applicationsthen appear below the course name. There are two reasons for this design: First is that thecollapsed course names and grades offer an overview of the grades obtained, similar tothe Courses Enrolled in and Grades Obtained application. The second reason is the perfor-mance. We try to offer only the relevant data and applications (e.g. the Interactive syllabus3

section appears only when some interactive syllabus exists) and the checks for existence ofthe data is computationally demanding. It would be slow if all the data checks ran at themoment of the load of the page. That is why the fetching of the data via AJAX was chosen.For the user it means that she has to click on the link and wait up to two seconds for theoperations and data to appear.

The data and the applications that are shown after a click are listed in the followingoverview (a concrete example can be seen in Figure 5.4):

• Enrolled Seminar

3. The interactive syllabi are part of e-learning and courses organization tools of IS. One can think of them aswiki pages, created by teachers for the students. There is a page for every week of the teaching, so it is an idealplace for putting the links to the materials from the lecture, or assigning homework.

32

5.2. STARRING THE COURSES

• Discussion Groups

• File Vaults

• Interactive Syllabi

• Study Materials

• Study Materials from the Previous Terms

• operations

– Cancel Enrollment

– Change Completion Type

– Change Credit Value

– Enroll in the Seminar Groups

– Examination Dates

The operations appear only when they make sense. For example, the Cancel Enrollment linkwill appear only if the period of enrollment changes is under way. The operations are simplelinks to existing applications.

5.2 Starring the Courses

During the semester, a student often finds herself in the Course Catalogue on a page of somecourse. It can happen that the course catches her attention and she finds it worth enrollingin. If the registration time is already over, or has not started yet, she can either rememberthe course code and name and rely on remembering to register for it when the registrationcomes, or to write the code and name in her paper diary.

The new version of the student application brings the ability to “star” the course onthe course page. The principle is well known from Web 2.0 web applications. An example ofstarring in other systems are Like button from the social network Facebook, or starring mailsin several mail clients, like Gmail from Google, or Thunderbird from Mozilla Foundation.

The starring is already implemented in IS in the Noticeboard application. The users canstar posts on the noticeboard and keep track of them in an easier way. The starred postsare displayed on the entry screen of the Noticeboard application. Starring in the coursecatalogue will make use of this fact and use, for example, the same picture for the star.

The direct benefit of starring the courses will become obvious for students at the momentof course registration. Their starred courses will appear on a list in the new registration andenrollment application. In this way, the students can register for all the interesting coursesthey found throughout the semester, with little extra effort. See Section 5.3.2.3 for more de-tails.

Other possible future usages are:

33

5.3. COURSE REGISTRATION UPGRADE

using the number of starrings to increase the score of the course in the IS search Coursesthat have been starred by many students could be higher in the search results in theIS search. On the other hand, this could have an accumulative consequence of gain-ing/loosing popularity—the popular courses would get even more popular and lesspopular would dive deeper in the search results, thus would be harder to find, starand enroll in.

measuring the course popularity The faculty management can use the number of starringsby students to estimate the popularity of a course among the students. It is importantto note that the starring will most of the time happen before the enrollment of thecourse. That means the popularity measured will describe what students want tostudy and what they heard was good, not what courses they are actually satisfiedwith. For that purpose, the Course Opinion Poll exists (see in the Section 3.1.2.1).

5.3 Course Registration Upgrade

The Register for and Enroll in Courses application is complex and offers more ways to enrollin a course and a lot of functionality. As described in the Section 3.1.2.1, students can enrollin a course using the registration templates, or by looking the course up by its code. Theycan change the credit value or completion type of those courses that offer this possibility.

5.3.1 Problematic Areas of the Old Version

There are several key areas that the upgrade aims to improve:

many page reloads need to be done in order to perform course registration All the actionsduring the process of course registration require reloading the entire page. This canbe, from the performance point of view, expensive. Especially at the moment of reg-istration opening, when hundreds of students are competing to enroll in the courseswith limited number of enrollments, it is unnecessary to generate the entire pages.Introducing AJAX requests in the registration application might improve the re-sponse time, decrease the server load and make the users believe that “it’s faster”.A few years ago, such a change was not possible, because the support of AJAX in thebrowsers was not as widespread as today. On the top of that, many users had theirJavaScript turned off. As of the end of the year 2011 the situation is different and theshift towards more AJAX-like web application is possible.

34

5.3. COURSE REGISTRATION UPGRADE

pre-requisites blocking the enrollment are visible only after a click If there is an ongoingperiod of course registration, or later, changes to the enrollment, the students canregister for courses. The application allows the student registration of any course,even those for which the student has not met the pre-requisites. Later, the IS wouldnot allow for the enrollment of these courses, but the student can always register.In between the registration and enrollment the student has to either meet the pre-requisites (e.g. pass an exam of the course, that is a pre-requisite to this course),ask the teacher electronically for an exemption from the pre-requisites, or cancel theregistration.

If the student does not meet some pre-requisites, the registration application lets thestudent know. Unfortunately, this important piece of information is visible only af-ter a click on the Explore possible problems reading further information link. Manytimes the IS development team had to answer mails of students that arose fromnot having seen the unmet pre-requisite information. Therefore, in the new version,these information will be visible in the registration application after the page load,without the need to click.

cryptic pre-requisite presentation When creating the course catalogue, the person respon-sible for the catalogue writes the pre-requisites for the courses in a special syntax.This syntax is similar to some computer languages used to write down logic formu-las. In the Figure 5.7 we can an example of this language.

(PB161 && !PB162 && !NOW(PB163)) || SOUHLAS

Figure 5.7: An example of the syntax of the language, used for defining pre-requisites ofcourses. This pre-requisite means: In order to be allowed to enroll in the course wanted, thestudent has to: have passed the course with code PB161 and must not have passed the coursePB162 and in the same term as the course wanted, he cannot enroll in the course PB163. Orit is enough to get the agreement of the teacher for the enrollment (the part behind ||).

This way of setting the pre-requisites is time saving for creators of the catalogues.It is easy to understand for computers and informaticians, but the students haveproblems with it. A more user-friendly way of expressing the pre-requisites wouldhelp students get oriented in the registration application faster. A good inspirationfor the new design of the pre-requisite presentation is the presentation of the study-templates in the Check My Studies application (see Section 3.1.2.2, Figure 3.6).

unclear and hidden information about the registration and enrollment periods The studentcan see the periods when the registration is possible at various faculties after click-ing on the When can I register for courses? link. Although this link is located at thetop of the page, some students still do not click on it. Changing the presentation to

35

5.3. COURSE REGISTRATION UPGRADE

graphical timeline and moving it directly to the page should make the time periodsinformation more obvious.

course lookup only by course code In the old version of the registration application, thecourses to register for can be looked up either via the registration template, or search-ing the course codes only. In the registration application, the courses cannot be lookedup by names. This leads to a situation, where if a student wanted to register fora non-compulsory course, that cannot be found in the registration template of herstudy and she did not know the course code, she would have to open the CoursesCatalogue application. Then, she would look up courses by name, choose some thatseems appropriate for what she wants to enroll in, remember, or copy the coursecode, switch back to the registration application, type or paste the code, look thecourse up and finally register for it.

Adding the possibility to look the course up also by course names and other textualproperties of courses (syllabus, teachers), will decrease the amount of effort that thestudents have to put in looking up interesting courses to register for.

In 2010, the developers of IS introduced new full-text search [11]. It can be usedto search through various data, e.g. people at the Masaryk University, documentsstored at the IS document storage and also the course catalogue. Making use of thissearch and its index will allow for quick looking up the courses by all their textualproperties.

The searching in the new search is index-based and has its separate search engineas opposed to the old search, which is in implementation a database query. The newsearch is much quicker and the developers may use various AJAX interactive com-ponents, to give the user the feeling of bigger responsiveness of the application. Mak-ing use of the new search is thus a logical step, when adding the possibility to lookcourses up by name.

5.3.2 New Registration Application Design

The new registration application aims to fix the problems mentioned in the previous chapter.Web technologies also advanced since the last major revision of this application and we canmake use of them to improve the overall feeling the users get from the application.

The UI of the new registration application can be seen in the Figure 5.8. The most no-ticeable feature is the division of the screen in two parts. The left side contains a modifiedversion of the table of the courses registered for, as we know if from the old registrationapplication. The right side is the side from which the student can choose courses to registerfor. It is divided by tabs in three parts.

36

5.3. COURSE REGISTRATION UPGRADE

Figure 5.8: Graphical concept of the new student course registration application

5.3.2.1 Courses To Register For—Registration Templates

The first tab contains courses contained in the registration template for the study of the stu-dent. They are organized in a tree, like the registration templates of the old version. From theUI design point of view, the templates will look more like study templates from the CheckMy Studies application (see Figure 3.6), so the student can easily see whether he successfullypassed all the courses from some group (for example “1st term courses”, “compulsory mathcourses” etc.).

5.3.2.2 Courses To Register For—Looking Courses Up

The second tab contains a search text box. Typing into it will cause that a list of coursesmatching the word typed will appear. The courses appear without reloading the entire page,via AJAX request. Courses can be looked up via course names, codes, teacher names, andother textual properties from the course catalogue. The courses found can then be registeredfor by the student.

5.3.2.3 Courses To Register For—Starred Courses

The third tab will make use of the new feature of being able to “star” a course. For moreinformation on the process of starring the courses, see Section 5.2. Starred courses are thosethat the student marked as interesting for him, while browsing the course catalogue in IS.Instead of writing down the course codes or names on a paper sheet, he can mark somecourse for later registration directly via IS. The starred courses are then visible on this tab.

37

5.4. SEMINAR GROUPS ENROLLMENT UPGRADE

5.3.2.4 Drag&Drop

Also the process of registration changes in the new version. We try to make the registrationmore intuitive by introducing drag&drop. The student can catch a course description fromany of the tabs of the right part, drag it over to the left side and drop it onto the table ofcourses registered for. An AJAX request in the background will take care of registering forthe course for the student. JQuery UI4 is the framework, selected for easier handling ofdrag&drop events.

Registration via AJAX background requests is more convenient for a user, but does notwork, if the user has his JavaScript turned off. Hence, the implementation must be writtenin such a way, that it will be possible to register for courses also without JavaScript turnedon. This will be possible using standard HTML formulars and a submit button. The courseswill be wrapped in <input type="checkbox"> elements. If the user cannot or does notwant to use the drag&drop feature, he can just tick the checkboxes and use the Register orCancel Registration buttons to manipulate with the list of courses registered for.

5.4 Seminar Groups Enrollment Upgrade

The description of the application for enrollment in seminar groups can be found in Sec-tion 3.1.2.1. The features, that are introduced in the new version of this application are:

• Timetable conflicts detection

• One-click seminar switching

• Displaying my timetable with the given seminar group added

• Other small changes

5.4.1 Timetable Conflicts Detection

When the students choose the seminar groups, they try to choose those, that fit in theirschedule and do not create conflicts in the timetable. In the old version, they had to readthe textual schedule information written in the list of seminars available for enrollment andsubsequently compare it with their timetable. This process can be tiring for the student. Thenew version made it unnecessary. In the list of the seminars available for enrollment, thosethat are in conflict with the student’s timetable are marked for the student and the conflictingitems from the timetable are also displayed (see Figure 5.9).

Based on this information, the student can choose from the list of the groups offeredfaster (especially in courses with many seminar groups).

4. JQuery UI is a JavaScript framework able to create UI effects and handle UI events in web browsers. Moreat <http://jqueryui.com/>.

38

5.4. SEMINAR GROUPS ENROLLMENT UPGRADE

Figure 5.9: Timetable collision detection in the Enroll in a seminar group or cancel yourenrollment application

5.4.2 One-Click Seminar Switching

In the screen showing the seminar groups of courses, we added links for direct canceling theenrollment from the groups currently enrolled in and enrolling in a target group. The linkcan be seen in the seen in the leftmost cell at the bottom of the table in the Figure 3.5.

Before, the student had to start from the basic screen with the list of courses, then choosea course, cancel the enrollment in the seminar group, then choose the course again andfinally enroll in the right group. Sometimes, this cost the student the slot in the desiredgroup, as the desired group got full in the meantime. This can happen especially in the timeperiods of fights for the seminars. The links made the process more straightforward andsafer.

5.4.3 Displaying My Timetable with the Given Seminar Group Added

The old version showed the schedule information only textually, e.g. “Thurs 10:00–11:50G107”. “One picture is worth thousands of words”—this quotation from Napoleon Bona-parte sums up the importance of graphical expression of data. Therefore, we added the pos-sibility of displaying the timetable with the given seminar group added, to see graphicallyhow the group fits in the student’s schedule (see Figure 5.10). 5

There are several differences, compared to the IS timetable display application. The cho-sen seminar group added to the timetable (although still not enrolled in) is shown with bluebackground. All the seminar groups in the timetable have in their right upper corners col-

5. Credit for implementing this feature goes to Hana Bydžovská. She was at that time doing a rework of thetimetable applications

39

5.4. SEMINAR GROUPS ENROLLMENT UPGRADE

Figure 5.10: Timetable of the student displayed with the chosen seminar in the Enroll ina seminar group or cancel your enrollment application

ored triangles. The color is the same as the color of the seminar in the screen of the seminarenrollment application. The green means can enroll, the orange can cancel enrollment, thered cannot enroll.

Technically, the timetable is an HTML popup, using jQuery qTip6 library to display thepopup.

5.4.4 Other Small Changes

The names of the teachers displayed in the seminar group were just simple text. In the newversion, they were turned into links to the personal pages of those people. The students haveit easier to choose the teacher, based on the impression from the personal profiles.

The textual information displayed in the seminar was simplified and reworked to get ridof the unnecessary texts. This should help readability and usability.

When enrolling in a seminar group of a certain course, the student has to choose fromseveral groups. Some of them might be already full. Or their enrollment period has alreadyended. Either way will result in turning red and the student not being able to enroll in thegroup. For easier selection of the groups in which it is possible for a student to enroll, weadded switches that hide and show red groups, keeping only the “green” groups, in which

6. qTip is JavaScript library. Uses jQuery JavaScript library. It is mostly used to show interactive “tooltips”,that can be customized, unlike the ones shown by the browsers. More at <http://craigsworks.com/projects/qtip/>

40

5.5. SEMINAR GROUPS MARKETPLACE

it is possible to enroll. Another switch hides the groups with timetable conflicts (describedin the Section 5.4.1). These controls should help the students choose the group that fits themthe best. The hiding/showing of the “problematic” (red, or with time-conflicts) groups isdone via JavaScript, without the need to reload the entire page, which might be useful in thetimes of fights for the seminar groups, when many people use IS and the response time ofthe servers is slower than usual.

5.5 Seminar Groups Marketplace

5.5.1 Motivation

The distribution of seminars among the students is done by the method First-come, first-served and those students who manage to click on their preferred seminar group soonenough after the enrollment was open, get the group. This, together with the fact, that thestudents change their course enrollments at the beginning of the semester (thus also cancel-ing the enrollment in the respective seminars), may result in insatisfaction with the seminargroups currently enrolled in. Enrolling in all the desired seminars is sometimes impossible,because the groups get full in the meantime.

The students then try to solve the problem with seminar group barters. In the old version,they made use of the course discussion groups. This resulted in “spamming” the groupswith posts offering and demanding a seminar group exchange. In the better case, it was onethread, where the students posted their offers, in the worse case the students started a newthread for every offer (their offer is visible directly from the thread list page, the others donot need to open the thread to see it).

These seminar barter threads then make other important threads, where the studentsdiscuss the topics from the lectures or where the teachers announce some organizationalchanges, less visible and harder to find. This happens especially with mass courses, withmany students and many seminar groups.

Even if we put up with the discussion groups being the place of haggling over the sem-inars, the students cannot really barter the groups there, the maximum they can do is tomake a deal about the exchange. This process is complicated, because it requires the follow-ing steps:

1. A student A submits a discussion group post, in which he writes what seminar grouphe has and thus offers and what groups he would like to get for it.

2. Another student B, having one of the desired groups and wanting the group of thestudent A reacts to his post. Either via the discussion groups, or via email.

3. If the student A agrees on the exchange, he proposes the date and time of the ex-change and waits for the answer of the student B.

4. If the time and date proposed by A is convenient for the student B, they both wait forthe date and time agreed on and then switch the groups. Otherwise, B has to suggest

41

5.5. SEMINAR GROUPS MARKETPLACE

another date and time and it can take several mail-exchanges to reach a compromise.

5. At the agreed date and time of the exchange, both students have to be simultaneouslyonline. Both students cancel the enrollment in their groups, and as fast as possibleenroll again. The student A enrolls in the former group of the student B and viceversa. However, it is not guaranteed that between the cancellation of the enrollmentand enrolling in the groups, some other student will not enroll in the free slots leftby the cancellations.

6. In the end, either both students got their desired seminar, or they did not. In theprocess of the seminar exchange, one of the students could have Internet connec-tion problems, or, as mentioned above, a third student could have interfered. Unlessthe students are conscientious and delete the posts in the discussion group after theexchange, they stay in the group and make it hard to get oriented in. Usually, thestudents only edit the post, saying the announcement is no longer valid, so that theydo not receive new reactions to it.

This scenario of seminar group exchange does not follow the ACID transaction principles.Here we offer an overview of the ACID principles, together with the examples of situation,where the scenario breaks the principle (definitions from [16]).

ACID PRINCIPLES

Atomicity

definition Atomicity requires that database modifications must follow an “all ornothing” rule. Each transaction is said to be atomic. If one part of the trans-action fails, the entire transaction fails and the database state is left unchanged.

counter-example Student A cancels the enrollment but the student B loses the Inter-net connection and does not manage to cancel his. The student A, not knowingthis, stays without a seminar group. The operation failed only partially.

Consistency

definition The consistency property ensures that any transaction the database per-forms will take it from one consistent state to another. Consistency states thatonly consistent (valid according to all the rules defined) data will be written tothe database.

counter-example We have to define what we see as an inconsistent state. Here, wewill define it as a situation where either of the students A, or B are not en-rolled in some seminar group. The situation described in the counter-examplefor atomicity is such an inconsistent state.

42

5.5. SEMINAR GROUPS MARKETPLACE

Isolation

definition Isolation refers to the requirement that no transaction should be able tointerfere with another transaction at all.

counter-example Both students cancel their enrollment, but before the student Amanages to enroll in the ex-group of B, a third student enrolls in it. A second“transaction” interfered.

Durability

definition Durability means that once a transaction has been committed, it will re-main so.

note The durability is the only property of the ACID properties, that the scenariodefined above does not break. Once the seminars have been successfully ex-changed, this state will not change on its own, without, for example, the teacher’sintervention.

As a solution to this problem, the new version of the student application introduces theSeminar groups marketplace. Students can post their offers in the form similar to advertise-ments posts and other students can respond to it. The advantages compared to the old wayof exchanging seminar groups:

exchanges conform to ACID principles and are safe If the students decide to exchange theseminar groups, the exchange is atomic, nobody else can interfere and in the end bothstudents have their desired seminar groups.

the students do not need to be online simultaneously If the student A makes his offer forexchange and publishes it, he automatically agrees on an exchange. Then, he doesnot need to be online, when the student B accepts the offer and triggers the exchange.This saves time of both students.

simple and helpful interface There are direct links from the Enroll in a seminar group orcancel your enrollment application to create an offer for an exchange. When creatingan offer and selecting the seminar groups wanted, the application marks out thosewith timetable conflicts, similarly as in the Enroll in a seminar group or cancel yourenrollment application.

43

5.5. SEMINAR GROUPS MARKETPLACE

cleaner discussion groups The discussion groups will be easier to take in and their contentwill be more relevant to the course content.

5.5.2 Implementation

The seminar groups marketplace contains two main screens. At the first one (Figure 5.11),the student can see the list of courses that have seminar groups and at the same time, thestudent has enrolled in some seminar group of that course. (If she does not have any semi-nar group from the course enrolled in, there is nothing to barter.) Under every course item,there is a list of seminar exchange offers. The student sees her own offers and also the of-fers that match her group (her seminar is among the wanted seminars of those offers) andshe can use them for exchange. In this way, the application tries to show only the relevantannouncements, so that the student does not have to visually pick from many offers. Al-though, it is also possible to display all the offers from the particular course, not just thosematching. This behaviour can be achieved by clicking on the relevant link.

Figure 5.11: Seminar marketplace—a list of courses, the seminars group of which can beexchanged

If the student did not find any satisfying offer among the offers of a particular course,she can make her own offer. This takes her to the second screen (Figure 5.12). The studentchooses what seminars she requests. It is also possible to add a short textual comment on

44

5.5. SEMINAR GROUPS MARKETPLACE

the offer, to tell why the student needs to exchange the seminar or motivate the exchange bysome reward.

Figure 5.12: Seminar marketplace—the formular for seminar exchange offer creation or edit-ing. (Legend: 1/ Timetable collision of the seminar group detection, 2/ Textfield for a com-ment for the offer, 3/ Checkbox for making the offer private)

When creating an offer, the student has two options: To make the offer public for herclassmates to see it and use it in order to exchange the seminar groups, or, to make it private.The private offers are good for safe and atomic exchanges of seminars with a particularperson. The creator of the offer can send the link to the private offer to the chosen personvia email, Internet messaging software, or some other way.

45

5.6. STATUS OF THE NEW VERSION OF THE STUDENT APPLICATIONS IN JANUARY 2012

5.5.3 Logging of the Exchanges

All the seminar swaps are logged and persistently stored in the IS database. Also the offersare not truly deleted, only marked as deleted. This is necessary for resolving later users’complaints about the seminar group swaps.

5.6 Status of the New Version of the Student Applications in January 2012

As of January 2012, some parts of the new version of the student applications were alreadyimplemented, others not yet. The following overview shows their current statuses:

Student references page upgrade under development

Starring the courses planned

Course registration upgrade planned

Seminar groups enrollment upgrade completed and published

Seminar groups marketplace completed and published

5.7 The Time-line of the New Version of Student Applications

This section offers the approximate timeline of the work on the new version of the studentapplications. The work on the student applications was often interlaced with work on othertasks, hence a relatively long time period of work on the student applications.

Summer 2010 Brainstorming mentioned in the Section 4.3.

April 2011—June 2011 Initial work on the seminar group marketplace.

July 2011—August 2011 Work on the student references page.

September 2011 Some fine-tuning of the seminar marketplace.

46

5.7. THE TIME-LINE OF THE NEW VERSION OF STUDENT APPLICATIONS

December 2011 Seminar marketplace published.

January 2012 Planned finishing and publishing of the student references page.

February 2012—March 2012 Planned registration application implementation and publish-ing.

47

Chapter 6

Conclusion

The main goal of this thesis was to introduce the current state of the applications used foradministration of the study related matters from the student’s point of view, to suggestimprovements and implement them.

Chapters 1—3 offer information needed for the design of these improvements. Chapter4 talks about the practices in the IS development team. Chapter 5 is the key chapter thatcontains the design of the new version of the student applications and talks about how farthe author of the thesis got in the implementation. It also offers the planned schedule for theimplementation of the rest of the changes comprised in the design of the new version of thestudent applications.

The part of the assignment concerning designing the new version of the student applica-tions was fully fulfilled. The implementation part was, by the time of writing of this thesis,fulfilled partially. Seminar groups enrollment upgrade and seminar group marketplace werefinished and published. The student references page is currently being worked on. The newregistration application and the feature of starring the courses will be implemented accord-ing to the planned schedule, in the following months.

Introducing of the new technologies, reworking UI of the applications and adding somenew features should make usage of the student applications more comfortable for the stu-dents and also make the most common actions faster, thus saving time of the students. Thegoal is also improving the overall feeling from using the applications. There is evidence thatsuggests that the new version of the student applications will indeed bring positive feed-back and improve the users’ satisfaction. For example, the number of positive ratings of theentry in the blog of the IS developers and of the post in the Noticeboard application thatboth announced the introduction of the seminar group applications upgrades, was muchhigher than of the other entries and blogs announcing other changes in IS.

After finishing the implementation of the new version of the student applications ac-cording to the design from this thesis, the work on the student applications will not cease.The IS development team will continue to collect feature suggestions and bugreports andwill fix small bugs until another major revision of this applications set comes.

48

List of Used Acronyms and Special Terms

Asynchronous JavaScript and XML ( AJAX )

AJAX is a method of sending background HTTP requests and receiving HTTP re-sponses using JavaScript. The entire page in the web browser does not need to bereloaded. More at [17].

Beta testing “Second level, external pilot-test of a product (usually a software) before com-mercial quantity production. At the beta test stage, the product has already passedthrough the first-level, internal pilot-test (alpha test) and glaring defects have beenremoved. But (since the product may still have some minor problems that requireuser participation) it is released to selected customers for testing under normal, ev-eryday conditions of use to spot the remaining flaws.”[7]

E-technicians ( E-tech )

Software support team of the Masaryk University Information System. Their areaof responsibility are the E-learning applications only, since a big part of teachers’questions concern E-learning applications. For other IS applications, there is the teamof IS-technicias. See also “IS-technicians”.

EUNIS Elite Award Whole name: “EUNIS Elite Award for excellence in implementing Ad-ministrative Information Systems for Higher Education”. A prize, annually awardedto the best and most innovative information systems from the higher education en-vironment. The organization responsible for assigning the prizes is called EUNIS—European UNiversity Information Systems. [19]

iCalendar file format ( iCal )

iCal or iCalendar is a file format for storing and sharing calendar/timetable infor-mation. Its file extension is ics [25].

Masaryk University Information System ( IS )

Information system developed at and used by the Masaryk University, Brno, CzechRepublic.

IS-technicians ( IS-tech )

IS-technicians are the software support of the Masaryk University Information Sys-tem. They are ready to answer questions concerning IS or help with using IS toanybody who contacts them via mail or telephone. Each faculty has one or two IS-technicians. Their area of responsibility is all the IS applications except E-learningapplications—those have a special support team of E-technicias. See also “E-technicians”.

Revision, Opinion Poll and Testing ( ROPOT )

49

LIST OF USED ACRONYMS AND SPECIAL TERMS

A common name for a set of applications that allow for the creation of electronicformulars and their publishing to a certain group of IS users. It can be used for exams,opinion polls, or revisioning before tests. More in the Section 3.1.2.1.

Software Prototyping Software development method that involves creating small, func-tional parts of the software, which serve as a proof of concept. Implementation ofa prototype proceeds quickly, so it allows for a fast feedback from the customers.[23] There are two main types:

throwaway prototyping The prototype is thrown away after the demonstration andfunctionality it was supposed to demonstrate is implemented again.

evolutionary prototyping The prototype is further improved and used as a core ofthe new functionality.

Student Syndrome A phenomenon that occurs when somebody is given a task and sometime assigned for task and he starts working on the task the last possible momentbefore the deadline [24]. The term was noted by E. Goldratt in Critical Chain [8].

User Interface ( UI )

The part of the software, that the user perceives with his senses. Most of the times,the visual output of the software is meant, especially appearance and layout of thegraphical components on the screen or other graphical output device.

50

Bibliography

[1] AiS2 - Informacný portál [online], [cited 2011-12-22], <http://www.ais2.sk/xwiki/bin/view/Unikatnost/> . 2.2

[2] IS/STAG - Informacní systém studijní agendy [online], 2011-04-20 [cited 2011-12-22],<http://is-stag.zcu.cz/> . 2.3

[3] List of UIS developers and system integrators [online], [cited 2011-12-22], <http://is.mendelu.cz/dok/uis.pl> . 2.1

[4] AiS2 - Informacný portál [online], [cited 2011-12-22], <http://www.ais2.sk/xwiki/bin/view/Referencie/> . 2.2

[5] BAROUDI, J. and OLSON, M. and IVES, B.: An empirical study of the impact ofuser involvement on system usage and information satisfaction, New York, NY, USA: ACM, Issue nr. 3, Volume nr. 29, March 1986 [cited 2011-11-22], pages 232-238,<http://www.cin.ufpe.br/~jmmn/papers/p232-baroudi.pdf> . 4.2.1

[6] BRANDEJS, M. and MISÁKOVÁ, M. and KRIPAC, . and ŠIKULOVÁ, A. andKASPRZAK, J.: Informacní systém Masarykovy univerzity v Brne, Univerzitní infor-macní systémy, 2004 [cited 2011-11-23], <http://is.muni.cz/clanky/200410_eunis_prezentace.pl> .

[7] What is beta test? definition and meaning : BusinessDictionary.com [online],[cited 2012-01-03], <http://www.businessdictionary.com/definition/beta-test.HTML> . 6

[8] GOLDRATT, E.: Critical Chain, Great Barrington, MA, USA : North River Press, Jan-uary 1997, ISBN: 978-0884271536. 5.1.1.3, 6

[9] IS/STAG - Informacní systém studijní agendy [online], 2011-11-30 [cited 2011-12-22],<http://is-stag.zcu.cz/zajemci/> . 2.3

[10] O ceský EDU | One, jediný IS pro školy zdarma, mají zájem v Dublinu [on-line], 2011-06-16 [cited 2011-12-25], <http://student.finance.cz/zpravy/finance/299564-novy-informacni-system-pro-vs-zdarma/> . 2.4

[11] KASPRZAK, J. and BRANDEJS, M. and CUHEL, M. and OBŠÍVAC, T.: AccessRights in Enterprise Full-text Search, Funchal, Portugal : INSTICC – Institute forSystems and Technologies of Information, Control and Communication, In ICEIS:Proceedings of the 12th International Conference on Enterprise Information Sys-tems, Volume 1: Databases and Information Systems Integration, 2010 [cited 2011-11-22] , pages 32-39, ISBN: 978-989-8425-04-1, <http://www.fi.muni.cz/reports/files/2010/FIMU-RS-2010-08.pdf> . 1.2.2, 5.3.1

51

[12] KRUG, S.: Don’t Make Me Think, Berkeley, CA, USA : New Riders, 2nd edition, 2005-08-28 [cited 2011-11-22], ISBN: 978-0321344755. 1.2.2

[13] LIBUŠA, A.: Application Searching in the Masaryk University Information Sys-tem, 2011-5-23 [cited 2011-11-22], <https://is.muni.cz/th/173122/esf_b/?lang=en> . 1.2.2, 1.3

[14] POVOLNÝ, D.: Informacní systém vyvolával doslova boure [online], Muni.cz, 2008-01-31 [cited 2011-11-22], <http://info.muni.cz/index.php?option=com_content&task=view&id=936&Itemid=93> . 1.2.1

[15] WALL, L. and CHRISTIANSEN, T. and ORWANT, .: Programming Perl, Sebastopol,California, USA : O’Reilly Media, July 2000, ISBN: 978-0-596-00027-1.

[16] ACID : Wikipedia, the free encyclopedia [online], 2011-11-29 [cited 2011-12-11],<http://en.wikipedia.org/wiki/ACID> . 5.5.1

[17] Ajax (programming) : Wikipedia, the free encyclopedia [online], 2011-12-19 [cit. 2012-01-03], <http://en.wikipedia.org/wiki/Ajax_(programming)> . 6

[18] Common Gateway Interface : Wikipedia, the free encyclopedia [online], 2011-12-08 [cited 2011-12-26], <http://en.wikipedia.org/wiki/Common_Gateway_Interface> . 1.1.3

[19] EUNIS : Wikipedie, otevrená encyklopedie [online], 2011-12-24 [cited 2011-12-25],<http://cs.wikipedia.org/wiki/EUNIS> . 1.4, 6, 2.1, 2.3, 6

[20] HTML : Wikipedia, the free encyclopedia [online], 2011-12-20 [cited 2011-12-26],<http://en.wikipedia.org/wiki/HTML> . 1.1.4

[21] Hypertext Transfer Protocol : Wikipedia, the free encyclopedia [online], 2011-12-20[cited 2011-12-26], <http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol> . 1

[22] Multitier architecture : Wikipedia, the free encyclopedia [online], 2011-12-15 [cited2011-12-25], <http://en.wikipedia.org/wiki/Multitier_architecture>. 1.1

[23] Software prototyping : Wikipedia, the free encyclopedia [online], 2011-12-27 [cited2012-01-03], <http://en.wikipedia.org/wiki/Software_prototyping> .4.1, 6

[24] Student syndrome : Wikipedia, the free encyclopedia [online], 2011-12-05 [cited 2012-01-03], <http://en.wikipedia.org/wiki/Student_syndrome> . 5.1.1.3, 6

[25] iCalendar : Wikipedia, the free encyclopedia [online], 2011-12-20 [cited 2012-01-03],<http://en.wikipedia.org/wiki/ICalendar> . 5.1.2.2, 6

52

Index

ACID, 42Agile development, 23AJAX, 5, 32, 34, 36–38, 49

CGI, 2CPAN, 2CSS, 5CV, 5

drag&drop, 38

E-technicians, 25

Git, 3

HTML, 5HTML 5, 5

iCal, 32, 49IS-technicians, 16, 23, 25

JavaScript, 34, 38, 40, 41, 49

Linux, 2

Oracle, 1

Perl, 1, 2

SQL, 2

test-driven development, 23

UI, 25, 36, 37, 48

Web 2.0, 33

53