Results from survey of project management practices on Hydra projects. Presented at Hydra Connect 2 (Cleveland, Ohio, September 30, 2014. For more about Hydra, see http://www.projecthydra.org.
Mark NotessUser Experience Designer à Scripps Networks Interactive
2. BACKGROUND
• Motivation
• get a sense the current
project management
practices in use within the
Hydra community
• share results with PM
workshop
• Survey conducted in September
2014
• Survey request sent to hydra-community
and hydra-tech
• 16 responses
3. PROJECTS
UCSD DAMS
Images Repository app
ScholarSphere 1.0
Hydra@Hull
Oregon Digital
Open Vault
Hydrus (SDR Online Deposit)
Digital Library Infrastructure
Image Management System
Digital Commonwealth
Scholar@UC
Libra
Spotlight
Paged Media Project
Avalon Media System
CurateND
Hydramata
4. INSTITUTIONS
UCSD
Northwestern
Penn State
MediaShelf/DCE
University of Hull
University of Oregon
Oregon State University
WGBH
Stanford
The Royal Library
Ohio State
Boston Public Library
University of Cincinnati
UVa
Stanford
Indiana University
University of Notre Dame
5. PROJECT INFO
• Average team size: 6
• Methodologies:
• Agile Scrum – 7
• Other Agile – 5
• No structured process – 2
• Loose Agile Scrum
• Mix of Waterfall and Agile
6. TOOLS FOR MANAGING
REQUIREMENTS
• Jira – 8 (including Greenhopper)
• Github – 5
• Spreadsheets – 3
• Confluence – 2
• Google Docs – 2
• whiteboard & post-its – 2
• Basecamp
• Github issues
• Redmine
• Rally (rallydev.com)
• Trac
• Word documents
• Mockups, Design artifacts
(Tools often used in combination)
7. SOURCES OF REQUIREMENTS
Staff who work with users 14
Users 11
Developer ideas 10
Features of a previous product being replaced 7
Administrators 7
Other 5
8. SOURCE CONTROL TOOLS
• git/GitHub (public, though sometimes a institutionally-based instance)-
15
• "Atlassian Stash (private)
• Redmine
• University sponsored code repo
9. BUG TRACKING TOOLS
• Jira – 11, one with a Ruby on Rails front end
• Github issues – 5
• Redmine
• Rally,
• Trac
• spiceworks
10. TOOLS FOR TESTING, INTEGRATION,
DEPLOYMENT
Rspec – 10
Travis CI – 8
Capistrano – 7
Capybara – 5
Bamboo – 4
Jenkins – 4
Cucumber – 3
PhantonJS – 2
Puppet – 2
Vagrant – 2
Chef
Passenger
Apache
Tomcat
New Relic
Nagios
factory girl
git irc bot to deploy
Thin
Fitnesse
Various manual approaches.
12. MAIN BENEFIT OF HYDRA: COMMUNITY
• "Community engagement is
exciting for developers
• Best practices on testing are
inherited and enforced”
• The community interactions are
beneficial.
• Community support.
• The myriad opportunities that the
community offers for sharing
concerns, ideas and knowledge.
• The community of skilled people
working on similar issues to us,
and the continuous dialogue and
knowledge sharing around that.
• Knowledge sharing on concrete
coding issues.”
• The community behind it.
• The active community
• "The community with respect to
training, support, products or
components”
• community engagement.
13. MAIN BENEFIT: TECHNOLOGY
• Allows us to use Ruby on Rails and the Fedora repository here at NUL.
• It has allowed us to implement a platform that can serve the generic digital content
management needs of the University, without the overhead of managing multiple systems
for different types of content.
• Ability to integrate linked open data
• Open source.
• "A framework of functionality, as well as a framework for organizing code and data
modelling.
• Lots of tools to select from, several stacks for reference (i.e. sufia, avalon)
• It gives additional value in the form of gems, ideas on new trends, and loads of code
samples to accomplish tasks.
• Build on top of an existing open source project.
• The potential (not yet activated in our case) to build multiple hydra heads, all connected with
a single Blacklight discovery layer
• This project doesn't exactly use Hydra directly, but as part of the Hydra ecosystem the
benefits are....familiar technology stack; integration with our exiting digital library repository
and front end;
• Common development environment with Fedora across two development teams, in two
different cities.
• Having an open source framework that gets libraries and is supported by a community
• Core code base that is already established and maintained by many developers
14. HOW COULD THE HYDRA COMMUNITY
BETTER SUPPORT PROJECT SUCCESS?
• Provide a roadmap, so people will know what is planned and when to expect it. Less
of a “wild west approach”; have a more product/user -centered vision
• Better organization, oversight, and development planning for the hydra core (not just
Fedora 4)
• More contributions that are reusable—sufficiently generalized and gemified; solution
bundles; less reinvention of the wheel; best practices for engendering reuse; more
viewer types; how is this work rewarded or motivated?
• Best practices for collaborative work, so such projects can succeed
• Better awareness of what other institutions are doing—webinars or other sharing
• Better documentation of what gems do and who is using them; reduce learning curve
• Community-endorsed approaches to or standards for metadata, handling big files,
statistics, rdf
15. WHAT DO YOU WISH YOU'D KNOWN
BEFORE BEGINNING THE PROJECT?
Amount of work needed to learn the arch. and languages, do metadata
modeling, set up local dev infrastructure, keep technology dependencies
up to date, set up server env and deploy, change people’s mindset from
consumer to contributor.
The future! (What other projects will do that we could have used if we’d
known, but now we’ve diverged.)
What collaboration models do and don’t work, especially how decisions
get made, expectations get set, resources are obtained.
Gemification: how to modularize code within a community framework, and
doing so in a way that doesn't jeopardize deadlines
16. WHAT HAS BEEN THE BIGGEST
MANAGEMENT CHALLENGE FOR THE
PROJECT?
• Resources! Finding, training, keeping developers, or getting enough
resources allocated to do the work.
• Avoiding technical debt and keeping components up to date.
• Stakeholder education and management. Helping administrators
understand collaborative open source development. Managing
expectations. Getting CLAs signed.
• Prioritizing features for the massive amount of work that is needed.
• The politics of collaboration across institutions.
17. WHAT GEMS FROM THE HYDRA
COMMUNITY ARE YOU USING, APART
FROM THE CORE HYDRA GEMS?
• Sufia – 5
• Browse Everything – 4
• Questioning Authority – 4
• Blacklight Advanced Search – 2
• Hydra Derivatives – 2
• Hydra Ldap – 2
• Hydra Batch Edit, Hydra Collections, Blacklight Gallery, Hydra Roel
Management, Hydra File Characterization, Active Admin, Blacklight
Maps, Blacklight Range Limit, CAS Authentication, About Page