• No results found

I developed SpEx to run in the web browser to satisfy NF 2 (“SpEx must not require users to install additional software.”). Making SpEx accessible was an important factor of its design. Different students tend to use comput- ers which run different hardware, operating systems, and software. In- stalling and configuring software is not a familiar process for all students (Amy for example). Running SpEx in the web browser also satisfied NF 3 (“SpEx must run on a variety of hardware and operating-systems.”) because web browsers were considered ubiquitous. Also, web browsers provide an abstraction from operating system, hardware, and software interfaces.

SpEx was built with HTML5, SVG v1.1, CSS, and JavaScript, all of which run completely in the browser without requirements from other software. Therefore SpEx could be run in a wide variety of computer con- figurations. The D3 JavaScript library [15] was used to support the dy-

namic creation of SpEx in the browser. In which case, Peter could provide Jack and Amy with web address of his lectures. He would not have to provide references to specific software to install or restrict Jack and Amy to their choice of operating system. Consequently SpEx does require an Inter- net connection which may not always be accessible. I assumed that most students have reliable access to the Internet via their education provider, but I understand that the lack of offline access is a limitation of SpEx.

One important aspect of Information Visualisation and effective user interface design is feedback. When users interact with SpEx, not only should wait time be avoided to reduce user frustration but all interaction must have immediate feedback to confirm to the user that the interaction was successful or unsuccessful. Consequently SpEx pre-processed all of the input from TAFE during start-up. Loaded data are indexed and stored into HashMap data structures with O(1) time cost for retrieval. Therefore SpEx was responsive to user actions despite the amount of data that was processed (which included segments, transcript text, word stemming, and

4.2. IMPLEMENTATION OF SPEX 59

interface rendering). I noticed no perceivable delay between action and reaction.

Furthermore, besides file hosting, no server-side processing was re- quired to support SpEx. However, to support the user study described in Chapter 6, a server running Apache Server v2.2.151and web.py v0.372

(a Python web development framework) was setup to guide users through the tasks required for the user study. SpEx was also built to record all ac- tions performed by users and send those actions to the server for perma- nent storage. Every invocation of a user interface element (such as clicking a word or searching) was recorded. These recorded interaction logs could be analysed to reveal how users made use of SpEx.

With every component of SpEx described, I believe SpEx has satis- fied the audio retrieval requirements of Jack and Amy. Table 4.1 displays the requirements SpEx has addressed. The play/pause button satisfied the Basic requirement to listen to the audio. For Amy (and Jack to a lesser degree), SpEx was able to fully support Section Selection. The Strip Treemap provided an organisation to display discrete audio segments. Word Clouds extended the segments to describe segment topicality. Along with context sentence popups which displayed over Word Cloud words and a Search Facility, SpEx was able to allow the navigation strategies I described in Section 3.4: scanning, browsing, and searching. The verti- cal markers in the audio control were landmarks to help move the audio position between segments.

Jack’s and Amy’s Fact Finding tasks were also supported. Browsing and searching for facts were possible. Transcript Markers which appeared on Word Cloud word selection and searches showed precisely where each word occurred. Acoustic filters allowed Jack and Amy to search for acous- tic cues. Finally, accurate audio manoeuvrability for Fact Finding was sup- ported by an audio control on the Treemap itself.

1Apache Server website: http://httpd.apache.org/ 2web.py website: http://webpy.org/

Each Summarisation task was also supported. Understanding the sur- rounding content was supported by Word Clouds and Transcript markers. Showing regions listened to was supported by highlighting played regions in the audio control. Lastly, manoeuvring the audio was supported by the Audio Control and the Treemap thumb.

However, the Distribution requirements for Peter have not yet been addressed. SpEx is agnostic to how the audio was recorded, only that the audio is of the correct file type. SpEx also does not process any audio. Processing audio is the role of TAFE. TAFE is discussed in Chapter 5.

4.2. IMPLEMENT A TION OF SPEX 61

Table 4.1: Persona Functional Requirements satisfied by SpEx.

Task Requirement Jack Amy Peter Supported by

Basic Listen to audio Audio Control

Section Selection

Display topic structure Strip Treemap (segments) Display topic content Word Clouds

Browse/scan for topics Word Clouds and context popups

Search for topics Search facility

Move audio between segments Audio Control

Fact Finding

Browse for specific spoken information Word Clouds with Transcript Markers Search for specific spoken information Search facility with Transcript Markers Browse/scan for specific acoustic events Acoustic filters

Accurately move the audio position Treemap audio thumb

Summarisation

Understand surrounding content Word Clouds with Transcript Markers Show regions listened to Audio Control played-region highlight Manoeuvre and listen to audio Audio Control and Treemap Thumb

Distribution

Record audio with off-the-shelf hard- ware and software

# Not yet supported

Simple configuration when processing audio