Outline:

Publications

Bartlett, Roscoe A. OpenSSF Best Practices Badge Program. Better Scientific Software (bssw.io). SAND2022-10015 O. Sandia National Laboratories. June 2022 [online]

Bartlett, Roscoe A. More Robust and Portable Software Builds for the DOE Software Ecosystem. SAND2021-15608 O. Sandia National Laboratories. December 2021 [DOI, osti.gov]

Bartlett, Roscoe A and Zack Galbreath. Accomplishments of Sandia and Kitware CMake/CTest/CDash Contract for Fiscal Years 2017 through 2020. SAND2021-5785. Sandia National Laboratories. May 2021 [DOI]

Bartlett, Roscoe A. Restoring productivity through the advanced usage of Git. Collegeville Workshop 2020, July 21-23, 2020 [DOI]

Bartlett, Roscoe A., Joseph R. Frye, and Evan C. Harvey. Improved productivity through standardized configurations and testing of Trilinos on advanced platforms. Collegeville Workshop 2020, July 21-23, 2020 [DOI]

Bartlett, Roscoe A. Componentized hierarchical build and test infrastructure and processes for CASL VERA. American Nucler Society Winter Meeting 2020, November 16-19, 2020 [DOI]

Bartlett, Roscoe A. When NOT to Write Automated Tests? Better Scientific Software (bssw.io), July 29, 2019 [DOI]

Bartlett, Roscoe A., and Joseph R. Frye. Creating Stable Productive CSE Software Development and Integration Processes in Unstable Environments on the Path to Exascale. 2019 IEEE/ACM 14th International Workshop on Software Engineering for Science (SE4Science), 2019 [DOI]

Bartlett, Roscoe A., Anshu Dubey, Xiaoye Sherry Li, J. David Moulton, James W. Willenbring, and Ulrike M. Yang. Book Chapter “Testing of Scientific Software: Impacts on Research Credibility, Development Productivity, Maturation, and Sustainability” in Software Engineering for Science. Chapman & Hall/CRC Computational Science, November 3, 2016

Turner, John A., Kevin Clarno, Matt Sieger, Roscoe A. Bartlett, Benjamin Collins, Roger Pawlowski, Rodney Schmidt, and Randall Summers. The Virtual Environment for Reactor Applications (VERA): Design and architecture. Journal of Computational Physics, V. 326, p. 544-568, 2016 [PDF] (DOI)

Bartlett, Roscoe. A Roadmap for Sustainable Ecosystems of CSE Software. Computational Science and Engineering Software Sustainability and Productivity Challenges (CSESSP) Workshop. October 16, 2015 [PDF]

IDEAS Methodologies Testing Team. Definition and Categorization of Tests for CSE Software. The IDEAS Scientific Software Productivity Project. Version 0.1. April 29, 2015 [PDF] (Current)

IDEAS Methodologies Testing Team. What Are Software Testing Practices? The IDEAS Scientific Software Productivity Project. Version 0.1. April 27, 2015 [PDF] (Current)

IDEAS Methodologies Testing Team. How to Add and Improve Testing in Your CSE Software Project. The IDEAS Scientific Software Productivity Project. Version 0.1. April 27, 2015 [PDF] (Current)

Bartlett, R. Generic TriBITS Project, Build, Test, and Install Quick Reference Guide. CASL Technical Report: CASL-U-2014-0075-000-a, March 31, 2014 [PDF] (Current [HTML, PDF])

Bartlett, Roscoe. TriBITS Developers Guide and Reference. Oak Ridge National Lab. CASL-U-2014-0075-000-b. March 2014 [PDF] (Current [HTML, PDF])

Bartlett, Roscoe, Michael Heroux, and Jim Willenbring. Agile Lifecycles for Research-driven CSE Software. ASCR Workshop on Software Productivity for Extreme-Scale Science. October 2013 [PDF] (online)

Bartlett, Roscoe. Overview of Software Challenges in CSE. ASCR Workshop on Software Productivity for Extreme-Scale Science. October 2013 [PDF] (online)

Bartlett, Roscoe. Fortran Isolates the CSE Community. ASCR Workshop on Software Productivity for Extreme-Scale Science. October 2013 [PDF] (online]

Bartlett, Roscoe, Michael Heroux, and Jim Willenbring. Overview of the TriBITS Lifecycle Model : A Lean/Agile Software Lifecycle Model for Research-based Computational Science and Engineering Software. Proceedings of the First Workshop on Maintainable Software Practices in e-Science, part of the IEEE International Conference on eScience 2012. October 2012 [PDF] (oneline)

Bartlett, Roscoe, Michael Heroux, and Jim Willenbring. TriBITS Lifecycle Model Version 1.0: A Lean/Agile Software Lifecycle Model for Research-based Computational Science and Engineering and Applied Mathematical Software. SAND2012-0561. Sandia National Laboratories. February 2012 [PDF]

Pawlowski, Roger, Roscoe Bartlett, Noel Belcourt, Russell Hooper, and Rod Schmidt. A Theory Manual for Multi-physics Code Coupling in LIME: Version 1.0. SAND2011-2195. Sandia National Laboratories. March 2011 [PDF]

Carver, Jeffrey, Roscoe Bartlett, Dustin Heaton and Lorin Hochstein. What Scientists and Engineers Think They Know About Software Engineering: A Survey. SAND2011-2196J. Submitted to Computing in Science and Engineering. March 2011 [PDF]

Bartlett, Roscoe. Teuchos C++ Memory Management Classes, Idioms, and Related Topics: The Complete Reference (A Comprehensive Strategy for Safe and Efficient Memory Management in C++ for High Performance Computing). SAND2010-2234, Sandia National Laboratories. May 2010 (Updated September 2012) [PDF] (Current)

Bartlett, Roscoe. Thyra Coding and Documentation Guidelines (TCDG) Version 1.0. SAND2010-2051. Sandia National Laboratories. May 2010 [PDF] (Current)

NEAMS Waste Forms Team. Waste Forms and Systems Integrated Performance and Safety Codes System Design Specification. SAND2009-3969, Sandia National Laboratories. September 2009 [PDF] (See sections 6.2, 7.5, 7.6, 7.7, 7.8, and C.3 all written by Roscoe Bartlett)

Bartlett, Roscoe. Mathematical and High-Level Overview of MOOCHO: The Multifunctional Object-Oriented arCHitecture for Optimization. SAND2009-3969, Sandia National Laboratories. June 2009 [PDF]

Bartlett, Roscoe. Teuchos::RCP Beginner’s Guide (An Introduction to the Trilinos Smart Reference-Counted Pointer Class for (Almost) Automatic Dynamic Memory Management in C++). SAND2004-3268, Sandia National Laboratories, 2007 (Updated September 2010) [PDF] (Current).

Bartlett, Roscoe, Daniel Dunlavy, and Tim Shead. SAND2008-7593, Trilinos CMake Evaluation. Sandia National Laboratories, October 2008 [PDF]

Bartlett, Roscoe. Derivation of forward and adjoint sensitivities for ODEs and DAEs. SAND2007-6699, Sandia National Laboratories. October 2007 [PDF]

Bartlett, Roscoe. Daily Integration and Testing of the Development Versions of Applications and Trilinos: A stronger foundation for enhanced collaboration in application and algorithm research and development. SAND2007-7040, Sandia National Laboratories, October 2007 [PDF]

Bartlett, Roscoe, Scott Collis, Todd Coffey, David Day, Mike Heroux, Rob Hoekstra, Russell Hooper, Roger Pawlowski, Eric Phipps, Denis Ridzal, Andy Salinger, Heidi Thornquist, and Jim Willenbring. ASC Vertical Integration Milestone. SAND2007-5839, Sandia National Laboratories, 2007 [PDF]

Bartlett, Roscoe, Bart van Bloemen Waanders, and Martin Berggeren. Hybrid Differentiation Strategies for Simulation and Analysis of Applications in C++. ACM TOMS, Vol. 35, No. 1, Article 1, July 2008 [PDF]

Bartlett, Roscoe. Thyra Linear Operators and Vectors: Overview of Interfaces and Support Software for the Development and Interoperability of Abstract Numerical Algorithms. SAND2007-5984, Sandia National Laboratories, 2007 (Updated March 2013) [PDF]

Bartlett, Roscoe, and Lorenz Biegler. QPSchur: A dual, active-set, Schur-complement method for large-scale and structured convex quadratic programming. Optim Eng, vol 7, p. 5-32, 2006 [PDF]

Bartlett, Roscoe, Bart van Bloemen Waanders, and Michael Heroux. Vector Reduction/Transformation Operators, ACM Transactions on Mathematical Software. Vol. 30, No. 1, p. 62 -85, 2004 [PDF]

Bartlett, Roscoe, and Lorenz Biegler. rSQP++: An Object-Oriented Framework for Successive Quadratic Pogramming. In: Biegler L.T., Heinkenschloss M., Ghattas O., van Bloemen Waanders B. (eds) Large-Scale PDE-Constrained Optimization. Lecture Notes in Computational Science and Engineering, vol 30. Springer, Berlin, Heidelberg, 2003 [PDF]

Presentations

Bartlett, Roscoe A. Modern TriBITS 2023. Better Scientific Software (bssw.io). Trilinos User Group Meeting 2023. SAND2023-12000C. Sandia National Laboratories. November 2, 2023 [DOI]

Bartlett, Roscoe A. An Overview of Agile Software Development Technical Practices and Reviving Legacy Software. Sandia National Laboratories Post-Doc and Early Career Seminar Series. SAND2023-11235O. October, 12 2023. DOI: doi.org/10.6084/m9.figshare.24418330

Bartlett, Roscoe A. The OpenSSF Best Practices Badge Program. HPC Best Practices Webinar Series. SAND2023-04819O. June 14, 2023 DOI: 10.6084/m9.figshare.23978868

Bartlett, Roscoe A. Some Challenges and Opportunities in Software Engineering in Computational Science and Engineering. Guest lecture University of Michigan Software Engineering course EECS 481. SAND2023-02110A. April 12, 2023. DOI: 10.5281/zenodo.7826894

Bartlett, Roscoe A., Bill Hoffman, and Brad King. A new CMake Scripting Language?, 2022 Tri-lab Advanced Simulation & Computing, Sustainable Scientific Software Conference. SAND2022-7018 C. May 24, 2022. DOI: 10.5281/zenodo.6578790

Bartlett, Roscoe A. Challenges and Possible Solutions to Sustainable Build, Test, and Integration Processes in CSE Software Ecosystems. SIAM Parallel Processing for Scientific Computing 2022. SAND2022-2272 C. Sandia National Laboratories. February 2022 [DOI]

Bartlett, Roscoe A. TriBITS Modernization., SAND2021-15212 PE, Trilinos Users Group Meeting, Developers Day 2021 [DOI]

Bartlett, Roscoe A. Using Advanced Git Workflows to Address Difficult Development and Integration Challenges. SAND2021-5784 C. SIAM Computational Science and Engineering 2021, March 4, 2021 [DOI]

Bartlett, Roscoe A. CASL VERA Infrastructure - TriBITS. SAND2020-13470 C, American Nucler Society Winter Meeting 2020, November 18, 2020 [DOI]

Bartlett, Roscoe A. Componentized hierarchical build and test infrastructure and processes for CASL VERA. SAND2020-13467 C , American Nucler Society Winter Meeting 2020, November 17, 2020 [DOI]

Bartlett, Roscoe A. Staying on top of a lot of CDash builds/tests: cdash_analyze_and_report.py, SAND2019-13824 C, Trilinos Developers Meeting, October 23, 2019 [DOI]

Bartlett, Roscoe A., and Joseph R. Frye. Creating Stable Productive CSE Software Development and Integration Processes in Unstable Environments on the Path to Exascale. 2019 International Software Engineering for Science Workshop, 2019 [DOI]

Bartlett, Roscoe. Development and Integration Workflows for Large Complex Distributed CSE Software Efforts. SIAM Conference on Computational Science and Engineering 2019, SAND2019-2092 C, https://doi.org/10.6084/m9.figshare.7771109, February 25, 2019 [PPT, PDF] (Online)

Bartlett, Roscoe, Joseph R. Frye. ATDM Trilinos Testing and Integration. Trilinos Developers Meeting, October 25, 2018 [PPT, PDF]

Bartlett, Roscoe. Application of TriBITS to Larger Componentized Scientific and Engineering Software Projects. SIAM Computational Science & Engineering, March 1, 2017 [PPT, PDF] (Online)

Bartlett, Roscoe. The application of TriBITS to the Software Development and Integration Processes of Larger Componentized Multi-Organization Scientific and Engineering Software Projects, Sandia Computational Science Seminar Series, SAND2018-11082 PE, June 9, 2016 [PPTX, PDF]

Bartlett, Roscoe. A Roadmap for Sustainable Ecosystems of CSE Software. Computational Science and Engineering Software Sustainability and Productivity Challenges (CSESSP) Workshop, October 16, 2015 [PPT, PDF]

Bartlett, Roscoe. TriBITS Foundations and Updates. Trilinos Developers Meeting, October 29, 2015. October 26, 2015 [PPT, PDF]

Bartlett, Roscoe. Software Engineering Processes for the CASL Innovation Hub. Center for Computing Research Seminar, Sandia National Laboratories. October 26, 2015 [PPT, PDF]

Bartlett, Roscoe. Some Agile Best Technical Practices for the Development of Research-Based CSE Software. SciDev Workshop. University of Illinois at Urbana -Champaign. August 18, 2015 [PPT, PDF]

Bartlett, Roscoe. Git Workflow Building Blocks for Improved VERA Development, Integration, and Deployments. Consortium for the Advanced Simulation of Lightwater Reactors. August 10, 2015 [PPT, PDF]

Bartlett, Roscoe. Design Patterns for Git Workflows. Trilinos Spring Developers Meeting. Albuquerque, NM. May 13, 2015 [PPT, PDF]

Bartlett, Roscoe. TriBITS: Tribal Build, Integrate, and Tests System. SIAM Computational Science & Engineering Conference, Salt Lake City, Utah, March 14, 2015 [PPT, PDF]

Bartlett, Roscoe. Breaking Selected Packages out of Trilinos and Importing other Packages: Motivations, concerns, workflows, examples. Trilinos Users Group Meeting, October 29, 2014 [PPT, PDF]

Bartlett, Roscoe. Multi-Repository Development and Integration using TriBITS. Trilinos Users Group Meeting, October 29, 2014 [PPT, PDF]

Bartlett, Roscoe. Multi-Repository Development and Integration in CASL using TriBITS. Trilinos Users Group Meeting, November 6, 2013 [PPT, PDF]

Bartlett, Roscoe. Trilinos Adoption of the TriBITS Lifecycle Model. Trilinos Users Group Meeting, November 1, 2012 [PPT, PDF]

Bartlett, Roscoe. Overview of the TriBITS Lifecycle Model. First Workshop on Maintainable Software Practices in e-Science, e-Science 2012, October 9, 2012 [PPT, PDF]

Bartlett, Roscoe. TriBITS Lifecycle Model Version 1.0. ORNL Computer Science and Mathematics Division, Oak Ridge, TN, August 21, 2012 [PPT, PDF]

Bartlett, Roscoe. TriBITS Lifecycle Model and Agile Technical Practices for Trilinos? Trilinos Developers Meeting 2012, Albuquerque, NM, May 22, 2012 [PPT, PDF]

Bartlett, Roscoe. The State of Trilinos Software Engineering: Recent Progress, Current Status, and Future Issues. 2010-7789C, Trilinos Users Group Meeting 2010, Albuquerque, NM, November 4, 2010 [PPT, PDF]

Bartlett, Roscoe. Trilinos Software Engineering Technologies and Integration Capability Area Overview. 2010-7704C, Trilinos Users Group Meeting 2010, Albuquerque, NM, November 2, 2010 [PPT, PDF]

Bartlett, Roscoe. Overview Software Life-cycle and Integration Issues for CS&E R&D Software and Experiences from Trilinos (Part I). SIAM Parallel Computing Conference, Seattle, February 24, 2010 [PPT,PDF]

Bartlett, Roscoe. Overview Software Life-cycle and Integration Issues for CS&E R&D Software and Experiences from Trilinos (Part II, Integration Issues). SIAM Parallel Computing Conference, Seattle, February 24, 2010 [PPT, PDF]

Bartlett, Roscoe. Trilinos Release Improvement Issues. 2009-7555P, Trilinos Users Group Meeting 2009, Albuquerque, NM, November 5, 2009 [PPT, PDF]

Bartlett, Roscoe. Trilinos Software Engineering Status and Future Issues. 2009-7704P, Trilinos Users Group Meeting 2009, Albuquerque, NM, November 5, 2009 [PPT, PDF]

Bartlett, Roscoe. Trilinos Software Engineering Technologies and Integration Capability Area Overview. 2009-7512P, Trilinos Users Group Meeting 2009, Albuquerque, NM, November 3, 2009 [PPT, PDF]

Bartlett, Roscoe. Integration Strategies for Computational Science and Engineering Software. 2009-0655C, Second International Workshop and Software Engineering for Computational Science & Engineering, Vancouver, Canada, May 23, 2009 [oneline]

Bartlett, Roscoe. Almost Continuous Integration for the Co-Development of Highly Integrated Applications and Third Party Libraries. 2009-1114P, Sandia Software Engineering Seminar Series, October 2008 [PPT, PDF]

Bartlett, Roscoe. Maintaining the Stability of Trilinos Dev: Stable vs. Experimental Code. 2008-7714P, Trilinos Users Group Meeting 2008, October 2008 [PPT, PDF]

Bartlett, Roscoe. APP + Trilinos Integration: Status, Opportunities, and Challenges. 2008-7716P, Trilinos Users Group Meeting 2008, October 2008 [PPT, PDF]

Bartlett, Roscoe. Trilinos Software Engineering Technologies and Integration. 2008-7718P, Trilinos Users Group Meeting 2008, October 2008 [PPT, PDF]

Bartlett, Roscoe. Teuchos Utility Classes for Safer Memory Management in C++. 2008-7717P, Trilinos Users Group Meeting 2008, October 2008 [PPT, PDF]

Bartlett, Roscoe. CMake For Trilinos Developers. 2008-7715P, Trilinos Users Group Meeting 2008, October 2008 [PPT, PDF]

Bartlett, Roscoe. CMake Trilinos? 2008-7721P, Trilinos Users Group Meeting 2008, October 2008 [PPT, PDF]

Bartlett, Roscoe. Open-Source Software for Interfacing and Support of Large-scale Embedded Nonlinear Optimization. 2008-7720C, INFORMS Annual Meeting, October 2008 [PPT, PDF]

Bartlett, Roscoe. New Teuchos Utility Classes for Safer Memory Management in C++. SAND2007-7237C, 2007 Trilinos User’s Group Meeting, Sandia National Laboratories, November 2007 (Updated August 2008) [PPT, PDF]

Bartlett, Roscoe. ModelEvaluator: Scalable, Extensible Interface Between Embedded Nonlinear Analysis Algorithms and Applications. High Performance Computing Software Week, Boston, April 3, 2008 [PPT, PDF]

Bartlett, Roscoe. Stratimikos: Unified Wrapper to Trilinos Linear Solvers and Preconditioners. High Performance Computing Software Week, Boston, April 3, 2008 [PPT, PDF]

Bartlett, Roscoe. Overview of the Vertical Integration of Trilinos Solver Algorithms in a Production Application Code. SIAM Parallel Computing Conference, Atlanta, March 13, 2008 [PPT, PDF]

Bartlett, Roscoe. Teuchos::RCP: An Introduction to the Trilinos Smart Reference-Counted Pointer Class for (Almost) Automatic Dynamic Memory Management in C++. SAND2005-4855P, Sandia National Laboratories, 2005 (Updated February 2008) [PPT, PDF]

Bartlett, Roscoe. Embedded Sensitivities and Optimization: From Research to Applications. SAND2008-0769P, Optimization and Uncertainty Estimation Department Review, Sandia National Laboratories, January 2008 (Updated February 2008) [PPT, PDF]

Bartlett, Roscoe. Daily Integration and Testing of the Development Versions of Applications and Trilinos: A stronger foundation for enhanced collaboration in application and algorithm research and development. SAND2007-7236C, Sandia Software Engineering Seminar Series, Sandia National Laboratories, October 2007 [PPT, PDF]

Bartlett, Roscoe. Using Thyra and Stratimikos to Build Blocked and Implicitly Composed Solver Capabilities. SAND2007-7231C, 2007 Trilinos User’s Group Meeting, Sandia National Laboratories, November 2007 [PPT, PDF]

Bartlett, Roscoe. FY07 ASC Vertical Integration Milestone: Overview, Lessons Learned, and Next Steps. SAND2007-7401C, 2007 Trilinos User’s Group Meeting, Sandia National Laboratories, November 2007 [PPT, PDF]

Helpful Documents

Very Short UML Overview: Dynamic [PPT], Static [PPT, PDF]

Working Documents

Bartlett, Roscoe. The Pure Nonmember Function Interface Idiom for C++ Classes. SAND2007-4078, Sandia National Laboratories [PDF]

Bartlett, Roscoe. A Linear Algebra Interpretation of Non-Euclidean Scalar Products and Vector Spaces and their impact on Numerical Algorithms. Sandia National Laboratories [PDF]

Bartlett, Roscoe, and Roger Pawlowski. Contributors: Christopher Baker, Mark Hoemmen, and Nico Schlomer. Trilinos C++ Coding and Documentation Guidelines. Unpublished Draft [PDF]