building a portal framework: the penn state student portal project

Post on 25-Feb-2016

62 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

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

Building a Portal Framework: The Penn State Student Portal Project

Presented ByJames 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

top related