Method Enables Collaborative Software Teams to Enhance Effectiveness and Efficiency
By Scott Gibson
Productivity Sustainability Improvement Planning (PSIP), part of the Training and Productivity aspect of the Hardware and Integration research focus area of the US Department of Energy’s (DOE) Exascale Computing Project (ECP), provides a way to mitigate the technical risks of ECP’s teams. PSIP brings software development activities together and enables partnerships and the adoption of best practices across aggregate teams.
To share insights about PSIP, Elaine Raybourn of Sandia National Laboratories (SNL), a social scientist with a background in intercultural communication and human computer interaction, is a guest on the Let’s Talk Exascale podcast. She is a principal member of the technical staff in applied cognitive science at SNL, where she is also the laboratories’ institutional principal investigator for Interoperable Design of Extreme-Scale Application Software (IDEAS-ECP). The podcast interview took place recently in Denver SC19: The International Conference for High Performance Computing, Networking, Storage, and Analysis.
“PSIP is a lightweight, interactive workflow that enables software development teams to identify development bottlenecks and track progress to overcome them,” Raybourn said. “The PSIP method is appropriate for use by individuals or it can be taught to a team, with the team driving improvement.”
One output of the PSIP process is the development of progress tracking cards. “These are brief, shareable documents that contain the target, or goal, of the planning activity; the title of the topic of improvement; and a step-by-step list of activities or outcomes that incrementally lead to enhanced team effectiveness and efficiency,” Raybourn said. “By applying PSIP, teams are able to improve their current development processes without a huge disruption.”
PSIP helps teams meet a big challenge. Historically, scientific software development has occurred in small teams of only a few people in which decisions may have been made in small group discussions without including documentation and planning. “But the complexity of ECP applications requires an entirely different dynamic characterized by frequent interactions across multiple teams,” Raybourn said. “Small teams suddenly realized they had to codify their processes because collaboration is essential to success.”
Working with collaborators in ECP, IDEAS-ECP is launching PSIP resources for developer productivity in a GitHub repository and will interact with teams as they address their software quality. IDEAS-ECP also provides training and the Better Scientific Software website, a central hub for developers of scientific and engineering software to tackle pressing challenges in software productivity, quality, and sustainability.
“PSIP strives to mitigate technical risk because as one team’s software begins to touch another team’s software, requirements change, designs change, and codes take on new end users, and thus the software ecosystem evolves,” Raybourn said.
One example of the success of PSIP is its ongoing collaboration with ECP’s Exascale Atomistic capability for Accuracy, Length, and Time (EXAALT) project, which is providing a materials modeling framework for accelerated molecular dynamics simulations. “EXAALT is a collection of multiple software components forming a team of teams network, each component depending on the others,” Raybourn said. “The team of teams includes EXAALT, Large-Scale Atomic/Molecular Massively Parallel Simulator (LAAMPS) developed at Sandia National Laboratories (SNL), and LATTE and ParSplice, both developed at Los Alamos National Laboratory (LANL). Team members from Argonne National Laboratory, LANL, and SNL successfully collaborated with EXAALT to formulate progress tracking cards for the actionable items needed to lay the foundation for continuous integration within the existing software repository.”
The impact that PSIP expects to have—one aspect of ECP’s enduring legacy—is a model for incremental process improvement, one small team at a time and one aggregate (team of teams) at a time, that eventually engenders a culture of continual process improvement. “IDEAS-ECP continues meeting with teams to learn about how they function and to help them apply enhancing methodologies,” Raybourn said. “Simultaneously, we want to increase collaboration across the DOE complex. This, we hope, will lead to innovative application design, sustainable software technology, and the advancement of US leadership in high-performance scientific computing as we approach the exascale milestone.”
Podcast episodes, featuring Danny Perez of the EXAALT project
Episode 44: ECP Team Reengineers Materials Simulation Code, Achieves Atypical Performance Increase
Episode 4: Extending the Reach of Molecular Dynamics Simulations by Leveraging Exascale