I’ve had some trouble with the SVG versions of CompendiumLD maps I’m (still) developing this week. The problem was occurring when I tried extracting data from a mouse click event, for mouse clicks on a CompendiumLD icon. It seems that because the icon is defined as a SVG group element (<g>) that the target of the event (i.e the click) is interpreted by some browser’s Javascript engine as being the group as a whole, and by others as being the specific SVG element within the group upon which the click actually occurred.
In my code, the ‘onclick’ attribute is attached to a <use> element, so I naiively assumed it would pick up any clicks on whatever the the <use> referred to as a whole. In this case, the <use> referred to the CompendiumLD icon definition. This is a SVG group <g> containing lots of other SVG elements
“Likewise, we may assign an event handler to the entire group as in <g onclick=”doIt()”>. This generally works well, unless we try to identify the group itself that was clicked on. That is because even though an event handler is assigned to the group, the target of the event ends up being the specific element within the group that actually received the event”.
“The answer to the above issue lies with evt.currentTarget. Its purpose,…….. is to find the superordinate object containing evt.target, specifically the group or other container to which the event listener has been assigned”.
I ran into problems because I used Firefox 9.0.1 for my initial tests, and it returns the <use> element for both currentTarget and target However, Chrome (and Safari) return the <use> element for currentTarget, but an ‘SVGElementInstance’ for ‘target’. Now in the ‘Document Structure‘ section of the SVG 1.1 (Second Edition)’ W3C recommendation it says “For each ‘use’ element, the SVG DOM maintains a shadow tree (the “instance tree”) of objects of type SVGElementInstance“. In then goes on to explain how group elements are handled, using this example
In conclusion, I’m going to use the ‘currentTarget’ for this particular bit of code in the expectation (and hope) that it will work across most modrn browsers. A quick check of Safari, Chrome, Firefox and IE9 shows that it appears to for those browsers.
However, I’m perturbed that Firefox seems to be processing the SVG and Javascript differently, and incorrectly?
Some quick notes about mapping relationshops between learning activitites, the media through which activities can be delivered, the concepts that the activities are intended to teach, and the learning outcomes that are presented to students.
1 A picture showing the relationships between the learning outcomes for chapter 3 of the Y162 course book, and those for the draft online version (nb. this picture was for a draft online version as of late July 2011).
2 A picture showing relationships between some concepts that the course is intended to teach students, with the learning outcomes that are presented to students.
The module Y162 “Starting with Maths” ‘ requires use of a scientific calculator. The course material includes a guide to the TI-30XA calculator which explains how to use it in the context of the module. Here is a picture of the course materials, just after I’d opened the package as delivered to students.
If we’re opening up Y162, I think we’re going to need to provide alternatives to this specific calculator, including an online equivalent such as this one from Web2.0calc.com.
The ‘Starting with Maths’ text book contains 17 mentions of the word ‘tutor’ in its 7 chapters. The first 8 of these occur within the first chapter, and all emphasise that the student should ask their tutor for help if they”re having difficulty understanding any of the concepts. For example
“If you are still puzzled by it, try discussing the problem with someone else or your tutor”.
The strategy of discussing difficult concepts, skills, or methods is emphasised throughout the book. When this material is transformed into an open educational resource, how could this tutorial support be prvided? On OpenLearn Learning clubs and forums (e.g. the Maths & stats forum) allow learners to connect with other learnerrs. For the the American Universities involved in this project, is there another way that learners can get support? I note taht the only one of the 7 chapters which does not refer to a tutor is chapter 6 ‘Working with data’: I wonder if there’s anything particularly different about the material in this chapter?
During our meeting Guy sketched options for the content development process as we talked:
One important decisiosn that needs to be taken quickly is who will do the editing/content preparation for the first release. Options include an OU media person, or some one from the US college(s). There are pros and cons for both, and hopefully whichever is choosen there’ll be some info and skills exchange that takes place during the content preparation process. To move things forward,
a meeting including both tech and management folk from all involved parties (inc OU) will be set up for next week
I’m starting to work on the “Open Learning: Bridge to Success” (B2S) project, and had my first meeting with Gary (project manager) and Patrick (OU lead) today. These are my notes.
(Thanks to bignoseduglyguy for this picture entitled “Da VInci Arched Bridge – success!”).
My role in the initial stages is to look at the design of the material, to work towards a structure or template for OERs for the project, and to understand and design the user experience we should be aiming for. This could should?) involve enhancing existing material rather than creating stuff from scratch. The material structure or template could include intro, learning outcmes, activities, practice material. There is aslo a need for pre and post-assessment, but these might be better delivered as seperate OERs.
The units we’ll be adapting include Y165 “Learning to change” and Y162 “Starting with Maths”. Both Y165 and Y162 are in the process of being released as an OER. It’s an openings module, intended to build learners confidence, before they move on to other study with the OU. It includes very little algebra, so for the purposes of B2S it might be necessary to add in smome material that deals with algebra, e.g. from M125 or via OERs originating from other sources. There’s an OU ‘Design team’ for the project which includes Guy Barret (lead tech developer from LTS) and Hilary Holmes (senior lecture from MCT, author onM125?). Guy is managing the B2S area of the OpenLearn site (that should be labspace? – need to check).
IET’s role in prroject (and hence mine) includes
making it work!
evaluating, gathering evidence, working it if/how it can be repeatted
Elipda’s offered to contribute to the researchj methodology, Simon will bring in his knowldege from the OpenEd project.
Issues – units eg. £ vs $, metric measures.
Bear in mind [points made by Dave Pritchard at the OCW conference (as blogged by Parick) and summarised by Patrick: teachers love to teach theory, people love to learn practice. Bear this in mind when developing openings materials!
Deadline to get stuff up live inLabspace is 1st September 2011.
Labspace will get the RAP updates but with a delay (not sure how long a delay).
Over the next couplke of weeks I need to work with Guy, towrds a template (am confused by this term).
Ormond Simpson is involved – hee help develop Learning to learn and Learning to change modules, as an external consultant on Y165.
This post follows on from my last one, adding some thoughts about the way Compendium links can be encoded in SVG, a way that permits the links to be straight lines or any sor of arc or curve. There’s also a bit more scripting: a first go at handling links to transclusions of a node. This post includes svg code for the links and an example image.
Link Code
Here is the code used to draw the link between the activity and learning outcome nodes:
<!– Link actvity and learning outcome –>
<g id=”link1″ class=”link”>
<!– Use title to describe the link or human consumption, in the manner that the link label is used in Compendium and CompendiumLD. The desc element used to store the from and to nodes –>
<title>Link between learning outcome and activity</title>
<!– Use the <desc> element to specify the ids of the from and to nodes; could also state the node labels. –>
<desc>Link from node activity1 to node learningoutcomrome1</desc>
The link is coded as a group (<g>) of elements, includinga title and a description. In this example, the rendering of the link graphic (i.e. the arrow between the nodes) is coded as a <line> element. However, it could be coded as a <path>: SVG paths can be any arbitrary line, arc or curve. The <desc> element holds the ids of the nodes that the link connects between that could be used by both people and algoriths processing the map code. The <title> element is a title intended primarily for human consumption. This group of elements is identified as being a ‘link’ by the class atribute i.e. the code: <g id=”link1″ class=”link”>.
Displaying transclusions
The ’2′ at the bottom right hand orner of the learning ourcome node indicates that this node appears in 2 maps; it is transcluded to 2 maps. If you hover your mouse over the ’2′ , you wuill see the titles of the two maps that this node appears in. One is ‘This map’, the is a link to the other map that the same node appears in.
Embed this map
(copy the code below and paste it into your web site (note this does not seem to work for some WordPress blogs, not sure why, perhaps a plugin is needed?):
<object style="border-style:solid;border-width:1em" data="http://compendiumld.open.ac.uk/documentation/examples/SVG/simple/map-all-in.svg" width="350" height="300" type="image/svg+xml">
Your browser can not display SVG. Browsers which display SVG include Chrome, Firefox, Opera, Safari and Internet Explorer 9.
</object>
I’ll add some notes about the coding of the transclusions later.
Finally, a note to myself. To make these SVG maps it editable in Inkscape, the CSS style information must be embedded in the file, not linked externally.
This post is about a way to share the visual representations of learning activities in particular, and visual representations of linked ideas in general (go straight to an example).
This general category of ‘visual representation of linked ideas’ includes any sort of concept map (including maps produced by Compendium the application on which CompendiumLD is based). The examples I give are CompendiumLD maps because CompendiumLD is the application I’ve been working on, but I have made some notes about how the ideas I present are applicable to other applications.
The motivation for this is to improve the way that CompendiumLD maps can be shared, by
facilitating the embedding of maps in web pages
using a file format that other applications can work with.
The technology I’ve used is the W3C’s Scaleable Vector Graphics (SVG) format. SVG seemed an obvious place to start because it is a format designed for 2 dimensional graphics, and almost all browsers now display SVG content, and numerous other applications can open and edit SVG files (including some web based tools).
This quote from the W3C’s site summaries some of the power that SVG offers “SVG allows for three types of graphic objects: vector graphic shapes (e.g., paths consisting of straight lines and curves), images and text. Graphical objects can be grouped, styled, transformed and composited into previously rendered objects. ……..SVG drawings can be interactive and dynamic” (about SVG). It supports supporting zooming, panning and scripting and a whole host of other functionality that encouraged me to explore it in relation to maps of learning activities.
Example
Here is an example of a CompendiumLD activity map coded in SVG and embedded into the page using the HTML <object> tag. Note that you will need a browser that can display SVG to see this (fyi I’ve jotted some notes about SVG support in browsers and other applications).
Embed this map
(copy the code below and paste it into your web site (note this does not seem to work for some WordPress blogs, not sure why, perhaps a plugin is needed?):
This example is very basic. It contains just two nodes and one link to keep the SVG code simple as I have written it by hand as a way of exploring the features that SVG offers, and to think about the way that CompendiumLD nodes and links could be encoded in SVG. There is no reason why these SVG renderings could not be generated by an application such as CompendiumLD if or when it is decided that this would be a useful thing to do (e.g. by the OULDI and/or other projects).
This map features two nodes from the OULDI learning design stencil, an activity
and a learning outcome
, connected by a link. If you hover your mouse over the asterisk (*) in the example a window should pop up displaying further details about the learning activity. If you click on the learning activity node you will see a map of the learning activity itself within the same window fragment. You can also see how the maps will appear when displayed at high or low levels of magnification by zooming in or out (e.g. use ctrl ++ to zoom in , ctrl — to zoom out). One of the things I’m thinking about doing is to pop up and mini preview of a map nodes contents when you hover the mouse over the node, allowing you to glimpse its contents before deciding whether to click and explore it in detail (more on mini previews).
CompendiumLD and Compendium already offer ways to share map data (via the Compendium XML format or SQL), and interactive (but not editable) web renderings of maps (see ‘Middle east role play’ example, or other examples). When coding the SVG version of the CompendiumLD maps I have tried to keep the code related to the semantics of the map separate from code which describes the visual style One of the ways SVG facilitates this is by enabling the look of elements to be specified via CSS. This is work in progress, and I have not been entirely successful so far, but here is an explanation of my coding and thinking.
By the way, I can see there’s an issue with the text layout when this example is rendered by the Chrome browser in that the first line of text for the task node is left aligned with node, rather than being centred on node. I’m not sure why this has occurred, could be my SVG or CSS, could be the Chrome’s rendering engine, it looks fine in other browsers. I will investigate.
Coding
The SVG rendering I have created consist of four components
A series of definitions stating what the nodes should look like (theses are contained within the SVG file)
Each icon is defined as a group <g> of SVG elements in the <defs> section at the beginning of the SVG file.
Code which specifies the contents of the map (also contained within the SVG file).
This includes where particular nodes should be positioned on the SVG canvas, the text and other adornments for each node, links between nodes. I could have used XML from other namespaces (e.g. the Compendium XML DTD) to include Compendium specific information. I have avoided doing this with the intention that all the information that Compendium or CompendiumLD needs can be encoded using SVG, meaning that a user (e.g. a programmer) only needs to understand SVG to make use of the file. This decision needs further thought as I progress with these experiments!
Styling information for nodes and links (contained within a CSS file linked to from the SVG file)
Scripts specifying interactivity (contained within a Javascript file linked to from the SVG file)
Here is a fragment of code from the first SVG file shown in the example i.e. this SVG code, annotated to further explain my thinking, and it shows some of the things I’m not sure about.
<!– In the actual file SVG code, the code up to here is the <defs> which specify how each node icon should look –>
<!– START OF USE of the definitions to lay out the map –>
<!– Start of an activity node.
The activity node is a group (<g>) of elements which includes a reference to the icon specified in the <defs> section of the file.
The class attribute specifies the type of node
i.e. for CompendiumLD it could specify any of the node types defined here, so instead of “activity” it could be “task” or “role” etc.
The id attribute is a unique identifier for the node (as is generated by CompendiumLD).
–>
<g id=”activity1″ class=”activity”>
<!– The SVG spec states that the desc and title elements are not displayed on visual media ( ‘desc’ and ‘title’ elements, SVG spec).
I have included them to potentially improve the accessibility of the map. –>
<title>Activity to develop the learners’ analytical skills</title>
<desc class=”nodeDetails”>In this activity learners analyse their own organisation’s practices through the lens of a theory they will have recently studied</desc>
<!– Create a hyperlink from the icon to the map that this icon node represents. –>
<a xlink:href=”mapactivity1.svg”>
<!– Place the activity icon specified in the <defs> section on the canvas using x and y co-ordinates; these co-ordinates could be generated by CompendiumLD.
The id attribute is a unique identifier for this particular use of the activity icon. Since putting this identifier in I am not now sure if it is necessary!
The onmouseover attribute specifies a script which will be executed when a user hovers their mouse over the icon. This is a placeholder: I have not
implemented the show_map(evt) function yet so it does nothing at the moment.
–>
<!– The node text is contained within a <text> element. Laying out the text on several lines is achieve using <tspan> to position fragments of the text. Again these co-ordinates could be generated by CompendiumLD–>
<text x=”256″ y=”143″ class=”nodelabel”>Activity to develop
<!– The group with class ‘details is the ‘details’ indicator. This has an onmouseover event handler show_details(evt).
This javascript function displays the ‘details’ text contained in the <desc> tag. Note to self: because the node details in
Compendium and CompendiumLD can be many pages long, the details should be stored in another structure, e.g., in
a (group of?) text
element. However, this <desc> tag will do for this initial experiment.–>
<!– Link activity and learning outcome
The link should be a group element, but I have not got round to thinking about how to include the label and other components.–>
The idea which I think is applicable to other idea and concept mapping applications is the use of group elements and class attributes to hold the semantic information about specific components of a map. In the way I have used it in the code fragment above, the class attribute enables scripts to find the data related to specific concepts (e.g. activities or learning outcomes) in the case of CompendiumLD maps, because the relevant information is an a group element (<g>) with its class attribute set to ‘activity’ (see the code for the activity group or for the learning outcome group).
Mini previews
A few paragraphs back I mentioned the idea of mini previews i.e. miniature versions of maps that pop up when a user hovers their mouse over a map node. Here is an example of the kind of mini preview that could be generated for a relatively large and complex map (here’s the full size map).
I generated this from CompendiumLD using Apache’s Java SVG toolkit, Batik in an initial experiment I did in July 2010. The SVG produced by Batik looks fine when rendered by a user agent such as a browser, but it’s structure is not, e.g. the groupings it produced do not map to CompendiumLD’s semantics i.e. the nodes and links. However, to generate the SVG of this I took the simplest route I could which is essentially ‘painting’ the map as SVG using Batik. Further investigation is required to exploit Batik’s capabilities given that it seems to support most of SVG 1.1.
Opportunities, possibilities and prerequisites
The SVG format is designed for describing 2-D graphics, so any linked-node style of map should be realisable using SVG, including things like curved links which are introduced in Compendium 2.0 beta and of course raster images can be included in SVG (all the nodes in the mini preview example are raster images). And of course, SVG can be edited using a variety of tools, albeit general purpose SVG tools may not preserve the semantic attributes in a CompendiumLD SVG file, but would at least allow people to use an off the shelf (or web) tool that they’re familiar with. General purpose graphic design apps that can manipulate SVG will not offer all the functions that Compendium or CompendiumLD do (e.g. transclusions), but will offer a way for people to manipulate maps without having to install or learn how to use Compendium/CompendiumLD.
As my examples show, once a SVG rendering of a map (or a set of nested maps) exists, it is possible to embed it into a web page at different sizes, and to do user friendly stuff like small versions within the page and full screen versions, similar to the way that Slideshare slideshows and Youtube videos may be be embedded. However, the examples I’ve produced so far are either hand written with ‘good’ semantic structure (example) or program generated with little or no semantic structure (mini preview example). So, if this SVG approach is to be used, the first step needed is some more work on the structure of the SVG to make sure most user reqs are covered, probably via a mixture of hand coding and prototype program generation of example maps to get feedback on (the same goes for the CSS styling, scripts, and SVG definitions i.e. work on these four components). Note, this jQuery SVG plugin might be useful for the scripting.
Then there needs to be a way of making SVG versions of maps available, so that there is a source to be embedded. A relatively quick way would be to build on the shared MySql database already provided by Compendium and CompendiumLD (see Collaborative Compendium). This approach would require Java coding to automatically generate the SVG for each map, but use Compendium/CompendiumLD as the editing tool. I’m not sure, but a format like oEmbed might be useful to facilitate the embedding of nested SVG maps (more thought, playing around, and chats with Nick who has used oEmbed, needed).
Now some very brief thoughts about options requiring more effort e.g. a browser based editor. Use HTML5 (build on SVG edit code base?). Such an editor could ‘save’ locally to browser database, ‘publish’ to web site.
Notes about SVG support in browsers and other applications
The only current desktop browser that does not display SVG is Internet Explorer, but that will change when version 9 is released (summary of browser & plugin’s SVG capability as of 30/8/2101). If you are using IE9, make sure the brwoser mode and document mode are set to ‘IE9′ other wise you will not see the examples!
"I think IE9 demands that you use a standards based DOCTYPE in the html in order
for iframe, object, embed etc to support SVG content".
For mobile devices, Apple’s iOS browser already handles SVG, and SVG support is here or coming for other mobile platforms (it’s coming in Android v3.0, and via Webkit for other platforms e.g. Blackberry, Symbian etc).
Desktop applications that can edit SVG include
Inkscape (open source)
well worth a try if you haven’t already imho, and also
This list of publications co-authored by a variety of members of the IET LTD team is generated by the script created by @chris_s_yates. See the video on the Open Research Online Help Pages if you want to do this for an ORO search of interest to you. One advantage of using this method is that the rsults will update as new publications are added to ORO. Another is that the ORO adavanced search allows a variety of the diferent types of searches to be done, e.g. it can be conigured to return just books by particular authors.
Currently the script returns just the first 10 results, but Chris is looking to add the ability to specify the result length.
By the way, I would have added a link to a page about the LTD (Learning and teaching development) team, but there isn’t one on the IET site any more. There used to be one I’m sure!
I will be at CAL ’09 next week in Brighton, and am looking forward to it, in particular some of the sessions and papers which include work from the JISC Curriculum design call. For example, the “challenges of the design pattern paradigm” session and other learning design papers/session. In the meantime I thought I’d put up the poster that my colleagues and I have put together, This poster entitled “Visualising the process and and products of learning design” will be presented at CAL ’09. It is a very short synopsis of the visualisation and representation work we’ve been doing here at the OU. A version of the poster itself is available for download (click on the image to see a low resoultion image of the poster, or on one of the links to see a higher resolution PDF at either A4 or A0 size):
Also, a draft of the text of the poster (including the abstract and references) is available here.
Can visual representation work at the curriculum level?
Apart from the design patterns and learning design stuff, one of the other things I would like to explore whilst at the conference is if or how visual representations have been used at programme level (or above). As far as I’m aware, most visual representation work has focused on the activity or course level, and describes interactions involving students and teachers. But what about the curriculum level? I’m keen to talk to anyone working in this area: please do contact me if you are, or add a comment below, thanks
CAL ’09 poster text
Abstract
Teachers and media developers go through a complex decision making process when designing new learning experiences – working towards an effective pedagogical mix, combining resources, tools, student and tutor support. For an individual media developer or teacher, the process of creating a visual map of a learning activity clarifies their own understanding of the mix. For teams comprised of individuals focused on different aspects, a visual representation supports communication about issues that need to be resolved before the activity is delivered to students.
This paper focuses on the development of CompendiumLD, a particular strand of work within the OU Learning Design Initiative. CompendiumLD is a tool to represent and visualise learning designs; it is an adaptation of Compendium, an existing knowledge mapping tool. CompendiumLD has been developed iteratively, informed by evidence gathered through a series of interviews with academics, and tested through a series of faculty based workshops. Development has proceeded from changes in the set of icons used to represent components of learning activities, through to specific functionality to support the design of learning activities. This functionality includes context specific learning design help and a set of visual design templates.
Findings to date indicate that most users find the tool easy to use, that it makes the process more explicit and provides a useful vehicle for sharing design ideas with others. Some users are interested in its potential to support both the process of learning design and the production of maps for use by students.
Recently introduced features include (1) the facility to specify times that students and tutors will spend on specific tasks, producing a running total displayed on the user interface and (2) support for transclusions (intended to help designers identify reuse of e.g. tasks or learning objectives. Initial evaluations of these new features will be discussed.
1 Introduction
A learning activity can be conceptualised as a specific interaction of learner(s) with zero or more other(s) using specific tools and resources, orientated towards specific outcomes (Beetham, 2007). Evidence we have gathered indicates that designing learning activities is inherently messy, creative and iterative, and that choosing the best combination of tools, resources and tasks for a particular context is difficult (Conole et al., 2008). In the Open University and other distance universities, design is typically carried out by teams composed of people with a variety of specialist skills including academics, programmers, graphic designers, editors and project managers.
2 Aims
Our aim is to research, design and implement a range of tools to support individuals to design effective learning activities, and to enhance the effectiveness of design teams.
One approach we have taken is to apply the concept of ‘knowledge cartography’ to learning design, building on previous work in this area including other visual representations of learning designs (e.g. UML activity diagrams, LAMS). This has led to the development of a software tool CompendiumLD through which we are exploiting two aspects of mapping, the product and the process.
As products maps can visually represent complex relationships between objects, which highlight key elements and connections for a particular purpose
Creating a map forces a person to externalise their understanding of the situation, and this process clarifies their understanding of the situation
(Okada, Buckingham Shum, & Sherborne, 2008).
Design processes
In our research to date we have studied how design is carried out by individuals and teams within the iterative design cycle which occurs before courses are launched.
We will be studying how CompendiumLD can be used by teachers to deliver teaching activities, and how it can be used to evaluate the design of activities.
Design products
Snapshots from the design process
The learning design nodes are on the left hand side: these can be dragged and droped onto the working area. Learning design nodes include
Learning activity
Learning outcome
The nodes can be connected by dragging between them.
Double-clicking on a learning activity opens it
A screen grab of CompendiumLD showing the main working area labelled “Andrew Brasher’s Home Window”.
Context sensitive prompts appear when nodes are added.
3 Evidence
Empirical evidence gathered to inform the development of CompendiumLD includes the collection of user requirements (Nixon, 2007), case studies (Wilson, 2007), 12 semi-structured in-depth interviews, and evaluation of workshops and focus groups (Cross, 2008). In January 2009 we began in-depth evaluation of holistic course design, which has and will involve studying course teams’ use of visual representations during the design process over a period of 9 months. Examples from our evidence base are shown as speech bubbles.
4 In use
Examples illustrating how CompendiumLD can be used within the design process are provided by snapshot 1 and snapshot 2. Snapshot 1 illustrates an early stage of the the design process, snapshot 2 a later stage when a more detailed description has been generated and some of the issues that arose in snapshot 1 have been resolved.
5 Conclusions and future work
The qualitative data we have gathered so far indicates that generating a visual representation helps to clarify designers’ intentions, and aids communication of those intentions. Continuation of the iterative improvement of the tools and methods we have developed is planned for 2009-10, including trials across a range of UK universities. So far our work has focused on the representation of learning activities within a course or module. We will be looking at applying visual representations at different levels, e.g. across degree programmes, and requirements gathering workshops to inform this are planned for later in 2009.
References and further information
Full references for the citations in this poster are available from are available from http://www.open.ac.uk/blogs/brasherblog. Information about CompendiumLD is available from http://compendiumld.open.ac.uk.
Beetham, H. (2007). An approach to learning activity design. In H. Beetham & R. Sharpe (Eds.), Rethinking pedagogy for a digital age: designing and delivering e-learning (pp. 26-40). Oxford: Routledge.
Conole, G., Brasher, A., Cross, S., Weller, M., Clark, P., & White, J. (2008). Visualising learning design to foster and support good practice and creativity. Educational Media International.
Cross, S., Conole, G., Clark, P., Brasher, A., & Weller, M. . (2008). Mapping a landscape of Learning Design: Identifying key trends in current practice at the Open University. Paper presented at the LAMS Conference.
Nixon, S. (2007). LD project final report – final report of the LD VLE programme work. Milton Keynes: The Open University.
Okada, A., Buckingham Shum, S., & Sherborne, T. (2008). Knowledge Cartography: Software Tools and Mapping Techniques: Springer.
Wilson, P. (2007). Progress report on capturing eLearning case studies (Internal report). Milton Keynes: The Open University.
Here are some notes I have made about using Java Interfaces as types, prompted by my initial confusion about the concept, a discussion with Michele Bachler, and reading this and this (thanks to both web sites and Michelle for helping to clarify this stuff).
A method which is specified to return an interface type can return an object of any type (class) that implements that interface.
So if an interface (e.g. Interface A) specifies a method signature in which the method should return an interface type (e.g. Interface B) , then any classes that implement Interface A must provide a method which returns an object which implements Interface B. This returned object can be of any type, so long as it implements Interface B.
For example, from the Compendium code, the IServiceManager interface specifies
/** Look for a free node service in the relevant cache, else create a new service, and return it. **/
public INodeService getNodeService();
and this IServiceManager interface is implemented by the ServiceManager class, e.g. via this method
I have been working on a new feature for CompendiumLD which allows the user (designer) to specify how long they expect each task within an activity will take. Using this new feature the designer can specify that a particular task for a learner ( e.g. the task “Read, and comment on others’ work” shown in this briefing paper) will take, say 1 hour. Similarly, the time that tasks to be performed by teachers and others can be specified. CompendiumLD will keep a running total of the time to be spent by each”actor” i.e. each student or teacher, hence helping the designer to keep the workload of both in mind as they design the activity.
I have completed the user interface for this feature and am now implementing the database functionality to store the timing information. Here is a screen shot (click on the screenshot to enlarge it) :
and here is a movie which demonstrates this timing feature in use: