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

Managing Machine Learning Projects (Coursera) Coursera
Duke University

Managing Machine Learning Projects (Coursera)

This second course of the AI Product Management Specialization by Duke University's Pratt School of Engineering focuses on the practical aspects of managing machine learning projects. The course walks through the keys steps of a ML project from how to identify good opportunities for ML through data collection, model building, deployment, and monitoring and maintenance of production systems. Participants will learn about the data science process and how to apply the process to organize ML efforts, as well as the key considerations and decisions in designing ML systems.

Sep 14th 2026
5-12 Weeks
Management of Urban Infrastructures – part 1 (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Management of Urban Infrastructures – part 1 (Coursera)

Sustainability, Resilience and Efficiency are fundamental considerations for city managers in managing urban infrastructures. Today, more than 3.9 billion people, making up more than 54% of the global population, live in cities. Urbanization is expected to continue in the coming years, raising the urban population to 6.0 billion by 2045. This dramatic increase in urban populations will inevitably increase the demand for energy, mobility (transportation), water, and other urban services in every city around the world. Without functional governance and management structures that ensure efficient, resilient and sustainable performance in cities, the current urbanization growth might become a catastrophic risk threatening the quality of life of the humanity.

Sep 14th 2026
5-12 Weeks
Iniciación y Planificación de Proyectos (Coursera) Coursera
University of California, Irvine,Tecnológico de Monterrey

Iniciación y Planificación de Proyectos (Coursera)

En este curso, aprenderás los principios fundamentales de la gestión de proyecto en las etapas de iniciación y planificación, lo cual incluye la identificación y mapeo de los interesados e involucrados clave en el proyecto, la definición de los alcances del proyecto y la construcción de la estructura desglosada del trabajo.

Sep 21st 2026
4 Weeks
Data Mining Project (Coursera) Coursera
University of Colorado Boulder

Data Mining Project (Coursera)

This course offers step-by-step guidance and hands-on experience of designing and implementing a real-world data mining project, including problem formulation, literature survey, proposed work, evaluation, discussion and future work. Data Mining Project can be taken for academic credit as part of CU Boulder’s Master of Science in Data Science (MS-DS) degree offered on the Coursera platform

Sep 28th 2026
4 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.

Sep 14th 2026
5-12 Weeks
Engineering Maintainable Android Apps (Coursera) Coursera
Vanderbilt University

Engineering Maintainable Android Apps (Coursera)

Engineering Maintainable Android Apps, which is a 4 week MOOC that shows by example various methods for engineering maintainable Android apps, including test-driven development methods and how to develop/run unit tests using JUnit and Robotium (or equivalent automated testing frameworks for Android), as well as how to successfully apply common Java/Android software patterns to improve the extensibility and clarity of Android apps.

Sep 14th 2026
4 Weeks
Developing a Systems Mindset (Coursera) Coursera
University of Colorado Boulder

Developing a Systems Mindset (Coursera)

A Systems Mindset teaches learners how to interact effectively as service providers, consultants, researchers, developers, or other professionals providing a service or product to a person, group, or community. This course provides the basic foundations for policy makers, real estate developers, consultants, government agencies, engineers, and non-profit organizations the first steps in engaging complex problems where engagement with communities and stakeholders is necessary.

Sep 14th 2026
3 Weeks
Engineering Project Management: Risk, Quality, Teams, and Procurement (Coursera) Coursera
Rice University

Engineering Project Management: Risk, Quality, Teams, and Procurement (Coursera)

Many Project Managers focus only on the scope, schedule and budget. However, a successful project requires that you manage risk, control the quality of the deliverables, engage and manage people and procure goods and services. This course will focus on these key support functions that make the difference between a highly successful project and an average one. During the course, you will prepare a Qualitative Risk Analysis and Evaluate the Cost of Quality for a provided Case Study.

Sep 28th 2026
5-12 Weeks
Analysis for Business Systems (Coursera) Coursera
University of Minnesota

Analysis for Business Systems (Coursera)

Most often, organizations acquire information systems as part of a larger focus on process improvement and efficiency. These organizations need to invest in the right system to meet their needs: right functionality, right size, and for the right price. The business systems analyst role in most organizations is responsible for translating the organization’s needs into requirements, which are then used to select or build the right system for the organization.

Sep 14th 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