Implementing policy @ WSSSPE

Post on 15-Jan-2015

233 views 0 download

Tags:

description

Panel subpresentation on Implementing Policy in Sustainable Software

Transcript of Implementing policy @ WSSSPE

Implementing PolicyWSSSPE Workshop 2013

Daisie HuangBiodiversity Research CentreUniversity of British Columbia

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?

Implementing Policy

➡API Governance

➡Software Security

➡Sustainability

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

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

API Governance

• APIs need to be portable and consistent.

• Semantic compatibility

• Syntactic compatibility

Implementing Policy

➡API Governance

➡Software Security

➡Sustainability

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

Software Security

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.

Implementing Policy

➡API Governance

➡Software Security

➡Sustainability

Implementing Policy

➡Sustainability

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

Sustainability

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

Sustainability

Co-funding

Best suited for large, collaborative projects

“Software carpentry”

Teach scientists to use software development best practices.

Sustainability

Implementing Policy

➡Sustainability

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

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

Lots of small programs implement different methods.

The Long Tail

Facets of software design

• API development

• Security

• User interface design

• Test engineering

• Deployment

Facets of software design

• API development

• Security

• User interface design

• Test engineering

• Deployment

Phylogenetics/Genomics/Ecology/Molecular Biology/Developmental

Biology

Instrumentation• Software engineering as a resource

• Analogous to DNA sequencing facilities

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.

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.