Workshop in Sustainable Software for Science: Practice and Experience
Workshop notes at http://bit.ly/wssspe13!
These slides: http://www.slideshare.net/kcranstn/wssspe-cranston-community
Communities for sustainable software
useful & usable
data management is a generic problem!
iRODS = highly customizable data management solution!
many functions (data access, processing, provenance…)!
uses create policies for speciﬁc needs!
over 25 science & engineering domains in user list!
Moore, Reagan M. Extensible Generic Data Management Software. http://
Co-ordination of effort
high-energy physics relies computer modeling!
lack of coordination between projects!
develop teams of technical specialists !
target many different architectures!
common scripting language / APIs
Bruhwiler, David; Vay, Jean-Luc; Cameron G. R. Geddes; Koniges, Alice; Friedman,
Alex; P. Grote, David (2013): White Paper on DOE-HEP Accelerator Modeling Science
Ketan Maheshwari⇤ , David Kelly⇤ , Scott J. Krieder† , Justin M. Wozniak⇤ ,
Daniel S. Katz‡ , Mei Zhi-Gang§ , Mainak Mookherjee¶
Division, Argonne National Laboratory
† Department of Computer Science, Illinois Institute of Technology
‡ Computation Institute, University of Chicago & Argonne National Laboratory
§ Nuclear Engineering Division, Argonne National Laboratory
¶ Department of Earth and Atmospheric Sciences, Cornell University
Involve scientists in feedback
Abstract—Effective use of parallel and distributed computing
science depends upon multiple interdependent entities and
ctivities that form an ecosystem. Active engagement between
pplication users and technology catalysts is a crucial activity
hat forms an integral part of this ecosystem. Technology catalysts
ay a ❖
crucial role beneﬁting communities beyond a single user
roup. An effective user-engagement, use and reuse of tools and
chniques has a broad impact on software sustainability. From
ur experience, we sketch a life-cycle for user-engagement activity
scientiﬁc computational environment and posit that application
vel reusability promotes software sustainability. We describe
ur experience in engaging two user groups from different
ientiﬁc domains reusing a common software and conﬁguration
n different computational infrastructures.
Index Terms—Technology-catalyst, user-engagement, scientiﬁc
‘Technology catalysts’: people
with domain & technical skills
Activities and transitions in user engagement cycle.
identify generic software pattern for running common
modern science. In
software on different HPC architecture this experience paper, we report on
1) Experience in scientiﬁc community engagement descr
ing activities performed at different levels in order
I. I NTRODUCTION
support scientiﬁc users with applications
Maheshwari, K.; D. Kelly, S.J. Krieder, J.M. Wozniak, D.S. Katz, M. Zhi-Gang, M. deployed o
Domain scientists often have limited time to investigate the
Mookherjee. Reusability in Science: From Initial Userlarger and faster systems.
Engagement to Dissemination of
apabilities that a large scale computing and data-handling
2) A sketch and demonstration the elements of a success
frastructure combined with a high performance software
scientiﬁc application deployment cycle.
amework could bring to their scientiﬁc activities. Technology
Make it usable
Good software engineering processes
easier for people to use and contribute!
Service-based business models!
multiple communication channels,
Hanwell, Marcus; Perera, Amitha; Turner, Wes; O'Leary, Patrick; Osterdahl, Katie; Hoffman,
Bill; Schroeder, Will (2013): Sustainable Software Ecosystems for Open Science. http://
NESCent = (domain scientists) + (in-house
hands-on coding event with users, researcherdevelopers, software engineers!
Community mailing list critical resource years later
Cranston, Karen; Vision, Todd; O'Meara, Brian; Lapp, Hilmar (2013): A grassroots
approach to software sustainability. http://dx.doi.org/10.6084/m9.ﬁgshare.790739
Tools & APIs for access to online data / resources!
Direct collaboration / support for data providers!
Workshops and training for users
Chamberlain, Scott; Hart, Edmund; Ram, Karthik; Boettiger, Carl (2013): rOpenSci - a
collaborative effort to develop R-based tools for facilitating Open Science.!
Good software engineering
More welcoming for developers!
Easier for users to engage / test!
Find common requirements across projects!
Don’t neglect usability !
Multiple communication channels!
People and centers with cross-over