Skip to main content Skip to navigation

PX915-30 Modelling of Heterogeneous Systems Group Project and Peer-to-peer Project Evaluation

Department
Physics
Level
Taught Postgraduate Level
Module leader
Peter Brommer
Credit value
30
Module duration
15 weeks
Assessment
100% coursework
Study location
University of Warwick main campus, Coventry
Introductory description

N/A.

Module web page

Module aims

Part I: Group Project
As a project team, create a piece of research software following the principles learned in the HetSys Core modules: HS901, HS902, HS903 and HS904.
Part II: Peer-to-Peer Project Evaluation
Validate the error estimate and portability of two codes from a library of current or past individual projects or existing projects.

Outline syllabus

This is an indicative module outline only to give an indication of the sort of topics that may be covered. Actual sessions held may differ.

Part I: Group Project

  1. Project teams of 10 students and 2 project supervisors (1 academic, 1 research software engineer).
  2. Students will design, specify, implement and document a small-scale simulation package to solve a problem within the modelling of heterogeneous systems: examples include DFT, molecular dynamics or computational fluid dynamics.
  3. Projects must meet all 3 key CDT challenges: Cross-disciplinarity, robust software design, uncertainty quantification.
  4. Students will present and demonstrate their software to the CDT.
    Part II:
  5. Software created in individual projects is distributed to students. Each student receives two distinct codes.
  6. Students examine the compliance of the codes with research software engineering principles, with a particular focus on usability (e.g. by examining documentation), portability (e.g. by running on a different platform) and sustainability (e.g. by recapitulating parts of the code). Software authors and assessors are encouraged to engage with each other. ILO II.2.
  7. Students run the codes with an ensemble of input values and study the variation of the results (sensitivity analysis). ILO II.1.
  8. Students compare the outcome of this analysis with the error estimates provided by the software authors. ILO II.3.
  9. Students provide critical feedback on the error estimates to the software authors in an error estimate assessment report (3 pages per software). ILO II.4.
  10. Students present their feedback to the authors and the cohort in a brief presentation. Authors and other cohort members judge the quality of the feedback and award a peer mark.
Learning outcomes

By the end of the module, students should be able to:

  • Part I: Group ProjectCreate a piece of research software implementing methods and using software design principles introduced in previous modules in the course, addressing a cross-discipline research computing challenge.
  • Part I: Group ProjectPlan and manage the research software engineering project from the specification phase to a deliverable outcome, including documentation.
  • Part I: Group ProjectAnalyse and validate research software results, both by using automated testing and manual comparisons.
  • Part I: Group ProjectFormulate and quantify the uncertainty in the output of research software, thus giving an measure of the reliability of a computed quantity.
  • Part I: Group ProjectDemonstrate effective communication and documentation skills, both within the group and for the benefit of a future software user.
  • Part I: Group ProjectDemonstrate the ability to work as a member of a team to achieve shared objectives within the scope of the project and monitor and adjust a personal programme of work on an ongoing basis.
  • Part II: Peer-to-Peer Project EvaluationConstruct error estimates of third-party simulation codes using a simulation ensemble with varied input parameters.
  • Part II: Peer-to-Peer Project EvaluationValidate a code’s compliance with research software engineering principles, including usability, portability, and sustainability.
  • Part II: Peer-to-Peer Project EvaluationCritically assess the error estimates provided by the software authors.
  • Part II: Peer-to-Peer Project EvaluationProvide critical feedback to software authors in an error estimate assessment report and oral presentation, thus demonstrating effective written and oral communication skills.
Indicative reading list

J. C. Carver, N. P. Chue Hong, G. K. Thiruvathukal, Software Engineering for Science
S. Oliveira, D.E. Stewart: Writing scientific software : a guide for good style
R. Stephens: Beginning software engineering

Interdisciplinary

Mixes domain-specific simulation and mathematics with implementation and software engineering.

Subject specific skills

Scientific software development, domain-specific knowledge.

Transferable skills

Teamwork, collaborative code development, presentation skills, portfolio writing.

Study time

Type Required
Lectures 5 sessions of 1 hour (2%)
Project supervision 8 sessions of 1 hour (3%)
Supervised practical classes 15 sessions of 1 hour (5%)
Other activity 2 hours (1%)
Private study 108 hours (36%)
Assessment 162 hours (54%)
Total 300 hours
Private study description

Part 1: 60 hours free study (researching, programming, group meetings,...)
Part 2: 48 hours individual work

Other activity description

Feedback presentation session where students present their findings to the cohort and give feedback on the performance and uncertainty estimates of the codes.

Costs

No further costs have been identified for this module.

You do not need to pass all assessment components to pass the module.

Assessment group A1
Weighting Study time
Software usage demonstration 15% 10 hours

(Part I) Software Specification, Design Document, Workplan for Research Software Project

Portfolio of Project Outcomes: Documentation, Tutorial and Performance Reports 40% 100 hours

(Part I) Group assessment: 40% (15% documentation, 15% tutorial, 10% performance)

Presentation and Usage demonstration 15% 20 hours

(Part 1) 2h final presentation session & usage demonstration, to the CDT.

Peer assessment and contribution 12% 10 hours

(Part 1) Individual contribution based on contribution statement (supported by revision system logging data) and peer assessment, and agreed by the project supervisors.

Uncertainty Quantification Report 14% 20 hours

(Part 2) Construct error estimates of third-party simulation codes using a simulation ensemble with varied input parameters.
Validate a code’s compliance with research software engineering principles, including usability, portability, and sustainability.
Critically assess the error estimates provided by the software authors.
Provide critical feedback to software authors in an error estimate assessment report and oral presentation, thus demonstrating effective written and oral communication skills.

Peer to Peer Assessment of UQ Reports 4% 2 hours

(Part 2) Students present their feedback to the authors and the cohort in a brief presentation. Authors and other cohort members judge the quality of the feedback and award a peer mark.

Feedback on assessment

Part I: Group Project

Extensive written feedback on software specification document
Q & A session with examiners (including HetSys CDT Teaching Committee) during Software Demonstration / Presentation session
Written feedback on Individual Contribution Statement
Written feedback on Performance Assessment of delivered code

Part II: Peer-to-Peer Project Evaluation
Assessment reports will be returned with detailed feedback
Peer assessment will be received (subject to moderation) on the presentations

Courses

This module is Core for:

  • Year 1 of TPXA-F344 Postgraduate Taught Modelling of Heterogeneous Systems
  • Year 1 of TPXA-F345 Postgraduate Taught Modelling of Heterogeneous Systems (PGDip)