Upgrade to Pro — share decks privately, control downloads, hide ads and more …

J-Card Web App

J-Card Web App

Leveraging Ruby on Rails to build a customized web interface to a vendor-supplied, legacy system and deliver greater security and enhanced functionality.

Jason Lewis

March 22, 2011
Tweet

More Decks by Jason Lewis

Other Decks in Programming

Transcript

  1. Getting the Most Out of Transact 3.x: Enhancing Functionality and

    Management with Web-based Utilities Fred Bosworth Jason Lewis Johns Hopkins University
  2. This Session: Getting the Most Out of Blackboard Transact™ 3.x:

    Enhancing Functionality and Management with Web-based Utilities See how Johns Hopkins University enhanced the administration of Transact 3.x with a web utility that easily allows administrators to perform specific tasks and functions through the BBTS 3.6 system. The streamlined and easy-to-use web interface lets administrators add customers, freeze and unfreeze cards and assign access plans with restricted administrative privileges for increased security. JHU will demo the utility and provide best practices for session attendees to leverage JHU's experiences at their own institutions.
  3. Who we are: Fred Bosworth and Jason Lewis •  Fred

    Bosworth came to Johns Hopkins University in the fall of 1997. Fred has spent the past 13 years working on various projects using and enhancing multiple functions of both the UNIX and Windows based Blackboard Transaction systems. Fred has experience as a Systems Administrator on Windows and UNIX servers, data networking and electronics. •  Jason Lewis is a Programmer Analyst at Johns Hopkins University who is currently developing a web interface to BbTS using Ruby and Rails. Prior to coming to JHU, he has worked as a system administrator and freelance web developer, and is a frequent contributor to open-source projects. He has been using Ruby since 2006, and Blackboard since last August.
  4. The history of Transact @ JHU •  Originally a UNIX

    school •  1995 - Went live with UNIX (Harco/AT&T CampusWide) •  Originally housed under the Office of the Registrar •  System administration originally handled by Central IT •  1997 - ID Card Services department created under Student Affairs •  1998 - Took over “ownership” of the system. Started to build out the technical side of the office •  1998 – 2008 – Developed and utilized several tools that allowed for automated data import/export, simplified systems administration, specialized reporting, and integration into multiple systems across our enterprise. •  2009 – Converted to BBTS 3.x – and the fun began…
  5. JHU Office of ID Card Services IDCS is split into

    two parts: •  Administrative –  Day to day dealings with Faculty, Staff, Students and Visitors –  Budgeting –  Accounting •  Technical –  Systems administration –  Systems integration –  Training and technical support –  Device installation and support
  6. Business requirements Over the years as a UNIX school, we

    put various business practices in place which became highly relied upon and are now deemed necessary. Some of the highlights: •  Automated customer imports/exports between BBTS and other (many home-grown) systems in near real-time •  The ability for Security to freeze cards, but not access customer data •  The ability for individual departments to control who has access to their doors without relying on the ID Card Services office •  The ability for users to utilize the TS from Apple Macintosh systems
  7. Features needed in 3.x As we readied to deploy BBTS

    3.x, we realized that we would have to address some limitations of the 3.x system in order to maintain our business practices: •  The ability to automate near real-time import/export of customer data without user or administrator intervention •  The ability to automate near real-time assignment of “base” accounts, events, and access plans without user or administrator intervention •  Finite control of user access to system functions •  Ability to protect Customer information •  Ability to be used on Apple systems running OS X
  8. Our most high profile concern •  The inability to protect

    customer information within the TS interface
  9. Where do we find a solution? As we took a

    look at the implications of living with these limitations we discussed a few different options: •  Do we truly need all of this functionality? Would it be better to change our business practices to conform with the available functionality of BBTS? •  Do we work with Blackboard in hopes that they are able to develop and provide the needed functionality? •  Do we try to develop this functionality in house? •  Do we do all of the above?
  10. Why we decided to go in house •  Access to

    JHU’s systems •  The ability to customize functions and features •  Time •  Money
  11. Bb on Rails •  Bb on Rails (also known as

    J-Card on Rails) is a system that has allowed us to not only maintain the same business practices, but to expand on them as well •  Bb on Rails handles all data imports and exports between our Student, HR, Enterprise Directory and Housing systems without intervention by any of the administrators of these systems •  Bb on Rails handles the automated assignment of accounts, events, and access plans based on customer type and status. Bb on Rails also removes access plans based on this criteria. •  Bb on Rails can highly restrict the amount of customer data that is visible to a User based on their role. –  Allows us to meet the requirement to allow Security to freeze cards without the concern of disclosing personal information –  Allows us to maintain the ability of departmental access coordinators to grant and revoke access plans to their areas without the concern of disclosing personal information •  Bb on Rails is web based, allowing for use on Apple systems as well as others.
  12. Bb on Rails: Things on the Horizon Simplified web based

    reporting • Door usage logs • Accounting logs • Customer transaction logs • Graphs/Charts for trend analysis
  13. Bb on Rails: Things on the Horizon Web based systems

    Tools • Door state control • Device health monitoring • Data back-up and synchronization • Anything else we can dream up