Data, Context and Interaction (DCI)


End users typically approach a computer with a model of an algorithm whereby a network of objects work together to achieve some goal, and object-oriented programming strives to match those mental models.
Its benefits include providing a good match between software solutions and business needs, and ease of programming that is structured around business understanding. Much of what programmers call object-oriented today in fact is altogether something else: Abstract Data Types, each of which should be separately considered as an encapsulated grouping of data and low-level operations.
This mismatch harms software useability and has dramatic software engineering drawbacks. The Data, Context and Interaction (DCI) restores object-oriented thinking to the design and programming world. This tutorial will help you deeply understand object-oriented thinking and learn what it takes to implement it in a modern architecture.

Course contents

• Overview: A Parade of Paradigms
• The Domain Model: Classes
• The Object Paradigm: Mental Models
• The Problem
• More Problems: ADT Thinking
• Preparing for Design: Use Cases and CRC Cards
• The DCI Design Paradigm
• Implementing DCI

Target audience and prerequisites

This workshop is for developers, architects, technical leads, technical managers.

 - 22 March 2023