1999-12-08ieee 1484.2, papi spec, draft 6, f. farance, ©1999 edutool.com 1 public and private...
Post on 27-Mar-2015
215 Views
Preview:
TRANSCRIPT
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
1
Public and Private InformationPAPI Specification, draft 61999-12-08 DRAFT PRESENTATION
“Human Information for Learning Technology”Learner Profiles: Personal, Preference, Performance, Portfolio
Frank Farance, +1 212 486 4700, frank@farance.com
Edutool.Com, a division of Farance Inc.,Slides and Document: http://edutool.com/papi
IEEE LTSC 1484.2 Learner Model WG Standardshttp://ltsc.ieee.org/wg2
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
2
Overview
• Status of document• Methodology• Requirements• Functionality• Conceptual model• Semantics• Bindings and encodings• Extension mechanisms• Conformance testing
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
3
Status of Document
• Major revision of document• Definition of conformance, conceptual model,
semantics, bindings, encodings• Current 1484.2 Working Draft (WD1) is PAPI 3
– a base document for 1484.2, dated 1997-10-09
• PAPI 5 was presented at 1998-12 mtg• Incorporation of SIF, XML• Compatibility with 1484.14 SDA, 1484.15 DCTP• Requesting committee approval of PAPI 6 as next
Working Draft (WD2)
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
4
Overview
• Status of document
• Methodology• Requirements• Functionality• Conceptual model• Semantics• Bindings and encodings• Extension mechanisms• Conformance testing
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
5
Methodology
• Requirements: identify user scenarios• Functionality: what is does• Conceptual model: how a virtual implementation
works• Semantics: detailed descriptions of the meanings
of components, transactions, actions, objects, etc.• Bindings: mappings, e.g., APIs, codings, protocols• Encodings: bit/byte formats, representations
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
6
Why Methodology?
• Reduces business/technical risk• Can get progressive/incremental agreement• Good for consensus-building• Leverage other successes/failures
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
7
Life Cycle:Typical Timeline
Summary of Standards Process
• Development Phase: 12-48 months
• Consensus Phase: 9-24 months
• Maintenance Phase: 3-6 years
• Review Cycle: revise, reaffirm, or withdraw — every 5 years
• Typical time: from committee formed to approved standard: 18-48 months
• Realistic schedule ==>Good results
DevelopmentConsensusBuilding
MaintenanceReview
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
8
Methodology: Work Flow And Progressive Deliverables
Requirements
Functionality
Conceptual Model
Semantics
Bindings: APIs Bindings: Codings Bindings: Protocols
Encodings:Data Formats
Encodings: CallingConventions
Encodings: VariousCommunication Layers
The Steps of Building SuccessfulInformation Technology Standards/Specifications
“The work flow/steps promote(1) consensus-building, and
(2) long-term stability, interpretation, maintenance of
the standard/specification.”
“Consensus-building is incremental.”
“Interpretation/maintenance is stabilized: each level is dependent on higher levels.”
“Interpretation Examples:- Ambiguities in bindings are resolved by interpreting the semantics;- Ambiguities in semantics are resolved by interpreting the conceptual model.”
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
9
Requirements: User/InstitutionNeeds and Desirables
• Informative, not part of standard => only conform to interoperability
• Examples:– Administration apps, e.g,
campus directory– Learning content access
to student info– Record grades
Requirements
Functionality
Conceptual Model
Semantics
Bindings: APIs Bindings: Codings Bindings: Protocols
Encodings:Data Formats
Encodings:Calling Conventions
Encodings: Various Communication Layers
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
10
Requirements: Sources and Influences
Requirements
Functionality
Conceptual Model
Semantics
Bindings: APIs Bindings: Codings Bindings: Protocols
Encodings:Data Formats
Encodings:Calling Conventions
Encodings: Various Communication Layers
Requirements
Functionality
HL7, CORBAMED,TEPR
IMS, CSU, UC, SIF, DoD/ATSC, NYS,
IEEE 1484.1 LTSA
Various VendorsAnd Products
Related Industries Industry-Specific Other Sources
“Requirements are gathered from industry-specific (application-related) organizations, related industries, and other sources.”
Requirements
“Requirements are only informative (improves reading the standard), not normative, i.e., not required by conforming implementations.”
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
11
Functionality: What It Does
• Stores, retrieves, searches student information
• Partition into functional areas
• Examples:– Partition into personal,
preference, performance, portfolio info
– Get/put values/records
Requirements
Functionality
Conceptual Model
Semantics
Bindings: APIs Bindings: Codings Bindings: Protocols
Encodings:Data Formats
Encodings:Calling Conventions
Encodings: Various Communication Layers
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
12
Functionality: Sources and Influences
Requirements
Functionality
Conceptual Model
Semantics
Bindings: APIs Bindings: Codings Bindings: Protocols
Encodings:Data Formats
Encodings:Calling Conventions
Encodings: Various Communication Layers
Functionality
Conceptual Model
OMG, LDAP, VCard, Sandia NL
IMS, IEEE 1484.2,ISO-IEC/JTC1/SC35,
ISO-IEC/JTC1/SC22/WG11
Various Vendors, I18N, L10N, CAW
RequirementsRelated Industries
Industry-Specific Other Sources
“PAPI functionality is based on requirements, with influences from industry-specific organizations, related industries, and other sources.”
Requirements Functionality
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
13
Conceptual Model: How A Virtual Implementation Works
• “Theory of Operation”• Examples:
– Application opens repository
– Authentication– Scan/search for data– Read/write data– Multiple open sessions– Close sessions
Requirements
Functionality
Conceptual Model
Semantics
Bindings: APIs Bindings: Codings Bindings: Protocols
Encodings:Data Formats
Encodings:Calling Conventions
Encodings: Various Communication Layers
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
14
Conceptual Model: Sources and Influences
Requirements
Functionality
Conceptual Model
Semantics
Bindings: APIs Bindings: Codings Bindings: Protocols
Encodings:Data Formats
Encodings:Calling Conventions
Encodings: Various Communication Layers
Conceptual Model
Semantics
Kerberos, FTP,SMTP, HTTP,
Sandia NL, X12
ISO-IEC/JTC1/SC2/WG2,ISO-IEC/JTC1/SC22/WG11,ISO-IEC/JTC1/SC22/WG14
ISO-IEC/JTC1/SC22/WG20,ISO-IEC/JTC1/SC22/WG21,ISO-IEC/JTC1/SC32/WG2
FunctionalityData Interchange Related Stds Related Stds
“The PAPI conceptual model is based on PAPI functionality, with influences from data interchange standards/specifications, and related standards/specifications.”
Functionality Conceptual Model
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
15
Semantics: Detailed Meaning Of Operations/Transactions
• Assertions: sentences using shall, should, or may
• Inquiries: range of values
• Negotiations: heuristics
• Examples:– Array: list of elements of
same type in regular structure
– PutValue: replaces old object, in place
Requirements
Functionality
Conceptual Model
Semantics
Bindings: APIs Bindings: Codings Bindings: Protocols
Encodings:Data Formats
Encodings:Calling Conventions
Encodings: Various Communication Layers
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
16
Semantics: Sources and Influences
Requirements
Functionality
Conceptual Model
Semantics
Bindings: APIs Bindings: Codings Bindings: Protocols
Encodings:Data Formats
Encodings:Calling Conventions
Encodings: Various Communication Layers
Semantics
Bindings: APIs
C, C++, SQL, LISP,Java, Javascript,POSIX, Tcl, APL
FTP, HTTP, MIME,RFC 822, CORBA,
W3C P3P
ISO-IEC/JTC1/SC22/WG11,ISO-IEC/JTC1/SC32/WG2,NCITS L8, NCITS T2
Conceptual Model
Bindings: Codings
Bindings: Protocols
Language-Related Protocols Related Stds
“PAPI semantics are based on the PAPI conceptual model, protocols, programming languages, and related standards/specifications.”
Conceptual Model Semantics APIs, Codings, Protocols
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
17
APIs, Codings, Protocols —All Three Are Required [1/6]
• Semantics are “bound” to APIs, codings, and protocols
• Designing for all three produces more coherent, harmonized design
• Different stakeholders have different foci:– some want only APIs– some want only codings– some want only protocols– some want a combination
• APIs, codings, and protocols can “re-use”, “re-target”, or “re-apply” existing standards
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
18
APIs, Codings, Protocols —All Three Are Required [2/6]
• Motivation for not standardizing APIs:– Only interested in system-to-system interoperability,
i.e., focus is on codings or protocols• What happens if APIs are not standardized?
– Each application develops its own “libraries”– Code and application reusability is greatly decreased
because no common API or API framework– Much effort is spent “reinventing the wheel” by
building low-level subsystems that provide services normally supplied by APIs
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
19
APIs, Codings, Protocols —All Three Are Required [3/6]
• Motivation for not standardizing codings:– Programmers only use (standard) APIs– Codings are not necessary because databases are
proprietary– Too hard: vendor, user, institutional variants/extensions
• What happens if codings are not standardized?– Each application develops its own data model and
representation– Exchanging data among systems becomes impractical
because of data model incompatibilities– Data representation incompatibilities much data
“mediation” and conversion
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
20
APIs, Codings, Protocols —All Three Are Required [4/6]
• Motivation for not standardizing protocols:– Only (standard) APIs are necessary, protocols are
vendors’ “value-added” feature, thus proprietary– Only (standard) codings are necessary ... “just point me to
the data”, protocols are lower implementation details
• What happens if protocols are not standardized?– Each (proprietary) implementation develops its own
protocols to communicate across wide area networks– Proprietary solutions produce “islands” of interoperability– Wide area, multi-vendor solutions become impossible
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
21
APIs, Codings, Protocols —All Three Are Required [5/6]
Requirements
Functionality
Conceptual Model
Semantics
Bindings: APIs Bindings: Codings Bindings: Protocols
Encodings:Data Formats
Encodings:Calling Conventions
Encodings: Various Communication Layers
Semantics
Bindings: APIs
Bindings: Codings
Bindings: Protocols
- Std APIs may be implemented viastd or proprietary Protocols- Std Protocols may be accessedby std or proprietary APIs- Both std APIs/Protocols improvewide area interoperability
- Std APIs may use std orproprietary Codings- Std Codings may be usedby std or proprietary APIs- Both std APIs/Codingsimprove portable apps/data
- Std Protocols may use std orproprietary Codings- Std Codings may be exchangedvia std or proprietary Protocols- Both std Protocols/Codingsimprove system interoperability
Harmonized standard APIs, Codings,and Protocols promote:- Application portability- Data portability- Multi-vendor, “open” solutions- Wide area, end-to-end interoperability
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
22
APIs, Codings, Protocols —All Three Are Required [6/6]
• Common APIs:– Application portability– Separation of application and low-level implementation
• Common codings:– Representation of information– File/exchange formats, portable data
• Common protocols:– Necessary for multi-vendor and wide area networking– Internet relies on common protocols, not common APIs
• Common APIs, codings, protocols:– All are necessary
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
23
Codings vs. Encodings
• Codings: the structure and representation of information– Examples: XML, Tcl, tabbed, object-oriented, Java binding
• Encodings: the bit/byte representation and format– Examples: ASCII, ISO 10646, IEEE floating point, UNIX x86
calling conventions
• Both coding and encoding example:– “The name shall be coded in XML as
<NAME><FAMILY>…</FAMILY><GIVEN>…</GIVEN></NAME> and encoded in ASCII.”
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
24
Bindings: Mappings to OtherStandards Frameworks
• Bindings to APIs• Bindings to codings
(information organization)• Bindings to protocols• Examples:
– APIs: C/C++, VB, Perl, Java, Javascript
– Codings: XML, TCL– Protocols: HTTP, DCTP
Requirements
Functionality
Conceptual Model
Semantics
Bindings: APIs Bindings: Codings Bindings: Protocols
Encodings:Data Formats
Encodings:Calling Conventions
Encodings: Various Communication Layers
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
25
Encodings: Bit/Octet DataRepresentation and Format
• Not to be confused with “codings”
• Examples:– POSIX/Win32 subroutine
linkage– ASCII, ISO 8859-1, UTF8– IETF text format
Requirements
Functionality
Conceptual Model
Semantics
Bindings: APIs Bindings: Codings Bindings: Protocols
Encodings:Data Formats
Encodings:Calling Conventions
Encodings: Various Communication Layers
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
26
Bindings -> Encodings [1/6]
Requirements
Functionality
Conceptual Model
Semantics
Bindings: APIs Bindings: Codings Bindings: Protocols
Encodings:Data Formats
Encodings:Calling Conventions
Encodings: Various Communication Layers
Bindings: APIs
Encodings:Calling Conventions
C/C++, VB, Perl,Java/Javascript,
LISP, Tcl
Sandia NL, Various Vendors and
Products
ISO-IEC/JTC1/SC22/WG11 LID, LIA, LIPC,OMG CORBA
Semantics
C/C++, JVM, RPC, RMI, RSH, RCMD, EDI
POSIX, ELF,Win32, INETD
Language-Related Other Related Stds
Language/Protocol-Related OS-Related
“Semantics, programming languages, related standards, other specifications influence PAPI APIs represented as calling conventions.”
Semantics APIs Calling Conventions
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
27
Bindings -> Encodings [2/6]APIs -> Calling Conventions
• APIs include ...– Programming language interfaces– Command line interfaces– Remote procedure calls
• Calling Conventions include ...– Subroutine/module linkage– Process environment– Name resolution, network transport
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
28
Bindings -> Encodings [3/6]
Requirements
Functionality
Conceptual Model
Semantics
Bindings: APIs Bindings: Codings Bindings: Protocols
Encodings:Data Formats
Encodings:Calling Conventions
Encodings: Various Communication Layers
Bindings: Codings
Encodings:Data Formats
C/C++, LISP, Tcl,APL, tab-separated,
COM, CORBA
SGML, HTML, XML,XMI, ASN.1, CDIF, NCITS T2,T3,L8
ISO-IEC/JTC1/SC2, ISO-IEC/JTC1/SC32,ISO-IEC/JTC1/SC34
Semantics
ISO 8859-1, 10646,JIS X208, X209,Unicode, ASN.1
ISO-IEC/JTC1/SC2/WG2,ISO-IEC/JTC1/SC22/WG14,
ISO-IEC/JTC1/SC35,IETF
API/Comm Stds/Specs Related Stds Stds Activity
Related Stds Stds Activity
“Semantics, information codings, and related standards/specifications influence PAPI codings represented as data formats.”
Semantics Codings Data Formats
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
29
Bindings -> Encodings [4/6]Codings -> Data Formats
• Codings include ...– Record structures– File structures– Directory/folder structures
• Data Formats include ...– Character sets, character set extensions– Local, regional, remote pointers/linkage– Namespace, scoping, and syntax conventions
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
30
Bindings -> Encodings [5/6]
Requirements
Functionality
Conceptual Model
Semantics
Bindings: APIs Bindings: Codings Bindings: Protocols
Encodings:Data Formats
Encodings:Calling Conventions
Encodings: Various Communication Layers
Bindings: Protocols
Encodings: VariousCommunication Layers
CGI, AICC CMI,EDI, CORBAMED,
TELNET, FTP
HTTP, DCTP,CORBA, WebDAV,
IEEE 1596.5, CeBus
IETF, W3C, TIA, NCITS,ISO-IEC/JTC1/SC6,ISO-IEC/JTC1/SC25
Semantics
ISO OSI, TELNET,FTP, IEEE 1596.5
ASCII, ISO 8859-1, ISO 10646, UTF8
Related Stds/Specs Stds/Specs Stds Activity
Communication Features Octet Encodings
“Semantics, networking protocols, related standards/specifications influence PAPI protocols represented as comm layers.”
Semantics Protocols Communication Layers
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
31
Bindings -> Encodings [6/6]Protocols -> Communication Layers
• Protocols include ...– Application, presentation, session layers– Transaction sets– Network replication, publish/subscribe
• Communication Layers include ...– Presentation, session, transport, network layers– Distributed object/data/process frameworks– Connectivity/reliability frameworks
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
32
PAPI and Related Standards
Functionality
Conceptual Model
Semantics
Bindings: APIs Bindings: Codings Bindings: Protocols
Encodings:Data Formats
Encodings:Calling Conventions
Encodings: VariousCommunication Layers
IEEE 1484.2 PAPIInformative Wording
IEEE 1484.2 PAPINormative Wording
IEEE 1484.2 PAPI,IEEE 1484.14 XML
IEEE 1484.14 SDAInformative Wording
IEEE 1484.2 PAPI,IEEE 1484.14 SDANormative Wording
IEEE 1484.2, 1484.14,And Other Standards
IEEE 1484.15 DCTP, IEEE 1484.16 HTTP
Various Standards
Requirements
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
33
Profiles and Related IMS Work
Requirements
Functionality
Conceptual Model
Semantics
Bindings: APIs Bindings: Codings Bindings: Protocols
Encodings:Data Formats
Encodings:Calling Conventions
Encodings: VariousCommunication Layers
IMS Profile SpecInformative Wording
IMS Profile SpecNormative Wording
Profile, Metadata,Enterprise, Runtime
Papers, OperationalEnvironments
IMS Formats, XML,And Other Standards
Runtime Services,Data Management
Various Standards
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
34
Comparison of PAPI To Schools Interoperability Framework (SIF)
• PAPI apps: learning tech, content/mgmt servers
• Repositories: personal, preference, performance, portfolio; allow extensions
• Transactions: get/put/list/ search; federated database
• Bindings: OO, non-OO APIs, codings, protocols
• Codings: XML/non-XML
• SIF apps: attendance, cafeteria, library, admin
• Objects: student, school, contact, teacher
• Actions: queries, events, messages
• Examples: enrollment change, student et al update, publish/subscribe
http://www.schoolsinterop.org/newsAndEvents.asp
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
35
Schools InteroperabilityFramework (SIF) Participants
• Chancery Software• Computer Curriculum
Corporation• Follett Software• Jackson Corp• Jostens Learning Corp.• Learning Tools
International• Microsoft Corp• Misty City Software• NCS (National
Computer Systems)
• Netel Educational Systems
• Nichols Advanced Technologies
• Pentamation Enterprises• PeopleSoft• PhoneMaster, a division
of US Telecom• SNAP Systems• SRB International• TRO Learning• Winnebago Software
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
36
Overview
• Status of document• Methodology
• Requirements• Functionality• Conceptual model• Semantics• Bindings and encodings• Extension mechanisms• Conformance testing
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
37
Requirements: User/InstitutionNeeds and Desirables
• Informative, not part of standard => only conform to interoperability
• Examples:– Administration apps, e.g,
campus directory– Learning content access
to student info– Record grades
Requirements
Functionality
Conceptual Model
Semantics
Bindings: APIs Bindings: Codings Bindings: Protocols
Encodings:Data Formats
Encodings:Calling Conventions
Encodings: Various Communication Layers
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
38
Summary of Stakeholders
• Application developers:– write programs, software, scripts, web content,
multimedia content, clients, servers, etc., for information technology systems
• Institutional administrators:– manage business, policy, regulatory, etc. issues for
information technology systems that serve a large number of users and employees
• Security implementers and administrators:– information security, physical security, financial security,
and personal security, etc.
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
39
Summary of Stakeholders
• Regulators:– write programs, software, scripts, web content,
multimedia content, clients, servers, etc., for information technology systems
• Users:– manage business, policy, regulatory, etc. issues
for information technology systems that serve a large number of users and employees
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
40
Stakeholders Issues: Functionality
• Does the standard describe enough functionality to write useful applications that have few dependencies on proprietary interfaces?
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
41
Stakeholders Issues: Functionality
• Does the standard describe enough functionality to write useful applications that have few dependencies on proprietary interfaces?
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
42
Summary of Stakeholders
• Regulators, legislators, and politicians:– concerned about the use of technology and,
according to societal values, its positive and negative effects upon users, institutions, businesses, government, national security, and other areas
• Users and records owner:– information technology systems and the proper
creation, correction, or destruction of records, their potential use and security, and their usefulness
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
43
Summary of Functional Requirements [1/4]
• An administrative application that:– prints report cards– prints mailing labels for all learners in an institution– provides a campus directory– provides emergency contact information– determines if a learner is enrolled in an institution
and/or has paid the required monies– transfers grades from one institution to another
institution in a secure environment (confidential, tamper-proof)
– compiles usage and attendance records• A back office system that transfers information between
the registrar and the profile repositories
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
44
Summary of Functional Requirements [2/4]
• A learning technology application that:– combines the components of content delivery,
management, and recordkeeping into a single application
– separates the components of content delivery, management, and recordkeeping into individual, separate applications
– uses learner histories from more than one repository (distributed repositories of learner information)
– uses learner information from multiple repositories with separate, independent security administration systems
• An information structure that supports grouping of individual learners
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
45
Summary of Functional Requirements [3/4]
• A web-based, local area network, standalone, or nomadic application that:– accesses the learner's history to determine the most
productive learning experience– records bookmarks, lesson grades, and commentary
• A learning technology application that adapts to a learner's physical limitations, e.g., blindness, deafness
• A learning technology application that adapts to the learner's culture, e.g., language, conventions, units of measurement, currency
• A learning technology application on a remote campus that– uses learner history from the home campus– records learner history at the home campus
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
46
Summary of Functional Requirements [4/4]
• An employment system that:– offers employees resumes, works, and
accomplishments to prospective employers– searches for learners with appropriate skills
• Integration of applications in various environments: personal computer, workstation, scripting languages, compiled languages, operating systems, content delivery systems, database systems, network systems, nomadic systems, security systems, learner identification systems, administration systems
• A learning content development application that correlates learner performance to learner content effectiveness
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
47
Overview
• Status of document• Methodology• Requirements
• Functionality• Conceptual model• Semantics• Bindings and encodings• Extension mechanisms• Conformance testing
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
48
Functionality: What It Does
• Stores, retrieves, searches student information
• Partition into functional areas
• Examples:– Partition into personal,
preference, performance, portfolio info
– Get/put values/records
Requirements
Functionality
Conceptual Model
Semantics
Bindings: APIs Bindings: Codings Bindings: Protocols
Encodings:Data Formats
Encodings:Calling Conventions
Encodings: Various Communication Layers
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
49
Learner Information, Profile Information, PAPI, Extensions
General Learning Technology Information
Learner Information
Learner Personal Info
Learner Performance Info
Learner Preference Info
Learner Portfolio Info
Extensions
PAPI Learner Personal
Extensions
PAPI Learner Performance
Extensions
PAPI Learner Preference
Extensions
PAPI Learner Portfolio
Learner ProfileInformation OutsideThe Scope Of PAPI
Learner Profile Information
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
50
Learner Information, PAPI, Extensions
General Learning Technology Information
Learner Information
Extensions
PAPI Learner Personal
Extensions
PAPI Learner Performance
Extensions
PAPI Learner Preference
Extensions
PAPI Learner Portfolio
Learner Profile Information
Extensions
PAPI Learner Relations
Extensions
PAPI Learner Security
Learner Relations Info Learner Portfolio Info
Learner Preference InfoLearner Security Info
Learner Performance Info
Learner Personal Info
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
51
Comparison of PAPI to LTSA
• Why?– Show relationship to related specs
• Mapping LTSA PAPI– LTSA components PAPI information types– Shows related portions of LTSA
• Mapping PAPI LTSA– PAPI information types usage in LTSA
components
• Mapping to other frameworks, too
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
52
LTSA Layer 3: System Components[using Yourdon system notation and LTSA diagrams]
• Processes: Learner Entity, Evaluation, Coach, Delivery• Stores: Learner Records, Learning Resources• Flows: Behavior, Assessment, Performance (past, present, future), Query,
Catalog Info, Locator, Learning Content, Multimedia, Learning Preferences* Thanks to Chris Dabrowski at NIST for ideas on this type of analytical technique for stakeholders, as demonstrated in his GII work in ANSI IISP: http://www.ansi.org/iisp
Delivery Evaluation
CoachLearningResources
Multimedia Behavior
LearningPreferences
LearnerRecords
A s s e s s m e n tL o c a t o r
LearnerEntity
Query (new)
Performance (current)
Performance/Preferences
(history)Catalog Info
LocatorLearningContent
Interaction Context
* LTSA Notation
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
53
Interaction Context
Query
Catalog Info
LearningPreferences
LearningContent
LTSA Mapping Example: Web-Based Learning BrowserDemonstrates Tight Integration of Components
Delivery Evaluation
CoachLearningResources
(new)
Multimedia Behavior
LearnerRecords
Performance (current)
(history)
A s s e s s m e n t
Human
HumanInterface
e.g., X WindowsWin95
PresentationTool
(browser)Courseware
Database(web servers)
StudentRecords
(database)
AbstractionImplementation
LearnerEntity
* Note: Other mappings may co-exist.
Performance/Preferences
L o c a t o rLocator
* LTSA Notation
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
54
LearningContent
(history)
A s s e s s m e n t
Learner Profiles
• Primary design issues: learner preferences, performance info, assessment info, learner records
• Secondary design issues: evaluation, coach
Delivery Evaluation
CoachLearningResources
Query (new)
Multimedia Behavior
LearnerRecords
Performance (current)
LearnerEntity
Performance/Preferences
LearningPreferences
L o c a t o r
Catalog Info
Locator
Interaction Context
* LTSA Notation
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
55
Mapping of LTSA to PAPI
LearningContent
Delivery Evaluation
CoachLearningResources
Catalog Info
Query (new)
Multimedia Behavior
LearnerRecords
Interaction Context
Performance (current)
A s s e s s m e n t
LearnerEntity
Performance/Preferences
(history)
LearningPreferences
L o c a t o rLocator
Learner Personal Info
Learner Performance Info
Learner Preference Info
Learner Portfolio Info
Extensions
PAPI Learner Personal
Extensions
PAPI Learner Performance
Extensions
PAPI Learner Preference
Extensions
PAPI Learner Portfolio
* LTSA Notation
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
56
LearningContent
Multimedia
(history)
A s s e s s m e n t
Learning Preferences[LTSA component, a “Yourdon 2-way data flow”]
• LTSA Learning Preferences:• Learner Entity’s preferences (styles, language, etc.) as input to system• Coach can negotiate and/or restrict Learner Entity’s preferences• Surrogates: e.g., parentlearner entity, teacher system• Other possible surrogates: e.g., parent system, learner system, mentor
learner entity• LTSA PAPI:
• Storing and retrieving Learner Personal and Learner Preference information
Delivery Evaluation
CoachLearningResources
Query (new)
Behavior
LearnerRecords
Performance (current)
LearnerEntity
Performance/Preferences
LearningPreferences
L o c a t o r
Catalog Info
Locator
Interaction Context
* LTSA NotationLTSA Learning Preferences - may be a superset of PAPI Learner Preferences
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
57
LearningContent
(history)
A s s e s s m e n t
Evaluation[LTSA component, a “Yourdon data process”]
• LTSA Evaluation:• Receives Behavior• Receives Learning Content (context of Learner Entity’s Behavior)• Stores Performance info based on Evaluation of Behavior• Produces Assessment given to Coach
• LTSA PAPI:• Creating, storing, retrieving of Performance and Portfolio information• May retrieve Preference information
Delivery Evaluation
CoachLearningResources
Query (new)
Multimedia Behavior
LearnerRecords
Performance (current)
LearnerEntity
Performance/Preferences
LearningPreferences
L o c a t o r
Catalog Info
Locator
Interaction Context
* LTSA NotationLTSA Evaluation: - consumes PAPI Learner Performance - may consume PAPI Learner Preference - produces PAPI Learner Performance
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
58
LearningContent
Multimedia
(history)
A s s e s s m e n t
Performance Information Stored/Retrieved By Evaluation[LTSA component, a “Yourdon 2-way data flow”]
• LTSA Performance Info Stored By Evaluation:• Evaluation of Behavior: can emit Performance info• Stored in Learner Records
• LTSA PAPI:• Storing and retrieving Performance and Portfolio information• May retrieve Preference information
Delivery Evaluation
CoachLearningResources
Query (new)
Behavior
LearnerRecords
Performance (current)
LearnerEntity
Performance/Preferences
LearningPreferences
L o c a t o r
Catalog Info
Locator
Interaction Context
* LTSA Notation
LTSA Performance info: - may be a superset of PAPI Learner Performance - may include PAPI Learner Portfolio
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
59
LearningContent
(history)
A s s e s s m e n t
Learner Records[LTSA component, a “Yourdon data store”]
• LTSA Learner Records:• Stores Performance information as Learner Entity history• Retrieves and stores Learner Entity history records for Coach
• LTSA PAPI:• Storing and retrieving Preference, Performance, and Portfolio information• May store and retrieve Personal information, but this data flow is outside the
scope of the LTSA notation
Delivery Evaluation
CoachLearningResources
Query (new)
Multimedia Behavior
LearnerRecords
Performance (current)
LearnerEntity
Performance/Preferences
LearningPreferences
L o c a t o r
Catalog Info
Locator
Interaction Context
* LTSA Notation
LTSA Learner Records store all Learner PAPIinformation types: - Personal, Preference, Performance, PortfolioLTSA does not explicitly diagram use ofPersonal and Portfolio info
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
60
LearningContent
Multimedia
(history)
A s s e s s m e n t
Performance/Preference Info Received By Coach[LTSA component, a “Yourdon 1-way data flow”]
• LTSA Historic Performance/Preference Info Received By Coach:• Coach gets Learner Entity history by retrieving Performance information from
Learner Entity’s Learner Records• Can select strategies based on history
• LTSA PAPI:• Retrieving Preference, Performance, and Portfolio information• May retrieve Personal information, if permitted
Delivery Evaluation
CoachLearningResources
Query (new)
Behavior
LearnerRecords
Performance (current)
LearnerEntity
Performance/Preferences
LearningPreferences
L o c a t o r
Catalog Info
Locator
Interaction Context
* LTSA Notation
LTSA Historic Preference/Performance info: - includes PAPI Learner Preference - includes PAPI Learner Performance - may include PAPI Learner Personal, if permitted
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
61
LearningContent
(history)
A s s e s s m e n t
Performance/Preference Info Stored By Coach[LTSA component, a “Yourdon 1-way data flow”]
• LTSA New Performance/Preference Info Stored By Coach:• “bookmarks” (incomplete sessions)• certifications (milestones, completion of module)• objectives (outlines for future sessions)
• LTSA PAPI:• Storing Performance, and Portfolio information• May store Personal and Preference information, if permitted
Delivery Evaluation
CoachLearningResources
Query (new)
Multimedia Behavior
LearnerRecords
Performance (current)
LearnerEntity
Performance/Preferences
LearningPreferences
L o c a t o r
Catalog Info
Locator
Interaction Context
* LTSA NotationLTSA New Preference/Performance info: - includes PAPI Learner Performance - may include PAPI Learner Portfolio - may include PAPI Learner Personal, if permitted - may include PAPI Learner Preference, if permitted
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
62
LearningContent
Multimedia
(history)
A s s e s s m e n t
Assessment Information[LTSA component, a “Yourdon 1-way data flow”]
• LTSA Assessment Information:• Evaluation process can emit Assessments: “where there learner is at”• Coach can use Assessment information, along with other information, to
select appropriate learning experience• LTSA PAPI:
• A data flow of Performance information
Delivery Evaluation
CoachLearningResources
Query (new)
Behavior
LearnerRecords
Performance (current)
LearnerEntity
Performance/Preferences
LearningPreferences
L o c a t o r
Catalog Info
Locator
Interaction Context
* LTSA NotationLTSA Assessment info is coded (orinterchanged) identically as LTSAPerformance info: - a superset of PAPI Learner Performance - may include PAPI Learner Portfolio
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
63
LearningContent
(history)
A s s e s s m e n t1
Coach[LTSA component, a “Yourdon data process”]
• Sends, receives, and “negotiates” Learning Preferences with Learner Entity
Delivery Evaluation
CoachLearningResources
Query (new)
Multimedia Behavior
LearnerRecords
Performance (current)
1
LearnerEntity
Performance/Preferences
LearningPreferences
L o c a t o r
Catalog Info
Locator
Interaction Context
* LTSA Notation
LTSA Coach: - sends/receives LTSA Learning Preferences
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
64
LearningContent
(history)
A s s e s s m e n t
2
3
Coach[LTSA component, a “Yourdon data process”]
• Receives current Assessment information, Preferences, and Performance information (history and objectives) for future learning experiences
Delivery Evaluation
CoachLearningResources
Query (new)
Multimedia Behavior
LearnerRecords
Performance (current)
2 3
LearnerEntity
Performance/Preferences
LearningPreferences
L o c a t o r
Catalog Info
Locator
Interaction Context
* LTSA NotationLTSA Coach: - receives LTSA Assessment info - receives LTSA Performance info - receives LTSA Preference info
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
65
LearningContent
(history)
A s s e s s m e n t
Coach[LTSA component, a “Yourdon data process”]
• Queries to the Learning Resources:– Queries sent to search for appropriate material– Catalog Info (learning content metadata) returned as “found” Learning
Content– Extracts the Locators (e.g., URLs) from the returned Catalog Info
(learning content metadata)
Delivery Evaluation
CoachLearningResources
Query (new)
Multimedia Behavior
LearnerRecords
Performance (current)
4
4
LearnerEntity
Performance/Preferences
LearningPreferences
L o c a t o r
Catalog Info
Locator
Interaction Context
* LTSA Notation
LTSA Coach - searches for appropriate learning content
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
66
LearningContent
Multimedia
(history)
A s s e s s m e n t5
Coach[LTSA component, a “Yourdon data process”]
• Locators (similar to web URLs) are sent to Delivery process to identify (but not transfer) Learning Content
• Note: Delivery is responsible for retrieving and Learning Resources is responsible for transferring Learning Content
Delivery Evaluation
CoachLearningResources
Query (new)
Behavior
LearnerRecords
Performance (current)
5
LearnerEntity
Performance/Preferences
LearningPreferences
L o c a t o r
Catalog Info
Locator
Interaction Context
* LTSA Notation
LTSA Coach - identifies/launches learning content
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
67
LearningContent
Multimedia
(history)
A s s e s s m e n t
Coach[LTSA component, a “Yourdon data process”]
• LTSA PAPI:• Creation of Performance and Portfolio information.• Storing Performance and Portfolio information.• Retrieving of Preference information.• May store Preference information, if permitted.• May store and retrieve Personal information, if permitted.
Delivery Evaluation
CoachLearningResources
Query (new)
Behavior
LearnerRecords
Performance (current)
LearnerEntity
Performance/Preferences
LearningPreferences
L o c a t o r
Catalog Info
Locator
Interaction Context
* LTSA Notation
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
68
LTSA PAPI Summary [1/3]
• LTSA Learning Preferences map to PAPI Personal and Preference information– Security boundaries are not diagrammed in the LTSA, so
the LTSA does not distinguish between public (Preference) and private (Personal) information
• LTSA Performance information maps to PAPI Performance and Portfolio information– PAPI Performance information is primarily intended for
consumption by automated systems– PAPI Portfolio information is primarily intended for
consumption by humans
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
69
LTSA PAPI Summary [2/3]
• LTSA Assessment information– Similar to LTSA Performance Information– Maps to the same PAPI features
• LTSA Learner Records– Stores and retrieves LTSA Performance
information– Maps into PAPI codings and exchange (APIs and
protocols)
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
70
LTSA PAPI Summary [3/3]
• LTSA Evaluation– Primarily creates LTSA Performance information
and LTSA Assessment information– Might retrieve LTSA Performance information from
the LTSA Learner Records
• LTSA Coach– Creates, stores, and retrieves all types of PAPI
information– LTSA Coach maps into PAPI codings and
exchange (APIs and protocols) of PAPI Personal, Preference, Performance, and Portfolio information
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
71
Mapping of PAPI to LTSA
(new)
Learner Personal Info
Learner Performance Info
Learner Preference Info
Learner Portfolio Info
Extensions
PAPI Learner Personal
Extensions
PAPI Learner Performance
Extensions
PAPI Learner Preference
Extensions
PAPI Learner Portfolio
LearningContent
Delivery Evaluation
CoachLearningResources
Catalog Info
Query
Multimedia Behavior
LearnerRecords
Interaction Context
Performance (current)
A s s e s s m e n t
LearnerEntity
Performance/Preferences
(history)
LearningPreferences
L o c a t o rLocator
* LTSA Notation
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
72
Interaction Context
LearningContent
Mapping Of PAPI Personal InformationTo LTSA System Components
• Processes: Learner Entity, Evaluation, Coach, Delivery• Stores: Learner Records, Learning Resources• Flows: Behavior, Assessment, Performance (past, present, future),
Indexes (query, content, and locator), Learning Content, Multimedia, Learning Preferences
Delivery Evaluation
CoachLearningResources
Catalog Info
Query (new)
Multimedia Behavior
LearnerRecords
Performance (current)
A s s e s s m e n t
Performance/Preferences
(history)
LearningPreferences
L o c a t o rLocator
PAPI Learner Personal InfoLearnerEntity
* LTSA Notation
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
73
Interaction Context
LearningContent
Mapping Of PAPI Preference InformationTo LTSA System Components
• Processes: Learner Entity, Evaluation, Coach, Delivery• Stores: Learner Records, Learning Resources• Flows: Behavior, Assessment, Performance (past, present, future),
Indexes (query, content, and locator), Learning Content, Multimedia, Learning Preferences
Delivery Evaluation
CoachLearningResources
Catalog Info
Query (new)
Multimedia Behavior
LearnerRecords
Performance (current)
A s s e s s m e n t
Performance/Preferences
(history)
LearningPreferences
L o c a t o rLocator
PAPI Learner Preference InfoLearnerEntity
* LTSA Notation
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
74
Interaction Context
LearningContent
Mapping Of PAPI Performance InformationTo LTSA System Components
• Processes: Learner Entity, Evaluation, Coach, Delivery• Stores: Learner Records, Learning Resources• Flows: Behavior, Assessment, Performance (past, present, future),
Indexes (query, content, and locator), Learning Content, Multimedia, Learning Preferences
Delivery Evaluation
CoachLearningResources
Catalog Info
Query (new)
Multimedia Behavior
LearnerRecords
Performance (current)
A s s e s s m e n t
Performance/Preferences
(history)
LearningPreferences
L o c a t o rLocator
PAPI Learner Performance InfoLearnerEntity
* LTSA Notation
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
75
Interaction Context
LearningContent
Mapping Of PAPI Portfolio InformationTo LTSA System Components
• Processes: Learner Entity, Evaluation, Coach, Delivery• Stores: Learner Records, Learning Resources• Flows: Behavior, Assessment, Performance (past, present, future),
Indexes (query, content, and locator), Learning Content, Multimedia, Learning Preferences
Delivery Evaluation
CoachLearningResources
Catalog Info
Query (new)
Multimedia Behavior
LearnerRecords
Performance (current)
A s s e s s m e n t
Performance/Preferences
(history)
LearningPreferences
L o c a t o rLocator
PAPI Learner Portfolio InfoLearnerEntity
* LTSA Notation
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
76
Interaction Context
LearningContent
Mapping Of All PAPI ComponentsTo LTSA System Components
• Processes: Learner Entity, Evaluation, Coach, Delivery• Stores: Learner Records, Learning Resources• Flows: Behavior, Assessment, Performance (past, present, future),
Indexes (query, content, and locator), Learning Content, Multimedia, Learning Preferences
Delivery Evaluation
CoachLearningResources
Catalog Info
Query (new)
Multimedia Behavior
LearnerRecords
Performance (current)
A s s e s s m e n t
Performance/Preferences
(history)
LearningPreferences
L o c a t o rLocator
PAPI Learner Personal&Preference PAPI Learner Performance&Portfolio
LearnerEntity
* LTSA Notation
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
77
Interaction Context
LearningContent
Mapping Of All PAPI ComponentsTo LTSA System Components
• Processes: Learner Entity, Evaluation, Coach, Delivery• Stores: Learner Records, Learning Resources• Flows: Behavior, Assessment, Performance (past, present, future),
Indexes (query, content, and locator), Learning Content, Multimedia, Learning Preferences
Delivery Evaluation
CoachLearningResources
Catalog Info
Query (new)
Multimedia Behavior
LearnerRecords
Performance (current)
A s s e s s m e n t
Performance/Preferences
(history)
LearningPreferences
L o c a t o rLocator
* LTSA Notation
Personal/Security/Relations/Preference Performance/Portfolio
LearnerEntity
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
78
Overview
• Status of document• Methodology• Requirements• Functionality
• Conceptual model• Semantics• Bindings and encodings• Extension mechanisms• Conformance testing
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
79
Conceptual Model: How A Virtual Implementation Works
• “Theory of Operation”• Examples:
– Application opens repository
– Authentication– Scan/search for data– Read/write data– Multiple open sessions– Close sessions
Requirements
Functionality
Conceptual Model
Semantics
Bindings: APIs Bindings: Codings Bindings: Protocols
Encodings:Data Formats
Encodings:Calling Conventions
Encodings: Various Communication Layers
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
80
Relationship to Web-Based Systems
• Why?– Common implementations
• Show relationships:– Profile servers relative to web-based components– Profile servers and APIs
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
81
An Architecture Of Web-Based Profile Services and Systems
BrowserContent
ContentProtocol
ContentServer 1
ContentServer 2
ContentAPIs
PAPIAPIs
BrowserSubroutine,Object, and
Plug-in “Bus”
World Wide Web“Bus” of Browsers andWeb/Content Servers
Accessing Content:App Content Servers
PAPIProtocols
PersonalServer
RemoteCampus
Accessing Learner PAPI:App PAPI Servers
Nomadic “Bus”Of PAPIServers
Always-ConnectedPAPI Servers
LocalCampus
Sometimes-Connected(Nomadic)PAPI Servers
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
82
Relationship to Distance Learning And Distributed Learning Systems
• Why?– Significant implementation and engineering issues
• Show relationships:– Content delivery vs. records exchange– Information flows among components– Scaling to multiple campuses
• Walkthrough of PAPI and related info exchange
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
83
LearningContent
Multimedia
Interaction Context
(history)
A s s e s s m e n t
Distance, Distributed, and Nomadic Learning
• Primary design issues: distributed and nomadic communication of all “flows” (behavior, performance, multimedia, etc.)
• Secondary design issues: processes and stores components• NOTE: Take note of primary design issues (red/bold)
– How does this slide differ from all others?– Answer: All flows are primary, everything else is secondary– A technical definition of distance/distributed learning: primary design
issues concern “flows”, all other LTSA components are secondary
Delivery Evaluation
CoachLearningResources
Query (new)
Behavior
LearnerRecords
Performance (current)
LearnerEntity
Performance/Preferences
LearningPreferences
L o c a t o r
Catalog Info
Locator
* LTSA Notation
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
84
LTSA: Distance, Distributed, and Nomadic Learning
• From LTSA Distance and Distributed Learning:– Varying network capability– Sometimes connectivity (nomadic users)– Resources not centralized (distributed systems)
• Primary design issue:– PAPI functionality implemented in context of distance and
distributed learning design constraints• PAPI design issues:
– Nomadic use (irregular connectivity)– Security (several scenarios)– Federations of repositories (distributed data)
• Example configuration: compare web-based content delivery to secure records exchange
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
85
PAPI: Distance, Distributed, and Nomadic Systems
• Separated components– No or loose integration of components
• Slow or uneven performance– Communication speeds may be relatively slow– Speeds may vary significantly
• High cost– Relatively high communication cost
• Sometimes-connectivity, nomadic access– Components aren’t always “on-line”– Sometimes components able to connect, sometimes not
• Heterogeneous administration– Cost, security, reliability, availability– Multiple, independent organizations
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
86
Profile Information in Distance/Distributed LearningContent Delivery vs. Records Exchange
Learner
Remote CampusHome / Home Campus
UserInterface,Browser
Learning Content
BackOffice
ProfileServer
BackOffice
ProfileServer
Content Delivery (e.g. via web)
Records ExchangeVia PAPI
Content/Mgmt.Server
* Ad Hoc Notation
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
87
Profile Information in Distance Learning — An Example Configuration
BackOffice
BackOffice
Learner
ProfileServer
ProfileServer
UserInterface,Browser
Remote Campus
N = PersonalInfo (e.g., Nameaddress)
M = Preference Info(e.g., My configuration)
W = PortfolioInfo (e.g., Work)
G =PerformanceInfo (e.g., Grades)
Home / Home Campus
NM
GW
MM
M
N
N
GG
G
N, G
G
Learning Content
G
GN, G,M, W
Content/Mgmt.Server
* Ad Hoc Notation
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
88
Types Of Profile Information and Their Movement (Conceptual Model)
Remote Campus
N = PersonalInfo (e.g., Name,address)
W =PortfolioInfo (e.g., Works)
G =PerformanceInfo (e.g., Grades)
G
M = Preference Info(e.g., My config.)
Legend /Mnemonic:
Home / Home Campus
M
MM
MRequest Preferences
2
G
GRequests performance history from its (remote) profile server and other (home, etc.) profile servers
3
GG Grades can
be sent to back office (e.g., registrar)
4W
Portfolio: links towork/accomplishments
5
BackOffice
BackOffice
Learner Learning Content
ProfileServer
ProfileServer
UserInterface,Browser
Content/Mgmt.Server
S = Security InfoR = Relations Info N S R
Login,Enrollment Check
N
N
1
S R
S R
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
89
Can Scale to Multiple Campuses — Profile Servers Are Not “Middleware”
Multiple Remote Campuses
Personal Info:single, private copy
Portfolio Info:multi-campus
Performance Info:send to/from campusfederation
NM
W
MM
M
N
N
GG
G
Preference Info: sendto multi-campus,single source
G
Home / Home Campus
G
UserInterface,Browser
Learning Content
Learner
N, G
BackOffice
ProfileServerN, G,M, W
ProfileServer
GBackOffice
G
Content/Mgmt.Server
* Ad Hoc Notation
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
90
Can Scale to Multiple Tier Campus
Both main campusand remote campus can serve content
Performance:stored, forwarded, retrieved on allprofile servers
Tier 2:Main Campus
Tier 3:Remote Campus
Tier 1:Learner at Home
LearnerLearning Content
UserInterface,Browser
Content/Mgmt.Server
BackOffice
N, G
ProfileServerG, M,
W
ProfileServer
GBackOffice
G
ProfileServerN, G,
W
Content/Mgmt.Server
Main campus may “front end” contentfor remote campus
* Ad Hoc Notation
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
91
Can Scale to Multiple Tier Campus
Both main campusand remote campus can serve content
Performance:stored, forwarded, retrieved on allprofile servers
Tier 2:Main Campus
Tier 3:Remote Campus
Tier 1:Learner at Home
LearnerLearning Content
UserInterface,Browser
Content/Mgmt.Server
BackOffice
ProfileServer
ProfileServer
BackOffice
ProfileServer
Content/Mgmt.Server
Main campus may “front end” contentfor remote campus
* Ad Hoc Notation
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
92
A Walkthrough of Profile Information
Back OfficeProfile Server
Profile Server Back Office
Content/ Mgmt Server
Learning Content, free
Learning Content, pay
Learning Content, etc.
Learner Browser, User
Interface
Secure Local (Home) Intranet Secure Remote Intranet
Internet
NOTATION: X,N,M,G,W PAPI Info Within PAPI Info Outside Out of Scope Info (X) Conceptual Model Conceptual Model
Schematic of Learner PAPI Data Flows and Uses
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
93
A Walkthrough of Profile Information
Back OfficeProfile Server
Profile Server Back Office
Content/ Mgmt Server
Learning Content, free
Learning Content, pay
Learning Content, etc.
Learner Browser, User
Interface
Secure Local/Home Intranet Secure Remote Intranet
Internet
NOTATION: X,N,S,R,M,G,W PAPI Info Within PAPI Info Outside Out of Scope Info (X) Conceptual Model Conceptual Model
Schematic of PAPI Learner Data Flows and Uses
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
94
Learner Sign-On and Personal Information:Only Over Secure Links and/or Local Intranet
Back OfficeProfile Server
Profile Server Back Office
Content/ Mgmt Server
Learning Content, free
Learning Content, pay
Learning Content, etc.
Learner Browser, User
Interface
Internet
1A: Learner may sign onusing “local” tool [OOS]
1B: Browser may beused to sign on [OOS]
OOS = Out ofScope for PAPI
2: Browser requestspersonal info fromprofile server.
3B: Profile server mayforward to back office
3A: Profile server gets request3C: Profile server returns personal info
Secure Remote Intranet
N
NN
XX
Secure Local (Home) Intranet
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
95
Sample SDA API Usage
// Get learner’s name
NameView = Learner.NewViewByTLH(“name”,“primary”);
Name = NameView.GetValueByLH(
“ShortInformalName||LongInformalName||GivenName”);
LearnerName = Name.GetString();
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
96
Sample DCTP Protocol Usage
RESOLVE /home/C%e2t%dcRESULT 1OPEN 1 read-writeNEEDAUTH passwordGIVEAUTH password hashed “asbkjed”SET CODING XMLGETVAL nameRESULT <NAME><FAMILY>Côté</FAMILY> <GIVEN>Joseph</GIVEN></NAME>
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
97
Learner Signs On Remote Content Server:Validate Enrollment and/or Payment
Back OfficeProfile Server
Profile Server Back Office
Content/ Mgmt Server
Learning Content, free
Learning Content, pay
Learning Content, etc.
Learner Browser, User
Interface
Internet
4: Learner may use browser to signon remote content server [OOS]
5A: Remote content server may access remote profile serverfor anonymous “personal” info -- only identified by student ID
6: Remote content server may have direct accessto back office to validate enrollment/payment [OOS]
5B: Profile server mayforward to back office
OOS = Out ofScope for PAPI
Secure Remote Intranet
N
N N
X
Secure Local (Home) Intranet
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
98
Sample SDA API Usage
// Get learner’s ID
ID = Learner.GetValueByLH(“id”);
LearnerID = ID.GetString();
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
99
Sample DCTP Protocol Usage
RESOLVE /home/C%e2t%dcRESULT 1OPEN 1 read-writeNEEDAUTH passwordGIVEAUTH password hashed “asbkjed”SET CODING XMLGETVAL idRESULT <ID>1234567</ID>
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
100
Back Office Systems May Have PrivateCommunication Outside of PAPI
Back OfficeProfile Server
Profile Server Back Office
Content/ Mgmt Server
Learning Content, free
Learning Content, pay
Learning Content, etc.
Learner Browser, User
Interface
Internet
7: Some back office systems may have private connectionsamong themselves to validate learner enrollment/payment [OOS]
OOS = Out ofScope for PAPI
Secure Remote Intranet
X
Secure Local (Home) Intranet
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
101
Remote Content Server and/or Browser RequestPreference Info from “Home” Profile Server
Back OfficeProfile Server
Profile Server Back Office
Content/ Mgmt Server
Learning Content, free
Learning Content, pay
Learning Content, etc.
Learner Browser, User
Interface
Internet
8: Remote content server requestspreference info from “home” profile server
10: Browser may requestpreference info, too
9A: Home profile serversupplies preference info
9B: Remote profile server may keepcached copy of preference info
Secure Remote Intranet
M
M M
M
Secure Local (Home) Intranet
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
102
Sample SDA API Usage
// Get learner’s preferences
OutputMediaView = Learner.NewViewByTLH(“outputmedia”,“primary”);
OutputMedia = OutputMediaView.GetValueByLH(
“audio|video”);
Count = OutputMedia.Length();
for ( i = 0 ; i < Count ; i++ )
{
SupportedMedia[i] = OutputMedia.GetString(i);
}
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
103
Sample DCTP Protocol Usage
RESOLVE /home/C%e2t%dcRESULT 1OPEN 1 read-onlySET CODING XMLCV preferenceGETVAL outputmediaRESULT <VIDEO>MPEG</VIDEO>
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
104
Learner Updates His/Her Preference Info:Tools Outside Scope of PAPI
Back OfficeProfile Server
Profile Server Back Office
Content/ Mgmt Server
Learning Content, free
Learning Content, pay
Learning Content, etc.
Learner Browser, User
Interface
Internet
11: Learner may use special/secure toolsto update his/her preference info [OOS]
Secure Remote Intranet
M
M
Secure Local (Home) Intranet
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
105
Sample SDA API Usage
// Put learner’s preferences
// Put locale information
Learner.PutValue(“preference/locale”,“Canada-French”);
// Put media preferences
Learner.PutValue(“preference/device/text-input”, “kbd”);
Learner.PutValue(“preference/device/text-output”, “crt”);
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
106
Sample DCTP Protocol Usage
RESOLVE /home/C%e2t%dcRESULT 1OPEN 1 read-writeNEEDAUTH passwordGIVEAUTH password hashed “asbkjed”SET CODING XMLPUTVAL preference/locale “Canada-French”
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
107
Content Server Chooses Learning ContentBased Upon Performance Information
Back OfficeProfile Server
Profile Server Back Office
Content/ Mgmt Server
Learning Content, free
Learning Content, pay
Learning Content, etc.
Learner Browser, User
Interface
Internet
12: Remote content server reads performance info (learner’shistory, objectives, etc.) from one or more profile servers
13A: Remote profile server maybe consulted for performance info
13C: Home profile server maybe consulted for performance info
14: Content server chooses appropriate learningcontent based upon learner’s history/objectives
13B: Remote profile server mayforward to home profile server
Secure Remote Intranet
G
G
G
Secure Local (Home) Intranet
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
108
Sample SDA API Usage
// Get learner’s performance
List = Learner.List(“performance/math-02/session-*”);
Average = 0;
AverageCount = 0;
for ( i = 0 ; i < List.length ; i++ )
{
Grade[i] = Learner.GetValueByLH(List[i]+”/metric”);
if ( Learner.GetValueByLH(List[i]+
”/coding-scheme”) == “numeric-grade” )
{
GradeValue[i] = Grade[i].GetInteger();
Average += GradeValue[i]; AverageCount++;
}
}
Average = AverageCount > 0 ? Average / AverageCount : 0;
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
109
Learning Content Delivered ByContent Server To Browser
Back OfficeProfile Server
Profile Server Back Office
Content/ Mgmt Server
Learning Content, free
Learning Content, pay
Learning Content, etc.
Learner Browser, User
Interface
Internet
15: Content is retrievedby content server [OOS]
OOS = Out ofScope for PAPI
Secure Remote Intranet
X
16: Content is sent to browservia, say, HTTP/HTML [OOS]
Secure Local (Home) Intranet
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
110
Content Delivery: Pay-Per-Use Content
Back OfficeProfile Server
Profile Server Back Office
Content/ Mgmt Server
Learning Content, free
Learning Content, pay
Learning Content, etc.
Learner Browser, User
Interface
Internet
19: Content is sent to browservia, say, HTTP/HTML [OOS]
17: Payment is made forusage, content is retrievedby content server [OOS]
18: Content server may use back office forpayment validation or E-commerce [OOS]
OOS = Out ofScope for PAPI
Secure Remote Intranet
XX
Secure Local (Home) Intranet
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
111
Content Delivery: Interactions BetweenLearning Content and Content Server
Back OfficeProfile Server
Profile Server Back Office
Content/ Mgmt Server
Learning Content, free
Learning Content, pay
Learning Content, etc.
Learner Browser, User
Interface
Internet
20: Learning content may be active, i.e.,it interacts with content server [OOS]
21: Content is sent to browservia, say, HTTP/HTML [OOS]
OOS = Out ofScope for PAPI
Secure Remote Intranet
X
Secure Local (Home) Intranet
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
112
Browser, User
Interface
Self-Directed Learning Is Possible:Learner Influences Decision-Making of Content Server
Back OfficeProfile Server
Profile Server Back Office
Content/ Mgmt Server
Learning Content, free
Learning Content, pay
Learning Content, etc.
Learner
Internet
22: Learner may direct/control thelearning experience [OOS]
OOS = Out ofScope for PAPI
Secure Remote Intranet
X
Secure Local (Home) Intranet
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
113
Content Server Records Performance InformationBefore/During/After Learning Experience
Back OfficeProfile Server
Profile Server Back Office
Content/ Mgmt Server
Learning Content, free
Learning Content, pay
Learning Content, etc.
Learner Browser, User
Interface
Internet
24: Remote content server writes performanceinfo to one or more profile servers
23: During/after learning experience, contentserver may create performance info
Secure Remote Intranet
G
G
G
25A: Remote profile servermay store performance info
25C: Home profile servermay store performance info
25B: Remote profile server mayforward to home profile server
Secure Local (Home) Intranet
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
114
Sample SDA API Usage
// Put learner’s performance
Learner.NewObject(“performance/math-02/session-03”);
Learner.ChangeView(
“performance/math-02/session-03/19990809101112”,
“A+”);
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
115
Sample DCTP Protocol Usage
LISTsession-01session-02NEW list session-03PUTVAL session-03 <PERFORMANCE><DATE_TIME>19990809101112</DATE_TIME><METRIC>A+</METRIC><CODING_SCHEME>letter</CODING_SCHEME> </PERFORMANCE>
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
116
Learner May Bookmark/Suspend Session:Content Server Records As Performance Information
Back OfficeProfile Server
Profile Server Back Office
Content/ Mgmt Server
Learning Content, free
Learning Content, pay
Learning Content, etc.
Learner Browser, User
Interface
Internet
27: Remote content server records bookmark/suspend bywriting performance info to one or more profile servers
26: Learner may bookmarkor suspend a session
28A: Remote profile servermay store performance info
28C: Home profile servermay store performance info
28B: Remote profile server mayforward to home profile server
Secure Remote Intranet
G
G
G
Secure Local (Home) Intranet
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
117
Sample SDA API Usage
// Put bookmark/suspend
Learner.NewObject(“performance/math-02/session-03”);
Learner.PutValue(“performance/math-02/session-03”
“ShortInformalName||LongInformalName||GivenName”);
LearnerName = Name.GetString();
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
118
Sample DCTP Protocol Usage
LISTsession-01session-02NEW list session-03PUTVAL session-03 <PERFORMANCE><DATE_TIME>19990809101112</DATE_TIME><METRIC>A+</METRIC><CODING_SCHEME>letter</CODING_SCHEME> </PERFORMANCE>
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
119
Profile Server
Profile Server
Direct Communication Between Content ServerAnd Profile Server Via APIs
Back Office Back Office
Content/ Mgmt Server
Learning Content, free
Learning Content, pay
Learning Content, etc.
Learner Browser, User
Interface
Internet
29: Remote content server may communicatedirectly with remote profile server via APIs
Secure Remote Intranet
G
GG
30: Remote profile server may replicateperformance info to other servers
Secure Local (Home) Intranet
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
120
Content Server Continues Choosing LearningContent and Reading/Writing Performance Info
Back OfficeProfile Server
Profile Server Back Office
Content/ Mgmt Server
Learning Content, free
Learning Content, pay
Learning Content, etc.
Learner Browser, User
Interface
Internet
32: Various and different profile servers may be usedduring learner’s session of learning experiences
31A: Content server continues: reading performance info,choosing appropriate content, writing performance info
Secure Remote Intranet
G
G
G
31B: Some content may execute in the browser; inthis case the browser performs the functions of thecontent server, including read/write performance info
Secure Local (Home) Intranet
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
121
Profile Servers May Share Performance InfoWith Back Office Systems
Back OfficeProfile Server
Profile Server Back Office
Content/ Mgmt Server
Learning Content, free
Learning Content, pay
Learning Content, etc.
Learner Browser, User
Interface
Internet
33A: Home profile servers may exchangeperformance info with back office [OOS]
33B: Remote profile servers mayexchange performance info with backoffice for anonymous learners [OOS]
NOTE: Records exchanges between profile servers and back offices are performed in highly controlled/secure environments
Secure Remote Intranet
G
G
G
G G G G
Secure Local (Home) Intranet
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
122
Back Office Systems Can Securely Exchange Performance Info And Transcripts Via PAPI and Profile Servers
Back OfficeProfile Server
Profile Server Back Office
Content/ Mgmt Server
Learning Content, free
Learning Content, pay
Learning Content, etc.
Learner Browser, User
Interface
Internet
Secure Remote Intranet
G G
GG G
G
35: Back office records exchange is affectedby PAPI info exchange via profile servers
34: Home/remote profileservers andback officesexchangeperformanceinfo andtranscripts[OOS]Secure Local (Home) Intranet
NOTE: Records exchanges between profile servers and back offices are performed in highly controlled/secure environments
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
123
Sample SDA API Usage
// Get learner’s performance
List = Learner.List(“performance/math-02/session-*”);
Average = 0;
AverageCount = 0;
for ( i = 0 ; i < List.length ; i++ )
{
Grade[i] = Learner.GetValueByLH(List[i]+”/metric”);
if ( Learner.GetValueByLH(List[i]+
”/coding-scheme”) == “numeric-grade” )
{
GradeValue[i] = Grade[i].GetInteger();
Average += GradeValue[i]; AverageCount++;
}
}
Average = AverageCount > 0 ? Average / AverageCount : 0;
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
124
Back Office Systems May Communicate PrivatelyFor Exchanging Performance Info and Transcripts
Back OfficeProfile Server
Profile Server Back Office
Content/ Mgmt Server
Learning Content, free
Learning Content, pay
Learning Content, etc.
Learner Browser, User
Interface
Internet
36: Some back office systems may have private connections amongthemselves to exchange performance info and transcripts [OOS]
Secure Remote Intranet
G
Secure Local (Home) Intranet
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
125
Learner Creates/Updates Portfolio Info
Back OfficeProfile Server
Profile Server Back Office
Content/ Mgmt Server
Learning Content, free
Learning Content, pay
Learning Content, etc.
Learner Browser, User
Interface
Internet
37: Learner may use special/secure toolsto update his/her portfolio info [OOS]
38: Profile server storeslearner’s portfolio info
Secure Remote Intranet
W
W
Secure Local (Home) Intranet
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
126
Sample SDA API Usage
// Write learner’s portfolio
//
// Adding a pointer (URL) to a dissertation
//
Project = Learner.NewObject(“portfolio/project-01”,“list”);
Project.PutValue(“reference”,
“http://dissertation.com/my-thesis”);
Project.PutValue(“type”, “url”);
//
// Adding my financial model (spreadsheet)
//
Project = Learner.NewObject(“portfolio/project-02”,“file”);
Project.PutObject(“.”, SpreadsheetObject);
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
127
Potential Employers/Institutions ExamineLearner’s Portfolio Info
Back OfficeProfile Server
Profile Server Back Office
Content/ Mgmt Server
Learning Content, free
Learning Content, pay
Learning Content, etc.
Learner Browser, User
Interface
Internet
39: Employers, teachers, institutions,etc., may use special/secure tools toexamine portfolio info [OOS]
Secure Remote Intranet
W
Secure Local (Home) Intranet
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
128
Sample SDA API Usage
// Searching for learners with a grade point
// average (GPA) of 3.5 or better
List = Learner.List(“*/performance/gpa”);
for ( i = 0 ; i < List.length ; i++ )
{
GPA = Learner.GetValueByLH(List[i]+”/metric”);
if ( Learner.GetValueByLH(List[i]+
”/coding-scheme”) == “grade-point-average-max4” )
{
GPAValue = GPA.GetFloat();
if ( GPAValue >= 3.5 )
printf(“found learner: %s\n”,List[i]);
}
}
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
129
A Review of Profile Information
Back OfficeProfile Server
Profile Server Back Office
Content/ Mgmt Server
Learning Content, free
Learning Content, pay
Learning Content, etc.
Learner Browser, User
Interface
Secure Local (Home) Intranet Secure Remote Intranet
Internet
NOTATION: X,N,M,G,W PAPI Info Within PAPI Info Outside Out of Scope Info (X) Conceptual Model Conceptual Model
Schematic of PAPI Data Flows and Uses
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
130
Security Issues
• Security perimeter– Inside: intended to be secure– Outside: may not be secure
• Perimeter integrity
– Security perimeter itself must maintain its integrity
– What good is a fence if one can move it?
• User permissions and administration is one aspect of perimeter integrity
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
131
Security Issues
• Inbound threat:– External threat that breaches the security of the
system in question– Examples: unauthorized messages, injected into a
data stream, changing information, destroying information
• Outbound threat:– Theft of duplication of information.– Examples: snooping network packets, taking
information, destroying information
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
132
Security Issues
• Security strength– Features that characterize the implementation of
the security system– Example: is the fence made of wood, metal,
concrete?
• Features that characterize security strength ...
• Quality level– What level of security is provided?– Examples of security levels: minimal security (e.g.,
C2-Level), provable design (e.g., Ax-Level).
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
133
Security Issues
• Features that characterize security strength ...– Quality level
• What level of security is provided?• Examples of security levels: minimal security (e.g., C2-
Level), provable design (e.g., Ax-Level).– Contingencies:
• What happens when the system is violated?• What fallbacks are available?• What is the extent of the damage?
– Penalties:• What happens to violators of the security mechanism?• Example: security strength might concern the number of
bits used in encryption keys
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
134
Security: Personal Information Flows
Back OfficeProfile Server
Profile Server Back Office
Content/ Mgmt Server
Learning Content, free
Learning Content, pay
Learning Content, etc.
Learner Browser, User
Interface
Secure Remote Intranet
Internet
Secure Local (Home) Intranet
Personal Information Flows
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
135
Security Issues: Personal Information
• Naming of views• Who has access• Unauthorized reads• Unauthorized writes• Transfer to/from back
office• Correlate to other
systems
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
136
Security: Preference Information Flows
Back OfficeProfile Server
Profile Server Back Office
Content/ Mgmt Server
Learning Content, free
Learning Content, pay
Learning Content, etc.
Learner Browser, User
Interface
Secure Remote Intranet
Internet
Secure Local (Home) Intranet
Preference Information Flows
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
137
Security Issues: Preference Information
• Naming of views• Who has access• User-initiated changes• Authorizing automated
changes
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
138
Security: Performance Information Flows
Back OfficeProfile Server
Profile Server Back Office
Content/ Mgmt Server
Learning Content, free
Learning Content, pay
Learning Content, etc.
Learner Browser, User
Interface
Secure Remote Intranet
Internet
Secure Local (Home) Intranet
Performance Information Flows
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
139
Security Issues: Performance Information
• Naming of views• Who can access• Who can write• Who can change• Non-repudiated records• Certification• Validation• Expiration
• Granularity• Anonymous access• Controlled, selective,
and timed access• Design for children• No access• Nomadic access• Pre-loading
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
140
Security: Portfolio Information Flows
Back OfficeProfile Server
Profile Server Back Office
Content/ Mgmt Server
Learning Content, free
Learning Content, pay
Learning Content, etc.
Learner Browser, User
Interface
Secure Remote Intranet
Internet
Secure Local (Home) Intranet
Portfolio Information Flows
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
141
Security Issues: Portfolio Information
• Naming of views• Who has access• Non-persistence• Anonymous access• Individual organization
access• Timed access
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
142
Overview
• Status of document• Methodology• Requirements• Functionality• Conceptual model
• Semantics• Bindings and encodings• Extension mechanisms• Conformance testing
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
143
Semantics: Detailed Meaning Of Operations/Transactions
• Assertions: sentences using shall, should, or may
• Inquiries: range of values
• Negotiations: heuristics
• Examples:– Array: list of elements of
same type in regular structure
– PutValue: replaces old object, in place
Requirements
Functionality
Conceptual Model
Semantics
Bindings: APIs Bindings: Codings Bindings: Protocols
Encodings:Data Formats
Encodings:Calling Conventions
Encodings: Various Communication Layers
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
144
Personal Information
• Information about the student• Not “learner metadata”• Info: name (family, given, other, pre/post title,
lineage), telephone (label?, number), address (label?, line1, line2, line3, city, state/province, postal, country), reference (label?, type, value)
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
145
Personal Information
• Demographic• Human Identifier• Telephone Number• E-mail Address• Postal Address
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
146
Security Information
• Information about the student’s security features
• For public “security” repositories:– Public keys
• For private “security” repositories:– Determined system admin– Possibly, passwords and private keys
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
147
Security Information
• Identifier• Security Parameters
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
148
Relations Information
• Information about the student’s relationships• Learning management systems can find other
members of the team for team learning• Helpful for role-based access control
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
149
Relations Information
• Entity Name or Identifier• Entity Role
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
150
Preference Information
• Public information about student• Not “learner metadata”• Info: language (script, country), input/output
device (label, type, preference)
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
151
Preference Information
• Spoken Language• Written Language• Age Level• Region• Content Preferences• Style• Pre-Include• Post-Include
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
152
Preference Information
• Device Preferences– Context– Preference rating– Preference priority– Device name– Device type– Method– Protocol– Coding– Encoding– Other
• Input/Output Devices– Security– Text– Speech– Graphics– Audio– Video– Tactile– Session Choosing– Other
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
153
Performance Information
• Record of student performance• May be used for assessment info (Tanimoto)• Info: content identifier, timestamp,
performance coding scheme, metric, who issued, valid date, who received, who received, certification ID
• Learner-Identifier, Recording-Date-Time, and Content-Identifier are a "primary key" for this repository
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
154
Performance Information
• Learner-Identifier
– The learner's ID
– Likely to correlate to one of the learner's IDs used for other profile information
• Recording-Date-Time
– The date-time when the record was recorded, i.e., a unique timestamp for this record.
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
155
Performance Information
• Valid-Date-Time-Begin
– The performance record may only be valid for a certain period of time, e.g., its "certification" expires
– The first valid date-time
• Valid-Date-Time-End
– The first invalid (expired) date-time of the performance record
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
156
Performance Information
• Issue-From-Identifier– Who issued this performance record?
• Issue-Date-Time– When the performance record was issued– Not the same as the Recording-Date-Time (when
the record was recorded in the repository).• Issue-To-Identifier
– Who received the per-formance record?– This may be the learner's ID, or it may be a
team/group learning ID if the team received the performance record
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
157
Performance Information
• Content-Identifier– The identified associated with the “content”– This might be a URL, the name of a tool, etc.– We're not standardizing the names used for
content
• Granularity:– The relative “size” of the content– Might be a task, module, course, etc.– Probably use Phil Dodds work as a starting point
since he's done much research on this.
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
158
Performance Information
• Performance-Coding-Scheme– The type of grading, coding, measuring, etc.,
system in use.– It is not possible to standardize on a common
scheme (e.g., letter grade, numeric grade), so we expect that initially there will be many schemes but these schemes will reduce to a smaller set as the "market" demands fewer coding schemes to support more data interchange.
– Example:"US-NY-K12-LETTER-GRADE”"ATC-610-SIMULATOR".
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
159
Performance Information
• Performance-Metric
– The "grade", etc., that is recorded
– Examples: "A+", "97", "Pass".
• Certification-Source
– Who certified this record
• Certification-Method
– What certification method was used
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
160
Performance Information
• Certification-Parameter-List– Options and parameters necessary to validate the
certification– The Certification-Source, Certification-Method,
and Certification-Parameter-List, make it is possible to validate the Certification-Identifier
• Certification-Subset– A list of which elements in this record are certified– Necessary for generating automatic validation
• Certification-Identifier– The identifier that is passed to the certification
validator, i.e., certificate ID
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
161
Portfolio
• Projects and works of student• Typically, public information• Info: reference (label, type, value)
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
162
Implementation Experience [1/3]
• Personal information:– Primary key: student identifier– Secondary keys: to be defined– Security: per-field, per-record, views
• Preference information:– Primary key: student identifier– Secondary keys: preference type– Security: public
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
163
Implementation Experience [2/3]
• Performance information:– Primary key: student identifier, content identifier, timestamp
YYYYMMDDHHMMSS.FF– Secondary keys and security: views, RBAC– Access by automated systems
• Portfolio information:– Primary key: student identifier, content identifier, timestamp
YYYYMMDDHHMMSS.FF– Secondary keys: to be defined– Security: probably public– Access by humans
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
164
Implementation Experience [3/3]
• Student identifier specification is required• Content identifier specification (URL, URN, or
something else?) -- LTSA locator index• Security: authentication, access, integrity,
confidentiality -- multiple methods, views help simplify security
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
165
Overview
• Status of document• Methodology• Requirements• Functionality• Conceptual model• Semantics
• Bindings and encodings• Extension mechanisms• Conformance testing
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
166
Bindings: Mappings to OtherStandards Frameworks
• Bindings to APIs• Bindings to codings
(information organization)
• Bindings to protocols• Examples:
– APIs: C/C++, VB, Perl, Java, Javascript
– Codings: XML, TCL– Protocols: DCTP, HTTP
Requirements
Functionality
Conceptual Model
Semantics
Bindings: APIs Bindings: Codings Bindings: Protocols
Encodings:Data Formats
Encodings:Calling Conventions
Encodings: Various Communication Layers
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
167
IEEE 1484.14:APIs Bindings
• Define APIs: C, C++, Java, Javascript, Visual Basic, Perl, Tcl
• Contributions from several organization• Collaboration with many standards
organizations• Related protocol work:
– IEEE 1484.15 DCTP (data/control transfer protocol)
– IEEE 1484.16 HTTP bindings
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
168
IEEE 1484.14 APIs:Session Services
• NewSession(): Opens a new session to repository
• DestroySession(): Closes repository• OpenView(): Starts data access to a portion of
the repository• CloseView(): Ends data access• SetParam(), QueryParam(): Changes or
retrieves session parameters
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
169
IEEE 1484.14 APIs:Handler Services
• SetHandler(), QueryHandler(): Set up and inquire about event handlers
• RequestSecurity(), RespondSecurity(): Allow “server-side” authentication requests
• RequestNomad(), RespondNomad(): Can setup nomadic (reconnectable) connections
• RequestEvent(), RespondEvent(): Used for handling most exceptions and errors
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
170
IEEE 1484.14 APIs:Data Perspectives Services
• SetNaming(), QueryNaming(): Set or inquire naming convention
• SetCoding(), QueryCoding(): Sets data coding, i.e., organization of information
• SetView(), QueryView(): Set or inquire view
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
171
IEEE 1484.14 APIs:Data Transfer/Walk Services
• GetValue(), PutValue()• GetDeepValue(), PutDeepValue()• Copy(), DeepCopy()• Move(), DeepMove()• WalkGetObject(), WalkPutObject()• List(), DeepList()
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
172
Encodings: Bit/Octet DataRepresentation and Format
• Not to be confused with “codings”
• Examples:– POSIX/Win32 subroutine
linkage– ASCII, ISO 8859-1, UTF8– IETF text format
Requirements
Functionality
Conceptual Model
Semantics
Bindings: APIs Bindings: Codings Bindings: Protocols
Encodings:Data Formats
Encodings:Calling Conventions
Encodings: Various Communication Layers
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
173
Overview
• Status of document• Methodology• Requirements• Functionality• Conceptual model• Semantics• Bindings and encodings
• Extension mechanisms• Conformance testing
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
174
Overview
• Status of document• Methodology• Requirements• Functionality• Conceptual model• Semantics• Bindings and encodings• Extension mechanisms
• Conformance testing
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
175
Current Tasks [1/2]
• Liaise with student identifiers• Liaise with CORBAMED (patient records)• Release PAPI client API for Java (IMS)• Work with IEEE 1484.14 for API and XML• Release PAPI client API for telnet/ftp (DCTP)• XML schemas
1999-12-08 IEEE 1484.2, PAPI Spec, Draft 6, F. Farance, ©1999 Edutool.Com
176
Current Tasks [2/2]
• Incorporate work from Microsoft, PeopleSoft, UC, DoD, and others
• Next spec by 1999-07-16• Work with IMS members to assure
compatibility• Submit revised spec to IMS and IEEE 1484.2
top related