AR4: Boundaries and coupling

Lesson 2 of 5 · reading 15–25 minutes; practice and project time is on the module page

Boundaries that follow the business

🎯You'll be able to

Find boundaries from the business's own language and capabilities, using the idea of bounded contexts.

🏠The everyday picture

In a hospital, "patient" means something different at the front desk (name, insurance), in the ward (bed, medication) and in billing (invoices, payments). Each department keeps the details it needs and uses its own words.

📘What it really is

📝A worked example

Input: RasoiRoute's six modules and a kitchen manager's description: "When an order comes in, we price it, take the money, raise the GST invoice and send the customer an SMS."

Steps:

  1. Capabilities: pricing (catalogue), ordering, payments, invoicing, customer messages (notifications), reporting.
  2. Check language: in notifications, an "order" is just an ID, a phone number and a total; it doesn't need dishes.
  3. So notifications should receive what it needs in the message, not look the order up.
  4. Ownership: each module keeps its own records; notifications keeps sent messages only.

Expected output: six capabilities, each owning its data, and notifications needing nothing from orders.

🌍Where it's used

📝Case scenario

A school app had one "Student" record used for admissions, timetables, fees and transport, with 90 fields. Every change needed four teams' agreement. Splitting it into a student record per context, linked by a student ID, let each team change its own fields.

🖱️Try it

Ask someone who works in a business (a shop, a clinic) to describe their day. Underline the verbs (take orders, book, bill). Group them into three to six capabilities. Success: each group could be owned by one team.

⚠️Common mistakes

🛠️For your project

Project 2's notifications front door takes { orderId, phone, total, invoiceNo }: everything it needs, so it never reads orders.

✅Quick check

What is a bounded context?

Show the answer

A part of the system where words have one clear meaning and one model is used.

Why draw boundaries around business capabilities rather than technical layers?

Show the answer

Changes usually come from the business, so they stay inside one part, owned by one team.

← PreviousCoupling and cohesion
ProLearners Assist