Software Engineering: Software Design and Project Management (Coursera)

Software Engineering: Software Design and Project Management (Coursera)

Software Development Life Cycle (SDLC) is the process of developing software through planning, requirement analysis, design, implementation, testing, and maintenance. This course focuses on the project planning and analysis/design phases of SDLC, and you will learn about different architectural patterns and design patterns to solve common problems in software design. It covers project planning, scheduling, and cost estimating, which are the principal tasks of software project managers.

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

Basic object-oriented programming (OOP) concepts are required to understand different design patterns covered in this course. System design is driven by the UML models derived from requirement analysis. It is recommended to take the course "Software Engineering: Modeling Software Systems using UML" before attempting this course, but it is not a hard requirement.
Course 3 of 3 in the Software Engineering Specialization.

Syllabus

WEEK 1
System Analysis and Design
Welcome to the first module of this course! In this module, you will learn: (1) The purpose and importance of system analysis and design. (2) The major activities that take place during system analysis and design. (3) How to realize design goals and deal with the implementation environment. (4) What are architectural patterns and design patterns and when to use them.
State Machine Diagram
In this module, you will learn: (1) How to use a state machine diagram to describe the behavior inside an object.

WEEK 2
Design Patterns
In this module, you will learn: (1) A design pattern is a general reusable solution to a commonly occurring problem in software design. (2) Strategy Pattern. (3) Observer Pattern.
More Design Patterns
In this module, you will learn: (1) Mediator Pattern. (2) Proxy Pattern. (3) Bridge Pattern. (4) Singleton Pattern. (5) Factory Pattern. (6) When to use design patterns. (7) Anti Patterns.

WEEK 3
Software Quality Assurance
In this module, you will learn: (1) The quality assurance process and the central process activities of quality assurance, quality planning and quality control. (2) The quality assurance process and the central process activities of quality assurance, quality planning and quality control. (3) The principles of software development process improvement and why process improvement is worthwhile.
Managing Software Development
In this module, you will learn: (1) The principal tasks of software project managers. (2) The need of project planning in all software projects. (3) Requirements for staffing and scheduling in software projects. (4) Techniques for estimating the size and cost of software development. (5) Project tracking and control.

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

Related Courses

Software Design Threats and Mitigations (Coursera) Coursera
University of Colorado System

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.

Aug 31st 2026
5-12 Weeks
Software Design as an Element of the Software Development Lifecycle (Coursera) Coursera
University of Colorado System

Software Design as an Element of the Software Development Lifecycle (Coursera)

This course talks about software development lifecycles a description/prescription for how we write software. Design is a step in this life cycle, and the course explores the implications of this. Design has a role in the life cycle; it is always there, regardless of the kind of life cycle we’re talking about. Why is that? Why was design considered as a step in this life cycle?

Aug 31st 2026
5-12 Weeks
Engineering Practices for Building Quality Software (Coursera) Coursera
University of Minnesota

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.

Aug 31st 2026
4 Weeks
Initiating and Planning Projects (Coursera) Coursera
University of California, Irvine

Initiating and Planning Projects (Coursera)

Successful projects require careful upfront planning. In this course, you’ll learn the key roles and responsibilities of the project manager and project team. You’ll also learn to answer some key questions upfront to help you meet project objectives: What will this project accomplish? Why is this project important? Who benefits from this project? How will we plan for successful outcomes?

Aug 31st 2026
5-12 Weeks
Programación en Python (Coursera) Coursera
Universidad de los Andes

Programación en Python (Coursera)

¡Te damos la bienvenida al curso de Programación en Python de la Universidad de los Andes! El propósito de este curso es ofrecerte un ambiente interactivo para que desarrolles tus habilidades de pensamiento computacional, aprendas a programar en el lenguaje Python y te entrenes en la resolución de problemas utilizando un computador. La estrategia pedagógica empleada es el aprendizaje activo basado en casos.

Aug 31st 2026
4 Weeks
Engineering Project Management: Scope, Time and Cost Management (Coursera) Coursera
Rice University

Engineering Project Management: Scope, Time and Cost Management (Coursera)

Scope, time, and cost management are at the heart of successful project management. This course will give you the tools to develop a project scope, schedule and budget and then status them to predict project performance. Throughout the course, you will learn about change management and techniques to implement it.

Aug 31st 2026
5-12 Weeks
Managing Project Risks and Changes (Coursera) Coursera
University of California, Irvine

Managing Project Risks and Changes (Coursera)

This course will help you manage project risk effectively by identifying, analyzing, and communicating inevitable changes to project scope and objectives. You will understand and practice the elements needed to measure and report on project scope, schedule, and cost performance. You will be equipped with the tools to manage change in the least disruptive way possible for your team and other project stakeholders.

Aug 31st 2026
5-12 Weeks
XR in Healthcare Education and Clinical Practice (Coursera) Coursera
Imperial College London

XR in Healthcare Education and Clinical Practice (Coursera)

This course is designed to teach you about Extended Reality (XR) and its use in healthcare education and clinical practice. Using lessons from experts in the field and different use cases, this course shows you how to use this innovative technology in a way that creates sustainable and accessible real-world use.

Sep 7th 2026
4 Weeks
La gestión de los riesgos y la administración de los cambios en el proyecto (Coursera) Coursera
University of California, Irvine,Tecnológico de Monterrey

La gestión de los riesgos y la administración de los cambios en el proyecto (Coursera)

En este curso, aprenderás a manejar el riesgo del proyecto mediante la identificación, el análisis y la comunicación de los cambios inevitables. En cualquier proyecto pueden suceder imprevistos. Después de este curso, podrás describir y aplicar los elementos necesarios para medir e informar sobre el alcance del proyecto, el cronograma y los costos. Te equiparemos con las herramientas necesarias para gestionar el cambio de la forma menos perjudicial posible para tu equipo y otros interesados en el proyecto.

Sep 7th 2026
4 Weeks
Financing and Initiating Major Engineering Projects (Coursera) Coursera
University of Leeds

Financing and Initiating Major Engineering Projects (Coursera)

To successfully lead major projects you have to understand typical investor and project financing approaches. In this course, you’ll learn to interpret some key contractual instruments that are relevant for the financing of major engineering projects so that you are in a position to ensure the financially secure delivery of your project. You’ll explore the concept of “time value of money” and be able to compute key indicators such as “Pay-back time”, “Net Present value” and “Internal Rate of Return”.

Sep 7th 2026
5-12 Weeks
Construction Project Management (Coursera) Coursera
Columbia University

Construction Project Management (Coursera)

Construction Project Management introduces you to Project Initiation and Planning. Industry experts join Columbia University professor, Ibrahim Odeh, to give an overview of the construction industry. Professor Odeh teaches the fundamentals of the Project Development Cycle while guest lecturers discuss Lean Project Delivery method and Lean Design Behaviors.

Aug 31st 2026
5-12 Weeks