building a portal framework: the penn state student portal project

32
Building a Portal Framework: The Penn State Student Portal Project Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer

Upload: tim

Post on 25-Feb-2016

59 views

Category:

Documents


0 download

DESCRIPTION

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? - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Building a Portal Framework:   The Penn State Student Portal Project

Building a Portal Framework: The Penn State Student Portal Project

Presented ByJames Leous, Program Manager

James Vuccolo, Lead Research Programmer

Page 2: Building a Portal Framework:   The Penn State Student Portal Project

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

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

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

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

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

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

Portal GUI

• Our First Design

• Main Interface

• Anatomy of a Channel

Page 9: Building a Portal Framework:   The Penn State Student Portal Project

Our First Design

Page 10: Building a Portal Framework:   The Penn State Student Portal Project

Main Interface

Page 11: Building a Portal Framework:   The Penn State Student Portal Project

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

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

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

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

Database

Page 16: Building a Portal Framework:   The Penn State Student Portal Project

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Wrap Up• Comments• Questions