Software Design Threats and Mitigations (Coursera)

Software Design Threats and Mitigations (Coursera)

The design step in developing software has some unique characteristics. First of all, it’s the only step where drawing pictures of things is the norm. Why is that? What do pictures do that other representations cannot do? Pictures have varying levels of detail; pictures have context. Pictures…paint a picture. Why are these things important? In this course, too, we begin looking at other disciplines (building architecture is a favorite one) for lessons on design.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

Course 4 of 4 in the Secure Software Design Specialization.

Syllabus

WEEK 1
Common Vulnerabilities and Weaknesses
How to use the CVE and CWE on-line databases to assess threats and mitigations

WEEK 2
Specific Design Considerations
Specific things you can do to create a better design.

WEEK 3
Building Security in
Security must be built in to a project, not added on.

WEEK 4
A Dramatic Failure
The consequences of a bad design can haunt you forever.

WEEK 5
Bitcoin Foundations
A detailed look at the first two sentences of the abstract of Nakamoto's 2009 paper announcing Bitcoin.

WEEK 6
The Bitcoin Project
Continuing with the abstract of Nakamoto's Bitcoin paper. More details on how it works and how security is integrated into it.

WEEK 7
Simple software compromises
A look into the specifics of two common exploitation techniques--buffer overflow and SQL injections. Even though they're "old", these exploits are still used today!

WEEK 8
Final Exam
A comprehensive course assessment comprising of 5 quizzes. Each assessment contains a randomized set of questions from different modules of the course.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Capstone: Autonomous Runway Detection for IoT (Coursera) Coursera
EIT Digital

Capstone: Autonomous Runway Detection for IoT (Coursera)

The students will develop a larger system using the learning outcomes from these courses, and the students will evaluate the developed system in a real-world programming environment. This course is a true engineering task in which the student must, not only implement the algorithm code, but also handle the interfaces between many different actors and hardware platforms.

Oct 5th 2026
3 Weeks
Usable Security (Coursera) Coursera
University of Maryland, College Park

Usable Security (Coursera)

This course focuses on how to design and build secure systems with a human-centric focus. We will look at basic principles of human-computer interaction, and apply these insights to the design of secure systems with the goal of developing security measures that respect human performance and their goals within a system.

Oct 5th 2026
5-12 Weeks
Introduction to Network Security (Coursera) Coursera
University of London,Royal Holloway, University of London

Introduction to Network Security (Coursera)

The security of computer networks is a key element in cyber security. Computer networking provides the foundational connectivity services that are used for the world wide web, distributed computer applications and services, operations and manufacturing, and national infrastructure. This course provides understanding of key technologies used in computer networks and infrastructure. This includes protocols, computer networks, data centres, operational technologies that form key infrastructure critical to the success of organisations and services from a local to an international scale.

Oct 5th 2026
5-12 Weeks
Cybersecurity in Healthcare (Hospitals & Care Centres) (Coursera) Coursera
Erasmus University Rotterdam

Cybersecurity in Healthcare (Hospitals & Care Centres) (Coursera)

The Cybersecurity in Healthcare MOOC was developed as part the SecureHospitals.eu project. This project has received funding from the European Union’s Horizon 2020 Coordination Research and Innovation Action under Grant Agreement No. 826497. The course "Cybersecurity in Healthcare" has been developed to raise awareness and understanding the role of cybersecurity in healthcare (e.g., hospitals, care centres, clinics, other medical or social care institutions and service organisations) and the challenges that surround it.

Oct 5th 2026
5-12 Weeks
Introdução ao Teste de Software (Coursera) Coursera
Universidade de São Paulo, Brasil

Introdução ao Teste de Software (Coursera)

A necessidade das empresas em produzir software com qualidade tem aumentado a demanda por profissionais com conhecimentos e habilidades em Teste de Software. Entretanto, existe uma escassez de mão-de-obra especializada nesta área. Considerando essa lacuna, o curso de Introdução ao Teste de Software foi planejado para servir como um guia para pessoas que necessitam de uma fonte de consulta e/ou aprendizado na área.

Oct 5th 2026
5-12 Weeks
Software Architecture for the Internet of Things (Coursera) Coursera
EIT Digital

Software Architecture for the Internet of Things (Coursera)

This course will teach you how to design futureproof systems that meet the requirements of IoT systems: systems that are secure, interoperable, modifiable and scalable. Moreover, you'll learn to apply best-in-class software architecture methods to help you design complex IoT and other applications. Lastly, you'll come to understand the business impact of the technical decisions that you make as an IoT system architect.

Sep 28th 2026
5-12 Weeks
Responsible AI - Principles and Ethical Considerations (Coursera) Coursera
Fractal Analytics

Responsible AI - Principles and Ethical Considerations (Coursera)

Welcome to "Responsible AI – Principles and Ethical Considerations"! Dive deep into the very essence of Responsible AI with us. Uncover the significance of key principles shaping technology's future. From ethical considerations to fairness, transparency, and accountability, we discuss these principles with real-world examples, putting them into the context of data science.

Oct 5th 2026
5-12 Weeks
AI for Efficient Programming: Harnessing the Power of LLMs (Coursera) Coursera
Fred Hutchinson Cancer Center

AI for Efficient Programming: Harnessing the Power of LLMs (Coursera)

This course on Artificial Intelligence (AI) for software development explores the use of AI large language models such as ChatGPT, Bard, and others and their potential benefits and challenges. Through examples and hands-on activities, you will develop an understanding of the ways in which AI can speed up software development tasks and free up time for more creative and strategic work.

Oct 5th 2026
4 Weeks
Exam Prep: AWS Certified Solutions Architect - Associate (Coursera) Coursera
AWS

Exam Prep: AWS Certified Solutions Architect - Associate (Coursera)

This new intermediate-level course from Amazon Web Services (AWS) is designed to help you to assess your preparedness for the AWS Certified Solutions Architect - Associate exam. You will learn how to prepare for the exam by exploring the exam’s topic areas and how they map to architecting on AWS. You will review sample certification questions in each domain, practice skills with hands-on exercises, test your knowledge with practice question sets, and learn strategies for identifying incorrect responses by interpreting the concepts that are being tested in the exam.

Oct 5th 2026
4 Weeks