Program Manager Briefing: an introduction to our Agile development process

The TARO 2.0 refresh team has completed our second all-hands meeting and I would like to provide some background for our TARO community members on how we are doing our work as well as providing some brief highlights of some of the accomplishments that the teams have already made. 

A bit about Agile:

The UT Libraries development team, Libraries IT, has been following a software development approach called Agile.  Agile has become quite popular in the software development community so you are likely to have run across it elsewhere.  However, a simple definition is that agile is “an iterative approach to project management and software development that helps teams deliver value to their customers faster and with fewer headaches. … requirements, plans, and results are evaluated continuously so teams have a natural mechanism for responding to change quickly.”  Instead of spending a great deal of time planning up front as we might if we were following traditional project planning techniques, the team works to identify the elements of the minimum viable product (MVP) and starts working on the elements of that product in ways that allow the results to be evaluated by the stakeholders as they become available.  The idea is to identify the things that are not working quickly and correct them or accomplish those things that can be finished as quickly as possible.  In this way, stakeholders are not waiting until the end of a project to see the end product or provide feedback, making the product more likely to meet their needs.

While all agile approaches derive from the original Agile Manifesto : https://agilemanifesto.org/, you will find that each group implementing it has identified what works for them in their context.  Wherever you are, agile tends to make use of common roles or organizational techniques such as stakeholders, product owners, backlogs, sprints, stand up meetings, and demo days.  

A stakeholder is both a general term and a specific group of people.  In this case, we have a group of University of Texas staff who have been working with TARO for many years as our internal stakeholder group.  They serve as a set of stakeholders for the development team and meet regularly to give guidance on time-sensitive development queries.  We also have the broader TARO community as represented by the TARO steering committee, the chairs of its working groups and through them the working group members who serve as partners and stakeholders in this project.  

As the goal in agile is to have rapid iteration, agile development teams rely on a single individual to guide them on what the deliverables are, what work to prioritize and to gather and interpret the response of the stakeholders to the progress that has been made.  This is known as the product owner and due to the time commitments and high levels of trust involved is usually a staff member of the institution doing the development work.  In our case, we had an excellent opportunity to have a heavily TARO-invested UT Libraries Benson Latin American Collection staff member take this role as my, the UT Libraries TARO program manager, appointee.  Carla Alvarez is the immediate past chair of the TARO steering committee.  She has served on the standards working group for many years as they worked to prepare the Best Practice Guide that serves as the basis for our finding aid compliance program.  And finally, she is also responsible for helping to guide the participants in learning to encode as well as do quality control for the Summerlee Foundation-supported New Member Initiative as the 2020 Summerlee QC chair.  

Carla has worked with the TARO stakeholders to guide the work of the dev team by taking the proposed features as specified in the implementation grant and defining the minimum viable product (MVP) and explaining the needs to the development team.  The MVP is the definition of the elements that must be accomplished for the product to be considered a success.  The MVP serves as a way to consistently ensure that the work of the development team remains within the original scope of the project.  As work is proposed over the course of the project, it is measured by the product owner against what elements of the MVP it will directly support.  

To preserve development momentum, the product owner is called upon to make decisions on behalf of the various stakeholders, weighing situational knowledge and feedback against the deliverables the project partners have committed to.  For the product owner to succeed, the entire project team must agree to ultimately respect their decisions.  

As the development team does their work, the product owner provides guidance on how they prioritize that work by managing their “backlog”.  The backlog is the term used to describe the list of tasks that they will need to accomplish over time.  By regularly “refining” this list, the product owner guides what the team will be doing in the near term but also ensures that the overall goals of the project will be achieved. 

This refining is a vital activity and must be done constantly as it is the element that determines what the teams will be doing during their “sprints”.  The sprint is the key element in the iterative aspect of agile.  At UT Libraries, work is structured into these 2-week time-boxed work sessions.  

While we have a single developer devoted to this project in the NEH grant (Minnie Rangel) and also in the Host Institution Memorandum of Understanding (MOU) with the UT Libraries, agile organizes development teams into squads who are then jointly responsible for the outcomes of their projects.  In the process of forming, the teams choose their own name and the squad doing the TARO development work is the Valkyrie Squad.  In sprint planning, the squad pulls prioritized tasks from the top of the backlog based on the task’s size and complexity and based on their bandwidth over the next two weeks.  

The squad meets briefly on most days in a “stand up” meeting where each developer outlines recent progress, next steps, and surfaces any blockers.  These are intended to be brief discussions amongst the dev team and the purpose is to make a plan for the day.

Finally, at the end of each sprint, the dev team gives a demonstration of the elements of the project that have been completed during the sprint.  This is a more formal presentation and it provides an opportunity for the stakeholders to see the progress, but also to ask questions and provide feedback for the team.

So, that’s a bit on the development process.  So far, this has resulted in a great deal of progress over the past 6-8 months, many aspects of which we will be shared in more detail as we make the slides from the demos available.

  • First, the team worked with the stakeholder community through Carla as the product owner to agree on the elements of the MVP guided largely by the grant narrative —
  • Then, they turned to identify what tools to use to build the TARO admin interface/backend —
  • Then they identified the elements of the admin interface and started building it — 
  • Then they demoed an EAD submission interface —
  • Then they identified the requirements for the compliance checking and produced a functioning prototype —
  • Then they worked on a migration prep tool that evaluated the readiness of the existing collections —
  • Then, working with the standards committee, the TARO Steering and Working Group Chair stakeholders provided feedback on the compliance elements —
  • Then they refined the requirements for the technology “stack” that will be used to build the end-user interface/website —
  • Now they have turned to prepare for the development of the end-user interface and have several documents out to our stakeholders for review and comment.

Some of the people in the roles involved in this process

TARO Steering Committee Chair – Rebecca Romanchuk
UT Libraries TARO Program Manager – Aaron Choate
TARO NEH Development Product Owner – Carla Alvarez
TARO NEH Software Developer – Minnie Rangel
TARO NEH Metadata Analyst – Devon Murphy

UT Libraries IT Valkyrie squad:

J.J. Bennett
Tori Brown
Brandon Cornell
Jade Diaz
Joanna Jackson
Minnie Rangel (TARO NEH developer)

TARO Steering & Working Group Chair stakeholders:

Julianna  Barrera-Gomez, University of Texas San Antonio
Amy K Bowman, University of Texas Briscoe Center for American History
Penny Castillo, Fort Worth Public Library
Amanda Focke, Rice University
Molly Hults, Austin History Center
Irene Lule, University of Texas Harry Ransom Center
Ada Negraru, Southern Methodist University
Rebecca Romanchuk, Texas State Library and Archives
Robert Weaver, Texas Tech University
James Williamson, Southern Methodist University
Rachael Zipperer, University of North Texas

University of Texas local TARO stakeholders:

Erin Harbour, Reference Archivist, Briscoe Center for American History
Evelina Stulgaityte, Archivist, Tarlton Law Library
Stephanie Tiedeken, Archivist, Alexander Architectural Archives
Stephen Mielke, Archivist and Collections Librarian, Harry Ransom Center

In closing, on behalf of myself and Becky Romanchuk, the Chair of the TARO Steering Committee, I want to say thank you for your time and your continued commitment to this project.  It is a challenging time to be working on such an endeavor and your diligence is making this work possible. 

/Aaron Choate

The TARO 2.0 implementation project has been made possible in part by a major grant from the National Endowment for the Humanities: Democracy demands wisdom.