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

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.

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

Nov 2nd 2026
4 Weeks
Software Design Methods and Tools (Coursera) Coursera
University of Colorado System

Software Design Methods and Tools (Coursera)

Since many software developers are compulsive coders, they have created software over the years to help them do their job. There are tools which make design and its associated tasks easier. The course introduces some basic tools and techniques to help you with design. Tools aren’t always tangible, however. The last two lessons of this course discuss questions of Ethics in software development. The purpose here is, as with tools, to equip you to better carry our your responsibilities as a designer. Students will be required to have a prior knowledge of writing and delivering software and some programming knowledge in java.

Oct 26th 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.

Oct 26th 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.

Oct 26th 2026
5-12 Weeks
Formulación y evaluación de proyectos complejos (Coursera) Coursera
Universidad de los Andes

Formulación y evaluación de proyectos complejos (Coursera)

Bienvenido al curso de Formulación y evaluación de proyectos complejos de ingeniería, soy Andrés Felipe Gómez y te estaré acompañando a lo largo de estas 8 semanas en las que aprenderás los fundamentos básicos para poder determinar si un proyecto es factible o no, desde su ideación hasta su operación, por lo que podrás formular y evaluar proyectos desde las diferentes dimensiones que incorpora la complejidad de este.

Oct 26th 2026
5-12 Weeks
Software Design as an Abstraction (Coursera) Coursera
University of Colorado System

Software Design as an Abstraction (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.

Oct 26th 2026
5-12 Weeks
Project Management Essentials (Coursera) Coursera
Howard University

Project Management Essentials (Coursera)

This introductory course provides a comprehensive overview of project management principles, methodologies, and best practice. The Project Management Essentials course is designed for professionals at various career stages, from beginners to those seeking a refresher. The course equips learners with a foundational understanding of the key elements of project management.

Nov 9th 2026
4 Weeks
Agile Planning for Software Products (Coursera) Coursera
University of Alberta

Agile Planning for Software Products (Coursera)

This course covers the techniques required to break down and map requirements into plans that will ultimately drive software production. Upon successful completion of this course, you will be able to: create effective plans for software development; map user requirements to developer tasks; assess and plan for project risks; apply velocity-driven planning techniques; generate work estimates for software products.

Oct 26th 2026
4 Weeks
Six Sigma Tools for Define and Measure (Coursera) Coursera
University System of Georgia

Six Sigma Tools for Define and Measure (Coursera)

This course is for you if you are looking to learn more about Six Sigma or refresh your knowledge of the basic components of Six Sigma and Lean. Six Sigma skills are widely sought by employers both nationally and internationally. These skills have been proven to help improve business processes and performance. This course will cover the Define phase and introduce you to the Measure phase of the DMAIC (Define, Measure, Analyze, Improve, and Control) process. You will learn about Six Sigma project development and implementation, you will become familiar with project management tools, you will be introduced to statistics and understand its significance to Six Sigma, and finally you will learn about data collection and its importance to an organization.

Oct 26th 2026
4 Weeks