Sunday, September 29, 2013

Foundations of Human-Computer Interaction, Module I - Visibility, Affordances, Mapping, Constraints, Conceptual Models

Just a little conceptual map I did with CMapTools for the first module of IFI7159 - Foundations of Human-Computer Interaction:


I know it's not some sort of masterpiece, but I promise I'll keep improving on it!

Sunday, September 22, 2013

Ubiquitous Computing Module I Assignment: a design and development scenario for the implementation of ubiquitous technology

My first challenge, certainly, was bringing the focus to a palpable, quantifiable problem. I (and I believe most people who even knows the concept of ubiquitous computing) still tend to think of it as a pie-in-the-sky, all-or-never concept, in a 'the status quo of computing is this, but it should actually be like that' way. Finding a single application where ubiquitous computing principles are poorly applied proved elusive for a while, and then it hit me.
Most people reading the blog post are current users of Student Information Systems. The purpose of these systems is to handle student information, class schedules, classrooms assignments, academic progression, discipline and so many other school administration subjects. Even though the name leads you to think that such systems are supposed to hand information over to students, most of these systems are built around a school administration workflow, leaving two of the most common users out of the development loop: students and teachers.
Now you must be thinking 'where does this guy take such preposterous ideas?', especially if you are part of school staff. Let us look at a chart from Asio EduERP, the Finnish/Estonian system we use here at Tallinn University, shall we?

Look at how the workflow is presented. Students and teachers are peripheral data-sources, not central parts of the system. You may say that is just a stylistic decision, but it reflects a development philosophy where these users needs are not taken into consideration.  Let us consider this screenshot of the resulting calendar of a given student, as output by Asio:
 
I'll give you time to search for all the export options on this screenshot. Did you find one? Maybe the little printer button on top of the agenda, and that's it. Tell me: when was the last time you printed a school calendar, 1998? Adding insult to injury, Asio/ÕIS requires Firefox or Internet Explorer to run. No explicit Webkit support means no Chrome, Safari, iPhone, iPad or Android support. In my research of several different SIS (OpenSIS, SchoolTool, QuickSchools, SIMS, etc) I found a single one that had any mobile support: Fedena, developed in India as the basis for Sampoorna, the system that centralizes information on all 15,000 schools of the state of Kerala.

So what do I propose? I believe the simplest, most cost-effective solution to the over-centralization of SIS in general and of Asio/ÕIS in particular would be the use of WebDAV extensions to its various input/output systems. WebDAV is an IETF standard expansion of HTTP built to facilitate collaboration in managing web systems. It describes methods of sending data back to web servers, turning HTTP into a two-way protocol. It is also the basis of CalDAV and CardDAV, the protocols used to synchronize calendars and contact lists between web services and mobile devices. By implementing WebDAV into a SIS a teacher could, for instance, have his Google Calendar update automatically when new classes are scheduled, or negotiate conflicts if he has a personal appointment that impedes his appearance in class. Students could be instantly notified on their mobile phones or laptops when a class is up (or moved), and even receive invitations to classes they showed interest in and 'RSVP' to those classes, instead of having to log into to system every time they need to review information, then manually input all that data into their calendar or class scheduling application of choice. It is a simple solution that accommodates the growing tendency of BYOD (Bring Your Own Device) while taking into consideration the principles of modern ubiquitous computing philosophy.