The Open Source Portfolio(OSP) tools in the Sakai CLE are well known for their assessment matrices. Although these tools have served the community well, more flexibility, increased usability, improved customizability, and expanded reporting capabilities are required. Karuta, a new IMS-LTI ready open source portfolio software created in the spirit of OSP, provides highly customizable assessment portfolios. How does Karuta work? This presentation will provide an overview of the different components and technologies used (jQuery javascript library, Twitter Bootstrap, RestAPIs, MsSQL, XML). Karuta enrich the hierarchical structure of web pages with a comprehensive set of specialized resources and semantic tags. A designer can quickly construct very sophisticated workflows where different users (students, tutors, etc.) are assigned to a wide range of actions (reflect, upload files, comment, evaluate, etc.). This will be illustrated with practical use cases (assessment, accreditation).
1. KARUTA
OPEN SOURCE PORTFOLIO : A
FLEXIBLE ARCHITECTURE FOR
ASSESSMENT, ACCREDITATION AND
MUCH MORE
Jacques Raynauld – Olivier Gerbé, HEC Montréal
June1,2014
2. OUTLINE
PART 1 - Jacques
1. Sakai CLE OSP tools
2. Karuta – the name
3. Relevance of
assessment portfolios
4. Our approach :
flexibility and
prototyping
5. Structure, Unit, Unit-
structure, Resources
6. Examples
7. Leveraging KARUTA
8. Technology
Part 2 – Olivier
1. Tree structure
2. Code organization
3. How it works
4. Resources
5. Security
6. Instantiation
7. Road-map
8. Questions
June 1, 2014
2
3. SAKAI CLE
OSP TOOLS
• The Open Source Portfolios tools in Sakai CLE
• Have reached a significant level of maturity
• Have tought us a great deal about how to do portfolios
• Have significant issues with usability, quality of code,
performance and QA
• We want to continue to offer portfolios in Sakai while
upgrading their capabilities and usability
3
June 1, 2014
4. KARUTA PROJECT
• HEC Montréal with Kyoto University,Three Canoes LLC
with the help of IUT-2 Grenoble have proposed KARUTA, a
new LTI enabled evaluation portfolio tool for Sakai CLE
• Recently accepted as an Apereo incubation project.
June 1, 2014
4
5. THE NAME
Karuta (カルタ金) was a type of armour
worn by samurai warriors during the
feudal era of Japan.
The word karuta comes from the
Portuguese word meaning "card",
(carta) as the small square or
rectangular plates that compose the
armour resemble traditional Japanese
playing cards.
5
http://www.japanese-
armor.com/Takeda-Shinten-
Daiymo-Armor.html
June 1, 2014
6. RELEVANCE OF
ASSESSMENT PORTFOLIOS
Many types of portfolios
• Learning portfolios
• Showcase portfolios
• Assessment portfolios
• A specific collection of artifacts and reflections that represent
an individual’s learning and accomplishments within a
programmatic learning context.
• Evidence is linked to learning outcomes and evaluated using
rubrics.
• Reports aggregate and analyze data and identify
representative artifacts.
6
June 1, 2014
7. OUR APPROACH
A framework in the spirit of OSP that permits
• to organize different resources (text, documents, rubrics,
comments, etc.)…
• … according to a workflow for different users (students,
tutors, etc.) …
• … for assessment, guidance, reporting and presentation.
Lessons learned over the last three
years
• No one portfolio is the same
• Flexibility is key, prototyping is a must
7
June 1, 2014
43. XML PARSING
Each node is identified by an UUID (Universal Unique
IDentifier)
The XML is automatically parsed by jQuery and all references
to nodes are references to xml structure
For each node we create two javascript objects :
1. a tree object to navigate efficiently in the structure of the
portfolio
2. an user interface object to manage and display nodes of
the portfolio
43
44. TWO INDEXES TO
ACCESS TREE AND UI
OBJECTS
uuid
ui object
manage and display
methods
childs[ ]
asmRoot
asmStructure
asmUnit
asmUnitStructure
asmContext
uuid
UICom.structure["ui"][]
UICom.structure["tree"][]
jQuery XML
node
node
44
47. NODE UPDATE
1. The user modifies the node
2. XML node is updated
3. a PUT is sent to the backend
4. Client refreshes all representations of the node in the
interface
47