Foundations of Sustainable Design

Scheduled Public Course Offerings

Date Location Instructor
Jan. 31, 2018 to Jan. 31, 2019
Event page Max Guernsey, Scott Bain

Course Tabs

Course Overview
Summary: 

Sustainable Software Development: Foundations  of Sustainable Design is an online course that teaches the fundamental principles of software design. There are choices a developer can make that will make the software they write harder to maintain or extend and choices that will make it easier. This course helps developers make better choices for more longevity and flexibility in their code without introducing undue complexity.

This course addresses key questions in modern development such as how to design systems that have changeability as a fundamental quality and how the team can communicate effectively when a design is in a constant state of change.

Find out more at Net Objectives University.

Watch a webinar for An Introduction to Sustainable Design

Course Objectives: 

There are eight sessions in the course, each focused on one aspect of sustainable design. 

In this course, you will:

  • Identify the seven factors of sustainable design.
  • Explore your understanding through guided exercises and discussions with fellow students.
  • Assess your understanding with quizzes for each factor.

 

Target Audience:

Primary Audience: 

Software developers who want to learn more about what makes a design good or bad and how to make designs better.

Secondary Audience: 
Experienced developers, testers, designers, and technical leads. Lesser experienced developers will find value and should be included if part of an experienced team.
Learning Objectives: 

Upon completion, developers should be able to:

  • Identify properties of a design that will limit a product’s shelf life.
  • Propose improvements to extend and expand the usefulness of a software product.
  • Determine when they need to pull in a more experienced software designer.
  • Communicate effectively about design with other developers using a common language.
  • For new code, reduce the incidence of the following:
    • Needing to make the same fix in several places.
    • “Cascading” changes, where one small change leads to another, then another, et cetera.
    • Long searches to determine where all the related parts of a requirement live.
    • Surprising impacts on consumers of code.
    • Writing inscrutable code.
    • Unexpected side-effects within a body of code.
    • Difficulty testing.
Course Description PDF: 

Any Certifications/PDUs

 

Maximum Number in Class

1 000 (Approximate. Depends upon make up and experience level of team.)