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.
48credentials
148courses

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

  • Instituto Tecnológico de Aeronáutica

    Skills you'll gain: Unified Modeling Language, JUnit, Object Oriented Design, Object Oriented Programming (OOP), Unit Testing, Java, Java Programming, Programming Principles, Software Engineering, Software Design, Maintainability, Software Testing, Eclipse (Software)

  • Status: Preview

    Skills you'll gain: Object Oriented Design, Software Development Methodologies, Unified Modeling Language, Systems Analysis, Object Oriented Programming (OOP), Software Design, Systems Design, Program Development, Data Management, Software Engineering, Systems Architecture, Requirements Analysis, Human Computer Interaction

  • Status: Free Trial

    Skills you'll gain: Software Development Methodologies, Agile Methodology, Software Engineering, Software Development Life Cycle, Requirements Analysis, Application Deployment, Agile Software Development, Systems Development, Software Architecture, Verification And Validation, Process Driven Development, Waterfall Methodology, System Requirements, Software Testing, Scrum (Software Development), Release Management, User Requirements Documents, Development Testing, Software Design, Maintainability

  • Status: Free Trial

    Skills you'll gain: Object Oriented Design, JUnit, Object Oriented Programming (OOP), Software Design Patterns, Java, Unified Modeling Language, Software Design, Java Programming, Software Architecture, Model View Controller, Conceptual Design

  • Status: Preview

    Skills you'll gain: Application Security, Secure Coding, Threat Modeling, Security Testing, Software Development Life Cycle, Security Controls, Risk Management Framework, Security Requirements Analysis, Software Development, Authorization (Computing), Data Security, Vulnerability Assessments, Identity and Access Management, Verification And Validation, Cryptography, Software Architecture, Software Design

  • Coursera Project Network

    Skills you'll gain: Figma (Design Software), UI Components, Style Guides, Wireframing, Software Design, Mockups, Application Design, Web Design, Application Development, Software Engineering

  • Status: New
    Status: Free Trial

    Skills you'll gain: IntelliJ IDEA, Object Oriented Design, Debugging, Software Design, User Interface (UI), Integrated Development Environments, Java, Design Thinking, Program Development, Data Validation, Software Development, Application Development

  • Status: Free Trial

    Skills you'll gain: Version Control, Debugging, Software Design Patterns, Object Oriented Design, Object Oriented Programming (OOP), Software Development, Git (Version Control System), Programming Principles, Software Design, Computer Programming, Software Engineering, Integrated Development Environments, Command-Line Interface

  • Status: Free Trial

    École Polytechnique Fédérale de Lausanne

    Skills you'll gain: Scala Programming, Software Design, Software Design Patterns, Functional Design, Java, Programming Principles, Performance Tuning, Data Structures, Algorithms

  • Status: Free Trial

    Skills you'll gain: Unity Engine, Game Design, Video Game Development, C# (Programming Language), 3D Assets, Software Design, Computer Programming, Social Studies, Ideation, Project Closure, Business Modeling, Project Documentation, Debugging

  • Status: New

    Skills you'll gain: Maintainability, Code Review, Software Architecture, Software Design, Object Oriented Design, Debugging, Testability, Programming Principles, Scalability

  • Status: Free Trial

    Skills you'll gain: Software Development Life Cycle, z/OS, COBOL (Programming Language), Unit Testing, Systems Analysis, Systems Development, Pseudocode, Software Development Methodologies, Agile Methodology, Software Development, Software Design, Systems Architecture, Mainframe Computing, Programming Principles, Scrum (Software Development), Test Planning

What brings you to Coursera today?

Leading partners

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