building a portal framework: the penn state student portal project presented by james leous, program...
TRANSCRIPT
![Page 1: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/1.jpg)
Building a Portal Framework: The Penn State Student Portal Project
Presented By
James Leous, Program Manager
James Vuccolo, Lead Research Programmer
![Page 2: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/2.jpg)
Agenda
• Introduction• Portal GUI• Let’s Get Technical• Future Directions• The Portal Team• Wrap Up
![Page 3: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/3.jpg)
Introduction
• What is a portal?
• Why do we need a portal?
• Student Portal vs. Commercial Portals
• Personalization vs. Customization
![Page 4: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/4.jpg)
What is a portal?
• A software application that aggregates heterogeneous data sources into a cohesive customizable presentation
![Page 5: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/5.jpg)
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
![Page 6: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/6.jpg)
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
![Page 7: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/7.jpg)
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
![Page 8: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/8.jpg)
Portal GUI
• Our First Design
• Main Interface
• Anatomy of a Channel
![Page 9: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/9.jpg)
Our First Design
![Page 10: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/10.jpg)
Main Interface
![Page 11: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/11.jpg)
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
![Page 12: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/12.jpg)
Let’s Get Technical
• Data Flow• Authentication• Database• LDAP• User Data Storage• Channels• Calendaring• Tools
![Page 13: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/13.jpg)
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.
![Page 14: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/14.jpg)
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
![Page 15: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/15.jpg)
Database
![Page 16: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/16.jpg)
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
![Page 17: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/17.jpg)
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
![Page 18: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/18.jpg)
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
![Page 19: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/19.jpg)
Channels
• Types– Applet
– Content
– Execute
– Role
– Affiliate
• RSS– What is RSS?
– RSS Parser
![Page 20: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/20.jpg)
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)
![Page 21: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/21.jpg)
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
![Page 22: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/22.jpg)
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
![Page 23: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/23.jpg)
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)
![Page 24: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/24.jpg)
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
![Page 25: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/25.jpg)
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
![Page 26: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/26.jpg)
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
![Page 27: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/27.jpg)
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
![Page 28: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/28.jpg)
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
![Page 29: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/29.jpg)
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
![Page 30: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/30.jpg)
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
![Page 31: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/31.jpg)
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
![Page 32: Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer](https://reader035.vdocument.in/reader035/viewer/2022062421/56649d985503460f94a81fc0/html5/thumbnails/32.jpg)
Wrap Up
• Comments• Questions