Jason A. Guild CS 470 Presentation
-
Upload
rinah-england -
Category
Documents
-
view
22 -
download
0
description
Transcript of Jason A. Guild CS 470 Presentation
Jason A. GuildJason A. GuildCS 470 CS 470
PresentationPresentationB.S. Computer ScienceB.S. Computer Science
Information SystemsInformation Systems
BackgroundBackground
Hired by Dept. of Natural ResourcesHired by Dept. of Natural Resources Lead permitting agency for the StateLead permitting agency for the State We manage all State-owned land, water, and We manage all State-owned land, water, and
natural resources, except fish and game, on natural resources, except fish and game, on behalf of the people of Alaskabehalf of the people of Alaska
My position is part of a team charged with My position is part of a team charged with making business with DNR easier for the making business with DNR easier for the publicpublic Emphasis on streamlining permit application Emphasis on streamlining permit application
and adjudication processesand adjudication processes
DNR PermittingDNR Permitting
Process involves many phasesProcess involves many phases Starts with customer applying with a Starts with customer applying with a
description of what they want to dodescription of what they want to do DNR adjudicates their request based DNR adjudicates their request based
on a number of factorson a number of factors Request is put out for review by other Request is put out for review by other
agencies as well as the publicagencies as well as the public If request is deemed to be in the best If request is deemed to be in the best
interest of the State, a permit is issuedinterest of the State, a permit is issued
Applying for a permit is Applying for a permit is complexcomplex
Customers often do not know what type of Customers often do not know what type of permit is requiredpermit is required
Paper forms we use are confusing and Paper forms we use are confusing and contain unfamiliar jargoncontain unfamiliar jargon
Permit applications we receive are often Permit applications we receive are often incomplete or filled out incorrectlyincomplete or filled out incorrectly
Adjudicators spend large amounts of time Adjudicators spend large amounts of time interviewing the applicant over the interviewing the applicant over the telephone to get the necessary informationtelephone to get the necessary information
The collected data then has to be entered The collected data then has to be entered into LASinto LAS
The GoalThe Goal An assisted environment that provides a step-An assisted environment that provides a step-
by-step interactive approach to applying for by-step interactive approach to applying for permitspermits
Make use of carefully constructed lines of Make use of carefully constructed lines of questioning to:questioning to: Help applicant determine required permit typeHelp applicant determine required permit type Make complicated applications manageable by Make complicated applications manageable by
eliminating parts that are not applicable to eliminating parts that are not applicable to customer’s intended activitiescustomer’s intended activities
Increase the likelihood of getting accurate Increase the likelihood of getting accurate information the first timeinformation the first time
Save adjudicator time by letting applicant do Save adjudicator time by letting applicant do the bulk of data entrythe bulk of data entry
Online ApplicationsOnline Applications
DNR would like to allow electronic permit DNR would like to allow electronic permit applicationsapplications Delivered via the Web as well as via kiosks Delivered via the Web as well as via kiosks
located in DNR Public Information Centerslocated in DNR Public Information Centers Collects all pertinent data that describes the Collects all pertinent data that describes the
customer’s intended activitiescustomer’s intended activities Integrated with our GIS applicationsIntegrated with our GIS applications Allows attachment of supporting Allows attachment of supporting
documentation (like maps, surveys, etc.)documentation (like maps, surveys, etc.) Accepts payment of application fees by credit Accepts payment of application fees by credit
cardcard
Desired FormatDesired Format
A “wizard-like” interface that operates A “wizard-like” interface that operates like those seen in popular tax filing like those seen in popular tax filing software would seem like a good software would seem like a good solutionsolution Use of contextual help and informational Use of contextual help and informational
resources to educate applicantresources to educate applicant Ability to “pause” an application and Ability to “pause” an application and
continue it at a later timecontinue it at a later time Review history of sections completed and Review history of sections completed and
ability to revise earlier answers ability to revise earlier answers
The RealityThe Reality
DNR has several permit typesDNR has several permit types Many share commonalities in information Many share commonalities in information
requirementsrequirements Building a special-purpose system for each Building a special-purpose system for each
one is cost prohibitiveone is cost prohibitive Interviews have to be easy to alter and Interviews have to be easy to alter and
expand as neededexpand as needed It would be ideal if adjudicators could It would be ideal if adjudicators could
maintain interviews without aid of analyst maintain interviews without aid of analyst programmersprogrammers
A generalized system is needed A generalized system is needed
OptionsOptions
Off-the-shelf solutions are practically non-Off-the-shelf solutions are practically non-existentexistent What I found were products that were too What I found were products that were too
simplisticsimplistic Focused on creation of surveys and testsFocused on creation of surveys and tests
I saw this as an opportunityI saw this as an opportunity Satisfy my senior project requirementSatisfy my senior project requirement Gain experience with the problem domain and Gain experience with the problem domain and
allow me to make recommendationsallow me to make recommendations Without committing State resourcesWithout committing State resources
Interview ModelInterview Model
Interviews are composed of one or Interviews are composed of one or more broad activitiesmore broad activities
Each activity is then composed of Each activity is then composed of one or more data collection screensone or more data collection screens One is designated as the starting point One is designated as the starting point
for the activityfor the activity Screens are arranged in a directed Screens are arranged in a directed
graph that comprise the flow through graph that comprise the flow through the activitythe activity
Interview SessionsInterview Sessions
When user begins interview a session is When user begins interview a session is established that retains all important established that retains all important information about their interaction with the information about their interaction with the interviewinterview
Interview sessions are composed of:Interview sessions are composed of: Timestamps that record when interview was Timestamps that record when interview was
begun and when it endedbegun and when it ended A schedule of activities to completeA schedule of activities to complete Data collected from encountered screensData collected from encountered screens A history of the user’s path through each A history of the user’s path through each
completed activitycompleted activity
Interview ScreensInterview Screens Each data collection screen is composed Each data collection screen is composed
of the usual user interface widgetsof the usual user interface widgets Data is entered into the screen and Data is entered into the screen and
validated for syntactical correctnessvalidated for syntactical correctness Validation failures cause screen to be Validation failures cause screen to be
redisplayed with error messagesredisplayed with error messages All validated data then becomes input to All validated data then becomes input to
conditional branching logic which:conditional branching logic which: Determines next screen to displayDetermines next screen to display Causes scheduled activities to be skipped or Causes scheduled activities to be skipped or
additional activities to be scheduledadditional activities to be scheduled
Interview FlowInterview Flow
When user completes an activity, they When user completes an activity, they proceed to the next scheduled activityproceed to the next scheduled activity
When no activities remain, user is done When no activities remain, user is done with interviewwith interview
Session information is saved and Session information is saved and processed at a later timeprocessed at a later time Currently, session information is simply Currently, session information is simply
dumped to an XML file and written to disk.dumped to an XML file and written to disk.
Environment & PlatformEnvironment & Platform Interviewing system written in Java as a J2EE Interviewing system written in Java as a J2EE
web applicationweb application Deployed on Apache TomcatDeployed on Apache Tomcat Interviews are marked up in an XML-based Interviews are marked up in an XML-based
languagelanguage Actual displayed content is combination of the Actual displayed content is combination of the
interview markup, JSP pages, and client side interview markup, JSP pages, and client side scriptsscripts
Server-side validation and conditional Server-side validation and conditional branching logic can be native Java or any branching logic can be native Java or any scripting language supported by the scripting language supported by the integrated IBM Bean Scripting Frameworkintegrated IBM Bean Scripting Framework
The ResultThe Result
A reusable object model that provides an A reusable object model that provides an abstraction for all key elements of an interviewabstraction for all key elements of an interview
A flexible rendering model based on XML A flexible rendering model based on XML stylesheets that supports Web forms as well as stylesheets that supports Web forms as well as other potential delivery mediums other potential delivery mediums
A runtime that can “play” interview A runtime that can “play” interview descriptionsdescriptions Without significant programming, reducing the Without significant programming, reducing the
effort and level of expertise required to get resultseffort and level of expertise required to get results Allows interview authors to focus more on structure Allows interview authors to focus more on structure
and content rather than technical detailsand content rather than technical details
ConclusionConclusion Producing an interactive interviewing Producing an interactive interviewing
system was an ambitious senior projectsystem was an ambitious senior project All core functionality is presentAll core functionality is present Work to date is certainly classified as a Work to date is certainly classified as a
prototype, and a number of rough edges prototype, and a number of rough edges and incomplete features remainand incomplete features remain
What I’ve done can serve as a useful What I’ve done can serve as a useful vehicle for experimentation and vehicle for experimentation and discussion that I can take back to DNRdiscussion that I can take back to DNR