Implementing policy @ WSSSPE

23
Implementing Policy WSSSPE Workshop 2013 Daisie Huang Biodiversity Research Centre University of British Columbia

description

Panel subpresentation on Implementing Policy in Sustainable Software

Transcript of Implementing policy @ WSSSPE

Page 1: Implementing policy @ WSSSPE

Implementing PolicyWSSSPE Workshop 2013

Daisie HuangBiodiversity Research CentreUniversity of British Columbia

Page 2: Implementing policy @ WSSSPE

Implementing Policy• Key issues:

• As software matures, new problems emerge.

• Sustainability issues should be addressed throughout the life cycle.

• How to implement sustainability when resources are limited?

Page 3: Implementing policy @ WSSSPE

Implementing Policy

➡API Governance

➡Software Security

➡Sustainability

Page 4: Implementing policy @ WSSSPE

Implementing Policy

➡API Governance

Developing Systems for API GovernanceC Krintz, H Jayathilaka, S Dimopoulos, A Pucher, and R Wolski, Department of Computer Science, UC Santa Barbara

Page 5: Implementing policy @ WSSSPE

API Governance

• Scientific research relies on access to digital assets as well as hardware.

• APIs govern the interactions between these digital assets.

from phylotastic.org

Page 6: Implementing policy @ WSSSPE

API Governance

• APIs need to be portable and consistent.

• Semantic compatibility

• Syntactic compatibility

Page 7: Implementing policy @ WSSSPE

Implementing Policy

➡API Governance

➡Software Security

➡Sustainability

Page 8: Implementing policy @ WSSSPE

Implementing Policy

➡Software Security

Toward a Research Software Security Maturity ModelR Heiland, B Thomas, V Welch, C Jackson, Center for Trustworthy Scientific Cyberinfrastructure, Indiana University

Page 9: Implementing policy @ WSSSPE

Software Security

Page 10: Implementing policy @ WSSSPE

Software Security• A Security Maturity Model can formalize this

process:

• Provides classification of software security practices.

• Provides a path for tightening security practices as a package’s maturity level increases.

• Emphasizes understandability over complexity.

Page 11: Implementing policy @ WSSSPE

Implementing Policy

➡API Governance

➡Software Security

➡Sustainability

Page 12: Implementing policy @ WSSSPE

Implementing Policy

➡Sustainability

A User Perspective on Sustainable Scientific SoftwareBrian Blanton and Chris Lenhardt, Renaissance Computing Institute

Page 13: Implementing policy @ WSSSPE

Sustainability

• Tension between “getting it done” enough to publish scientific results and “getting it right” for future users.

Page 14: Implementing policy @ WSSSPE

Sustainability

Co-funding

Best suited for large, collaborative projects

Page 15: Implementing policy @ WSSSPE

“Software carpentry”

Teach scientists to use software development best practices.

Sustainability

Page 16: Implementing policy @ WSSSPE

Implementing Policy

➡Sustainability

Software Engineering as Instrumentation for the Long Tail of Scientific SoftwareDaisie Huang and Hilmar Lapp, UBC and NESCent

Page 17: Implementing policy @ WSSSPE

The Long TailThe lifespan of scientific software can be unexpectedly long.

Page 18: Implementing policy @ WSSSPE

Lots of small programs implement different methods.

The Long Tail

Page 19: Implementing policy @ WSSSPE

Facets of software design

• API development

• Security

• User interface design

• Test engineering

• Deployment

Page 20: Implementing policy @ WSSSPE

Facets of software design

• API development

• Security

• User interface design

• Test engineering

• Deployment

Phylogenetics/Genomics/Ecology/Molecular Biology/Developmental

Biology

Page 21: Implementing policy @ WSSSPE

Instrumentation• Software engineering as a resource

• Analogous to DNA sequencing facilities

Page 22: Implementing policy @ WSSSPE

Instrumenting Software Engineering

• A scientific software engineering center can provide these resources to many projects.

• Governed by long -term vision that is not tied to success or failure of any individual project.

• Emphasis on executing good science by making functional tools.

Page 23: Implementing policy @ WSSSPE

Conclusions• Many facets of software design not addressed in

most scientific software projects.

• Possible solutions include:

• large projects can hire developers with software engineering expertise

• providing scientists with software design guidance

• A software engineering center can provide both expertise and guidance to the long tail.