Creating Robust Software for Better Scientific Outcome (IT4I training)

Europe/Prague
207 (VŠB - Technical University Ostrava, IT4Innovations building)

207

VŠB - Technical University Ostrava, IT4Innovations building

Studentská 6231/1B 708 33 Ostrava–Poruba Czech Republic
Description

Annotation

Computational science and engineering communities develop complex applications to solve scientific and engineering challenges. These applications have many moving parts that need to interoperate with one another. The accuracy and reliability of results produced by the scientific software depends not only on the individual components behaving correctly, but also on the validity of their interactions. Therefore, a rigorous software process is a critical requirement for scientific productivity using such software. However, most science teams struggle to find a good solution for themselves, partly due to lack of training and partly due to lack of resources within the team. IDEAS (www.ideas-productivity.org), a DOE-funded project aimed toward increasing scientific software productivity, has participants who have faced and resolved many of these challenges. Many of these participants come from scientific software projects (including hypre, PETSc, SuperLU and Trilinos) that have succeeded in instituting a strong culture of software engineering, where it is perceived as an asset in producing scientific results rather than a tax on limited resources. This tutorial leverages the combined expertise of various IDEAS project members to provide a methodology for devising a software process that meets the needs of individual projects.

Purpose of the course (benefits for the attendees)

This tutorial will provide information on best practices in software engineering explicitly tailored for Computational Science and Engineering (CSE). Goals are improving the productivity of those who develop CSE software and increasing the sustainability of software artefacts. We will discuss practices that are relevant for projects of all sizes, with emphasis on small teams (for example, a faculty member and collaborating students).

Level

all levels

Language

English

About the tutor(s)

Anshu Dubey recieved her B.Tech in Electrical Engineering from IIT Delhi in India, and her Ph.D. in computer science from Old Dominion University in 1993. She joined the University of Chicago as a post-doctoral appointee in the Astronomy and Astrophysic department. She later joined the Flash Center for Computational Science where she was computer science/applications group lead from 2003-2013 and associate director from 2009-2013. From 2013 to 2015 she was on the staff at Lawrence Berkeley National Laboratory, where she served as work lead and computer systems engineer in the Applied Numerical Algorithms Group. In 2015 she joined the Mathematics and Computer Science Division at Argonne as a Computer Scientist, and was also named a senior fellow at the Computational Institute. She has two decades of experience working in the multiphysics simulations. Her current focus in CSE is on software engineering to enhance both scientific and software productivity of computational scientists.

Rinku Gupta received her M.S. in computer science from Ohio State University in 2002. She joined Dell Inc. as a high performance computing specialist in 2003 where she helped design and develop commodity clustering solutions. In 2006, she joined the Mathematics and Computer Science Division at Argonne National Laboratory. She is currently senior scientic development specialist with focus on research in three different domains related to (a) resiliency and fault tolerance in supercomputing, (b) high performance computing middleware libraries and (c) software engineering targeted to research methodologies for software productivity.

  • Wednesday, 4 October
    • Registration 207

      207

      VŠB - Technical University Ostrava, IT4Innovations building

      Studentská 6231/1B 708 33 Ostrava–Poruba Czech Republic
    • Motivation and Overview 207

      207

      VŠB - Technical University Ostrava, IT4Innovations building

      Studentská 6231/1B 708 33 Ostrava–Poruba Czech Republic
    • 11:30
      lunch break
    • Git - Introduction and advanced features 207

      207

      VŠB - Technical University Ostrava, IT4Innovations building

      Studentská 6231/1B 708 33 Ostrava–Poruba Czech Republic
    • 14:30
      coffee break 207

      207

      VŠB - Technical University Ostrava, IT4Innovations building

      Studentská 6231/1B 708 33 Ostrava–Poruba Czech Republic
    • Testing and Verification 207

      207

      VŠB - Technical University Ostrava, IT4Innovations building

      Studentská 6231/1B 708 33 Ostrava–Poruba Czech Republic
    • 16:30
      coffee break 207

      207

      VŠB - Technical University Ostrava, IT4Innovations building

      Studentská 6231/1B 708 33 Ostrava–Poruba Czech Republic
    • Testing and Verification 207

      207

      VŠB - Technical University Ostrava, IT4Innovations building

      Studentská 6231/1B 708 33 Ostrava–Poruba Czech Republic
      • 17:00
        Coffee break
  • Thursday, 5 October
    • Agile methodologies via Kanban and GitHub 207

      207

      VŠB - Technical University Ostrava, IT4Innovations building

      Studentská 6231/1B 708 33 Ostrava–Poruba Czech Republic
    • 10:30
      coffee break 207

      207

      VŠB - Technical University Ostrava, IT4Innovations building

      Studentská 6231/1B 708 33 Ostrava–Poruba Czech Republic
    • Reproducibility 207

      207

      VŠB - Technical University Ostrava, IT4Innovations building

      Studentská 6231/1B 708 33 Ostrava–Poruba Czech Republic
    • Licensing 207

      207

      VŠB - Technical University Ostrava, IT4Innovations building

      Studentská 6231/1B 708 33 Ostrava–Poruba Czech Republic
    • 13:00
      lunch break
    • Software lifecycle, documentation and community impact 207

      207

      VŠB - Technical University Ostrava, IT4Innovations building

      Studentská 6231/1B 708 33 Ostrava–Poruba Czech Republic