This document provides a draft software requirements specification for the Interactive Logbook project. It includes an introduction, overall description of the product and its features, user requirements for the .NET client and Java 2 Micro Edition client, and system features. The document outlines requirements for document handling, audio/video recording, writing with a stylus, collaboration features like file sharing and messaging, text editing, printing, search, study aids, help features, and integration with institutional systems. It also describes the user classes, operating environments, design constraints, and assumptions.
1. Software Requirements
Specification
for
JISC Interactive Logbook
Version 0.3
Prepared by Tony Chan
CETADL, The University of Birmingham
5th October 2004
Software Requirements Specifications WP2.doc
2. Software Requirements Specification for <Project> Page ii
Table of Contents
Table of Contents ......................................................................................................................ii
Revision History.......................................................................................................................iii
1. Introduction......................................................................................................................... 1
1.1 Purpose...................................................................................................................................1
1.2 Document Conventions............................................................................................................1
1.3 Intended Audience and Reading Suggestions ............................................................................1
1.4 Project Scope .......................................................................................................................... 1
1.5 References............................................................................................................................... 1
2. Overall Description ............................................................................................................. 2
2.1 Product Perspective ................................................................................................................. 2
2.2 Product Features ..................................................................................................................... 2
2.3 User Classes and Characteristics.............................................................................................. 2
2.4 Operating Environment............................................................................................................3
2.5 Design and Implementation Constraints ................................................................................... 3
2.6 User Documentation ................................................................................................................ 3
2.7 Assumptions and Dependencies ............................................................................................... 3
3. User Requirements - .NET Client....................................................................................... 3
3.1 Document Handling................................................................................................................. 4
3.2 Audio Recording ..................................................................................................................... 4
3.3 Writing with stylus ..................................................................................................................4
3.4 Collaboration .......................................................................................................................... 5
3.4.1 File Sharing ........................................................................................................................ 5
3.4.2 Messaging........................................................................................................................... 5
3.5 Text Editing ............................................................................................................................ 5
3.6 Printing ...................................................................................................................................6
3.7 Search Facility ........................................................................................................................ 6
3.8 Study Aid................................................................................................................................ 6
3.9 Help Facility ........................................................................................................................... 6
3.10 Integration with Institutional Infrastructures............................................................................. 7
3.11 Personal Development Planner ................................................................................................. 7
4. System Features................................................................................................................... 7
4.1 Overall Functionality - .NET Client ......................................................................................... 7
4.2 Shell / Logging Service............................................................................................................8
4.3 Web Browser Plugin................................................................................................................ 9
4.4 Calendar / Time Management Plugin ..................................................................................... 10
4.5 Tasks Plugin ......................................................................................................................... 10
4.6 Email Plugin ......................................................................................................................... 11
4.7 Notes Plugin.......................................................................................................................... 11
4.8 Chat Plugin ........................................................................................................................... 12
4.9 Sharing Plugin....................................................................................................................... 12
4.10 File Viewer Plugin................................................................................................................. 12
5. User Requirements – J2ME Client ................................................................................... 13
5.1 Access to Networked Resources............................................................................................. 13
5.2 Configuration ........................................................................................................................ 13
5.3 Persistence Storage (Caching)................................................................................................ 13
6. Summary ........................................................................................................................... 14
3. Software Requirements Specification for <Project> Page iii
Revision History
Name Date Reason For Changes Version
MEng Final Report Mar 2004 Initial version 0.1
Draft Specification Sep 2004 Draft Specification for the Plugin IL 0.2
4. Software Requirements Specification for The Interactive Logbook Project Page 1
1. Introduction
1.1 Purpose
This document details the Draft Software Requirements Specifications of the Interactive Logbook
– A JISC funded software development project being undertaken by CETADL.
1.2 Document Conventions
Though this document is intended as a set of Requirements, and not a design document,
technical information has been included wherever it was deem appropriate.
Priority for all functionality is assumed to be equally except where noted.
1.3 Intended Audience and Reading Suggestions
The primary audience for this document is the development team. The secondary audience is the
JISC project management team and CETADL management team.
1.4 Project Scope
The Interactive Logbook Project intends to develop an Electronic Personal Development Plan
(EPDP) application. This application will assist the student in organising his/her learning material,
classes, schedules and online resources, as well as record all learning activities carry out with the
application, such as group discussions, note taking, emails and others. It will then store and be
able to interact with other LIP (Learner Information Profile) - compliant system to integrate the
learner's profiles with those stored on Virtual Learning Environments (VLE) such as WebCT.
1.5 References
The following references are relevant to the project and can be consulted to project a more detailed
view of the technologies and standards being used in this project.
• C# Language Specification – ISO / IEC 23270 & ECMA 334
• Common Language Infrastructure (CLI) – ISO / IEC 23271 & ECMA 335
• J2ME - MIDP1.0 – CLDC http://java.sun.com/j2me/
• SOAP (1.2) http://www.w3.org
• XML http://www.w3.org/XML/
• RSS
• MIDP1.0
• Javadoc Guidelines
• XMPP http://www.xmpp.org/
• iCalendar http://www.ietf.org/rfc/rfc2445.txt
• WebDAV http://www.webdav.org/specs/
• IMS Learner Information Profile (LIP) 1.0 http://www.imsglobal.org/profiles/index.cfm
5. Software Requirements Specification for The Interactive Logbook Project Page 2
• IEEE Learning Object Metadata (LOM) http://ltsc.ieee.org/wg12/
• UML 1.4 Specification http://www.uml.org
2. Overall Description
2.1 Product Perspective
The University of Birmingham has long recognised the importance of Personal Learning Environments and
has been developing systems in a research context since 1998. The latest system, codenamed ‘Interactive
Logbook’ promises to offer what no current product does – a productivity environment specially engineered
for learners. Our previous projects such as the Student Learning Organiser (Corlett et al, 2004) have
recognised the gulf between the design of products aimed at office workers, and the needs of learners. A
student’s paper-based logbook or lab book is a personal learning environment. In it, one records actions and
results, carries out brainstorming activities, keeps notes of important dates and contacts and then extracts
from it the elements for assessment. It can also be used for archiving and for personal reflection. However,
learner activities are increasingly carried out through Virtual Learning Environments (VLEs), on the Internet,
with email and chat, using computer simulations and more, so it is anachronistic to expect the use of paper
and pen to record all these activities. Furthermore, the paper logbook does not easily facilitate search,
concurrent projects or peer collaboration. It would therefore be beneficial if all of these electronic activities
could be mediated and captured through one PLE.
2.2 Product Features
Two prototype IL has already been developed for the Windows platform and takes advantage of the
functionality inherent in standard desktop applications and a team portal server. The following priority
learning functions are integrated into the current system:
Ø Collaborative working
Ø Meeting organiser
Ø Shared file stores for different groups, with local synchronisation
Ø Whiteboard
Ø Whole-team communication
Ø Communication
Ø Email/chat/discussion
Ø Audio and video messaging
Ø Timetabling and planning
Ø Shared calendars
Ø Import of timetable and deadlines, linked to lecture content and assignment details
Ø Rich multimedia learning creation
Ø Student annotation of slides and other documents
Ø Reflection
Ø Review of learning activities and materials used/created, organised by course or module
2.3 User Classes and Characteristics
Higher education students are the primary group of users targeted by the Interactive Logbook. This
particular group of users will most likely be using almost every feature provided by the system in their
everyday life while they are in education. Secondary users include higher education teaching staff /
assistants, higher education administrative and support staff. It is anticipated that this group of users will
6. Software Requirements Specification for The Interactive Logbook Project Page 3
mainly use the system to interact with students’ system or to interact with the group management, provide
course materials, course management, timetabling and other administrative activities required to support
students’ education. Given the above hypothesis is correct this group of users will only use the system as
needed (to conduct the necessary task).
2.4 Operating Environment
There are two client version of Interactive Logbook. The system requirements are stated below:
Microsoft Windows .NET Client
PC capable of running Microsoft Windows XP (Microsoft Windows XP Tablet PC Edition recommended)
256MB RAM minimum (512MB RAM or higher recommended)
.NET Framework version 1.1
Network connection required for online features (chat, email, blogs, web ..etc)
Tablet PC required for digital ink
Java 2 Micro Edition (J2ME) Client
Phones capable for running J2ME
2.5 Design and Implementation Constraints
• JISC Software Quality Policy
• JISC eTools Project Project Plan
2.6 User Documentation
• Work Package 1 – User Documentation
2.7 Assumptions and Dependencies
<List any assumed factors (as opposed to known facts) that could affect the requirements stated
in the SRS. These could include third-party or commercial components that you plan to use,
issues around the development or operating environment, or constraints. The project could be
affected if these assumptions are incorrect, are not shared, or change. Also identify any
dependencies the project has on external factors, such as software components that you intend
to reuse from another project, unless they are already documented elsewhere (for example, in the
vision and scope document or the project plan).>
3. User Requirements - .NET Client
This section describes a list of high level user requirements for the .NET Client version of the
Interactive Logbook.
7. Software Requirements Specification for The Interactive Logbook Project Page 4
3.1 Document Handling
It is expected that the users will need to interact with various kinds of electronic documents in
their everyday learning life therefore Interactive Logbook should provide the following document
handling facilities:
Ø Facility to handle documents in a variety of formats (Depending on plugins installed)
Ø Allow users to produce new documents
Ø Save facility should exist
Ø Close document
Ø Load document
Ø Allow the user to import and export external data from other applications into the logbook
such as
o Via the clipboard
o E-journals and lecture notes
o Image processing applications
o Internet Explorer
o Via open facility
o Microsoft Word(or equivilent)
o Other word processing products
3.2 Audio Recording
Audio / Visual recording can enhance how learners capture their learning environment for future
use in the reflection process. Although technical capability of most mobile hardware means that
real-time video capturing may not be feasible, however most devices are capable of capturing
audio contents. Hence, the Interactive Logbook’s audio recording facilities should:
Ø Should provide a record facility anywhere in the notes document
Ø Should provide a playback feature anywhere in the notes document
3.3 Writing with stylus
As Tablet PC-based mobile system becoming more available it is expected the Interactive
Logbook may be deployed on Tablet PC based device (not a requirement) where enhanced
digital ink capability is available. The Interactive Logbook should therefore provide the facility
whereby the user is able to take advantage of the feature of digital ink for:
Ø write and manipulate the on-screen handwritten text
Ø Highlighting important text
Ø Capturing user input
Ø Cut and paste of handwritten text
Ø Hand Writing Recognition
Ø Ability to convert a users handwritten text into typed text in realtime or at later stage
8. Software Requirements Specification for The Interactive Logbook Project Page 5
3.4 Collaboration
The aim of Interactive Logbook was to provide an integrated environment for personal learning
development as well as to facilitate learning in a collaborative fashion. Therefore the system shall
provide facility to foster such activities:
3.4.1 File Sharing
File sharing is a basic requirement to foster collaboration where a group of learners could send
and receive electronic documents between themselves when they are tackling a particular
learning project collaboratively. The system should be able to share the following items:
Ø Group Log Book
Ø Personal Files
Ø Group Files
In addition to simple sharing of files the system should also be able to manage the following
sharing activities either providing appropriate facility internally or to take advantage of an external
management scheme:
Ø Access Control
Ø Able to edit and update files in a synchronised manner
Ø External Document / Collaboration portal system
Ø Collaborative logbook must be author tagged when updated/edited
Ø Facility for group management. That has the ability to store minutes from meetings,
agendas and hierarchal structure of the group.
Ø All of the above facilities should be able to be viewed by all members of the group at the
same time
3.4.2 Messaging
Instant Messaging had become an indispensable communication between learners in the higher /
further education. The Interactive Logbook should provide facility within the group to
communicate between themselves via instant messaging and should provide the following:
Ø Able to access multiple messaging clients and copy over contact rosters so user can
integrate all their contact in one place
Ø Communication can be performed using the following methods
o Audio
o Video
o Text
o Send / Receive Files
3.5 Text Editing
The system should provide a toolbar for the user to manipulate text while using the in-built word
processor to improve the ease-of-use. The toolbar should provide (minimum) the following set of
the frequently use features for interacting with the word processor:
9. Software Requirements Specification for The Interactive Logbook Project Page 6
Ø Font type
Ø Emphasis
Ø Bold, Italics, (Super/Sub)script
Ø Text positioning
Ø Centred, Justified, Left and Right
Ø Colour from palette
Ø The system shall provide the users with the facility to indent text
Ø Numbered and Bulleted
Ø “Cut” and “Paste”
3.6 Printing
The system should allow the user to print any aspect of the files saved within the system where:
Ø The use both local and networked printers are available and
Ø A print preview facility should be made available
3.7 Search Facility
With the amount of data and information stored on a typical computer today, context searching
had become extremely important for users of any computer system today to locate their files.
Interactive Logbook should provide a search facility for files and key words contained within those
files.
3.8 Study Aid
Learners should to be able to manage their learning activities within the Interactive Logbook
therefore the system should provide components which to facilitate learners to plan:
Ø Timetable / Calendar
Ø Assignments / Tasks
Interactive Logbook may also provide the following in appropriate settings via extended
functionalities:
Ø Revision planner
Ø Facility for the user take quick notes
Ø Progress meter for group projects
Ø GANTT Chart
3.9 Help Facility
The system should provide a comprehensive help facility that encompasses all functions
contained within the application. Examples:
Ø Tool tips
Ø Interactive help system
10. Software Requirements Specification for The Interactive Logbook Project Page 7
3.10 Integration with Institutional Infrastructures
The Interactive Logbook should have the ability to integrate with existing institutional
infrastructure such as:
Ø Email
Ø Book loaning/reservations
Ø E-Journal access
Ø Institutional Intranet
Ø Virtual Learning Environment / Collaboration Portal
Ø File servers
3.11 Personal Development Planner
The system shall provide a facility for the user to record their learning achievements, thus provide
a history of the learner’s learning progress in a given time.
Ø Resources used within a given learning project or episode
Ø Tasks within a given learning project or episode
Ø Communication log (email, chat, blogs, discussion) of a particular learning project or
episode
Ø List of qualifications achieved and work done to achieve qualification.
The system should be able to export the PDP contents in a customizable format.
4. System Features
<This template illustrates organizing the functional requirements for the product by system
features, the major services provided by the product. You may prefer to organize this section by
use case, mode of operation, user class, object class, functional hierarchy, or combinations of
these, whatever makes the most logical sense for your product.>
4.1 Overall Functionality - .NET Client
4.1.1 Description and Priority
This section describes the general functionalities required which are applicable to the entire
system. High Priority
4.1.2 Functional Requirements
Plug-in Architecture
It is desirable that the Interactive Logbook has the ability to extend its functionality without
the need to recompile the entire software. Hence, the Interactive Logbook should adopt a
plugin system where new functionalities can be provided by new plugins.
The system shall be able to detect correct plugins and include a wizard for installing them.
The system will allow users to remove individual/all plugins manually.
The system will allow users to add individual/all plugins manually.
11. Software Requirements Specification for The Interactive Logbook Project Page 8
The system will allow users to change the setting of any plug-in (if applicable).
4.2 Shell / Logging Service
4.2.1 Description and Priority
This component provides elementary user interface and logging services for other plugins.
The shell is responsible for handling opening / closing and editing of various types of
documents supported within the Interactive Logbook. This is where the user will interact with
the entire system. High Priority
The Logging Service will keep a log of the learner’s activities using the information provided
by various plugins. The Logging Service is also responsible for building PDP information
using the logged data.
High Priority
4.2.2 Stimulus/Response Sequences
1. User activates plugin(s) via appropriate user interface on the shell.
2. Plugin launched.
3. Serveral plugins (e.g. Calendar and Tasks) interface with the appropriate user interface.
element on the shell. Other plugins display their own user interfaces on the shell.
4. User interacts with various plugins.
5. (As Required) Plugins pass the required information to Logging Service
6. (As Required) Logging Service keeps a log of the user’s activities.
4.3.3 Functional Requirements
Shell
REQ 1: User re-configurable menus and toolbars where users can access the
functionalities within the plugins.
REQ 2: Additional user interface elements for the following plugins (calendar and tasks)
REQ 3: Security / User Login
REQ 4: Search facility
REQ 5: Print facility (interface with the operating system)
REQ 6: Online help
Logging Service
Logging Service (reside within the “Shell”) will requires the following information from each
of the following class of plugins.
i) All plugins
Date Stamp
Time Stamp
ii) Web Browser Class
URL
iii) Notes Class
Title
Physical / Network location
Filename
Exist?
12. Software Requirements Specification for The Interactive Logbook Project Page 9
iv) File Viewer Class
Filename
Physical / Network location
v) File Share Class
Access Control List (Who to share?)
Sharing Protocol (How to share?)
Scheduled Time (When to share?)
Reason (Why to share?)
Filename (What to share?)
Physical / Network location
vi) Email Class
Recipients
Title
Mode: Send / Receive?
vii) Chat Class
User List (Who to chat?)
Chat Log
viii) Calendar / Time Management Class
Event Name
Event Date
Event Time
Event Venue
Notes
ix) Tasks / To-Do List Class
Task Name
Due Date
Notes
Responsible to
x) Electronic Submission Class
Due Date
Teacher / Tutor
Course Name
Handed?
4.3 Web Browser Plugin
4.3.1 Description and Priority
This plugin provides the users the ability to browse website formatted via HTML protocol.
High Priority
4.3.2 Stimulus/Response Sequences
Ø User types in the URL for a specific address
Ø As the user press the “Go” key the plugin retrieve the URL from the textbox and parse
it.
13. Software Requirements Specification for The Interactive Logbook Project Page 10
Ø (As Required) Plugins pass the required information to Logging Service
Ø Webpage is displayed in the main viewer.
4.1.3 Functional Requirements
REQ 1: Textbox for URL
REQ 2: Navigational buttons (Back, Forward, Stop, Reload and Go
REQ 3: Ability to send URL information to data logger
4.4 Calendar / Time Management Plugin
4.4.1 Description and Priority
This plugin provides the users the ability manage the calendar (appointments / events).
High Priority
4.4.2 Stimulus/Response Sequences
Ø Input / Edit Event Name.
Ø Input / Edit Event Date.
Ø Input / Edit Event Time.
Ø Input / Edit Event Venue.
Ø Input / Edit additional notes (optional).
Ø (As Required) Plugins pass the required information to Logging Service
4.4.3 Functional Requirements
REQ 1: Calendar user interface element
REQ 2: Add / Remove / Edit Calendar Entries
REQ 3: Ability to send information to data logger
4.5 Tasks Plugin
4.5.1 Description and Priority
This plugin provides the users the ability manage their tasks / to-do list. High Priority
4.5.2 Stimulus/Response Sequences
Ø Input / Edit Task Name.
Ø Input / Edit Due Date.
Ø Input / Edit Person Responsible.
Ø Input / Edit additional notes (optional).
Ø (As Required) Plugins pass the required information to Logging Service
4.5.3 Functional Requirements
REQ 1: Tasks List User Interface
REQ 2: Add / Remove / Edit Tasks Entries
14. Software Requirements Specification for The Interactive Logbook Project Page 11
REQ 3: Ability to send information to data logger
4.6 Email Plugin
4.6.1 Description and Priority
This plugin provides the users the ability manage their email. High Priority
4.6.2 Stimulus/Response Sequences
Ø Receive Email
Ø View Email
Ø Create Email
Ø Delete Email
Ø (As Required) Plugins pass the required information to Logging Service
4.6.3 Functional Requirements
REQ 1: Send To, CC, BCC and Title Textboxes
REQ 2: Main body Textboxes
REQ 3: Navigational toolbars
REQ 4: Ability to send information to data logger
REQ 5: Ability to interface various mailing protocol (POP3, IMAP, Exchange) via different
plugins.
4.7 Notes Plugin
4.7.1 Description and Priority
This plugin provides the users the ability take written notes via digital ink or audio recording.
High Priority
4.7.2 Stimulus/Response Sequences
Ø New Notes
Ø Open Notes
Ø Activate Digital Ink
Ø Annotate / Start Audio Recording
Ø (As Required) Plugins pass the required information to Logging Service
4.7.3 Functional Requirements
REQ 1: Multi-page notes
REQ 2: Ability to take advantage of digital ink
REQ 3: Ability to take advantage of the handwriting recognizer when using digital ink
REQ 4: Ability to capture audio content via audio recording.
REQ 5: Ability to send information to data logger
15. Software Requirements Specification for The Interactive Logbook Project Page 12
4.8 Chat Plugin
4.8.1 Description and Priority
This plugin provides the users the ability chat with others. High Priority
4.8.2 Stimulus/Response Sequences
Ø List of Buddies.
Ø List of Online Buddies.
Ø Initiate chat session.
Ø (As Required) Plugins pass the required information to Logging Service
4.8.3 Functional Requirements
REQ 1: Combine list showing all buddies and online buddies
REQ 2: Enters a chat session with any selected buddy(ies)
REQ 3: Ability to send information to data logger
4.9 Sharing Plugin
4.9.1 Description and Priority
This plugin provides the user ability to share their files. High Priority
4.9.2 Stimulus/Response Sequences
Ø User A selects a file or a list of files to share
Ø User A edits the Access Control List of the files to be shared
Ø User B should now have the ability to locate and download the files from User A.
4.9.3 Functional Requirements
REQ 1: Able to select a single or multiple files to share
REQ 2: Able to edit the Access Control List
4.10 File Viewer Plugin
4.10.1 Description and Priority
This plugin provides the users the ability view their documents in Interactive Logbook. High
Priority
4.10.2 Stimulus/Response Sequences
Ø Present to the user a list of files.
Ø User selected a particular file.
Ø Launch the file.
Ø Main window displays the content of the file.
Ø (As Required) Plugins pass the required information to Logging Service
4.10.3 Functional Requirements
16. Software Requirements Specification for The Interactive Logbook Project Page 13
REQ 1: file manager user interface element
REQ 2: Create/ Edit / Delete files on the list
REQ 3: Ability to send information to data logger
5. User Requirements – J2ME Client
This section describes a list of high level user requirements for the J2ME Mobile Client.
5.1 Access to Networked Resources
The mobile client should provide facility to access certain network resources (listed below) in
order to allow the user obtain up-to-date information relevant for their learning. Due to the limited
capability and technical restraint on most J2ME devices access to most contents will be restricted
to read only and in certain cases limited editing will be provided. The list of online resources the
J2ME client should provide are:
Ø Overviews of Institution / Course (from VLE / Portal)
Ø News / Blogs (from VLE / Portal)
Ø Calendar
Ø Email
5.2 Configuration
The mobile client should provide the facility to allow the user ability to reconfigure their client
easily and quickly with a setting of another institution whereby allowing quick access for
information from a different institution.
5.3 Persistence Storage (Caching)
It is the nature for most mobile device to work either online or offline, particularly when the mobile
device is moved to an areas without connectivity. It is therefore essential that the client should
provide some kind of persistence storage where the most important information will be cached.
The following listed certain items that require caching as they are deemed important:
Ø System Configuration
Ø News Items (3 days)
Ø Calendar (current week)
Ø Emails (3 days)
17. Software Requirements Specification for The Interactive Logbook Project Page 14
6. Summary
This Software Requirement Specification for the Interactive Logbook is a combination of the User
Requirement Specification and Functional Specification, in an effort to improve its accessibility and
clarity. It is currently a draft document the details are subject to change.