Introduction to Domain Models (Coursera)

Introduction to Domain Models (Coursera)

This course is a continuation of the Introduction to Software Development and Applications course. In this course, you will dive further into exploring software engineering techniques and their application to real-world business problems. Students who take this course will be equipped with practical design and programming techniques for the purpose of modeling significant business applications quickly.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

In this course you will learn about constructing domain models. You will also refine your skills to employ systems thinking, the object-oriented paradigm, the visual programming technique, as well as productivity tools to put together complicated, powerful designs. We will practice simple and smart ways of making software programming enjoyable.
This course is part of the Information Systems Foundations Specialization.

Syllabus

Constructing Domain Models
In this module we will explore the concept of domain modeling by revisiting the university model we touched on in earlier modules. In this module, we will review a comprehensive depiction of how a university system operates, encompassing crucial elements like courses, schedules, student experience, and the connection between student needs and university offerings. As software engineers, understanding domain modeling becomes essential, as it serves as the foundation for building effective registration systems and provides a graphical description of the physical situation that guides the design of the underlying application, mapping directly to software code.

Domain Model Implementation
In module 2, we will examine the university case and the actual process of transforming the design into code and making effective decisions along the way. We have already addressed the hierarchical structure and broken down components into simple and deliberate entities. Now, the focus shifts to writing code strategically, starting with the class or component with the least dependency. Throughout this module we will explore decision-making in code implementation to create real value from designs.

The Xerox Case - Part 1
This module we will pivot to explore a different framework through another case study: this time we will be focusing on Xerox.We will learn about the challenges that faced Xerox and consider possible design solutions that will help Xerox’s problems. As we get into the material in this case, it is important to remember that paying close attention from the very beginning is essential to driving transformation and solving complex problems.

The Xerox Case - Part 2
This module we will continue our exploration of the Xerox Range Pricing Model. Last module we explored user tasks for the Xerox sales team. Now, we will dive more into transforming the process used by Xerox into an actual, working software design system.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

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.

Sep 7th 2026
4 Weeks
Laboratório de Programação Orientada a Objetos - Parte 2 (Coursera) Coursera
Universidade de São Paulo, Brasil

Laboratório de Programação Orientada a Objetos - Parte 2 (Coursera)

Esta é a segunda parte do curso avançado de Programação Orientada a Objetos oferecido pelo Departamento de Ciência da Computação do IME-USP. O curso é voltado para profissionais ou estudantes interessados em Desenvolvimento de Software Avançado e que já dominam uma linguagem de programação e já conhecem os fundamentos básicos da orientação a objetos.

Sep 14th 2026
5-12 Weeks
Creative Problem Solving (Coursera) Coursera
University of Minnesota

Creative Problem Solving (Coursera)

This course deals directly with your ability for creativity which is a critical skill in any field. It focuses on divergent thinking, the ability to develop multiple ideas and concepts to solve problems. Through a series of creativity building exercises, short lectures, and readings, learners develop both an understanding of creativity and increase their own ability.

Sep 14th 2026
4 Weeks
GenAI for Everyone (Coursera) Coursera
Coursera Instructor Network

GenAI for Everyone (Coursera)

This course offers a foundational journey into the world of Generative AI (GenAI), setting the stage for a comprehensive learning path that delves into the nuanced, role-specific applications of AI. Designed to equip learners with essential GenAI knowledge, this primer is the perfect starting point before progressing through a series of courses tailored to various job functions and roles.

Sep 14th 2026
1 Week
Introduction to Open Source Application Development (Coursera) Coursera
Illinois Tech

Introduction to Open Source Application Development (Coursera)

This course introduces basic concepts of systems programming using a modern open source language. You will learn to apply basic programming concepts toward solving problems, writing pseudocode, working with and effectively using basic data types, abstract data types, control structures, code modularization and arrays. You will learn to detect errors, work with variables and loops, and discover how functions, methods, and operators work with different data types. You will also be introduced to the object paradigm including classes, inheritance, and polymorphism.

Sep 14th 2026
5-12 Weeks
Object-Oriented Design (Coursera) Coursera
University of Alberta

Object-Oriented Design (Coursera)

This course takes Java beginners to the next level by covering object-oriented analysis and design. You will discover how to create modular, flexible, and reusable software, by applying object-oriented design principles and guidelines. And, you will be able to communicate these designs in a visual notation known as Unified Modelling Language (UML). You will be challenged in the Capstone Project to apply your knowledge of object-oriented design by evolving and documenting the Java codebase for an Android application with corresponding UML documentation.

Sep 7th 2026
4 Weeks
Statistical Thinking for Industrial Problem Solving, presented by JMP (Coursera) Coursera
SAS

Statistical Thinking for Industrial Problem Solving, presented by JMP (Coursera)

Statistical Thinking for Industrial Problem Solving is an applied statistics course for scientists and engineers offered by JMP, a division of SAS. By completing this course, students will understand the importance of statistical thinking, and will be able to use data and basic statistical methods to solve many real-world problems.

Sep 21st 2026
5-12 Weeks
An Introduction to Interactive Programming in Python (Part 2) (Coursera) Coursera
Rice University

An Introduction to Interactive Programming in Python (Part 2) (Coursera)

This two-part course is designed to help students with very little or no computing background learn the basics of building simple interactive applications. Our language of choice, Python, is an easy-to learn, high-level computer language that is used in many of the computational courses offered on Coursera. To make learning Python easy, we have developed a new browser-based programming environment that makes developing interactive applications in Python simple.

Sep 7th 2026
4 Weeks
Factory Automation: Shaping the Future of Manufacturing (Coursera) Coursera
Starweaver

Factory Automation: Shaping the Future of Manufacturing (Coursera)

This course provides a comprehensive understanding of factory automation, covering foundational concepts to practical applications. Participants explore the evolution of automation technology, including robotics and control systems, witnessing its role in optimizing production processes and enhancing productivity. Through real-world case studies, they learn how automation improves efficiency, safety, and innovation in manufacturing.

Sep 14th 2026
4 Weeks
Using Public Policy for Social Change (Coursera) Coursera
University of Michigan

Using Public Policy for Social Change (Coursera)

Using Public Policy for Social Change provides a comprehensive introduction to public policy and its role in addressing societal challenges, with a focus on social inequalities. You’ll explore various areas of policy work, including social welfare, public health, the environment, education, and criminal justice. Learn the fundamentals of public policy design and analysis, and how policymaking functions across all levels of government in democracies worldwide.

Sep 14th 2026
4 Weeks