0
votes

An application "School" should have three types of users: Pupil, Parent, Admin.

  1. Admin can register children in the school (they becomes Pupils) and attach parents to him/her; create a school schedule
  2. Pupil should see the school schedule and his/her marks
  3. Parent can watch marks of his/her children who are Pupils in the school; pay school fees

Could you help me to define bounded context(s) for this application? For me it's look like here is more than one bounded context.

1

1 Answers

0
votes

At first, you have to think about the autonomy Of Bounded-Context. The next thing is about transactions. You have to think about the independent transactions as you can. Each Bounded-Context must have its world and ven its language (Ubiquitous Language).

With This info and more info, you can decide about Bounded-Context better. According to your information, I think It could have 3 Bounded-Contexts:

  1. School Schedule
  2. School Finacial
  3. Users-Area (Authentications or profile)

Just keep in mind all Bounded-Contexts (ex: Schedule) should work independently without other Bounded-Contexts (ex: Users-Area). for example you can have Name and family and UserId in Schule Schedule Bounded-Context. But the whole data of the user is in Users-Area Bounded-Context(like Profile data) and when you need it you can get data from it in a few ways.