ETD-db 2.0: Rewriting ETD-db Sung Hee Park*† Paul Mather †, Kimberli Weeks †, Collin Brittle†, Gail McMillan†, Edward Fox * †Digital Library and Archives, University.

Download Report

Transcript ETD-db 2.0: Rewriting ETD-db Sung Hee Park*† Paul Mather †, Kimberli Weeks †, Collin Brittle†, Gail McMillan†, Edward Fox * †Digital Library and Archives, University.

ETD-db 2.0: Rewriting ETD-db

Sung Hee Park

* † Paul Mather Edward Fox * † , Kimberli Weeks † , Collin Brittle † ,

Gail McMillan

† , † Digital Library and Archives, University Libraries, Virginia Tech * Digital Library Research Lab, Computer Science, Virginia Tech 14 th International Symposium on Electronic Theses & Dissertations Sept. 15,2011, Cape Town, South Africa

Contents

      Introduction Requirements Design Implementation Tests Summary and Future Work

Introduction

 ◦ ◦ ETD-db 1.0

◦ Workflow: submit, manage, search, brows ◦ 1995/97: James Powell, 1998/2001 Tony Atkins  Technical Directors, VT Digital Library and Archives Web applications, Perl, MySQL Improvements suggested by   Stakeholders (e.g., system admins, managers, authors) R. Jones 2004 article compares DSpace & ETD-db

ETD-db 2.0

    New version of Virginia Tech’s ETD system Web application Ruby on Rails ◦ ◦ Model-View-Controller-based Web app framework Any database ◦ Any server supported by Ruby on Rails Major objectives of rewriting ETD-db 1.

2.

Improve the original, powerful functionalities Handle ETD collections more reliably and securely

Use Cases

Show us ers ReportETDStatistics Report Usage Administrator Modify users Add users Delete users Manage s ystem Manager Manage users Change ETD Subm it ETD Cataloger Catalog ETDs Login Author Review ETD Withhold ETD Reviewer Search ETD Approve ETD Fill Title Page Change Avaiabilty Upload Files Send Email Fulltext Search Move Files Mail System Addis on ETD-db s ystem Blue: new us e cas es Yellow: existing us e cases Generate_title_pages Host OS system Generate_browse_pages Metadata Search Brows e ETD Manage Available Generate html header Generate html footer Patron Brows er by Department Brows er by Advisor Brows er by Year Brows er by Author Modity Manage ETD Delete View Manage Submitted Manage Withheld

Major Requirements

  Improving single password per role ◦ ETD-db  One password per role, multiple staff per role ◦ More reliable and safer system  Role management functionalities  Finer-grained permissions Supporting fine-grained access control ◦ ETD-db  Database-level access permission control  For example, ETD-db 1.0 has submitted, available, and withheld ETD databases. ◦ ETD-db 2.0  digital object-level and action-level access permission

Design

Keyword Provenance AvailabilityDescription CopyrightStatement DegreeDescription DoctypeDescription DepartmentList UrnRegistry Content Person ETD Administrator (from Use Case View) Person_Role Action Role Permission Manager (from Use Case View) Committee Author (from Use Case View) Chair Co-chair Reviewer Cataloger (from Use Case View) (from Use Case View) Member DigitalObject Document Audio Video

Designed Objects

     Person ◦ Class neutral to roles ◦ Information about users Role ◦ Class neutral to person ◦ Information about the role itself Permission ◦ Class defines actions Action ◦ Class describes activity like CRUD (Create, Read, Update and Delete) Digital Object ◦ Class represents something such as metadata or content

Reference Metadata Schema

Authorization

Submission Process

Show ETDs by Author View

Implementation: Role Management

  Administrative functionalities 1.

2.

3.

4.

Register Digital Objects Register Actions Register Roles Assign Permissions to Roles Authorization for Multiple Roles 1.

2.

Different users with the same role Same user with multiple roles

Implementation: Submission Process

   ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦

ETD metadata

Gets information from ED-ID Gets information from Banner Gets information from VT-Specific Banner

ETD file(s)

Multiple file uploads Various files types Designed as child classes

Committee members

Roles Association with the Person model and the Role model

Test Driven Development (TDD)

   Characteristics of the Ruby on Rails Quality First Model Types of tests we are using 1.

2.

3.

Unit tests Functional tests Integration tests

TDD in Ruby on Rails

   ◦ ◦ Unit Tests ◦ Examine our models (objects) Models in the Model-View-Controller (MVC) Object oriented programming Functional Tests ◦ Appropriate response to users’ requests? Integration Tests ◦ Study users’ workflow/scenarios/usages

Authentication

Authorization

Register New Staff

Register New Role

Stakeholder System Administr ators       

Discussion

ETD-db 2.0

More maintainable administrator functions like user role management New import & export function for easier migration from existing repositories Exploiting the state of the art agile web development paradigm – improved maintenance Eliminates inconsistencies between the file structure and database Supports explicit UTF-8 character set encoding Record log and audit files Incorporated features theses/dissertations) for BTDs (scanned bound        ETD-db 1.0

Share a single password per each role (e.g., reviewer and system administrator) Does not support import & export function Written in Perl scripts which provide software libraries depending on back end database Does not support transaction processing Character set encoding is not strongly enforced, which leads the inconsistent output Does not support log and audit files External PHP scripts support batch BTD loading into ETD-db 1.0

Managers Authors Managers Cataloger &Reviewer  &         Safer, more reliable ‘change_availability’ process through concurrency control and transactional processing support Better approval and release notification  Connection to Banner/HR system Provides authors with better feedback about progress and submission status Supports explicit UTF-8 character set encoding  User role management and authentication (LDAP) Better queue management and notification Set date for automatic release notification Turn off or extend date for automatic release   Does not support transaction processing and relevant rollback.

Does not connect to Banner/HR system Share a single username and password per each role Hardcoded release date and release by requests from staffs or authors

Summary: System Admin View

 More maintainable administrator functions  New import & export function  Exploiting agile web development paradigm  Eliminates inconsistencies between file structure and database  Supports explicit UTF-8 character set  Record log and audit files  Incorporated features for BTDs

Summary: Manager View

 Safer, more reliable ‘change_availability’ ◦ Concurrency control ◦ Transactional processing support  Better approval and release notification

Summary: Author View

 Connection to Banner/HR system  Authors get better feedback  Supports explicit UTF-8 character set encoding

Summary: Cataloger & Reviewer View

 User role management and authentication  Better queue management and notification  Set date for automatic release notification  Turn off or extend date for automatic release

Conclusion & Future Work

   ◦ ◦ ETD-db 2.0 ◦ Improved ETD-db reliability and security Benefits all stakeholders State of the art Web development framework Security ◦ ◦ Fine-grained access control and increased audit logging Eliminate inconsistencies between file structure and database ◦ More reliable content management    Increase the consistency between contents and their metadata Ensure content integrity Version control ◦ ◦ Plans and Future Work ◦ ◦ Access and integrate Banner system Interview more users Implement audit logging and provenance Design import and export functions

19,315 VT ETDs as of Sept. 7, 2011

e.g., ETD-db (1997-2011) works really, really well 102 mixed access 1% 611 withheld from access 3% 8,551 VT-only access [7,089 BTDs] 44% 10,051 accessible worldwide [240 BTDs] 52%

ETD-db 2.0

Comments? Questions?

Contact Sung Hee Park [email protected]