SlideShare ist ein Scribd-Unternehmen logo
1 von 45
Downloaden Sie, um offline zu lesen
Reporting on your OSP Form Data...
                              the Easy Way
                 Will.Trillich@serensoft.com, Sean.Keesler@threeCanoes.com
                                       ePortfolio Wonks
                                   Wednesday, June 16, 2010




Thursday, June 17, 2010
Reporting on your OSP Form Data...
                          Making	
  it	
  Suck	
  Less
                              the Easy Way
                 Will.Trillich@serensoft.com, Sean.Keesler@threeCanoes.com
                                       ePortfolio Wonks
                                   Wednesday, June 16, 2010




Thursday, June 17, 2010
Let’s talk about Reporting


 11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010                     3

Thursday, June 17, 2010
Why Bother With Reporting?
 • What’s the big deal?
 • Why collect all this data?




                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010   4

Thursday, June 17, 2010
Why Bother With Reporting?
 • What’s the big deal?
 • Why collect all this data?

 • We can make decisions based on patterns in the
   information

 • But if you can’t get information out, then putting
   data in is a waste of everyone’s time and effort!


                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010   5

Thursday, June 17, 2010
A Sample Evaluation Form
 • Imagine using an Evaluation form as shown here:
 • For this to be useful you
   must be able to aggregate
   all these evaluations...
       •   per course
       •   per academic year
       •   per student
       •   per evaluator
       •   etc

                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010   6

Thursday, June 17, 2010
So Create Some Reports Then
 • Let’s take a look at what’s going on, rst




                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010   7

Thursday, June 17, 2010
Oh Look...




                                      Sakai Already Has a “Reports” Tool
                                                  Of Its Own

 11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010                8

Thursday, June 17, 2010
Sakai’s Built-In “Reports” Tool
 • Why not just use that, then?
 • Once it’s set up you can pull lots of useful
   patterns from your data




                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010   9

Thursday, June 17, 2010
Sakai’s Built-In “Reports” Tool
 • Why not just use that, then?
 • Once it’s set up you can pull lots of useful
   patterns from your data

 • “Once it’s set up”!
       • Enormous investment, attention, resources to get it
         working
       • You don’t have to be IU—but it helps :)


                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010   10

Thursday, June 17, 2010
The OSP “Reports” Tool
 • Here’s what it looks like after you install it in your
   worksite...




                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010   11

Thursday, June 17, 2010
So... Now What?
 • Can you see how to create a report?
 • What will you need to know to get it working?



 • Can you hook it up to Crystal Reports
   or Cognos tools or Pentaho and get straight to
   your Evaluation-form elds? Nope.


                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010   12

Thursday, June 17, 2010
How do you Use it?
 • To use the OSP “Reports” tool here’s all you need
   to know in order to create a new report...
       •   XML data structures and operations
       •   XSL to transform the XML
       •   XSD to see where the data comes from
       •   SQL to issue queries to the database
       •   Be Command-line Savvy, and have backstage
           access to the Sakai server
 • ...for EVERY NEW REPORT!
                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010   13

Thursday, June 17, 2010
That’s a PAINFUL learning curve!




                                                                             Yikes!


 11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010                                      14

Thursday, June 17, 2010
Why Is OSP Reporting So Challenging?
 • When you build a new XSD form from scratch it
   could have any (ANY!) structure
 • The programmers couldn’t predict in advance
   what data structures would be needed
 • So OSP Collects form data in big, amorphous,
   black-box XML chunks as a universal “solution”

 • For example:

                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010   15

Thursday, June 17, 2010
One of Sean’s Awesome AAC&U VALUE Rubric Forms




                                                                                 Get	
  it	
  from	
  h+p://www.openEdPrac7ces.org
                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010                                                       16

Thursday, June 17, 2010
Each Row in that Grid Represents a “Field”
 • The actual data collected for the ve “axes” in this
   form are shown below the grid:




                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010   17

Thursday, June 17, 2010
This is Why the Programmers Opted to Store XML Blobs
 • So the Sakai Programmers let us create any form
   structure we want
 • The result gets stored as an XML blob, such as:
                <eval-­‐form>
                	
  	
  <organiza7on>	
  3	
  </organiza7on>
                	
  	
  <language>	
  4	
  </language>
                	
  	
  <delivery>	
  4	
  </delivery>
                	
  	
  <support>	
  3	
  </support>
                	
  	
  <message>	
  4	
  </message>
                	
  	
  <commentary>	
  Great	
  improvement...	
  </commentary>
                	
  	
  <ra7ng>	
  3.6	
  </ra7ng>
                </eval-­‐form>
                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010     18

Thursday, June 17, 2010
A Contact Info Form Will Look Completely Different
             <contact-­‐info>
             	
  	
  	
  	
  <name>
             	
  	
  	
  	
  	
  	
  	
  	
  <first>Bob</first>
             	
  	
  	
  	
  	
  	
  	
  	
  <last>Smith</last>        All	
  these	
  different	
  forms
             	
  	
  	
  	
  </name>                                   are	
  too	
  amorphous	
  for
                                                                       the	
  programmers	
  to	
  predict!
             	
  	
  	
  	
  <emails>
             	
  	
  	
  	
  	
  	
  	
  	
  <work>bob@work.net</work>
             	
  	
  	
  	
  	
  	
  	
  	
  <personal>kahuna@mongo.org</work>
             	
  	
  	
  	
  </emails>
             </contact-­‐info>
 • Difficult to conjure a database arrangement to
   accommodate all these different structures

                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010                                19

Thursday, June 17, 2010
Forms can Vary Widely
 • Other forms are totally different
       • Résumé/CV, Contact Info Form, Re ection Form...
 • The programmers knew we’d conjure up all kinds
   of different XSD form structures



 • So the programmers chose to just store the XML
 • But XML is for transport, not storage...

                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010   20

Thursday, June 17, 2010
PROBLEM: How can you Reach the Field-Level Data?
 • If you want an average or total of a particular eld
   for all students...
 • It’s buried inside all this text!
              <eval-­‐form>
              	
  	
  	
  	
  <organiza7on>	
  3	
  </organiza7on>
              	
  	
  	
  	
  <language>	
  4	
  </language>
              	
  	
  	
  	
  <delivery>	
  4	
  </delivery>
              	
  	
  	
  	
  <support>	
  3	
  </support>
              	
  	
  	
  	
  <message>	
  4	
  </message>
              	
  	
  	
  	
  <commentary>	
  Great	
  improvement...	
  </commentary>
              	
  	
  	
  	
  <average>	
  3.6	
  </average>
              </eval-­‐form>
                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010           21

Thursday, June 17, 2010
You Could use XSL to parse it...
 • XSL is designed to transform XML to something
   else (often HTML)
 • But there’s a STEEP learning curve there
 • Requires IT mojo and lots of caffeine


 • Sure would be nice if we could just use a point-
   and-click reporting tool like Crystal Reports or
   Cognos or Pentaho...
                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010   22

Thursday, June 17, 2010
Pentaho, Crystal, Cognos and more!




                      The Report-Enabling Gizmo to the Rescue!


 11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010                                   23

Thursday, June 17, 2010
It makes your Form Data Reachable
 • It makes everything SQL-selectable!
 • Don’t need to learn XML, XSL, XSD, backstage
   command-line hooey
 • Cognos? Pentaho? Crystal Reports?
   No problemo


 • We came up with some sample reports
   to illustrate:
                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010   24

Thursday, June 17, 2010
A Sample “Cognos Impromptu” Report
 • Who’s getting what scores?
       • Marie is squeaking by Blaise




 • And who’s giving what scores?
       • Hmm, let’s see this another way...
                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010   25

Thursday, June 17, 2010
Another Example Cognos Report
 • Chip is giving
   everyone a
   perfect score!
 • Time to have
   a talk with
   him...




                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010   26

Thursday, June 17, 2010
Reports like this Help you Make Decisions and Take Action
 • Here we can see one evaluator is likely not taking
   his task seriously
 • Reporting enables you to see stuff like this and
   then take action to nd out more, or to work it
   out
 • Sure is easy to come up with reports like this if
   you can use Cognos or Crystal or Pentaho
 • ...which you can’t do when the data is buried
   inside XML blobs
                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010   27

Thursday, June 17, 2010
Let’s See the OSPTOOL Gizmo in its Element
 • Once the tool is installed in your !admin
   workspace:
       • Open the OSPTOOL there
       • Specify which forms to process
       • Click “Parse Selected Forms”



 • Kick back, be awesome, bask in the accolades


                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010   28

Thursday, June 17, 2010
How to use the “!admin” Interface
 • Select which forms
   to parse
 • Then “Parse” them!


 • Let’s follow an
   example...



                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010   29

Thursday, June 17, 2010
Create a New Filled-Out Form Instance
 • Evaluator responds to a Student Submission:




             Evaluator	
  fills	
  out	
  
             Evalua7on	
  form
                                                                                 Normal	
  workflow:
                                                                                 Student’s	
  cell	
  is
                                                                                 now	
  LOCKED



                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010                             30

Thursday, June 17, 2010
Now “Parse” the Chosen Forms
 • Visit !admin worksite




 • Make sure your chosen form is selected for
   Parsing
 • Then... Parse!


                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010   31

Thursday, June 17, 2010
Now you can just REFRESH your Reports
 • Evaluator added new Evaluations for 2 Students!




                   «	
  BEFORE	
  REFRESH
                                                                       ...Then	
  a	
  quick	
  PARSE...   AFTER	
  REFRESH	
  »
                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010                                                     32

Thursday, June 17, 2010
Magic!




                                                                  How Does This Work?


 11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010                         33

Thursday, June 17, 2010
Reporting Tools Require Access to SQL Fields
 • If the data is available at the SQL- eld level then
   off-the-shelf reporting tools like Cognos or
   Pentaho or Crystal can reveal patterns
 • The OSPtool Gizmo makes all the form elds
   available directly via SQL
       • (You do still need to know SQL, or have access to
         someone who does, but now you can forget the XSD
         and XSL and command-line voodoo)



                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010   34

Thursday, June 17, 2010
Common Patterns in All Form Structures
 • Sure, some forms have text elds for email, others
   have numeric elds for scores...
                                                                                   <eval-­‐form>
                                                                                   	
  	
  <organiza7on>	
  3	
  </organiza7on>
  <contact-­‐info>                                                                 	
  	
  <language>	
  4	
  </language>
  	
  	
  	
  	
  <name>                                                           	
  	
  <delivery>	
  4	
  </delivery>
  	
  	
  	
  	
  	
  	
  	
  	
  <first>Bob</first>                                 	
  	
  <support>	
  3	
  </support>
  	
  	
  	
  	
  	
  	
  	
  	
  <last>Smith</last>                               	
  	
  <message>	
  4	
  </message>
  	
  	
  	
  	
  </name>                                                          	
  	
  <commentary>	
  Great	
  improvement...	
  </comme
  	
  	
  	
  	
  <emails>                                                         	
  	
  <average>	
  3.6	
  </average>
  	
  	
  	
  	
  	
  	
  	
  	
  <work>bob@work.net</work>                        </eval-­‐form>
  	
  	
  	
  	
  	
  	
  	
  	
  <personal>kahuna@mongo.org</work>
  	
  	
  	
  	
  </emails>
  </contact-­‐info>


                  11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010                                                        35

Thursday, June 17, 2010
Common Patterns in All Form Structures
 • Sure, some forms have text elds for email, others
   have numeric elds for scores...

                                                                                  contact-­‐info
  <contact-­‐info>
  	
  	
  	
  	
  <name>
                                                                    name                             emails
  	
  	
  	
  	
  	
  	
  	
  	
  <first>Bob</first>
  	
  	
  	
  	
  	
  	
  	
  	
  <last>Smith</last>
  	
  	
  	
  	
  </name>
                                                              first       last             work                personal
  	
  	
  	
  	
  <emails>
  	
  	
  	
  	
  	
  	
  	
  	
  <work>bob@work.net</work>
  	
  	
  	
  	
  	
  	
  	
  	
  <personal>kahuna@mongo.org</personal>                  But	
  each	
  field	
  element
  	
  	
  	
  	
  </emails>                                                              has	
  a	
  “parent”	
  element
  </contact-­‐info>                                                                      and	
  belongs	
  to	
  a	
  form


                 11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010                                              36

Thursday, June 17, 2010
Common Patterns in All Form Structures
 • Sure, some forms have text elds for email, others
   have numeric elds for scores...

 • But all eld elements have a position inside the
   form data
 • All eld elements have a “parent” element
 • All eld elements have a root-level “form” element
 • Why not leverage that?

                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010   37

Thursday, June 17, 2010
That’s Exactly what the OSPtool Gizmo Does
 • Each eld knows what its “parent” is
 • Easy to determine the “root” form for any eld
 • That’s it!




                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010   38

Thursday, June 17, 2010
So here’s the upshot




                                                                  The Good and the Bad


 11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010                              39

Thursday, June 17, 2010
The Good Parts
 • It’s freely available as Source Code
       • https://source.sakaiproject.org/contrib/serensoft/
 • Your report-writers will only need to know SQL
 • Any off-the-shelf SQL reporting package will work
       •   Pentaho
       •   Cognos
       •   Crystal Reports
       •   etc


                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010      40

Thursday, June 17, 2010
Even Better
 • Wouldn’t it be great if your OSP form data were
   stored this way by default instead of having to go
   through a separate “parsing” process?




 • But I digress... :)



                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010         41

Thursday, June 17, 2010
The Bad Parts
 • Does it scale?
       • Absolutely no idea, please test it!
 • Is the !admin interface elegant and clean?
       • Um, no
 • It’s not “live”
       • Updated (and new) forms require re-parsing before
         the data is visible in SQL
 • Does it auto-run (via Quartz jobs)?
       • Not at the moment, “Parse” is manual-only
                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010       42

Thursday, June 17, 2010
Please Use it and Get to the Patterns in your Data!
 • Please install it and try it out
 • You won’t need an army of XSL/XML/XSD
   engineers, only someone with some SQL skills



 • Have fun Unravelling your XML!




                11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010   43

Thursday, June 17, 2010
http://www.surveymonkey.com/s/sakai10

                                            https://source.sakaiproject.org/contrib/serensoft/




                                                   will.trillich @ serensoft.com


 11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010                                  44

Thursday, June 17, 2010
11th	
  Sakai	
  Conference	
  -­‐	
  June	
  15-­‐17,	
  2010   45

Thursday, June 17, 2010

Weitere ähnliche Inhalte

Andere mochten auch

выхадные в тбилиси
выхадные в тбилисивыхадные в тбилиси
выхадные в тбилиси
Maia Odisharia
 
INQUIRY INTO THE DEVELOPMENT OF A FLIPPED CLASSROOM PROJECT FOR TRAINING FUTU...
INQUIRY INTO THE DEVELOPMENT OF A FLIPPED CLASSROOM PROJECT FOR TRAINING FUTU...INQUIRY INTO THE DEVELOPMENT OF A FLIPPED CLASSROOM PROJECT FOR TRAINING FUTU...
INQUIRY INTO THE DEVELOPMENT OF A FLIPPED CLASSROOM PROJECT FOR TRAINING FUTU...
Université de Sherbrooke
 
Fotos 2 a cbtis
Fotos 2 a cbtisFotos 2 a cbtis
Fotos 2 a cbtis
Maru Reyes
 
6 A CALIFICACIONES SEMESTRALES
6 A CALIFICACIONES SEMESTRALES6 A CALIFICACIONES SEMESTRALES
6 A CALIFICACIONES SEMESTRALES
Maru Reyes
 
Ice Strategic Overview 2011 V1
Ice Strategic Overview 2011   V1Ice Strategic Overview 2011   V1
Ice Strategic Overview 2011 V1
jrowley9999
 
D: Dive Into Mobile speaker intro slides
D: Dive Into Mobile speaker intro slidesD: Dive Into Mobile speaker intro slides
D: Dive Into Mobile speaker intro slides
ROAR Design & Events
 

Andere mochten auch (20)

поделки
поделкиподелки
поделки
 
Sreerag web services - universal data access
Sreerag web services - universal data accessSreerag web services - universal data access
Sreerag web services - universal data access
 
Sreerag dot net vs j2ee
Sreerag   dot net vs j2eeSreerag   dot net vs j2ee
Sreerag dot net vs j2ee
 
LIFE - 10/21/09 - LSC-CyFair New Construction Update
LIFE - 10/21/09 - LSC-CyFair New Construction UpdateLIFE - 10/21/09 - LSC-CyFair New Construction Update
LIFE - 10/21/09 - LSC-CyFair New Construction Update
 
выхадные в тбилиси
выхадные в тбилисивыхадные в тбилиси
выхадные в тбилиси
 
INQUIRY INTO THE DEVELOPMENT OF A FLIPPED CLASSROOM PROJECT FOR TRAINING FUTU...
INQUIRY INTO THE DEVELOPMENT OF A FLIPPED CLASSROOM PROJECT FOR TRAINING FUTU...INQUIRY INTO THE DEVELOPMENT OF A FLIPPED CLASSROOM PROJECT FOR TRAINING FUTU...
INQUIRY INTO THE DEVELOPMENT OF A FLIPPED CLASSROOM PROJECT FOR TRAINING FUTU...
 
Fotos 2 a cbtis
Fotos 2 a cbtisFotos 2 a cbtis
Fotos 2 a cbtis
 
6 A CALIFICACIONES SEMESTRALES
6 A CALIFICACIONES SEMESTRALES6 A CALIFICACIONES SEMESTRALES
6 A CALIFICACIONES SEMESTRALES
 
Marketer do Século XXI - APPM
Marketer do Século XXI - APPM  Marketer do Século XXI - APPM
Marketer do Século XXI - APPM
 
World War II
World War IIWorld War II
World War II
 
Ice Strategic Overview 2011 V1
Ice Strategic Overview 2011   V1Ice Strategic Overview 2011   V1
Ice Strategic Overview 2011 V1
 
D: Dive Into Mobile speaker intro slides
D: Dive Into Mobile speaker intro slidesD: Dive Into Mobile speaker intro slides
D: Dive Into Mobile speaker intro slides
 
Science Quiz Winners
Science Quiz WinnersScience Quiz Winners
Science Quiz Winners
 
Retroalimentación Unidad I
Retroalimentación Unidad IRetroalimentación Unidad I
Retroalimentación Unidad I
 
G8 sikap perubahn
G8 sikap perubahnG8 sikap perubahn
G8 sikap perubahn
 
El Transcantabrico Gran Lujo 2011
El Transcantabrico Gran Lujo 2011El Transcantabrico Gran Lujo 2011
El Transcantabrico Gran Lujo 2011
 
Idioma ii powerpoint presentation museums
Idioma ii powerpoint presentation museumsIdioma ii powerpoint presentation museums
Idioma ii powerpoint presentation museums
 
Stx meetings-aug11
Stx meetings-aug11Stx meetings-aug11
Stx meetings-aug11
 
Alfabetul morse
Alfabetul morseAlfabetul morse
Alfabetul morse
 
Sreerag what is a web service
Sreerag   what is a web serviceSreerag   what is a web service
Sreerag what is a web service
 

Ähnlich wie Reporting, the easy way

Reporting On Your Xml Field Data
Reporting On Your Xml Field DataReporting On Your Xml Field Data
Reporting On Your Xml Field Data
Will Trillich
 
Connecting Sakai and uPortal
Connecting Sakai and uPortalConnecting Sakai and uPortal
Connecting Sakai and uPortal
Steve Swinsburg
 
Profile2 - Social networking for Sakai2
Profile2 - Social networking for Sakai2Profile2 - Social networking for Sakai2
Profile2 - Social networking for Sakai2
Steve Swinsburg
 
Making your oss project more like rails
Making your oss project more like railsMaking your oss project more like rails
Making your oss project more like rails
Yehuda Katz
 
Mwrc2011 cookbook design patterns
Mwrc2011 cookbook design patternsMwrc2011 cookbook design patterns
Mwrc2011 cookbook design patterns
jtimberman
 
Practical Ruby Projects with MongoDB - Ruby Midwest
Practical Ruby Projects with MongoDB - Ruby MidwestPractical Ruby Projects with MongoDB - Ruby Midwest
Practical Ruby Projects with MongoDB - Ruby Midwest
Alex Sharp
 

Ähnlich wie Reporting, the easy way (20)

Is Sakai Always This Slow?
Is Sakai Always This Slow?Is Sakai Always This Slow?
Is Sakai Always This Slow?
 
Customizations Made to Sakai at Texas State
Customizations Made to Sakai at Texas StateCustomizations Made to Sakai at Texas State
Customizations Made to Sakai at Texas State
 
Reporting On Your Xml Field Data
Reporting On Your Xml Field DataReporting On Your Xml Field Data
Reporting On Your Xml Field Data
 
Connecting Sakai and uPortal
Connecting Sakai and uPortalConnecting Sakai and uPortal
Connecting Sakai and uPortal
 
Intro to xsl templates
Intro to xsl templatesIntro to xsl templates
Intro to xsl templates
 
Messages & Forums 2.7, Not What You Were Expecting
Messages & Forums 2.7, Not What You Were ExpectingMessages & Forums 2.7, Not What You Were Expecting
Messages & Forums 2.7, Not What You Were Expecting
 
Summer of Tech Careers Seminar 2010
Summer of Tech Careers Seminar 2010Summer of Tech Careers Seminar 2010
Summer of Tech Careers Seminar 2010
 
Managing technical communicators in an XML environment
Managing technical communicators in an XML environmentManaging technical communicators in an XML environment
Managing technical communicators in an XML environment
 
Summer of Tech Resume Bootcamp 2010
Summer of Tech Resume Bootcamp 2010  Summer of Tech Resume Bootcamp 2010
Summer of Tech Resume Bootcamp 2010
 
GGUG:Practical DSL Design
GGUG:Practical DSL DesignGGUG:Practical DSL Design
GGUG:Practical DSL Design
 
Profile2 - Social networking for Sakai2
Profile2 - Social networking for Sakai2Profile2 - Social networking for Sakai2
Profile2 - Social networking for Sakai2
 
Making your oss project more like rails
Making your oss project more like railsMaking your oss project more like rails
Making your oss project more like rails
 
Mwrc2011 cookbook design patterns
Mwrc2011 cookbook design patternsMwrc2011 cookbook design patterns
Mwrc2011 cookbook design patterns
 
Caelum dicas web 2010
Caelum dicas web 2010Caelum dicas web 2010
Caelum dicas web 2010
 
Large Site Single Submit
Large Site Single SubmitLarge Site Single Submit
Large Site Single Submit
 
Persistence Smoothie: Blending SQL and NoSQL (RubyNation Edition)
Persistence  Smoothie: Blending SQL and NoSQL (RubyNation Edition)Persistence  Smoothie: Blending SQL and NoSQL (RubyNation Edition)
Persistence Smoothie: Blending SQL and NoSQL (RubyNation Edition)
 
20100714accel
20100714accel20100714accel
20100714accel
 
Practical Ruby Projects with MongoDB - Ruby Midwest
Practical Ruby Projects with MongoDB - Ruby MidwestPractical Ruby Projects with MongoDB - Ruby Midwest
Practical Ruby Projects with MongoDB - Ruby Midwest
 
When is a Website Not Enough? Now.
When is a Website Not Enough? Now.When is a Website Not Enough? Now.
When is a Website Not Enough? Now.
 
Oufuk meeting 5 mf
Oufuk meeting 5 mfOufuk meeting 5 mf
Oufuk meeting 5 mf
 

Kürzlich hochgeladen

Kürzlich hochgeladen (20)

Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 

Reporting, the easy way

  • 1. Reporting on your OSP Form Data... the Easy Way Will.Trillich@serensoft.com, Sean.Keesler@threeCanoes.com ePortfolio Wonks Wednesday, June 16, 2010 Thursday, June 17, 2010
  • 2. Reporting on your OSP Form Data... Making  it  Suck  Less the Easy Way Will.Trillich@serensoft.com, Sean.Keesler@threeCanoes.com ePortfolio Wonks Wednesday, June 16, 2010 Thursday, June 17, 2010
  • 3. Let’s talk about Reporting 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 3 Thursday, June 17, 2010
  • 4. Why Bother With Reporting? • What’s the big deal? • Why collect all this data? 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 4 Thursday, June 17, 2010
  • 5. Why Bother With Reporting? • What’s the big deal? • Why collect all this data? • We can make decisions based on patterns in the information • But if you can’t get information out, then putting data in is a waste of everyone’s time and effort! 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 5 Thursday, June 17, 2010
  • 6. A Sample Evaluation Form • Imagine using an Evaluation form as shown here: • For this to be useful you must be able to aggregate all these evaluations... • per course • per academic year • per student • per evaluator • etc 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 6 Thursday, June 17, 2010
  • 7. So Create Some Reports Then • Let’s take a look at what’s going on, rst 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 7 Thursday, June 17, 2010
  • 8. Oh Look... Sakai Already Has a “Reports” Tool Of Its Own 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 8 Thursday, June 17, 2010
  • 9. Sakai’s Built-In “Reports” Tool • Why not just use that, then? • Once it’s set up you can pull lots of useful patterns from your data 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 9 Thursday, June 17, 2010
  • 10. Sakai’s Built-In “Reports” Tool • Why not just use that, then? • Once it’s set up you can pull lots of useful patterns from your data • “Once it’s set up”! • Enormous investment, attention, resources to get it working • You don’t have to be IU—but it helps :) 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 10 Thursday, June 17, 2010
  • 11. The OSP “Reports” Tool • Here’s what it looks like after you install it in your worksite... 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 11 Thursday, June 17, 2010
  • 12. So... Now What? • Can you see how to create a report? • What will you need to know to get it working? • Can you hook it up to Crystal Reports or Cognos tools or Pentaho and get straight to your Evaluation-form elds? Nope. 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 12 Thursday, June 17, 2010
  • 13. How do you Use it? • To use the OSP “Reports” tool here’s all you need to know in order to create a new report... • XML data structures and operations • XSL to transform the XML • XSD to see where the data comes from • SQL to issue queries to the database • Be Command-line Savvy, and have backstage access to the Sakai server • ...for EVERY NEW REPORT! 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 13 Thursday, June 17, 2010
  • 14. That’s a PAINFUL learning curve! Yikes! 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 14 Thursday, June 17, 2010
  • 15. Why Is OSP Reporting So Challenging? • When you build a new XSD form from scratch it could have any (ANY!) structure • The programmers couldn’t predict in advance what data structures would be needed • So OSP Collects form data in big, amorphous, black-box XML chunks as a universal “solution” • For example: 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 15 Thursday, June 17, 2010
  • 16. One of Sean’s Awesome AAC&U VALUE Rubric Forms Get  it  from  h+p://www.openEdPrac7ces.org 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 16 Thursday, June 17, 2010
  • 17. Each Row in that Grid Represents a “Field” • The actual data collected for the ve “axes” in this form are shown below the grid: 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 17 Thursday, June 17, 2010
  • 18. This is Why the Programmers Opted to Store XML Blobs • So the Sakai Programmers let us create any form structure we want • The result gets stored as an XML blob, such as: <eval-­‐form>    <organiza7on>  3  </organiza7on>    <language>  4  </language>    <delivery>  4  </delivery>    <support>  3  </support>    <message>  4  </message>    <commentary>  Great  improvement...  </commentary>    <ra7ng>  3.6  </ra7ng> </eval-­‐form> 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 18 Thursday, June 17, 2010
  • 19. A Contact Info Form Will Look Completely Different <contact-­‐info>        <name>                <first>Bob</first>                <last>Smith</last> All  these  different  forms        </name> are  too  amorphous  for the  programmers  to  predict!        <emails>                <work>bob@work.net</work>                <personal>kahuna@mongo.org</work>        </emails> </contact-­‐info> • Difficult to conjure a database arrangement to accommodate all these different structures 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 19 Thursday, June 17, 2010
  • 20. Forms can Vary Widely • Other forms are totally different • Résumé/CV, Contact Info Form, Re ection Form... • The programmers knew we’d conjure up all kinds of different XSD form structures • So the programmers chose to just store the XML • But XML is for transport, not storage... 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 20 Thursday, June 17, 2010
  • 21. PROBLEM: How can you Reach the Field-Level Data? • If you want an average or total of a particular eld for all students... • It’s buried inside all this text! <eval-­‐form>        <organiza7on>  3  </organiza7on>        <language>  4  </language>        <delivery>  4  </delivery>        <support>  3  </support>        <message>  4  </message>        <commentary>  Great  improvement...  </commentary>        <average>  3.6  </average> </eval-­‐form> 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 21 Thursday, June 17, 2010
  • 22. You Could use XSL to parse it... • XSL is designed to transform XML to something else (often HTML) • But there’s a STEEP learning curve there • Requires IT mojo and lots of caffeine • Sure would be nice if we could just use a point- and-click reporting tool like Crystal Reports or Cognos or Pentaho... 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 22 Thursday, June 17, 2010
  • 23. Pentaho, Crystal, Cognos and more! The Report-Enabling Gizmo to the Rescue! 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 23 Thursday, June 17, 2010
  • 24. It makes your Form Data Reachable • It makes everything SQL-selectable! • Don’t need to learn XML, XSL, XSD, backstage command-line hooey • Cognos? Pentaho? Crystal Reports? No problemo • We came up with some sample reports to illustrate: 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 24 Thursday, June 17, 2010
  • 25. A Sample “Cognos Impromptu” Report • Who’s getting what scores? • Marie is squeaking by Blaise • And who’s giving what scores? • Hmm, let’s see this another way... 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 25 Thursday, June 17, 2010
  • 26. Another Example Cognos Report • Chip is giving everyone a perfect score! • Time to have a talk with him... 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 26 Thursday, June 17, 2010
  • 27. Reports like this Help you Make Decisions and Take Action • Here we can see one evaluator is likely not taking his task seriously • Reporting enables you to see stuff like this and then take action to nd out more, or to work it out • Sure is easy to come up with reports like this if you can use Cognos or Crystal or Pentaho • ...which you can’t do when the data is buried inside XML blobs 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 27 Thursday, June 17, 2010
  • 28. Let’s See the OSPTOOL Gizmo in its Element • Once the tool is installed in your !admin workspace: • Open the OSPTOOL there • Specify which forms to process • Click “Parse Selected Forms” • Kick back, be awesome, bask in the accolades 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 28 Thursday, June 17, 2010
  • 29. How to use the “!admin” Interface • Select which forms to parse • Then “Parse” them! • Let’s follow an example... 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 29 Thursday, June 17, 2010
  • 30. Create a New Filled-Out Form Instance • Evaluator responds to a Student Submission: Evaluator  fills  out   Evalua7on  form Normal  workflow: Student’s  cell  is now  LOCKED 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 30 Thursday, June 17, 2010
  • 31. Now “Parse” the Chosen Forms • Visit !admin worksite • Make sure your chosen form is selected for Parsing • Then... Parse! 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 31 Thursday, June 17, 2010
  • 32. Now you can just REFRESH your Reports • Evaluator added new Evaluations for 2 Students! «  BEFORE  REFRESH ...Then  a  quick  PARSE... AFTER  REFRESH  » 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 32 Thursday, June 17, 2010
  • 33. Magic! How Does This Work? 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 33 Thursday, June 17, 2010
  • 34. Reporting Tools Require Access to SQL Fields • If the data is available at the SQL- eld level then off-the-shelf reporting tools like Cognos or Pentaho or Crystal can reveal patterns • The OSPtool Gizmo makes all the form elds available directly via SQL • (You do still need to know SQL, or have access to someone who does, but now you can forget the XSD and XSL and command-line voodoo) 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 34 Thursday, June 17, 2010
  • 35. Common Patterns in All Form Structures • Sure, some forms have text elds for email, others have numeric elds for scores... <eval-­‐form>    <organiza7on>  3  </organiza7on> <contact-­‐info>    <language>  4  </language>        <name>    <delivery>  4  </delivery>                <first>Bob</first>    <support>  3  </support>                <last>Smith</last>    <message>  4  </message>        </name>    <commentary>  Great  improvement...  </comme        <emails>    <average>  3.6  </average>                <work>bob@work.net</work> </eval-­‐form>                <personal>kahuna@mongo.org</work>        </emails> </contact-­‐info> 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 35 Thursday, June 17, 2010
  • 36. Common Patterns in All Form Structures • Sure, some forms have text elds for email, others have numeric elds for scores... contact-­‐info <contact-­‐info>        <name> name emails                <first>Bob</first>                <last>Smith</last>        </name> first last work personal        <emails>                <work>bob@work.net</work>                <personal>kahuna@mongo.org</personal> But  each  field  element        </emails> has  a  “parent”  element </contact-­‐info> and  belongs  to  a  form 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 36 Thursday, June 17, 2010
  • 37. Common Patterns in All Form Structures • Sure, some forms have text elds for email, others have numeric elds for scores... • But all eld elements have a position inside the form data • All eld elements have a “parent” element • All eld elements have a root-level “form” element • Why not leverage that? 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 37 Thursday, June 17, 2010
  • 38. That’s Exactly what the OSPtool Gizmo Does • Each eld knows what its “parent” is • Easy to determine the “root” form for any eld • That’s it! 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 38 Thursday, June 17, 2010
  • 39. So here’s the upshot The Good and the Bad 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 39 Thursday, June 17, 2010
  • 40. The Good Parts • It’s freely available as Source Code • https://source.sakaiproject.org/contrib/serensoft/ • Your report-writers will only need to know SQL • Any off-the-shelf SQL reporting package will work • Pentaho • Cognos • Crystal Reports • etc 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 40 Thursday, June 17, 2010
  • 41. Even Better • Wouldn’t it be great if your OSP form data were stored this way by default instead of having to go through a separate “parsing” process? • But I digress... :) 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 41 Thursday, June 17, 2010
  • 42. The Bad Parts • Does it scale? • Absolutely no idea, please test it! • Is the !admin interface elegant and clean? • Um, no • It’s not “live” • Updated (and new) forms require re-parsing before the data is visible in SQL • Does it auto-run (via Quartz jobs)? • Not at the moment, “Parse” is manual-only 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 42 Thursday, June 17, 2010
  • 43. Please Use it and Get to the Patterns in your Data! • Please install it and try it out • You won’t need an army of XSL/XML/XSD engineers, only someone with some SQL skills • Have fun Unravelling your XML! 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 43 Thursday, June 17, 2010
  • 44. http://www.surveymonkey.com/s/sakai10 https://source.sakaiproject.org/contrib/serensoft/ will.trillich @ serensoft.com 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 44 Thursday, June 17, 2010
  • 45. 11th  Sakai  Conference  -­‐  June  15-­‐17,  2010 45 Thursday, June 17, 2010