orriven
ブログ

エンジニアリング7 分で読めます

One event, many identities

Why attendee, registration, and ticket need to stay separate records — and what breaks when they are merged.

文 Tomas LindqvistPlatform

The most common modelling mistake in event software is treating a person and a ticket as the same object. It works until the first transfer.

Three records, three lifecycles

An attendee is a person, and persists across events. A registration is that person’s participation in one event. A ticket is the entitlement that was purchased, which may be transferred, refunded, or reassigned without the person changing.

Merge them, and a name change on a transferred ticket rewrites history for a different person’s past attendance.

Where it shows up

Transfers, group purchases, and repeat attendees across a series are the three cases that expose a merged model. Each one is common enough that the merge fails within a season.

Keeping the records separate costs one join and saves a migration.

関連記事

新しい知見を、直接メールで。

新着記事やプロダクト更新の通知を受け取れます。月2回以内の配信です。

RSS フィード

配信停止はいつでも可能です。