reporting, the easy way

45
Reporting on your OSP Form Data... the Easy Way [email protected], [email protected] ePortfolio Wonks Wednesday, June 16, 2010 Thursday, June 17, 2010

Upload: will-trillich

Post on 23-Jun-2015

1.340 views

Category:

Technology


3 download

DESCRIPTION

Instead of having to know XML, XSL, XSD, SQL, and command-line tricks because form data is stored in XML blobs -- why not just store form fields in SQL fields so you can point any off-the-shelf reporting tool at your data? Works with Crystal, Cognos, Pentaho and more...

TRANSCRIPT

Page 1: Reporting, the easy way

Reporting on your OSP Form Data...the Easy Way

[email protected], [email protected] Wonks

Wednesday, June 16, 2010

Thursday, June 17, 2010

Page 2: Reporting, the easy way

Reporting on your OSP Form Data...the Easy Way

[email protected], [email protected] Wonks

Wednesday, June 16, 2010

Making  it  Suck  Less

Thursday, June 17, 2010

Page 3: Reporting, the easy way

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

Let’s talk about Reporting

3

Thursday, June 17, 2010

Page 4: Reporting, the easy way

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

Why Bother With Reporting?

• What’s the big deal?• Why collect all this data?

4

Thursday, June 17, 2010

Page 5: Reporting, the easy way

11th  Sakai  Conference  -­‐  June  15-­‐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!

5

Thursday, June 17, 2010

Page 6: Reporting, the easy way

11th  Sakai  Conference  -­‐  June  15-­‐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

6

Thursday, June 17, 2010

Page 7: Reporting, the easy way

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

So Create Some Reports Then

• Let’s take a look at what’s going on, "rst

7

Thursday, June 17, 2010

Page 8: Reporting, the easy way

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

Sakai Already Has a “Reports” ToolOf Its Own

Oh Look...

8

Thursday, June 17, 2010

Page 9: Reporting, the easy way

11th  Sakai  Conference  -­‐  June  15-­‐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

9

Thursday, June 17, 2010

Page 10: Reporting, the easy way

11th  Sakai  Conference  -­‐  June  15-­‐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 :)

10

Thursday, June 17, 2010

Page 11: Reporting, the easy way

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

The OSP “Reports” Tool

• Here’s what it looks like after you install it in your worksite...

11

Thursday, June 17, 2010

Page 12: Reporting, the easy way

11th  Sakai  Conference  -­‐  June  15-­‐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.

12

Thursday, June 17, 2010

Page 13: Reporting, the easy way

11th  Sakai  Conference  -­‐  June  15-­‐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!

13

Thursday, June 17, 2010

Page 14: Reporting, the easy way

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

Yikes!

That’s a PAINFUL learning curve!

14

Thursday, June 17, 2010

Page 15: Reporting, the easy way

11th  Sakai  Conference  -­‐  June  15-­‐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:

15

Thursday, June 17, 2010

Page 16: Reporting, the easy way

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

One of Sean’s Awesome AAC&U VALUE Rubric Forms

16

Get  it  from  h+p://www.openEdPrac7ces.org

Thursday, June 17, 2010

Page 17: Reporting, the easy way

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

• The actual data collected for the "ve “axes” in this form are shown below the grid:

Each Row in that Grid Represents a “Field”

17

Thursday, June 17, 2010

Page 18: Reporting, the easy way

11th  Sakai  Conference  -­‐  June  15-­‐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:

18

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

Thursday, June 17, 2010

Page 19: Reporting, the easy way

• Difficult to conjure a database arrangement to accommodate all these different structures

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

A Contact Info Form Will Look Completely Different

19

<contact-­‐info>        <name>                <first>Bob</first>                <last>Smith</last>        </name>        <emails>                <work>[email protected]</work>                <personal>[email protected]</work>        </emails></contact-­‐info>

All  these  different  formsare  too  amorphous  forthe  programmers  to  predict!

Thursday, June 17, 2010

Page 20: Reporting, the easy way

11th  Sakai  Conference  -­‐  June  15-­‐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...

20

Thursday, June 17, 2010

Page 21: Reporting, the easy way

11th  Sakai  Conference  -­‐  June  15-­‐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!

21

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

Thursday, June 17, 2010

Page 22: Reporting, the easy way

11th  Sakai  Conference  -­‐  June  15-­‐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...

22

Thursday, June 17, 2010

Page 23: Reporting, the easy way

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

The Report-Enabling Gizmo to the Rescue!

Pentaho, Crystal, Cognos and more!

23

Thursday, June 17, 2010

Page 24: Reporting, the easy way

11th  Sakai  Conference  -­‐  June  15-­‐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:

24

Thursday, June 17, 2010

Page 25: Reporting, the easy way

11th  Sakai  Conference  -­‐  June  15-­‐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...

25

Thursday, June 17, 2010

Page 26: Reporting, the easy way

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

Another Example Cognos Report

• Chip is givingeveryone aperfect score!

• Time to havea talk withhim...

26

Thursday, June 17, 2010

Page 27: Reporting, the easy way

11th  Sakai  Conference  -­‐  June  15-­‐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

27

Thursday, June 17, 2010

Page 28: Reporting, the easy way

11th  Sakai  Conference  -­‐  June  15-­‐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

28

Thursday, June 17, 2010

Page 29: Reporting, the easy way

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

How to use the “!admin” Interface

• Select which formsto parse

• Then “Parse” them!

• Let’s follow anexample...

29

Thursday, June 17, 2010

Page 30: Reporting, the easy way

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

Create a New Filled-Out Form Instance

• Evaluator responds to a Student Submission:

30

Normal  workflow:Student’s  cell  isnow  LOCKED

Evaluator  fills  out  Evalua7on  form

Thursday, June 17, 2010

Page 31: Reporting, the easy way

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

Now “Parse” the Chosen Forms

• Visit !admin worksite

• Make sure your chosen form is selected for Parsing

• Then... Parse!

31

Thursday, June 17, 2010

Page 32: Reporting, the easy way

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

Now you can just REFRESH your Reports

• Evaluator added new Evaluations for 2 Students!

32

«  BEFORE  REFRESH

AFTER  REFRESH  »...Then  a  quick  PARSE...

Thursday, June 17, 2010

Page 33: Reporting, the easy way

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

How Does This Work?

Magic!

33

Thursday, June 17, 2010

Page 34: Reporting, the easy way

11th  Sakai  Conference  -­‐  June  15-­‐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)

34

Thursday, June 17, 2010

Page 35: Reporting, the easy way

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

Common Patterns in All Form Structures

• Sure, some forms have text "elds for email, others have numeric "elds for scores...

35

<contact-­‐info>        <name>                <first>Bob</first>                <last>Smith</last>        </name>        <emails>                <work>[email protected]</work>                <personal>[email protected]</work>        </emails></contact-­‐info>

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

Thursday, June 17, 2010

Page 36: Reporting, the easy way

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

Common Patterns in All Form Structures

• Sure, some forms have text "elds for email, others have numeric "elds for scores...

36

<contact-­‐info>        <name>                <first>Bob</first>                <last>Smith</last>        </name>        <emails>                <work>[email protected]</work>                <personal>[email protected]</personal>        </emails></contact-­‐info>

contact-­‐info

name emails

first last work personal

But  each  field  elementhas  a  “parent”  elementand  belongs  to  a  form

Thursday, June 17, 2010

Page 37: Reporting, the easy way

11th  Sakai  Conference  -­‐  June  15-­‐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?

37

Thursday, June 17, 2010

Page 38: Reporting, the easy way

11th  Sakai  Conference  -­‐  June  15-­‐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!

38

Thursday, June 17, 2010

Page 39: Reporting, the easy way

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

The Good and the Bad

So here’s the upshot

39

Thursday, June 17, 2010

Page 40: Reporting, the easy way

11th  Sakai  Conference  -­‐  June  15-­‐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

40

Thursday, June 17, 2010

Page 41: Reporting, the easy way

11th  Sakai  Conference  -­‐  June  15-­‐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... :)

41

Thursday, June 17, 2010

Page 42: Reporting, the easy way

11th  Sakai  Conference  -­‐  June  15-­‐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

42

Thursday, June 17, 2010

Page 43: Reporting, the easy way

11th  Sakai  Conference  -­‐  June  15-­‐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!

43

Thursday, June 17, 2010

Page 45: Reporting, the easy way

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

Thursday, June 17, 2010