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

Creativity Toolkit I: Changing Perspectives (Coursera) Coursera
University of Illinois at Urbana-Champaign

Creativity Toolkit I: Changing Perspectives (Coursera)

Thinking and doing the same things faster and better is not enough; we need creativity. Fortunately, creativity is a skill you can learn. This course will examine when, why, and how we can be creative. It examines the cues that trigger us to consider being creative. It provides a road map of the creative process – the process of changing our perspectives – and the kinds of outcomes that result from creativity.

Sep 9th 2026
4 Weeks
面向对象技术高级课程 (The Advanced Object-Oriented Technology) (Coursera) Coursera
Peking University

面向对象技术高级课程 (The Advanced Object-Oriented Technology) (Coursera)

如果将软件开发人员看作行走江湖的武侠,那么各种软件开发技术就是武侠赖以傍身的武术秘籍。有的秘籍以易学灵巧见长,练习者很快掌握,并有立竿见影的功效,但失之厚重持久;有的秘籍初学乍练顿显困难,虽冥思苦解仍不得要领,需坚持不断的内功修炼方成正果,却是成为武林大侠必备的至宝。本课程有些类似于后者。

Sep 14th 2026
13-24 Weeks
Uso de bases de datos con Python (Coursera) Coursera
University of Michigan

Uso de bases de datos con Python (Coursera)

Este curso presentará a los estudiantes los conceptos básicos del lenguaje de consulta estructurado (Structured Query Language, SQL), así como el diseño básico de bases de datos para almacenar datos como parte de una iniciativa de varios pasos para recopilar, analizar y procesar datos. El curso utilizará SQLite3 como base de datos. También crearemos rastreadores web y procesos de visualización y recopilación de datos de varios pasos. Utilizaremos la biblioteca D3.js para realizar la visualización básica de datos.

Sep 14th 2026
5-12 Weeks
Fundamentals of Organization (Coursera) Coursera
Politecnico di Milano

Fundamentals of Organization (Coursera)

Organization is a fundamental theme to understand the real functioning of each company or, more in general, of any institution, and it is part of the basic know-how of each manager. Organization design implies decisions on how work is subdivided and how coordination between the various activities and people who autonomously perform them is guaranteed.

Sep 14th 2026
3 Weeks
Introdução à Ciência da Computação com Python Parte 2 (Coursera) Coursera
Universidade de São Paulo, Brasil

Introdução à Ciência da Computação com Python Parte 2 (Coursera)

Bem vindo ao curso de Introdução à Ciência da Computação destinado aos alunos regulares da Universidade de São Paulo! Esta é a segunda parte do Curso, onde você vai continuar a aprender os principais conceitos introdutórios de Ciência da Computação e também aprenderá a desenvolver pequenos programas na linguagem Python.

Sep 7th 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
Introduction to ES6+ (Coursera) Coursera
Scrimba

Introduction to ES6+ (Coursera)

Introduction to ES6+ covers modern JavaScript features, specifically ES6 and newer ECMAScript versions. JavaScript, a widely used programming language in various domains, is essential for developers aiming to stay relevant across web applications, servers, mobile, and IoT devices. Developers who are already familiar with JavaScript will be able to update their skills and broaden their knowledge in this tiny but mighty course.

Sep 7th 2026
1 Week