- Technical Steering Committee is comprised of the Organizational and
Strategic Leadership.
- Organizational Leadership is comprised of Trilinos Product Owner, DevOps Lead, Core Area Lead, Solvers Area Lead, and Discretization and Analysis Area Lead.
- Strategic Leadership is comprised of Trilinos developers who have extensive experience with Trilinos and knowledge of research directions of interest to both developers and stakeholders.
- Package Owners are Team Maintainers of individual Trilinos packages.
- Package Developers are Team Members of individual Trilinos packages and are regular contributors to their package.
- Collaborators are irregular contributors to Trilinos packages.
- Determine project wide rules
- Decide on package inclusion
- Form short-term committees to address focused tasks
Operational Leadership will maintain day-to-day operations, interaction with stakeholders, and plan Trilinos development over the next two years. Responsibilities include but limited to
- Maintain DevOps Pipeline (CI/CD; hardware)
- Coordinate package development with stakeholder requests
- Promote software quality and security
- Encourage package development through the Trilinos lifecycle to improve production readiness and credibility
- Control who has merge privileges
- Support Trilinos community
- Website, wikis, annual meetings, tutorials, etc.
- Curtis Ober (Trilinos Product Owner) -- GitHub handle: ccober6
- Sam Browne (DevOps Lead) -- GitHub handle: sebrowne
- Roger Pawlowski (Core Area Lead) -- GitHub handle: rppawlo
- Christian Glusa (Solvers Area Lead) -- GitHub handle: cgcgcg
- Mauro Perego (Discretization and Analysis Area Lead) -- GitHub handle: mperego
The Strategic Leadership will primarily be defining and developing Trilinos strategic research directions to support future application needs over the next five years. Responsibilities include but not limited to
- Be aware of cutting-edge technology on the 5-year horizon
- Be aware of strategic gaps in Trilinos
- Maintain list of strategic priorities (~5)
- Interface with external teams (e.g., PETSc)
- Be Trilinos champions at SC, vendors, labs, application teams, and other frameworks
- Prep/Train developers on latest technologies
- Mike Heroux -- GitHub handle: maherou
- Eric Phipps -- GitHub handle: etphipp
- Siva Rajamanickam -- GitHub handle: srajama1
- Heidi Thornquist -- GitHub handle: hkthorn
- Jim Willenbring -- GitHub handle: jwillenbring
- Michael Wolf -- Github handle: mmwolf
The Trilinos Product Owner serves as a single point of contact for Trilinos stakeholders. The Product Owner provides an important role that crosscuts the package areas and facilitates a more coordinated effort to user support for our customers. Responsibilities include:
- Serve as single point of contact and customer liaison for stakeholders.
- Improve communication with stakeholders and identify key issues.
- Help gather and prioritize requirements from stakeholders.
- Communicate these to the Area Leads
- Product Owner will coordinate these interactions as a whole for the Trilinos project.
- Improve and coordinate Strategic Planning
- Help develop plans/directions for Trilinos software product.
- Help develop prioritized list of stakeholder requests.
- Assist management in prioritizing internal funding decisions.
- Monitor and track key stakeholder issues.
- Work with Area Leads to chart new directions for Trilinos.
- Stakeholders can and should still engage Area Leads individually. However if a request/issue requires significant effort, the Product Owner should be included in the discussion.
- Work with DevOps Lead to develop and improve Trilinos infrastructure
- Improve configuration, build and running with Trilinos.
- Improve deployment and testing (e.g., incorporating stakeholder requirements)
- Manage cross-Area changes to Trilinos that effect multiple packages (e.g., removal of UVM and Epetra)
- Serve in the Operational Leadership and TSC.
- Curtis Ober -- GitHub handle: ccober6
Lead Trilinos DevOps team in daily operational duties and developing strategic direction for infrastructure-related topics. Responsibilities include:
- Provides streamlined processes and set of tools for development of
Trilinos packages
- Implements various development, testing, automation tools, and IT infrastructure
- Defines and sets development, test, release, update, and support processes
- Organizes and maintains Trilinos release process
- Leads DevOps team in performing associated tasks
- Serves in the Operational Leadership and TSC.
- Sam Browne -- GitHub handle: sebrowne
Lead development of Trilinos Core packages that provide many basic capabilities to other Trilinos packages and stakeholders. Responsibilities include:
- Supports and provides guidance to Trilinos Core packages on development
- Coordinates with stakeholders about Core requirements
- Facilitates Core specific requests and inter-package interactions
- Serve in the Operational Leadership and TSC.
- Roger Pawlowski -- GitHub handle: rppawlo
Lead Solvers Area to provide a wide-variety of solution methods for linear and nonlinear systems. Responsibilities include:
- Covers packages for linear (direct & iterative) and nonlinear solvers
- Coordinates with stakeholders about solver requirements
- Facilitates solver specific requests and inter-package interactions
- Serve in the Operational Leadership and TSC.
- Christian Glusa -- GitHub handle: cgcgcg
Lead the Discretizations and Analysis Area to provide modular, interoperable and extensible tools for the discretization of integral and differential equations and top level algorithms (outermost loops) in a computational simulation or design study (e.g., time integration, bifurcation tracking, parameter continuation, optimization, and uncertainty quantification). Responsibilities include:
- Covers packages for Discretization and Analysis Area
- Coordinates with stakeholders about package requirements in this Area
- Facilitates package specific requests and inter-package interactions
- Serve in the Operational Leadership and TSC.
- Mauro Perego -- GitHub handle: mperego
Package Owners are Package Developers (Team Maintainers) of individual Trilinos packages, and have the following responsibilities
- Lead package research and development
- Coordinate development with other packages to promote interoperability between packages
- Determine the Team Members of their respective package
Package Developers are Team Members of individual Trilinos packages and are regular contributors to their package. Their responsibilities include
- Develop code
- Review Pull Requests
- Provide and maintain documentation
- Adhere to software quality practices
Collaborators are irregular contributors to Trilinos packages. Their responsibilities include
- Provide documentation for contributions
- Adhere to software quality practices