Software Design

Software Design is a process of defining the architecture, components, interfaces, and other characteristics of a software system. Coursera's Software Design catalogue helps you to understand and apply design principles to create an effective, maintainable, and scalable software system. You'll learn about various design patterns, interface designs, user experience considerations, system architectures, and managing design complexity. You'll also gain insights into how to effectively communicate and document design decisions, and the impacts of those decisions on software quality and performance. Whether you are a seasoned software engineer, a developer looking to advance your design skills, or someone transitioning into the field, mastering these design elements can help you create high-quality software products.
50credentials
151courses

Most popular

Trending now

New releases

Filter by

Subject
Required

Language
Required

The language used throughout the course, in both instruction and assessments.

Learning Product
Required

Build job-relevant skills in under 2 hours with hands-on tutorials.
Learn from top instructors with graded assignments, videos, and discussion forums.
Learn a new tool or skill in an interactive, hands-on environment.
Get in-depth knowledge of a subject by completing a series of courses and projects.
Earn career credentials from industry leaders that demonstrate your expertise.
Earn career credentials while taking courses that count towards your Master’s degree.

Level
Required

Duration
Required

Subtitles
Required

Educator
Required

Explore the Software Design Course Catalog

  • Status: New
    Status: Preview

    Skills you'll gain: Object Oriented Programming (OOP), Programming Principles, Computational Thinking, Application Development, Python Programming, Computer Programming, Development Environment, Integrated Development Environments, Software Design, Data Structures, Software Installation

  • Status: Free Trial

    University of Colorado Boulder

    Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, Software Documentation, Maintainability, Programming Principles, Software Design, Python Programming

  • Status: Free Trial

    Skills you'll gain: Unified Modeling Language, Data Modeling, Data Structures, Scripting, Object Oriented Programming (OOP), Python Programming, Software Design, Computer Programming, Software Engineering

  • Status: Free Trial

    Skills you'll gain: Swift Programming, Apple iOS, iOS Development, Unit Testing, Apple Xcode, Test Case, Software Testing, Object Oriented Programming (OOP), Data Structures, Application Development, Application Security, Software Design, Debugging, Data Mapping, Functional Design, User Interface (UI)

  • Status: Free Trial

    Skills you'll gain: Spring Framework, Java, Dependency Analysis, Software Design Patterns, Maintainability, Object Oriented Programming (OOP), Extensible Markup Language (XML), Software Design, Testability

  • Status: Free Trial

    Skills you'll gain: Android Development, Android Studio, Application Development, Mobile Development, Software Design, User Interface and User Experience (UI/UX) Design, Prototyping, Mockups, User Acceptance Testing (UAT), Systems Analysis, Development Testing, Problem Management, Extensible Markup Language (XML)

  • Status: Free Trial

    University of California San Diego

    Skills you'll gain: Debugging, Object Oriented Programming (OOP), Java, Teaching, Programming Principles, Java Programming, Program Development, Pedagogy, Computer Programming, Integrated Development Environments, Software Design, Computational Thinking, Cultural Responsiveness, Test Case, Computational Logic, Pseudocode, Algorithms, Data Structures

  • Skills you'll gain: Secure Coding, Application Security, Open Web Application Security Project (OWASP), Security Engineering, Cybersecurity, Security Requirements Analysis, Security Testing, Vulnerability Assessments, Code Review, Software Design, Encryption, Vulnerability Management, Data Security, Cryptography, Continuous Monitoring, Authentications, Development Testing, System Monitoring, Authorization (Computing)

  • Status: Preview

    Skills you'll gain: Software Design, Program Development, Databases, Computer Programming, Object Oriented Programming (OOP), User Interface (UI), Algorithms, Java, Data Structures, Data Analysis Software, Data Management

  • Status: Free Trial

    University of California San Diego

    Skills you'll gain: Java, Object Oriented Programming (OOP), Software Design, Computer Programming, Program Development, Debugging, Integrated Development Environments, Data Structures, Algorithms

  • Status: New
    Status: Free Trial

    Skills you'll gain: IntelliJ IDEA, Object Oriented Design, Debugging, Software Design, User Interface (UI), Apache Maven, Design Thinking, Object Oriented Programming (OOP), Program Development, Build Tools, Integrated Development Environments, Software Development Tools, Eclipse (Software), Data Validation, Version Control, Software Development, Data Import/Export, Programming Principles, Java, Kotlin

  • Status: Preview

    Skills you'll gain: Object Oriented Programming (OOP), Web Scraping, Data Structures, Test Driven Development (TDD), Computer Programming, Python Programming, Scripting Languages, User Interface (UI), Open Source Technology, Database Development, Programming Principles, Database Management, Scripting, Software Design

What brings you to Coursera today?

Leading partners

  • Packt
  • EDUCBA
  • University of Colorado Boulder
  • Duke University
  • IBM
  • SkillUp
  • LearnQuest
  • University of Colorado System