Engineering Practices for Building Quality Software (Coursera)

Engineering Practices for Building Quality Software (Coursera)

Agile embraces change which means that team should be able to effectively make changes to the system as team learns about users and market. To be good at effectively making changes to the system, teams need to have engineering rigor and excellence else embracing change becomes very painful and expensive. In this course, you will learn about engineering practices and processes that agile and traditional teams use to make sure the team is prepared for change. In additional, you will also learn about practices, techniques and processes that can help team build high quality software. You will also learn how to calculate a variety of quantitative metrics related to software quality.

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

This is an intermediate course, intended for learners with a background in software development. To succeed in the course, you should have experience developing in modern programming languages (e.g., Java, C#, Python, JavaScript), an understanding of software development lifecycle models, and a desire to better understand quality aspects of software development beyond program correctness.
At the end of this course, you will be able to comfortably and effectively participate in various techniques and processes for building secure and high quality software.
Course 4 of 4 in the Software Development Lifecycle Specialization.

What You Will Learn

  • You will learn how to quantitatively measure design quality attributes.
  • You will establish feasible and testable scenarios for evaluating quality attributes in software architecture.
  • You will develop skills to ensure quality in developing code beyond correct functionality alone.
  • You will understand quality approaches to post-development stages of the lifecycle.

Syllabus

WEEK 1
Introduction to Quality Software
In this module, you will be introduced to the concept of quality as it relates to software.
Quality in Design
In this module, you will learn about a variety of quality metrics including how to calculate them. A discussion of design patterns follows, allowing you to gain a deeper understanding of the quality they provide and exposure to several important patterns.

WEEK 2
Quality in Architecture
In this module, you will create Scenarios in order to document and verify quality attributes relevant to software architecture, including usability, performance, and more. Then, you will examine one specific quality attribute and its implications: security.

WEEK 3
Quality in Implementation
In this module, you will explore a variety of quality aspects of the implementation stage of the lifecycle. You will also evaluate coding style guides and static analysis tools. Finally, you will analyze self-documentation in open-source code and identify the capabilities of version control and automated build tools.

WEEK 4
Quality in Testing and Deployment
In this module, learners will discover quality in the final lifecycle stages: testing and deployment. Learners will first be instructed on the importance of test planning, understand what it means to evaluate tests and identify the benefits of test-first process. Then, a variety of resources will give learners understanding into continuous pipeline tools, allowing the learner to evaluate their potential benefits (and drawbacks) for their own projects.

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

Related Courses

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.

Nov 2nd 2026
4 Weeks
Programming Reactive Systems (Scala 2 version) (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Programming Reactive Systems (Scala 2 version) (Coursera)

Reactive programming is a set of techniques for implementing scalable, resilient and responsive systems as per the Reactive Manifesto. Such systems are based on asynchronous message-passing, and their basic building-blocks are event handlers. This course teaches how to implement reactive systems in Scala and Akka by using high-level abstractions, such as actors, asynchronous computations, and reactive streams.

Nov 2nd 2026
5-12 Weeks
Version Control with Git (Coursera) Coursera
Atlassian

Version Control with Git (Coursera)

The Version Control with Git course provides you with a solid, hands-on foundation for understanding the Git version control system. Git is open source software originally created by Linus Torvalds. Git manages team files for large and small projects. This allows the team to continuously improve its product. It is used by most major technology companies, and is assumed knowledge for many modern programming and IT jobs. It is a core component of DevOps, continuous delivery pipelines and cloud-native computing. You could also use Git to manage the many continuously improving revisions of that book that you are writing.

Nov 2nd 2026
4 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.

Nov 2nd 2026
5-12 Weeks
Nanotechnology and Nanosensors, Part 2 (Coursera) Coursera
Technion - Israel Institute of Technology

Nanotechnology and Nanosensors, Part 2 (Coursera)

Learn about novel sensing tools that make use of nanotechnology to screen, detect and monitor various events in personal or professional life. Together, we will lay the groundwork for infinite innovative applications, starting from diagnosis and treatments of diseases, continuing with quality control of goods and environmental aspects, and ending with monitoring security issues.

Nov 2nd 2026
5-12 Weeks
Becoming a Cybersecurity Consultant (Coursera) Coursera
EIT Digital

Becoming a Cybersecurity Consultant (Coursera)

The course targets individuals planning to develop a career in cybersecurity, middle managers and executives. The course covers the following main learning objectives: Threats - Technology - Economics and it is structured in 2 parts: an online part and a face-to-face/live webinar part. The present online course is designed to cover theoretical concepts a Cybersecurity Consultant (medium level) should know.

Nov 2nd 2026
3 Weeks
An Introduction to Interactive Programming in Python (Part 2) (Coursera) Coursera
Rice University

An Introduction to Interactive Programming in Python (Part 2) (Coursera)

This two-part course is designed to help students with very little or no computing background learn the basics of building simple interactive applications. Our language of choice, Python, is an easy-to learn, high-level computer language that is used in many of the computational courses offered on Coursera. To make learning Python easy, we have developed a new browser-based programming environment that makes developing interactive applications in Python simple.

Nov 2nd 2026
4 Weeks
Fundamentals of Engineering Exam Review (Coursera) Coursera
Georgia Institute of Technology

Fundamentals of Engineering Exam Review (Coursera)

The purpose of this course is to review the material covered in the Fundamentals of Engineering (FE) exam to enable the student to pass it. It will be presented in modules corresponding to the FE topics, particularly those in Civil and Mechanical Engineering. Each module will review main concepts, illustrate them with examples, and provide extensive practice problems.

Nov 2nd 2026
5-12 Weeks
Implementing a Risk Management Framework (Coursera) Coursera
University System of Georgia

Implementing a Risk Management Framework (Coursera)

The ultimate destination for a security manager is the Chief Information Security Officer (or Chief Security Officer) a senior executive role responsible for all cybersecurity operations in the organization. But how do you get from entry-level IT or security employee to the CISO’s office and what do you need to know when you get there? This course examines the career path and requirements to be an effective CISO, as well as the roles and responsibilities of the position.

Nov 2nd 2026
5-12 Weeks
Malware Analysis and Introduction to Assembly Language (Coursera) Coursera
IBM

Malware Analysis and Introduction to Assembly Language (Coursera)

Malicious software, or malware, is typically delivered over a network and is designed to cause disruption to a computer, client, server, or network. Disruptions can include leaked private information, unauthorized access to information or systems, blocked user access, interference with security and privacy, or numerous other variations of attacking systems.

Nov 2nd 2026
5-12 Weeks