Title: Aggregated Layouts
1Aggregated Layouts
i n s t r u c t i o n a l m e d i a m a g
i c, i n c.
- Michael Ivanov
- instructional media magic, inc.
- As presented at the uPortal Development
MeetingAugust 22-23, 2002 at the Memorial
University of Newfoundland
2The simplified cast in our story
The Governing Body - The State, County, District
The Institutions Universities, Colleges,
Schools
The Schools School of Medicine, School of
The Departments Sociology, Psychology
The Faculty as related to student users
The Campus Services Library, Financial Aid
The Users Student, Faculty, Staff
3The Governing Body
Policies
- Has information about
- Members
- Meetings
- Bylaws
- Events
- Policies
- Budgets
- Directories
- Services
Directory
Services
Members
Meetings
Events
Using the Tab Column visual metaphor
4The Institutional System
- Has information about
- Campuses
- Academic Programs
- Research
- Libraries
- News
The System
Campus Info
Programs
Research
Libraries
Search All Libraries
News
5The Institution
- Has information for
- Prospective Students
- Current Students
- Faculty
- Staff
- Visitors
- Content such as
- Admissions information
- eTranscripts
- Online gradebook
- Policies and procedures
- Campus events
Institution
About
Admissions
Academics
Research
Events
Calendar
Directions/Campus Map
Onlinegradebook
6A School in the institution
- Has information about
- Admissions
- Programs
- Calendar
- Faculty Research
- Career Management
School of
Programs
Academic Calendar
Admissions
Faculty
Research News
Directions/Campus Map
7A department
- Has information about
- Faculty Information
- Bios, Office Hours
- Program Information
- Career Tracks
- Seminars
- Calendar
Department of
Faculty Info
Programs
Careers
Alumni Endorsements
Seminars
Calendar
Directions/Campus Map
8A Faculty Member by Class
- Has information about
- General Information
- Bio, Hours, Contact
- Syllabus
- Shared Files
- Student Reviews
- Threaded discussions
- Group Chats
- Enrolled Students List
- Opt-in Past Enrolled
Professor
General Info
Syllabus
Virtual HD
Enrolled Students
Course Reviews
Past Enrolled
Group Chats
9Campus Services
- Has information about
- Libraries
- Financial Aid
- Housing
- Health Services
- Legal Services
- School Paper
- Book Store
- Career Services
- Clubs
- Commons
Financial Aid
Current Aid
Grant Search
Scholarships
Counseling
Health Services
Legal Services
School Newspaper
Book Store
Career Center
10The User
- Wants to subscribe to
- Weather
- News
- Arts Entertainment
- Traffic
- Online Games
- Email
- Groups
- Calendar
- Online Invitation
- Instant Message
myTabs
Weather
Instant Message
Email
Traffic
Calendar
Groups
Theater Search
Game
Driving Directions
11What is Aggregated Layout?
- The experience constructed for the end user by
the implementers/administrators of the portal
combined with the end user's customized content - A system for constructing, managing, and
administering grouped content, such that the
presence and level of visibility of this content
is guaranteed to appear in a users layout - A system to allow users to self select grouped
content to appear in their layout
12A snapshot of the hierarchy
Governing Body
Institutions
Schools
Departments
Faculty
User
13The content path to the user
Governing Body
Institutions
Schools
Departments
Faculty
User
14Aggregation of content
A users layout being constructed from pre-defined
fragments
15Subscribable Groupings
Health Legal Services Column
User adding content that has been grouped by
content administrators
Tab by Faculty and course
Departmental Calendar and Events Column
16Some terms
- Pushed Content
- The prearranged incorporation and updating of
content in a user's uPortal Layout - Pulled Content
- Self selected incorporation of content (including
content fragments) into a users personal layout - Propagate
- Spread or extend to users of the system
17Why Aggregated Layouts?
- To allow the construction of groupings of content
(Layout Fragments) - To allow modification to Layout Fragments that
can be either propagated to the subscribed users
of that content, or pushed to a specified set of
users - To allow the control of Layout Fragments
- Where do the fragments appear in the layout
- What restrictions are placed on the manipulation
of the content by the user, etc - To provide access control
- Who can manage fragments, who can author them,
who can subscribe to them
18Some more terms
- User Layout
- An XML document representing the abstract
structure of the content to be presented to a
user - Layout Fragment
- An XML fragment representing a grouping of
content - Fragment attachment point
- The node in the User Layout where a Layout
Fragment is attached - Restriction (examples)
- Depth greater than one (in a tab/column layout
this would ensure that the node would not be a
tab) - Parent priority gt 12 (sets the level of
visibility)
19Some more terms
- CFA's
- Content Fragment Administrators - Groups assigned
permission to create content fragments - CFA Modifications
- Modifications made to the fragment that is
propagated to all of the users who have that
fragment - Personal Modifications
- Modifications made by the end user that only
affect their own personal layout
20Simplified User Layout
- lt?xml version"1.0"?gt
- ltlayoutgt
- ltfoldergt
- ltfoldergt
- ltchannelgtlt/channelgt
- ltchannelgtlt/channelgt
- ltchannelgtlt/channelgt
- ltfoldergt
- ltchannelgtlt/channelgt
- lt/foldergt
- lt/foldergt
- ltchannelgtlt/channelgt
- lt/foldergt
- ltfoldergt
- ltfoldergt
- ltchannelgtlt/channelgt
- lt/foldergt
- lt/foldergt
- ltfoldergt
21Simplified User Layout
User Layout
Folder
Channel
22Two Simplified Layout Fragments
ltfoldergt ltchannelgtlt/channelgt
ltchannelgtlt/channelgt ltchannelgtlt/channelgt
ltchannelgtlt/channelgt ltfoldergt ltfoldergt ltcha
nnelgtlt/channelgt ltchannelgtlt/channelgt ltchannelgtlt/c
hannelgt ltchannelgtlt/channelgt ltfoldergt
ltchannelgtlt/channelgt ltchannelgtlt/channelgt ltfol
dergt ltfoldergt
23Fragment Attachment Point
Layout Fragment
User Layout
24Fragment Attachment Point
Layout Fragment
User Layout
25Fragment Priority
Priority
Layout Fragment
User Layout
26Fragment Priority
Priority
Layout Fragment
User Layout
User Layout
27Fragment Depth
Depth
Layout Fragment
User Layout
28Fragment Depth
Depth
Layout Fragment
User Layout
29Process Overview
- Permissions assignment
- Über Administrator creates Content Fragment
Administrators (CFA's) by assigning this right to
a group - Über Administrator assigns Priority Domains to
CFA's - Fragment Construction
- CFA's construct fragments and assign priority
ranges to the content on each fragment - CFA's decide which groups to push content to, and
which groups will be allowed to pull content into
their layout - Layout Assembly
- Business rules are applied to assemble layouts
for each end user - Layout Management
- Users manage layouts according to assigned
restrictions
30Process Illustration
- Assume
- The portal has been implemented at the top level
by the University of Santa Maria - Sally Smith is the Über Administrator
- Sally creates the following groups
- Chancellors Office, Department, Faculty, Teachers
Assistant, All Users - Sally assigns rights to each of the groups,
accept "All Users", to become Content Fragment
Administrators - Sally assigns a priority domain for each group
- Bob is the end user
31The Path to the User
University of Santa Maria
Sally Smith
Chemistry Department
Biology Department
Jill JonesCHEM 113
Jon DeatsBIO 180
Jan TannerBIO 211
Sam KanduBIO 224
Bob
32Permissions Assignment
- Sally must decide on
- The groups to create to be given Content Fragment
Administrator rights - The priority domains to apply to each group
- A permission scheme/control level
- High Only Content Fragment Administrators are
allowed to modify fragments. Users cannot modify
content of fragments. - Medium CFA's and users are allowed to modify
content, but users may only make modifications
within the scope of the fragment. - Low CFA's and users are allowed to make
unlimited changes within the scope of the
restrictions placed on individual elements of
content.
33Permissions Assignment
- What priorities might look like for Sally Smith
Aggregated Layout Manager
Priority Depth Advanced Restrictions
Chancellors Office
Department
Faculty
Teachers Assistant
All Users
34Priority Range Assignment
Total priority range assignable by Über
Administrator
Priority range allowed to be assigned to content
fragments created by Teachers Assistants
35Permissions Assignment
- If Sally selected the Department Group
Aggregated Layout Manager
Priority Depth Advanced Restrictions
Department
Priority
Groups Administer - Sally Smith, Department
36Fragment Construction
- Jan Tanner now has her Content Fragment
Administrator privileges and she wants to start
constructing fragments.
Fragment Manager
New Edit Delete
Select a Fragment Type
Tab
Column
Channel Cluster
37Fragment Construction
- After selecting a fragment type, she adds content
and sets restrictions
Fragment Manager
New Edit Delete
Include this fragment in the follow groups
layouts
Select Group
Selected Groups - BIO211Jtanner -
Jtanner
Allow the follow groups to subscribe to this
fragment
Select Group
Selected Groups - BIO211 - Biology
Department
38Fragment Construction
- Priority range determines the mobility of the
content, and initial value is used to determine
the position of content in the layout
Fragment Manager
New Edit Delete
Set the priority range and initial value assigned
to this tab
39Some more terms
- Unremovable
- A restriction placed on an element of content
(such as a channel or column or tab) such that
the content cannot be deleted from the layout.
This restriction does not limit movement of
content. - Immutable
- A restriction placed on an element of content
(such as a channel or column or tab) such that
the content cannot be moved within the layout. - Hidden
- A restriction placed on an element of content
(such as a channel or column or tab) such that
the content is not visible within the layout.
40Fragment Construction
BIO 224
unremovable
immutable
unremovable
unremovable
Syllabus
Calendar
unremovable
unremovable
Enrolled Students
unremovable
41Fragment Construction
- The restrictions below describe rules for content
mobility
Fragment Manager
New Edit Delete
Content and restrictions
Allow channels and columns to be relocated within
the fragment
Allow users to move personal channels and columns
into this fragment
Allow users to move fragment columns and channels
out of the fragment and into their personal tabs
42Fragment Subscription
- If a user is a member of a group allowed to
subscribe to a fragment, then that fragment will
appear during user preferences - subscription
User Preferences - New Content
Channels
Description
Bio224 is a Tab with two columns. The first
column contains two channels Syllabus and
enrolled students. The second column contains
Calendar. This content was grouped by Professor
Jan Tanner for use by students of her Biology 224
Course.
Dictionary.com Image of the day Salon.com Space.co
m
Grouped Content
Bio224
Add
Cancel
43Technical Approach
- Define a system of elementary restrictions on the
layout nodes - Implement basic node operations (Move,Add,Delete)
- Implement layout assembly operations
44Restrictions
- Restriction types
- Node properties
- Depth
- Priority
- Group membership
- Immutable, unremovable, hidden
- Node relations
- Child
- Parent
- Examples
- Priority in range (a,b)
- Parent belongs to group A
- Child immutable equals true
-
45Node Operations
- Add node
- Check restrictions on parent node
- Immutable
- Child related restrictions
- Check restrictions on the new node
- Depth
- Parent related restrictions
- Priority (for sibling ordering)
- Check depth restrictions on the descendants of
the node being added (if there are any) - Add the new node
46Node Operations
- Move node
- Check restrictions on old parent node
- Immutable
- Check restrictions on new parent node
- Immutable
- Child related restrictions
- Check restrictions on the node being moved
- Depth
- Parent related restrictions
- Priority (for sibling ordering)
- Check depth restrictions on the descendants of
the node being moved (if there are any) - Move the node
47Node Operations
- Delete node
- Check restrictions on parent node
- Immutable
- Check restrictions on the node being deleted
- Unremovable
- Delete the node
48Layout Assembly
- Determine which fragments should be pushed to the
user - Perform node operations (add,move) for layout
assembly - Use Add operation to insert all fragments into
the layout - Use Move operation to restore local
modifications of the fragments - Resolve conflicts arising from restriction checks
- Example
- CFA reduced allowed priority range of the
library tab and users tabs can no longer be
moved in front of it
49Issues, Dilemmas, Ambiguities
- What happens when a user moves content into a
fragment that is subsequently deleted? - What happens when a user rearranges content on a
fragment in their personal layout, then the
fragment owner subsequently adds, deletes, or
rearranges content? - What happens when a user moves content out of a
fragment into their personal content area, then
that fragment is subsequently deleted?
50The End
- Michael Ivanov
- m v i _at_ i m m a g i c . c o m
51Possibilities for Enhancement
52Process Illustration
- Assume
- The portal has been implemented at the top level
by the University of Santa Maria - Sally Smith is the Über Administrator
- Sally assigns restrictions/rights to the
Chancellors office to become Content Fragment
Administrators - Sally assigns restrictions/rights to each of the
departments of the university to become Content
Fragment Administrators - The Chemistry and Biology Departments assign
restrictions/rights to each of their faculty
members to be Content Fragment Administrators
(faculty inherit the restrictions originally
applied to the department) - Bob is the end user
53Permissions Assignment
- What priorities might look like for Sally Smith
Aggregated Layout Manager
Priority Depth Advanced Restrictions
Chancellors Office
Chemistry Department
Jill Jones
Biology Department
Jon Deats
Jan Tanner
Sam Kandu
54Priority Range Assignment
Total priority range assignable by Uber
Administrator
Aggregated Layout Manager
Priority
Depth Special Restrictions
Chancellors Office
Chemistry Department
Priority range allowed to be assigned to content
fragments created by the Biology Department
Jill Jones
Biology Department
Jon
Deats
Jan Tanner
Sam
Kandu
Initial or default priority assignment applied to
all content fragments created by Sam Kantank. Sam
will be allowed to reset this value.
55Permissions Assignment
- If Sally selected the Chancellors Office
Aggregated Layout Manager
Priority Depth Advanced Restrictions
Chancellors Office
Priority
Depth
Note at this depth, allowed to create Tabs,
Columns, Channel Clusters
Groups Administer - Sally Smith, Tom Hassleman
Advanced Parent restricted to - Top Level
56Permissions Assignment
- If the Biology Department selected ALM channel
Aggregated Layout Manager
Priority Depth Advanced Restrictions
Biology Department
Jon Deats
Jan Tanner
Sam Kandu
The Biology Department would not be able to
reassign their own priority range, but they could
reassign their default priority, and the priority
ranges for each of the faculty member groups that
they gave Content Fragment Administrator
privileges.