Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
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 Controls Channel Title Displays help information. Change channel parameters Move channel to a tab Minimize/maximize channel Remove channel Channel Content Let’s Get Technical • • • • • • • • Data Flow Authentication Database LDAP User Data Storage Channels Calendaring Tools Data Flow Client Browser Apache/SSL Server CGI Programs DB2 DFS Storage of user prefs. 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 HTMLlike 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 • CAC – – – – – – – Karen Hackett John Kalbach Steve Kellogg James Leous Jeff Mace Kevin Morooney James Vuccolo • CETS – Jo Nutter • OAS – Peter deVries – Ron Rash – Carl Seybold • Raytheon – Lesley Wills (formerly with OAS) Wrap Up • Comments • Questions