Upload
monica-harmon
View
216
Download
0
Tags:
Embed Size (px)
Citation preview
Building a Portal Framework: The Penn State Student Portal Project
Presented By
James Leous, Program Manager
James Vuccolo, Lead Research Programmer
Agenda
• Introduction• Portal GUI• Let’s Get Technical• Future Directions• The Portal Team• Wrap Up
Introduction
• What is a portal?
• Why do we need a portal?
• Student Portal vs. Commercial Portals
• Personalization vs. Customization
What is a portal?
• A software application that aggregates heterogeneous data sources into a cohesive customizable presentation
Why do we need a portal?
• The portal is designed to make a person’s Web experience more efficient
• It is a single point of access to University information
resources
• Ideally the portal will be the primary source of University communications and interactions with its constituents
Student Portal vs. Commercial Portals• Student Portal
– Allows users to have access to institutional data
– Keeps user information within the University
– Leverages our existing infrastructure
– Provides the framework for integration with legacy and future IT systems
• Commercial Portals– Tracks personal
information for a profit
– No guarantees when it comes to information privacy
– Proprietary infrastructure
– Closed framework
Customization vs. Personalization
• Customization– Done by the Portal software when you authenticate– Determines how your portal looks the first time you see it – and
every time your roles, and functions change
• Personalization– Allows you to change the portal’s look and feel– Subscribe/unsubscribe to channels– Set application parameters – reports and report parameters, cities,
stocks, dates, e-mail and chat defaults– Format Portal page – colors, columns, …– Create/edit tabs– Add/remove links
Portal GUI
• Our First Design
• Main Interface
• Anatomy of a Channel
Our First Design
Main Interface
Anatomy of a Channel
Channel Content
Channel Title
Channel Controls
Displays help information.
Change channel parameters
Move channel to a tab
Minimize/maximize channel
Remove channel
Let’s Get Technical
• Data Flow• Authentication• Database• LDAP• User Data Storage• Channels• Calendaring• Tools
Data Flow
Client Browser
DFS - Storage of user prefs.Apache/SSL
Server
CGI Programs
DB2
DFS - Storage of user prefs.
DFS - Storage of user prefs.
Authentication
• Authentication to the Portal is accomplished using an Apache module, called mod_auth_dce
• The module obtains the user’s credentials when he/she authenticates
• This enables the Web server to write into the user’s DFS file space, because it has his/her credentials
Database
LDAP
• Lightweight Directory Access Protocol (LDAP) is a method for providing directory information
• LDAP is the replacement for Ph/Qi• Within the Portal framework LDAP is used to
determine a person’s role, to include:– Affiliation (Faculty/Staff or Student)
– Campus Code
– Semester Standing
– Semester Code
– Residence Status
LDAP cont’d
• Data that is used by the Portal is deemed as sensitive by nature
• Ordinary LDAP queries cannot retrieve the Portal attributes
• The Portal software does a secure bind to retrieve the attributes
User Data Storage
• A user’s Portal data is stored in his/her DFS home directory
• The Portal data includes:– User customizations
– Channel specific data
– Personal calendaring data
• DCE ACLs control access to the Portal data
Channels
• Types– Applet
– Content
– Execute
– Role
– Affiliate
• RSS– What is RSS?
– RSS Parser
Applet Channel
• Allows the content developer to embed a Java language applet into the portal
• Channel characteristics include:– Codebase (optional)
– Class file
– Width and Height
– Jar files (optional)
Content Channel
• HTML– Allows the content developer to specify a file
containing HTML to be included in the Portal
• ASCII– Allows the content developer to specify a file of text
that is not to be formatted to be included into the Portal
Content Channel cont’d
• Data source location can be either of the following:– File - channel resides on the Portal machine
– URL • Channel resides on another machine
• Enables you to use technologies like ColdFusion, WebObjects, and PHP, which the Portal doesn’t natively support
Execute Channel• Allows the content developer to specify a program
that is executed when the Portal is loaded• This program will generate HTML as its output• The program is passed two arguments: the user’s
Penn State Access Account userid and the current tab number
• Channel characteristics include:– Program name– Input file (optional)– Output file (optional)
Role Channel
• Very similar to an execute channel• Uses LDAP information to determine the user’s
role• Based on the role, it will load a particular channel• For example
– Career Services
– Dickinson School of Law
Affiliate Channel
• Can be any one of the channels previously mentioned
• Used for channels, whose content will not fit inside of a normal-sized channel
• The content will be displayed in a new window
What is RSS?
• Rich Site Summary or RSS is an eXtensible Markup Language (XML) based format developed by Netscape for channels that are used in their portal (NetCenter)
• RSS defines an XML grammar (a set of HTML-like tags) for sharing news
• Each RSS text file contains both static information about your site, plus dynamic information about your news stories, all surrounded by matching start and end tags
RSS Parser
• The parser performs the following:– Syntax checks an RSS file to make sure it conforms to
the Document Type Definition (DTD)
– Performs feature extraction
– Generates HTML using the extracted features
• Developed using Lex, Yacc and C
Calendaring
• The portal currently only supports personal calendaring
• The interface provides month, day, and week views
• Calendar data is stored is in iCalendar format– rfc2445 - Internet Calendaring and Scheduling Core
Object Specification
– The Portal uses an open source library called libiCal
Tools• Software Development
– Sun Workshop C Compiler
– Lex
– Yacc
– Awk
– Sed
– Perl
– Bourne Shell
• Web Server– Apache/SSL
– Mod_Auth_DCE
• Database– IBM DB2 Enterprise Ed.
• LDAP– IBM Secureway Directory
• Revision Control– RCS
• Calendaring– iCal
Future Directions
• Development of faculty/staff Portal• Increase Penn State specific Portal content• Drive changes in University business processes• Use this to re-engineer the way electronic
information at Penn State is created, disseminated, updated, and presented
• Pursue as an open source initiative
The Portal Team• OAS
– Peter deVries
– Ron Rash
– Carl Seybold
• Raytheon– Lesley Wills (formerly with
OAS)
• CAC– Karen Hackett
– John Kalbach
– Steve Kellogg
– James Leous
– Jeff Mace
– Kevin Morooney
– James Vuccolo
• CETS– Jo Nutter
Wrap Up
• Comments• Questions