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

Renewable Energy Projects (Coursera) Coursera
University of Colorado Boulder

Renewable Energy Projects (Coursera)

Understanding renewable energy technologies is important, but equally important is knowing how to effectively deploy these technologies to provide renewable energy to end-users – the topic of this course. Upon completion of the course, you will understand the development and management of renewable energy projects, large and small, from conception to launch and subsequent operation.

Oct 19th 2026
5-12 Weeks
GetVirtual: How to Launch Your Online Business (Coursera) Coursera
University of California, Santa Cruz

GetVirtual: How to Launch Your Online Business (Coursera)

The GetVirtual (GV) online training series teaches future entrepreneurs how to launch their first online business by providing step-by-step guidance for launching a website, building a logo and understanding the basics of online social media marketing. Course participants will gain access to GV's project management templates designed to support basic business transactions from initial client intake to invoicing.

Oct 26th 2026
4 Weeks
Designing for Sustainment: Keeping Improvement Work on Track (Patient Safety IV) (Coursera) Coursera
Johns Hopkins University

Designing for Sustainment: Keeping Improvement Work on Track (Patient Safety IV) (Coursera)

Keeping patient safety and quality improvement projects on track, on time, and on budget is critical to ensuring their success. In this course, students will be introduced and given the opportunity to apply a series of tools to guide and manage patient safety and quality initiatives. These include tools for defining what success looks like, developing a change management plan, and conducting a pre-mortem to identify risks for project failure. This course will also provide tools for engaging stakeholders to ensure key players are invested in your project’s success.

Oct 19th 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
Reviews & Metrics for Software Improvements (Coursera) Coursera
University of Alberta

Reviews & Metrics for Software Improvements (Coursera)

This course covers techniques for monitoring your projects in order to align client needs, project plans, and software production. It focuses on metrics and reviews to track and improve project progress and software quality. What you will learn: apply techniques to measure and visualize project progress, integrate Agile review practices to increase project visibility; reflect on lessons learned in software projects through retrospective exercises; improve project and process quality through ongoing measurement

Oct 26th 2026
4 Weeks
Major Engineering Projects: Governance, Risk and Scope (Coursera) Coursera
University of Leeds

Major Engineering Projects: Governance, Risk and Scope (Coursera)

Gain confidence when dealing with stakeholders of major projects by learning to identify and manage those that are involved in the project planning and delivery. This course will enable you to explore project governance in theory and practice. Through real life examples you’ll understand how the critical challenges of the governance in major projects are resolved.

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

Oct 26th 2026
4 Weeks
Planning a Patient Safety or Quality Improvement Project (Patient Safety III) (Coursera) Coursera
Johns Hopkins University

Planning a Patient Safety or Quality Improvement Project (Patient Safety III) (Coursera)

This course provides students with a set of tools and methodologies to plan and initiate a Problem Solving or Quality Improvement project. The first module presents methods for selecting, scoping and structuring a project before it is even initiated. It also introduces the project classifications of implementation and discovery. The second module describes the A3 problem solving methodology and the tool itself. Further in that same module, the student is shown tools to identify problems in flow, defects, and waste and to discover causes, brainstorm, and prioritize interventions. Module 3 shows a methodology within the implementation class. These methods are designed to overcome emotional and organizational barriers to translating evidence-based interventions into practice. The fourth and last module looks at one more way to approach improvement projects in the discovery class. These tools are specifically for new, out-of-the-box design thinking.

Oct 19th 2026
4 Weeks
Software Architecture (Coursera) Coursera
University of Alberta

Software Architecture (Coursera)

The way that software components — subroutines, classes, functions, etc. — are arranged, and the interactions between them, is called architecture. In this course you will study the ways these architectures are represented, both in UML and other visual tools. We will introduce the most common architectures, their qualities, and tradeoffs. We will talk about how architectures are evaluated, what makes a good architecture, and an architecture can be improved. We'll also talk about how the architecture touches on the process of software development.

Oct 19th 2026
4 Weeks
Real-Time Mission-Critical Systems Design (Coursera) Coursera
University of Colorado Boulder

Real-Time Mission-Critical Systems Design (Coursera)

Upon completion of this course the learner will know the difference between systems you can bet your life on (mission critical) and those which provide predictable response and quality of service (reliable). This will be achieved not only by study of design methods and patterns for mission critical systems, but also through implementation of soft real-time systems and comparison to hard real-time. Methods of verification to determine ability to meet mission critical as well as soft real-time requirements will be learned so that the learner can properly assess risk, reliability and impact of failure in real-time systems.

Oct 19th 2026
4 Weeks
Visual Basic Programming: Inheritance and Polymorphism (Coursera) Coursera
LearnQuest

Visual Basic Programming: Inheritance and Polymorphism (Coursera)

This course is the third course in a series that aims to prepare you for a role working as a programmer. In this course, you will be introduced to the four main concepts in programming: Advanced String Operations and Dates, Modeling Classes, Development of Classes and Collections. Labs will allow the students to apply the material in the lectures in simple computer programs designed to re-enforce the material in the lesson.

Oct 19th 2026
4 Weeks
Fundamentals of Project Planning and Management (Coursera) Coursera
University of Virginia

Fundamentals of Project Planning and Management (Coursera)

Projects are all around us. Virtually every organization runs projects, either formally or informally. We are engaged in projects at home and at work. Across settings, planning principles and execution methodologies can offer ways in which projects can be run more effectively and efficiently. Project management provides organizations (and individuals) with the language and the frameworks for scoping projects, sequencing activities, utilizing resources, and minimizing risks.

Oct 19th 2026
4 Weeks