• Information For
    • Computational Molecular Sciences Community
    • Environmental System Science Community
    • Exascale Computing Community
    • Scientific Libraries Community
    • Software Engineering Community
    • Supercomputer Facilities and their Users
  • Contribute to BSSw
  • Receive Our Email Digest
  • Contact BSSw
  • Information For
    Computational Molecular Sciences Community Environmental System Science Community Exascale Computing Community Scientific Libraries Community Software Engineering Community Supercomputer Facilities and their Users
  • Contribute to BSSw
  • Receive Our Email Digest
  • Resources

    Better

    Planning

    • Software Process Improvement
    • Software Engineering
    • Requirements
    • Design
    • Software Interoperability
    • Software Sustainability

    Better

    Development

    • Documentation
    • Configuration and Builds
    • Revision Control
    • Release and Deployment
    • Issue Tracking
    • Programming Languages
    • Development Tools
    • Refactoring

    Better

    Performance

    • High-Performance Computing (HPC)
    • Performance at Leadership Computing Facilities
    • Performance Portability
    • Cloud Computing
    • Big Data

    Better

    Reliability

    • Peer Code Review
    • Testing
    • Continuous Integration Testing
    • Reproducibility
    • Debugging

    Better

    Collaboration

    • Projects and Organizations
    • Strategies for More Effective Teams
    • Inclusivity
    • Funding Sources and Programs
    • Software Publishing and Citation
    • Licensing
    • Discussion and Question Sites
    • Conferences and Workshops

    Better

    Skills

    • Online Learning
    • In-Person Learning
    • Personal Productivity and Sustainability

    View All Resources

    • Better Planning
    • Better Development
    • Better Performance
    • Better Reliability
    • Better Collaboration
    • Better Skills
    • View All Resources
  • Blog
  • Events
  • About
    • Site Overview
    • Team
    • Policies and Code of Conduct
    • BSSw Fellowship Program
  • Home
  • Blog
  • Productivity and Sustainability Improvement Planning (PSIP)

Productivity and Sustainability Improvement Planning (PSIP)

Share on LinkedIn Share on Facebook Tweet Copied! Permalink

PublishedJan 28, 2020
Author BSSw Community
TOPICS
Better Planning
Software Process Improvement

What is PSIP?

Scientific software teams are typically focused on the creation of a new set of features that will enable the next set of computational experiments. Teams seldom have the time to stop development and focus solely on improving productivity or sustainability. However, teams can incorporate improvements on the way to developing new science capabilities.

The Productivity and Sustainability Improvement Planning (PSIP) process recognizes that productivity and sustainability improvements for scientific software benefit from an incremental, iterative approach.

How can I get started with PSIP?

  • Take a Team Practices Survey to identify practices which could be improved.
  • Read the PSIP user manual and practice guides. These guides include a PSIP introduction, practice guides, and PSIP examples.
  • Browse the PTC Catalog. Progress Tracking Cards (PTCs) contain the goal of the planning activity and a numbered list of outcomes.
  • Visit RateYourProject to self assess the current practices of your project.
  • Chat with PSIP team on Gitter
  • Request help from the PSIP team through a Google Form

What does improving processes through PSIP entail?

PSIP is very lightweight.

The key to PSIP is understanding where you are starting from, setting goals, and tracking your progress. The PSIP framework is shown below, which consists of seven iterative steps.

The PSIP framework

At the core of PSIP is a simple progress tracking card (PTC). Progress tracking cards are concise visual aids that record your intended goals, deliverables, and milestones. You create a PTC so that you can progressively compare your team's progress toward an intended goal.

Note that PSIP PTCs are not meant to be external assessments or evaluation tools. A PTC is meant to be used internally in your team for your own progress tracking. PSIP can help develop best practices and the use of PTCs will help keep track of your progress toward an objective. You can also use or share PTCs when communicating to other teams about your goals and how you know when you will have met your objectives.

The PSIP Progress Tracking Card Catalog has a collection of example PTCs for you to explore. Several of these existing PTCs have been used by teams successfully. You can choose to select a PTC for the objective/goal that you want to focus on. You can also choose a PTC, and customize it to meet your timeline and priorities.

Snapshots of Progress Tracking Cards

Are there other articles to read about PSIP?

PSIP has been used by several ECP teams and others in the BSSw.io community.

  • Planning for Better Software: PSIP Tools
  • A Lightweight Software Process Improvement using Productivity and Sustainability Improvement Planning (PSIP)
  • What makes PSIP suitable for the Exascale Computing Project? - A Podcast
  • FLASH5 Refactoring and PSIP
  • Adopting Continuous Integration for Long-Timescale Materials Simulation

Comment

More on Software Process Improvement

Trusted Cyberinfrastructure Evaluation, Guidance, and Programs for Assurance of Scientific Software

Published May 13, 2022

By Elisa Heymann Pignolo, Barton Miller, and Sean Peisert

User Stories in Scientific Software Development

Published Apr 29, 2022

By Osni A. Marques and Reed Milewicz

Experiences Replacing Master/Slave Terminology in ALE3D and Sierra

Published Mar 27, 2022

By Mark C. Miller

Cultural Approaches to Improved Software Teams: A Report from Day 3 of the 2021 Collegeville Workshop on Scientific Software

Published Nov 03, 2021

By Johanna Cohoon, Ben Cowan, Anshu Dubey, Vadim Dyadechko, Nur Fadel, Charles Ferenbaugh, Sarah Knepper, Jay Lofstead, Reed Milewicz, David Moulton, Todd Munson, Sarah Osborn, Elaine Raybourn, Benjamin Sims, Stan Tomov, Han Yong Wunrow, Ulrike Meier Yang, Sam Yates, Daniel S. Katz, and Michael A. Heroux

Software Team Experiences and Challenges: A Report from Day 2 of the 2021 Collegeville Workshop on Scientific Software

Published Oct 13, 2021

By Keith Beattie, Gerasimos Chourdakis, Johanna Cohoon, Vadim Dyadechko, Nur Fadel, Charles Ferenbaugh, Robert Jacob, Jay Lofstead, Reed Milewicz, David Moulton, Jacob Moxley, Todd Munson, Sarah Osborn, Weslley Pereira, Sameer Shende, Barry Smith, James Willenbring, Ulrike Meier Yang, Sam Yates, Sarah Knepper, Lois Curfman McInnes, and Michael A. Heroux

logo Better Scientific Software
  • BSSw Fellowship Program
  • Policies
  • Site Contributors
  • Contact BSSw
  • Receive Our Email Digest
  • Follow Our RSS Feed

Copyright © 2023 Better Scientific Software under MIT License

United States Department of Energy Office of Science National Nuclear Security Administration Exascale Computing Project