This lesson is being piloted (Beta version)

Background and Introduction

Overview

Teaching: 30 min
Exercises: 0 min
Questions
  • Why should we care about software?

  • Why is software engineering important?

  • What are the key differences between programming and software engineering?

  • Why are the course topics we’ll be learning important for me to know?

Objectives
  • Explain the differences between programming and software engineering.

  • Understand that building software for research is more than coding.

  • Be aware of key factors that often complicate research software development.

  • Explain why we are learning the course topics.

  • Be aware of the three group project choices that can be undertaken.

See topic slides.

Key Points

  • Modern research is impossible without software.

  • Key software engineering skills save you time.

  • Always assume others will use and develop your software.

  • Be clear on requirements and assume they will change.

  • Funders are increasingly expecting software outputs to be reusable by others.