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

Slides:



Advertisements
Similar presentations
4. Internet Programming ENG224 INFORMATION TECHNOLOGY – Part I
Advertisements

The World Wide Web. 2 The Web is an infrastructure of distributed information combined with software that uses networks as a vehicle to exchange that.
Chapter 16 The World Wide Web.
Netscape Application Server Application Server for Business-Critical Applications Presented By : Khalid Ahmed DS Fall 98.
Kyung Hee University 1 1 Application Layer. 2 Kyung Hee University Position of Application Layer.
Copyright 2004 Monash University IMS5401 Web-based Systems Development Topic 2: Elements of the Web (g) Interactivity.
Server-Side vs. Client-Side Scripting Languages
ASP Tutorial. What is ASP? ASP (Active Server Pages) is a Microsoft technology that enables you to make dynamic and interactive web pages. –ASP usually.
15 Chapter 15 Web Database Development Database Systems: Design, Implementation, and Management, Fifth Edition, Rob and Coronel.
B.Sc. Multimedia ComputingMedia Technologies Database Technologies.
Introduction to Web Database Processing
Chapter 16 The World Wide Web Chapter Goals Compare and contrast the Internet and the World Wide Web Describe general Web processing Write basic.
Week 2 IBS 685. Static Page Architecture The user requests the page by typing a URL in a browser The Browser requests the page from the Web Server The.
UPortal: A framework for the Personalization of Library Services John Fereira: Programmer/Analyst Cornell University Mann Library.
Introduction to Web Interface Technology (CSE2030)
Introduction to Web Interface Technology (CSE2030)
WWW and Internet The Internet Creation of the Web Languages for document description Active web pages.
Mgt 240 Lecture Website Construction: Software and Language Alternatives March 29, 2005.
Chapter 16 The World Wide Web. 2 The World Wide Web (Web) is an infrastructure of distributed information combined with software that uses networks as.
Web Programming Language Dr. Ken Cosh Week 1 (Introduction)
Linux Operations and Administration
INTRODUCTION TO WEB DATABASE PROGRAMMING
Chapter 16 The World Wide Web. 2 Chapter Goals Compare and contrast the Internet and the World Wide Web Describe general Web processing Write basic HTML.
M. Taimoor Khan * Java Server Pages (JSP) is a server-side programming technology that enables the creation of dynamic,
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
Introduction to ASP.NET. Prehistory of ASP.NET Original Internet – text based WWW – static graphical content  HTML (client-side) Need for interactive.
Chapter 16 The World Wide Web Chapter Goals Compare and contrast the Internet and the World Wide Web Describe general Web processing Describe several.
Basics of Web Databases With the advent of Web database technology, Web pages are no longer static, but dynamic with connection to a back-end database.
Chapter 16 The World Wide Web. 2 The Web An infrastructure of information combined and the network software used to access it Web page A document that.
About Dynamic Sites (Front End / Back End Implementations) by Janssen & Associates Affordable Website Solutions for Individuals and Small Businesses.
16-1 The World Wide Web The Web An infrastructure of distributed information combined with software that uses networks as a vehicle to exchange that information.
CPS120: Introduction to Computer Science The World Wide Web Nell Dale John Lewis.
Introducing Dreamweaver MX 2004
Tutorial 1 Getting Started with Adobe Dreamweaver CS3
Chapter 17 - Deploying Java Applications on the Web1 Chapter 17 Deploying Java Applications on the Web.
NASRULLAH KHAN.  Lecturer : Nasrullah   Website :
Tutorial 121 Creating a New Web Forms Page You will find that creating Web Forms is similar to creating traditional Windows applications in Visual Basic.
Web Server Administration Chapter 7 Installing and Testing a Programming Environment.
Chapter 16 The World Wide Web. 2 The Web is an infrastructure of distributed information combined with software that uses networks as a vehicle to exchange.
HTML. Principle of Programming  Interface with PC 2 English Japanese Chinese Machine Code Compiler / Interpreter C++ Perl Assembler Machine Code.
Web Programming : Building Internet Applications Chris Bates CSE :
Chapter 16 The World Wide Web Chapter Goals Compare and contrast the Internet and the World Wide Web Describe general Web processing Write basic.
JavaScript Tutorial 1 - Introduction to JavaScript WDMD 170 – UW Stevens Point 1 WDMD 170 Internet Languages eLesson: Introduction to JavaScript (NON.
Active Server Pages  In this chapter, you will learn:  How browsers and servers interacted on the Internet when the Internet first became popular 
WEB BASED DATA TRANSFORMATION USING XML, JAVA Group members: Darius Balarashti & Matt Smith.
1 Welcome to CSC 301 Web Programming Charles Frank.
Nell Dale & John Lewis (adaptation by Michael Goldwasser) The World Wide Web.
Intro to PHP IST2101. Review: HTML & Tags 2IST210.
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
Web Programming Brian Toone 8/27/2014. Outline for today 1.Understanding the architecture of the web 2.Overview of programming languages – Client-side.
1 HTML Forms
ASP (Active Server Pages) by Bülent & Resul. Presentation Outline Introduction What is an ASP file? How does ASP work? What can ASP do? Differences Between.
Authentication at Penn State: The Present State of Affairs and Future Directions James A. Vuccolo, Manager, Software Technologies Group Phil Pishioneri,
11/14/00Copyright © Yale University1 uPortal: A Java Based Portal Framework A Project of JA-SIG ( Presented by: Susan Bramhall,
1 WWW. 2 World Wide Web Major application protocol used on the Internet Simple interface Two concepts –Point –Click.
COMP9321 Web Application Engineering Semester 2, 2015 Dr. Amin Beheshti Service Oriented Computing Group, CSE, UNSW Australia Week 4 1COMP9321, 15s2, Week.
Build v. Buy Steve Kellogg Penn State University 9/24/2003.
Introduction and Principles Web Server Scripting.
NASRULLAH KHAN.  Lecturer : Nasrullah   Website :
 Web pages originally static  Page is delivered exactly as stored on server  Same information displayed for all users, from all contexts  Dynamic.
Database Connectivity and Server-Side Scripting Chapter 12.
Rendering Syndicated Library Content in an Institutional Portal: Integrating MyLibrary into uPortal John Fereira: Cornell University Eric Lease Morgan:
Getting Your Content in the Penn State Student Portal Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer.
Web Programming Language
Introduction and Principles
Chapter 27 WWW and HTTP.
Introduction of Week 11 Return assignment 9-1 Collect assignment 10-1
Web Application Development Using PHP
Presentation transcript:

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, 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.

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 –rfc 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