electronic banner access request (ebar) workflow presented by: mike gostomski & shari powell...
TRANSCRIPT
Electronic Banner Access Request (eBAR) Workflow
Presented by: Mike Gostomski & Shari Powell Portland State University
April 12, 2010
Session ID 1058
Session ID 1058 2
Session Rules of Etiquette
• Please turn off your cell phone/pager
• If you must leave the session early, please do so as discreetly as possible
• Please avoid side conversation during the session
Thank you for your cooperation!
Session ID 1058 3
Presentation Agenda
• Project Overview
• Demonstration of our Banner Access Request Workflow
• eBAR Internals
• Problems encountered during development
• Lessons learned about developing Workflows
• Question & Answer
Project Overview
What we set out to do, and why we decided on Workflow for our new Banner access request system.
Session ID 1058 5
Project Definition
• Decrease turnaround time to activate a Banner account
• Find a more sustainable approach that supports sustainability by eliminating paper forms
Project Goals
Replace paper Banner Access Request document and its campus mail routing with an electronic document (eBAR) having electronic routing and signatures
Session ID 1058 6
Paper Form Routing
• Two hard-copy request forms» FIS / HRIS» SIS / FA / AR
• Campus mail routing» Supervisor (dept. head / director)» Dean / VP (for FIS / HRIS access only)» Banner Coordinator(s)» OIT
• Create new account• Grant security Access
» Requestor (username and password)
• FIS Coordinator processes FOMPROF; Approval queues
Session ID 1058 7
Electronic Routing
• One electronic request form (in Banner Self-Service)
• Workflow routing» Supervisor (dept. head / director)» Banner Coordinator(s)» BAO Director» OIT
• Create new account• Grant security Access• FOMPROF record is now automated
• Requestor retrieves password via Banner Self-Service
Session ID 1058 8
eBAR Advantages
• Faster than paper request forms routed via campus mail» Can now be routed to multiple users in parallel» No time wasted delivering paper between offices» No paper forms get “lost” on people’s desks
• Password delivery via Banner Self-Service» More secure than sending password via campus mail
• Request status viewable in Self-Service at any time
• Approves can view both existing and requested access
• Automatic checking for segregation-of-duty conflicts
Session ID 1058 9
eBAR Features
• Ability to copy permissions from an existing user» Existing user’s permissions are displayed within Workflow
• “I Agree” checkbox» I have read and agree to the PSU Acceptable Use Policy
• Dynamically routes to supervisor» Based on org code of requestor’s position and Banner
Finance org code hierarchy
• Auto-creates Workflow account for supervisor» Using predefined external authentication
• Supervisors can assign any Workflow user as proxy» Workflow admin must assign supervisor role to the proxy
Session ID 1058 10
Banner Workflow Installation: Business Decisions
• Authentication» Banner INB» Enterprise LDAP
• User Creation» Create all users during initial Workflow installation» Create users in Workflow as needed
Session ID 1058 11
Banner Workflow Setup
• Workflows cannot span organizations… but a Workflow in one org can initiate a Workflow in another org
• Design organization structure around your institutional organization, not Banner modules
root
psu_org bao_org hr_org
Organizations
Session ID 1058 12
Administrative Workflow Roles
• System Administrator» Who: IT Staff» Access:
• Create/modify business components• Create/modify external events• Manage users and roles• Create/modify work calendars• Delete workflows
• Business Analyst» Who: IT Staff, Banner Coordinators» Access:
• In-process monitoring• Workflow modeling
Session ID 1058 13
eBAR Workflow Roles
• eBAR_Request_Approver
• eBAR_HR_Employee
• eBAR_%_Coordinator
• eBAR_BAO_Director
• eBAR_Account_Creator
• eBAR_Security_Admin
• eBAR_Administrator
(supervisor)
(assigns supervisor if needed)
(e.x. eBAR_HRIS_Coordinator)
(Business Affairs Director)
(DBA)
(GSASECR)
(eBAR model administrator)
Each Workflow activity is tied to a role
Session ID 1058 14
Project TeamOffice of Information Technologies
• Workflow development:
• Self-Service Development:
• Workflow Installation:
• Project Manager:
Mike GostomskiProgrammer Analyst
David ShapiroProgrammer Analyst
Lance HooverOracle DBA
Shari PowellBanner FIS/HRIS Manager
eBAR: Live Demonstration
Run through a Banner access request, from start to finish, and discuss the details of our eBAR Workflow
Session ID 1058 16
Live Demo: Overview
• Request is submitted via Banner Self-Service
• Requestor’s supervisor must approve the request
• Coordinators review the request and approve security groups/classes/objects that should be assigned
• The Business Affairs Director reviews the coordinators’ approvals and chooses to approve, rework, or reject the request
• Banner account is created (if new Banner user)
• Approved security is assigned
• Requestor obtains temporary password from Banner Self-Service (if new Banner user)
Session ID 1058 17
Live Demo: Request Form
• Request form is filled out and submitted via Self-Service
• Each user can have only one open request at a time.(If user has a request in progress, form will not be displayed)
• JavaScript validation ensures form is completely filled out before the user can submit it
• Requestor’s supervisor is automatically selected
• Form values are saved in a table so that the form will be pre-populated if the request gets rejected and must be re-submitted
• Requestor’s spriden_id is passed into Workflow so that the form data can be loaded from the table when the Workflow is initiated.
Session ID 1058 18
Live Demo: Workflow Initiation
• Input from the request form is loaded into context parameters by an automated activity / business component
• A second automated activity calls a function that:» Ensures the requestor’s supervisor is a valid user
» Sets up the supervisor with a Workflow account and the eBAR_Supervisor role (if they didn’t already have it)
» Creates HTML “views” which will be displayed later in the workflow
» Based on requested access, the function decides which Banner Coordinators need to be involved in the request
» All the data/views generated in these functions is saved in a temporary table
• A third automated activity grabs the data from the temporary table and loads it into context parameters
Session ID 1058 19
Live Demo: Approvals
• Supervisor Approval» Approve: Request continues» Reject: Request is terminated.
Requestor receives email with note from supervisor
• Coordinator Approval» Approve: Each coordinator (up to five users, in parallel)
chooses the groups/classes/objects to be assigned» Reject: Cannot reject a request; can only choose not to assign
security for their module
• BAO Director Approval» Approve: Request continues» Reject: Request is terminated.
Requestor receives email with note from BAO Director» Rework:Request returns to coordinators with a note from the BAO Director
Session ID 1058 20
Live Demo: Assign Approved Security
• Banner account is created (if new user)
• Security is assigned» Administrator reviews approved security
• Request can be returned to BAO Director with a note• Security can be assigned with the click of a button
» FOBPROF record automatically created (if needed)
• Requestor is notified via email that the account is ready
• Temporary password can be obtained via Banner Self-Service (for new users)
eBAR: Problems Encountered
Solutions/Enhancements we added to
resolve problems we encountered.
Session ID 1058 22
Modeler Hangs When Trying to Validate Model
ProblemLarge Workflow with many activities and many parallel paths cause the validator to hang
Solutions•Increase memory allocations in the Workflow configuration script
•This helped temporarily… but not a permanent solution
•Change parallel paths to run activities one-at-a-time•This also helped temporarily
•Reduce the number of activities in the model•Move as much processing as possible to DB procedures•Save results into temporary tables•Load all resulting data into context parameters with one Workflow activity
Session ID 1058 23
Mapping External Event Parameters to Workflow Model
Problem
For every change we made to the Workflow model, we had to manually re-map 30 event parameters to their corresponding context parameters
Solution
1. Load all 30 parameters into a temporary table before the event fires
2. Map one parameter from the event to a context parameter
3. Use the one mapped parameter to select and load the rest of the values from the temporary table
Session ID 1058 24
Using JavaScript in Custom Activities
Problem
If JavaScript is entered directly into an activity, even a small changerequires dropping and re-creating the entire activity
Solution
1. Use a database procedure to generate the JavaScript code
2. Save the generated code into a context parameter
3. Create a local parameter in the custom activity, and map the JavaScript code (context parameter) to the local parameter
4. Display the local parameter on your custom activity form
Session ID 1058 25
Custom Activity Forms Are Very Limited
Problems• Custom Activity formatting options are limited• Select menus are tedious to populate and maintain• Certain input types are not allowed (i.e. checkboxes)• JavaScript form validation is tricky at best
Solution
1. Create your Custom Activity with nothing but a few text areas(one for each context parameter you plan to map in/out)
2. Create your own custom HTML view using a database procedure
3. Use JavaScript to hide the Workflow text areas and submit button, or position your HTML view on top of the Workflow form
4. Use JavaScript to pass values from your HTML view to the Workflow text areas
Lessons Learned
Tips to keep in mind while developing Workflows
Session ID 1058 27
Design For Easy Maintenance
• Make decisions and send emails from your DB proc
• Avoid passing too many parameters into Workflow via External Events (require remapping after any change to model)
• Keep the number of activities in the model to a minimum
• Generate dynamic select menus in your database procedure rather than entering static values into the Custom Activity
• Validate forms with JavaScript BEFORE they are submitted, which will reduce the number of decisions needed in your Workflow model
Making changes to the Workflow model can be tedious and time consuming. Do as much processing and content generation as possible in a database procedure
Session ID 1058 28
Design For User-Friendliness
• Use drop-down menus or checkboxes to reduce user error
• Use queries to dynamically create menus and checkboxes so that the user’s options will stay current as the data changes
• Use JavaScript to validate forms. Highlight errors in Red so the user knows what needs to be changed
Generate your own HTML view to display over the Workflow form
eBAR: Question & Answer
We will now take any questions you have about our Banner Access Request Workflow
Session ID 1058
Thank You!Mike Gostomski
Shari Powell
Please complete the online class evaluation form
Session ID 1058
30
SunGard, the SunGard logo, the Open Digital Campus, Banner, Luminis, and PowerCAMPUS are trademarks or registered trademarks of SunGard Data Systems Inc. or its subsidiaries in the U.S. and other countries. © 2009 SunGard. All rights reserved.
© 2010 SunGard. All rights reserved.